diff options
author | Tim Hatch <tim@timhatch.com> | 2012-03-09 12:06:18 -0800 |
---|---|---|
committer | Tim Hatch <tim@timhatch.com> | 2012-03-09 12:06:18 -0800 |
commit | 558f41c0580935533c6b4a67ca6bd7f2a5d4e723 (patch) | |
tree | 0ab1336082361cb91c65731fb6feb3184f1ccd7c | |
parent | 2151bee78a86b01e66f8be2d7d54d2fd205766f6 (diff) | |
download | pygments-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.py | 8 | ||||
-rw-r--r-- | pygments/lexers/dotnet.py | 8 | ||||
-rw-r--r-- | pygments/lexers/functional.py | 5 | ||||
-rw-r--r-- | pygments/lexers/hdl.py | 5 | ||||
-rw-r--r-- | pygments/lexers/other.py | 2 | ||||
-rw-r--r-- | pygments/lexers/templates.py | 31 | ||||
-rw-r--r-- | pygments/lexers/text.py | 4 | ||||
-rw-r--r-- | pygments/lexers/web.py | 6 |
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), |