Mike Nolta committed fc29a39


Comments (0)

Files changed (1)


                 bygroups(Keyword,Name.Class), 'typename'),
             # operators
-            (r'==|!=|<=|>=|->|&&|\|\||::|<:|[-~+/*%=<>&^|.?!]', Operator),
+            (r'==|!=|<=|>=|->|&&|\|\||::|<:|[-~+/*%=<>&^|.?!$]', Operator),
             (r'\.\*|\.\^|\.\\|\.\/|\\', Operator),
             # builtins
             ('(' + '|'.join(builtins) + r')\b',  Name.Builtin),
             # backticks
-            (r'`.*?`', String.Backtick),
+            (r'`(?s).*?`', String.Backtick),
             # chars
-            (r"'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'", String.Char),
+            (r"'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,3}|\\u[a-fA-F0-9]{1,4}|\\U[a-fA-F0-9]{1,6}|[^\\\'\n])'", String.Char),
+            # try to match trailing transpose
+            (r'(?<=[.\w\)\]])\'', Operator),
             # strings
             (r'(?:[IL])"', String, 'string'),
         'funcname': [
-            ('[a-zA-Z_][a-zA-Z0-9_]*', Name.Function, '#pop')
+            ('[a-zA-Z_][a-zA-Z0-9_]*', Name.Function, '#pop'),
+            ('\([^\s\w{]{1,2}\)', Operator, '#pop'),
+            ('[^\s\w{]{1,2}', Operator, '#pop'),
         'typename': [
             (r'\\\\|\\"|\\\n', String.Escape), # included here for raw strings
             (r'\$(\([a-zA-Z0-9_]+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?',
-            (r'[^\\\'"$\n]+', String),
+            (r'[^\\"$]+', String),
             # quotes, dollar signs, and backslashes must be parsed one at a time
             (r'["\\]', String),
             # unhandled string formatting sign
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.