~mwshinn/+junk/notes3

« back to all changes in this revision

Viewing changes to mathgrammar.py

  • Committer: Max Shinn
  • Date: 2015-09-09 16:29:06 UTC
  • Revision ID: max@maxshinnpotential.com-20150909162906-2pdk9uydjmft0vlq
Touching variables handled intelligently instead of failing

Show diffs side-by-side

added added

removed removed

Lines of Context:
357
357
    """term : term CARATUNDER mathterm
358
358
            | term CARATUNDER coordpair
359
359
            | term CARATUNDER SYMBOL
 
360
            | term CARATUNDER TEXT
360
361
            | term CARATUNDER MINUS %prec caratminus"""
361
362
    p[0] = p[1] + p[2] + "{" + p[3] + "}"
362
363
 
365
366
    noquotes = p[3].strip("\"")
366
367
    p[0] = p[1] + p[2] + "\\text{" + noquotes + "}"
367
368
 
 
369
# This handles xy^something, knowing that it isn't a function.
 
370
def p_exp_text(p):
 
371
    """term : TEXT CARATUNDER SYMBOL
 
372
            | TEXT CARATUNDER MINUS %prec caratminus
 
373
            | TEXT CARATUNDER coordpair
 
374
            | TEXT CARATUNDER mathterm
 
375
            | TEXT CARATUNDER TEXT
 
376
            | TEXT primes"""
 
377
    if len(p) == 4:
 
378
        p[0] = p[1] + p[2] + "{" + p[3] + "}"
 
379
    else:
 
380
        p[0] = p[1] + p[2]
 
381
 
 
382
def p_exp_string(p):
 
383
    """term : TEXT CARATUNDER STRING"""
 
384
    noquotes = p[3].strip("\"")
 
385
    p[0] = p[1] + p[2] + "\\text{" + noquotes + "}"
 
386
 
 
387
 
 
388
 
368
389
def p_mathterm_prime(p):
369
 
    """mathterm : mathterm primes %prec primesprec"""
 
390
    """term : term primes %prec primesprec"""
370
391
    p[0] = p[1] + p[2]
371
392
 
372
393
def p_primes(p):