diff options
author | Georg Brandl <georg@python.org> | 2012-05-31 19:27:57 +0200 |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2012-05-31 19:27:57 +0200 |
commit | b7861bca9e9ffa34c0059ac15a62ac985dc185dd (patch) | |
tree | d9fcf3d4a83113e74d87feff8587dd6a80eb13e1 | |
parent | e14b7900caaba63b4e6419879f07079725165172 (diff) | |
parent | 392541ba6c230fe1815c1d32d0d3074713870a90 (diff) | |
download | pygments-b7861bca9e9ffa34c0059ac15a62ac985dc185dd.tar.gz |
Merged in bluegoji/pygments-main (pull request #73)
-rw-r--r-- | pygments/lexers/web.py | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/pygments/lexers/web.py b/pygments/lexers/web.py index 93a6f115..5ac56c19 100644 --- a/pygments/lexers/web.py +++ b/pygments/lexers/web.py @@ -101,6 +101,16 @@ class JSONLexer(RegexLexer): filenames = ['*.json'] mimetypes = [ 'application/json', ] + # integer part of a number + int_part = r'-?(0|[1-9]\d*)' + + # fractional part of a number + frac_part = r'\.\d+' + + # exponential part of a number + exp_part = r'[eE](\+|-)?\d+' + + flags = re.DOTALL tokens = { 'whitespace': [ @@ -108,9 +118,12 @@ class JSONLexer(RegexLexer): ], # represents a simple terminal value - 'simplevalue':[ + 'simplevalue': [ (r'(true|false|null)\b', Keyword.Constant), - (r'-?[0-9]+', Number.Integer), + (('%(int_part)s(%(frac_part)s%(exp_part)s|' + '%(exp_part)s|%(frac_part)s)') % vars(), + Number.Float), + (int_part, Number.Integer), (r'"(\\\\|\\"|[^"])*"', String.Double), ], |