Blob Blame History Raw
diff --git a/pygments/lexers/agile.py b/pygments/lexers/agile.py
index 024ab8d..b0321d2 100644
--- a/pygments/lexers/agile.py
+++ b/pygments/lexers/agile.py
@@ -1652,7 +1652,7 @@ class FactorLexer(RegexLexer):
             (r'(?:<PRIVATE|PRIVATE>)', Keyword.Namespace),
 
             # strings
-            (r'"""\s+(?:.|\n)*?\s+"""', String),
+            (r'"""\s(?:.|\n)*?\s"""', String),
             (r'"(?:\\\\|\\"|[^"])*"', String),
             (r'CHAR:\s+(\\[\\abfnrstv]*|\S)\s', String.Char),
 
diff --git a/pygments/lexers/math.py b/pygments/lexers/math.py
index f500231..6188562 100644
--- a/pygments/lexers/math.py
+++ b/pygments/lexers/math.py
@@ -182,7 +182,7 @@ class MatlabLexer(RegexLexer):
             (r'[^\']*\'', String, '#pop')
         ],
         'deffunc': [
-            (r'(\s*)(?:(.+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
+            (r'(\s*)(?:(\S+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
              bygroups(Text.Whitespace, Text, Text.Whitespace, Punctuation,
                       Text.Whitespace, Name.Function, Punctuation, Text,
                       Punctuation, Text.Whitespace), '#pop'),
@@ -627,7 +627,7 @@ class OctaveLexer(RegexLexer):
             (r"[^']*'", String, '#pop'),
         ],
         'deffunc': [
-            (r'(\s*)(?:(.+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
+            (r'(\s*)(?:(\S+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
              bygroups(Text.Whitespace, Text, Text.Whitespace, Punctuation,
                       Text.Whitespace, Name.Function, Punctuation, Text,
                       Punctuation, Text.Whitespace), '#pop'),
@@ -694,7 +694,7 @@ class ScilabLexer(RegexLexer):
             (r'.', String, '#pop'),
         ],
         'deffunc': [
-            (r'(\s*)(?:(.+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
+            (r'(\s*)(?:(\S+)(\s*)(=)(\s*))?(.+)(\()(.*)(\))(\s*)',
              bygroups(Text.Whitespace, Text, Text.Whitespace, Punctuation,
                       Text.Whitespace, Name.Function, Punctuation, Text,
                       Punctuation, Text.Whitespace), '#pop'),
diff --git a/pygments/lexers/templates.py b/pygments/lexers/templates.py
index 8485072..d1c4308 100644
--- a/pygments/lexers/templates.py
+++ b/pygments/lexers/templates.py
@@ -1408,7 +1408,7 @@ class EvoqueLexer(RegexLexer):
             # see doc for handling first name arg: /directives/evoque/
             #+ minor inconsistency: the "name" in e.g. $overlay{name=site_base}
             # should be using(PythonLexer), not passed out as String
-            (r'(\$)(evoque|overlay)(\{(%)?)(\s*[#\w\-"\'.]+[^=,%}]+?)?'
+            (r'(\$)(evoque|overlay)(\{(%)?)(\s*[#\w\-"\'.]+)?'
              r'(.*?)((?(4)%)\})',
              bygroups(Punctuation, Name.Builtin, Punctuation, None,
                       String, using(PythonLexer), Punctuation)),