summaryrefslogtreecommitdiff
path: root/pygments/lexers/math.py
diff options
context:
space:
mode:
authorJeffrey B. Arnold <jeffrey.arnold@gmail.com>2012-08-11 13:52:37 -0400
committerJeffrey B. Arnold <jeffrey.arnold@gmail.com>2012-08-11 13:52:37 -0400
commit6d4d1c6f1d4e05ee01defc00d715633fcc074329 (patch)
treedeefc4d3ada475275904f3a9483b5aaf8de41ec1 /pygments/lexers/math.py
parent862b91d319d912d2029bd99cfaed9b4e3c18fe20 (diff)
downloadpygments-6d4d1c6f1d4e05ee01defc00d715633fcc074329.tar.gz
SLexer: allowed for escaped quotes, added better example file
Diffstat (limited to 'pygments/lexers/math.py')
-rw-r--r--pygments/lexers/math.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/pygments/lexers/math.py b/pygments/lexers/math.py
index 9139e19a..c203de58 100644
--- a/pygments/lexers/math.py
+++ b/pygments/lexers/math.py
@@ -1013,7 +1013,6 @@ class SLexer(RegexLexer):
(r'[a-zA-Z][0-9a-zA-Z\._]+', Text),
# can begin with ., but not if that is followed by a digit
(r'\.[a-zA-Z_][0-9a-zA-Z\._]+', Text),
- (r'`.+`', String.Backtick),
],
'punctuation': [
(r'\[{1,2}|\]{1,2}|\(|\)|;|,', Punctuation),
@@ -1024,7 +1023,7 @@ class SLexer(RegexLexer):
Keyword.Reserved)
],
'operators': [
- (r'<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?', Operator),
+ (r'<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\?', Operator),
(r'\*|\+|\^|/|!|%[^%]*%|=|~|\$|@|:{1,3}', Operator)
],
'builtin_symbols': [
@@ -1035,15 +1034,17 @@ class SLexer(RegexLexer):
(r'(T|F)\b', Keyword.Variable),
],
'numbers': [
- (r'[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?[Li]?',
- Number),
# hex number
(r'0[xX][a-fA-F0-9]+([pP][0-9]+)?[Li]?', Number.Hex),
+ # decimal number
+ (r'[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?[Li]?',
+ Number),
],
'statements': [
include('comments'),
# whitespaces
(r'\s+', Text),
+ (r'`.*?`', String.Backtick),
(r'\'', String, 'string_squote'),
(r'\"', String, 'string_dquote'),
include('builtin_symbols'),
@@ -1066,10 +1067,10 @@ class SLexer(RegexLexer):
# ('\}', Punctuation, '#pop')
#],
'string_squote': [
- (r'[^\']*\'', String, '#pop'),
+ (r'([^\'\\]|\\.)*\'', String, '#pop'),
],
'string_dquote': [
- (r'[^\"]*\"', String, '#pop'),
+ (r'([^"\\]|\\.)*"', String, '#pop'),
],
}