summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Hatch <tim@timhatch.com>2012-03-09 12:06:18 -0800
committerTim Hatch <tim@timhatch.com>2012-03-09 12:06:18 -0800
commit558f41c0580935533c6b4a67ca6bd7f2a5d4e723 (patch)
tree0ab1336082361cb91c65731fb6feb3184f1ccd7c
parent2151bee78a86b01e66f8be2d7d54d2fd205766f6 (diff)
downloadpygments-558f41c0580935533c6b4a67ca6bd7f2a5d4e723.tar.gz
Fix a bunch of minor issues noticed by regexlint
--- pygments/lexers/agile.py | 8 ++++---- pygments/lexers/dotnet.py | 8 ++++---- pygments/lexers/functional.py | 5 ++++- pygments/lexers/hdl.py | 5 +++-- pygments/lexers/other.py | 2 +- pygments/lexers/templates.py | 31 ++++++++++++++++--------------- pygments/lexers/text.py | 4 ++-- pygments/lexers/web.py | 6 +++--- 8 files changed, 37 insertions(+), 32 deletions(-)
-rw-r--r--pygments/lexers/agile.py8
-rw-r--r--pygments/lexers/dotnet.py8
-rw-r--r--pygments/lexers/functional.py5
-rw-r--r--pygments/lexers/hdl.py5
-rw-r--r--pygments/lexers/other.py2
-rw-r--r--pygments/lexers/templates.py31
-rw-r--r--pygments/lexers/text.py4
-rw-r--r--pygments/lexers/web.py6
8 files changed, 37 insertions, 32 deletions
diff --git a/pygments/lexers/agile.py b/pygments/lexers/agile.py
index 8e1346e2..4e838449 100644
--- a/pygments/lexers/agile.py
+++ b/pygments/lexers/agile.py
@@ -381,7 +381,7 @@ class PythonTracebackLexer(RegexLexer):
bygroups(Text, Name.Builtin, Text, Number, Text)),
(r'^( )(.+)(\n)',
bygroups(Text, using(PythonLexer), Text)),
- (r'^([ \t]*)(...)(\n)',
+ (r'^([ \t]*)(\.\.\.)(\n)',
bygroups(Text, Comment, Text)), # for doctests...
(r'^(.+)(: )(.+)(\n)',
bygroups(Generic.Error, Text, Name, Text), '#pop'),
@@ -417,7 +417,7 @@ class Python3TracebackLexer(RegexLexer):
bygroups(Text, Name.Builtin, Text, Number, Text, Name, Text)),
(r'^( )(.+)(\n)',
bygroups(Text, using(Python3Lexer), Text)),
- (r'^([ \t]*)(...)(\n)',
+ (r'^([ \t]*)(\.\.\.)(\n)',
bygroups(Text, Comment, Text)), # for doctests...
(r'^(.+)(: )(.+)(\n)',
bygroups(Generic.Error, Text, Name, Text), '#pop'),
@@ -1286,7 +1286,7 @@ class IoLexer(RegexLexer):
# constants
(r'(nil|false|true)\b', Name.Constant),
# names
- ('(Object|list|List|Map|args|Sequence|Coroutine|File)\b',
+ (r'(Object|list|List|Map|args|Sequence|Coroutine|File)\b',
Name.Builtin),
('[a-zA-Z_][a-zA-Z0-9_]*', Name),
# numbers
@@ -1785,7 +1785,7 @@ class FancyLexer(RegexLexer):
('[A-Z][a-zA-Z0-9_]*', Name.Constant),
('@[a-zA-Z_][a-zA-Z0-9_]*', Name.Variable.Instance),
('@@[a-zA-Z_][a-zA-Z0-9_]*', Name.Variable.Class),
- ('(@|@@)', Operator),
+ ('@@?', Operator),
('[a-zA-Z_][a-zA-Z0-9_]*', Name),
# numbers - / checks are necessary to avoid mismarking regexes,
# see comment in RubyLexer
diff --git a/pygments/lexers/dotnet.py b/pygments/lexers/dotnet.py
index 7596558f..278ba546 100644
--- a/pygments/lexers/dotnet.py
+++ b/pygments/lexers/dotnet.py
@@ -559,10 +559,10 @@ class FSharpLexer(RegexLexer):
'with', 'yield', 'yield!'
]
keyopts = [
- '!=','#','&','&&','\(','\)','\*','\+',',','-',
- '-\.','->','\.','\.\.',':','::',':=',':>',';',';;','<',
- '<-','>','>]','\?','\?\?','\[','\[<','\[>','\[\|',
- ']','_','`','{','\|','\|]','}','~','<@','=','@>'
+ '!=','#','&&','&','\(','\)','\*','\+',',','-\.',
+ '->','-','\.\.','\.','::',':=',':>',':',';;',';','<-',
+ '<','>]','>','\?\?','\?','\[<','\[>','\[\|','\[',
+ ']','_','`','{','\|\]','\|','}','~','<@','=','@>'
]
operators = r'[!$%&*+\./:<=>?@^|~-]'
diff --git a/pygments/lexers/functional.py b/pygments/lexers/functional.py
index 044f66c7..9139249a 100644
--- a/pygments/lexers/functional.py
+++ b/pygments/lexers/functional.py
@@ -559,7 +559,10 @@ class SMLLexer(RegexLexer):
return [
(r'[^"\\]', whatkind),
(r'\\[\\\"abtnvfr]', String.Escape),
- (r'\\\^[@-^]', String.Escape),
+ # Control-character notation is used for codes < 32,
+ # where \^@ == \000
+ (r'\\\^[\x40-\x5e]', String.Escape),
+ # Docs say 'decimal digits'
(r'\\[0-9]{3}', String.Escape),
(r'\\u[0-9a-fA-F]{4}', String.Escape),
(r'\\\s+\\', String.Interpol),
diff --git a/pygments/lexers/hdl.py b/pygments/lexers/hdl.py
index 86534b76..f1e9f26d 100644
--- a/pygments/lexers/hdl.py
+++ b/pygments/lexers/hdl.py
@@ -56,8 +56,9 @@ class VerilogLexer(RegexLexer):
(r'[()\[\],.;\']', Punctuation),
(r'`[a-zA-Z_][a-zA-Z0-9_]*', Name.Constant),
- (r'^\s*(package)(\s+)', bygroups(Keyword.Namespace, Text)),
- (r'^\s*(import)(\s+)', bygroups(Keyword.Namespace, Text), 'import'),
+ (r'^(\s*)(package)(\s+)', bygroups(Text, Keyword.Namespace, Text)),
+ (r'^(\s*)(import)(\s+)', bygroups(Text, Keyword.Namespace, Text),
+ 'import'),
(r'(always|always_comb|always_ff|always_latch|and|assign|automatic|'
r'begin|break|buf|bufif0|bufif1|case|casex|casez|cmos|const|'
diff --git a/pygments/lexers/other.py b/pygments/lexers/other.py
index b48904f9..5ab4db57 100644
--- a/pygments/lexers/other.py
+++ b/pygments/lexers/other.py
@@ -2478,7 +2478,7 @@ class AwkLexer(RegexLexer):
(r'', Text, '#pop')
],
'badregex': [
- ('\n', Text, '#pop')
+ (r'\n', Text, '#pop')
],
'root': [
(r'^(?=\s|/)', Text, 'slashstartsregex'),
diff --git a/pygments/lexers/templates.py b/pygments/lexers/templates.py
index 717d689f..89693b64 100644
--- a/pygments/lexers/templates.py
+++ b/pygments/lexers/templates.py
@@ -406,11 +406,11 @@ class MyghtyLexer(RegexLexer):
tokens = {
'root': [
(r'\s+', Text),
- (r'(<%(def|method))(\s*)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
- bygroups(Name.Tag, None, Text, Name.Function, Name.Tag,
+ (r'(<%(?:def|method))(\s*)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
+ bygroups(Name.Tag, Text, Name.Function, Name.Tag,
using(this), Name.Tag)),
- (r'(<%(\w+))(.*?)(>)(.*?)(</%\2\s*>)(?s)',
- bygroups(Name.Tag, None, Name.Function, Name.Tag,
+ (r'(<%\w+)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
+ bygroups(Name.Tag, Name.Function, Name.Tag,
using(PythonLexer), Name.Tag)),
(r'(<&[^|])(.*?)(,.*?)?(&>)',
bygroups(Name.Tag, Name.Function, using(PythonLexer), Name.Tag)),
@@ -525,11 +525,11 @@ class MasonLexer(RegexLexer):
(r'\s+', Text),
(r'(<%doc>)(.*?)(</%doc>)(?s)',
bygroups(Name.Tag, Comment.Multiline, Name.Tag)),
- (r'(<%(def|method))(\s*)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
- bygroups(Name.Tag, None, Text, Name.Function, Name.Tag,
+ (r'(<%(?:def|method))(\s*)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
+ bygroups(Name.Tag, Text, Name.Function, Name.Tag,
using(this), Name.Tag)),
- (r'(<%(\w+))(.*?)(>)(.*?)(</%\2\s*>)(?s)',
- bygroups(Name.Tag, None, Name.Function, Name.Tag,
+ (r'(<%\w+)(.*?)(>)(.*?)(</%\2\s*>)(?s)',
+ bygroups(Name.Tag, Name.Function, Name.Tag,
using(PerlLexer), Name.Tag)),
(r'(<&[^|])(.*?)(,.*?)?(&>)(?s)',
bygroups(Name.Tag, Name.Function, using(PerlLexer), Name.Tag)),
@@ -616,8 +616,8 @@ class MakoLexer(RegexLexer):
include('tag'),
],
'tag': [
- (r'((?:\w+)\s*=)\s*(".*?")',
- bygroups(Name.Attribute, String)),
+ (r'((?:\w+)\s*=)(\s*)(".*?")',
+ bygroups(Name.Attribute, Text, String)),
(r'/?\s*>', Comment.Preproc, '#pop'),
(r'\s+', Text),
],
@@ -1403,7 +1403,7 @@ class EvoqueLexer(RegexLexer):
# directives: begin, end
(r'(\$)(begin|end)(\{(%)?)(.*?)((?(4)%)\})',
bygroups(Punctuation, Name.Builtin, Punctuation, None,
- String, Punctuation, None)),
+ String, Punctuation)),
# directives: evoque, overlay
# see doc for handling first name arg: /directives/evoque/
#+ minor inconsistency: the "name" in e.g. $overlay{name=site_base}
@@ -1411,17 +1411,17 @@ class EvoqueLexer(RegexLexer):
(r'(\$)(evoque|overlay)(\{(%)?)(\s*[#\w\-"\'.]+[^=,%}]+?)?'
r'(.*?)((?(4)%)\})',
bygroups(Punctuation, Name.Builtin, Punctuation, None,
- String, using(PythonLexer), Punctuation, None)),
+ String, using(PythonLexer), Punctuation)),
# directives: if, for, prefer, test
(r'(\$)(\w+)(\{(%)?)(.*?)((?(4)%)\})',
bygroups(Punctuation, Name.Builtin, Punctuation, None,
- using(PythonLexer), Punctuation, None)),
+ using(PythonLexer), Punctuation)),
# directive clauses (no {} expression)
(r'(\$)(else|rof|fi)', bygroups(Punctuation, Name.Builtin)),
# expressions
(r'(\$\{(%)?)(.*?)((!)(.*?))?((?(2)%)\})',
bygroups(Punctuation, None, using(PythonLexer),
- Name.Builtin, None, None, Punctuation, None)),
+ Name.Builtin, None, None, Punctuation)),
(r'#', Other),
],
'comment': [
@@ -1489,7 +1489,8 @@ class ColdfusionLexer(RegexLexer):
(r"'.*?'", String.Single),
(r'\d+', Number),
(r'(if|else|len|var|case|default|break|switch)\b', Keyword),
- (r'([A-Za-z_$][A-Za-z0-9_.]*)\s*(\()', bygroups(Name.Function, Punctuation)),
+ (r'([A-Za-z_$][A-Za-z0-9_.]*)(\s*)(\()',
+ bygroups(Name.Function, Text, Punctuation)),
(r'[A-Za-z_$][A-Za-z0-9_.]*', Name.Variable),
(r'[()\[\]{};:,.\\]', Punctuation),
(r'\s+', Text),
diff --git a/pygments/lexers/text.py b/pygments/lexers/text.py
index 9c1a9d95..85fdfbbc 100644
--- a/pygments/lexers/text.py
+++ b/pygments/lexers/text.py
@@ -468,7 +468,7 @@ class GroffLexer(RegexLexer):
tokens = {
'root': [
- (r'(?i)(\.)(\w+)', bygroups(Text, Keyword), 'request'),
+ (r'(\.)(\w+)', bygroups(Text, Keyword), 'request'),
(r'\.', Punctuation, 'request'),
# Regular characters, slurp till we find a backslash or newline
(r'[^\\\n]*', Text, 'textline'),
@@ -482,7 +482,7 @@ class GroffLexer(RegexLexer):
# groff has many ways to write escapes.
(r'\\"[^\n]*', Comment),
(r'\\[fn]\w', String.Escape),
- (r'\\\(..', String.Escape),
+ (r'\\\(.{2}', String.Escape),
(r'\\.\[.*\]', String.Escape),
(r'\\.', String.Escape),
(r'\\\n', Text, 'request'),
diff --git a/pygments/lexers/web.py b/pygments/lexers/web.py
index 3b741b90..48c9e9ce 100644
--- a/pygments/lexers/web.py
+++ b/pygments/lexers/web.py
@@ -645,7 +645,7 @@ class ObjectiveJLexer(RegexLexer):
(r'(:)', Name.Function),
# var args
- (r'(,' + _ws + r'...)', using(this)),
+ (r'(,' + _ws + r'\.\.\.)', using(this)),
# param name
(r'([$a-zA-Z_][a-zA-Z0-9_]+)', Text),
@@ -816,7 +816,7 @@ class PhpLexer(RegexLexer):
r'array|__wakeup|E_ALL|NULL|final|php_user_filter|interface|'
r'implements|public|private|protected|abstract|clone|try|'
r'catch|throw|this|use|namespace)\b', Keyword),
- ('(true|false|null)\b', Keyword.Constant),
+ (r'(true|false|null)\b', Keyword.Constant),
(r'\$\{\$+[a-zA-Z_][a-zA-Z0-9_]*\}', Name.Variable),
(r'\$+[a-zA-Z_][a-zA-Z0-9_]*', Name.Variable),
(r'[\\a-zA-Z_][\\a-zA-Z0-9_]*', Name.Other),
@@ -1169,7 +1169,7 @@ class HaxeLexer(RegexLexer):
include('codekeywords'),
(r'[();,\[\]]', Punctuation),
(r'(?:=|\+=|-=|\*=|/=|%=|&=|\|=|\^=|<<=|>>=|>>>=|\|\||&&|'
- r'\.\.\.|==|!=|>|<|>=|<=|\||&|\^|<<|>>|>>>|\+|\-|\*|/|%|'
+ r'\.\.\.|==|!=|>|<|>=|<=|\||&|\^|<<|>>>|>>|\+|\-|\*|/|%|'
r'!|\+\+|\-\-|~|\.|\?|\:)',
Operator),
(ident, Name),