From: <md...@us...> - 2007-07-26 13:26:29
|
Revision: 3615 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3615&view=rev Author: mdboom Date: 2007-07-26 06:26:26 -0700 (Thu, 26 Jul 2007) Log Message: ----------- Important bugfix (many expressions were silently failing) Modified Paths: -------------- branches/mathtext_mgd/examples/mathtext_examples.py branches/mathtext_mgd/lib/matplotlib/_mathtext_data.py branches/mathtext_mgd/lib/matplotlib/mathtext.py Modified: branches/mathtext_mgd/examples/mathtext_examples.py =================================================================== --- branches/mathtext_mgd/examples/mathtext_examples.py 2007-07-25 20:19:25 UTC (rev 3614) +++ branches/mathtext_mgd/examples/mathtext_examples.py 2007-07-26 13:26:26 UTC (rev 3615) @@ -52,7 +52,7 @@ os.system("pdflatex mathtext_examples.ltx") else: for i, s in enumerate(stests): - print s + print "%02d: %s" % (i, s) plot([1,2,3], 'r') x = arange(0.0, 3.0, 0.1) Modified: branches/mathtext_mgd/lib/matplotlib/_mathtext_data.py =================================================================== --- branches/mathtext_mgd/lib/matplotlib/_mathtext_data.py 2007-07-25 20:19:25 UTC (rev 3614) +++ branches/mathtext_mgd/lib/matplotlib/_mathtext_data.py 2007-07-26 13:26:26 UTC (rev 3615) @@ -38,8 +38,10 @@ r'\SQRT' : ('cmex10', 53), r'\leftbrace' : ('cmex10', 92), r'{' : ('cmex10', 92), + r'\{' : ('cmex10', 92), r'\rightbrace' : ('cmex10', 130), r'}' : ('cmex10', 130), + r'\}' : ('cmex10', 130), r'\leftangle' : ('cmex10', 97), r'\rightangle' : ('cmex10', 64), r'\Leftparen' : ('cmex10', 112), Modified: branches/mathtext_mgd/lib/matplotlib/mathtext.py =================================================================== --- branches/mathtext_mgd/lib/matplotlib/mathtext.py 2007-07-25 20:19:25 UTC (rev 3614) +++ branches/mathtext_mgd/lib/matplotlib/mathtext.py 2007-07-26 13:26:26 UTC (rev 3615) @@ -59,17 +59,10 @@ ^ use raw strings - The $ symbols must be the first and last symbols in the string. Eg, - you cannot do + Math and non-math can be interpresed in the same string. E.g., r'My label $x_i$'. - but you can change fonts, as in - - r'$\rm{My label} x_i$' - - to achieve the same effect. - A large set of the TeX symbols are provided. Subscripting and superscripting are supported, as well as the over/under style of subscripting with \sum, \int, etc. @@ -1714,7 +1707,7 @@ _spaced_symbols = _binary_operators | _relation_symbols | _arrow_symbols - _punctuation_symbols = Set(r', ; . !'.split()) + _punctuation_symbols = Set(r', ; . ! \ldotp \cdotp'.split()) def __init__(self): # All forward declarations are here @@ -1769,15 +1762,14 @@ symbol = Regex("(" + ")|(".join( [ - r"\\(?!right)(?!left)[a-zA-Z0-9]+(?!{)", + r"\\(?!left[^a-z])(?!right[^a-z])[a-zA-Z0-9]+(?!{)", r"[a-zA-Z0-9 ]", r"[+\-*/]", r"[<>=]", r"[:,.;!]", r"[!@%&]", r"[[\]()]", - r"\\\$", - r"\\\%" + r"\\[$%{}]", ]) + ")" ).setParseAction(self.symbol).leaveWhitespace() @@ -1828,7 +1820,7 @@ ) subsuper << Group( - ( placeable + ( Optional(placeable) + OneOrMore( subsuperop + placeable @@ -1837,7 +1829,9 @@ | placeable ) - ambiDelim = oneOf(r"| \| / \backslash \uparrow \downarrow \updownarrow \Uparrow \Downarrow \Updownarrow") + ambiDelim = oneOf(r"""| \| / \backslash \uparrow \downarrow + \updownarrow \Uparrow \Downarrow + \Updownarrow""") leftDelim = oneOf(r"( [ { \lfloor \langle \lceil") rightDelim = oneOf(r") ] } \rfloot \rangle \rceil") @@ -1861,9 +1855,9 @@ non_math = Regex(r"(?:[^$]|(?:\\\$))*" ).setParseAction(self.non_math).setName("non_math").leaveWhitespace() - self._expression <<( + self._expression <<( non_math - + ZeroOrMore( + + OneOrMore( Suppress(math_delim) + math + Suppress(math_delim) @@ -1908,6 +1902,7 @@ return [self._expr] def math(self, s, loc, toks): + #~ print "math", toks hlist = Hlist(toks) self.pop_state() return [hlist] @@ -2164,6 +2159,7 @@ return [hlist] def auto_sized_delimiter(self, s, loc, toks): + #~ print "auto_sized_delimiter", toks front, middle, back = toks state = self.get_state() height = max([x.height for x in middle]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |