github-linguist 7.6.1 → 7.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +5 -5
  2. data/bin/github-linguist +17 -4
  3. data/grammars/annotation.liquidhaskell.haskell.json +11 -11
  4. data/grammars/etc.json +212 -3
  5. data/grammars/hidden.manref.json +29 -0
  6. data/grammars/hint.haskell.json +11 -11
  7. data/grammars/hint.message.haskell.json +11 -11
  8. data/grammars/hint.type.haskell.json +11 -11
  9. data/grammars/injections.etc.json +601 -1
  10. data/grammars/source.abap.json +7 -7
  11. data/grammars/source.abnf.json +23 -1
  12. data/grammars/source.ahk.json +3 -3
  13. data/grammars/source.angelscript.json +1 -1
  14. data/grammars/source.ballerina.json +54 -18
  15. data/grammars/source.csound.json +1 -1
  16. data/grammars/source.css.json +2 -2
  17. data/grammars/source.css.scss.json +164 -15
  18. data/grammars/source.curlrc.json +869 -65
  19. data/grammars/source.dart.json +1 -1
  20. data/grammars/source.dircolors.json +39 -0
  21. data/grammars/source.direct-x.json +135 -0
  22. data/grammars/source.ebnf.json +67 -39
  23. data/grammars/source.elixir.json +43 -0
  24. data/grammars/source.gfm.json +1 -1
  25. data/grammars/source.gitconfig.json +1 -1
  26. data/grammars/source.hack.json +196 -80
  27. data/grammars/source.haskell.json +11 -11
  28. data/grammars/source.hosts.json +40 -0
  29. data/grammars/source.hsig.json +11 -11
  30. data/grammars/source.igor.json +2 -2
  31. data/grammars/source.ini.npmrc.json +311 -0
  32. data/grammars/source.inno.json +133 -0
  33. data/grammars/source.inputrc.json +500 -0
  34. data/grammars/source.js.json +4 -4
  35. data/grammars/source.julia.json +45 -3
  36. data/grammars/source.kotlin.json +1 -1
  37. data/grammars/source.lex.json +4 -4
  38. data/grammars/source.m4.json +141 -99
  39. data/grammars/source.man-conf.json +46 -34
  40. data/grammars/source.matlab.json +225 -35
  41. data/grammars/source.mcfunction-snapshot.json +21388 -561
  42. data/grammars/source.mcfunction.json +55 -5
  43. data/grammars/source.mlir.json +37 -317
  44. data/grammars/source.mrc.json +858 -0
  45. data/grammars/source.opts.json +12 -2
  46. data/grammars/source.p4.json +21 -5
  47. data/grammars/source.prisma.json +428 -0
  48. data/grammars/source.python.json +2 -0
  49. data/grammars/source.reason.json +28 -16
  50. data/grammars/source.rego.json +124 -0
  51. data/grammars/source.sass.json +158 -3
  52. data/grammars/source.scala.json +26 -15
  53. data/grammars/source.ssh-config.json +1 -14
  54. data/grammars/source.swift.json +162 -2
  55. data/grammars/source.ts.json +74 -25
  56. data/grammars/source.tsx.json +75 -26
  57. data/grammars/source.v.json +58 -16
  58. data/grammars/source.vim-snippet.json +645 -0
  59. data/grammars/source.viml.json +5 -5
  60. data/grammars/source.wgetrc.json +1640 -0
  61. data/grammars/source.zig.json +169 -304
  62. data/grammars/text.html.php.blade.json +1 -1
  63. data/grammars/text.html.riot.json +788 -0
  64. data/grammars/text.muse.json +1471 -0
  65. data/grammars/text.tex.latex.haskell.json +11 -11
  66. data/grammars/text.vim-help.json +383 -0
  67. data/grammars/version +1 -1
  68. data/lib/linguist/VERSION +1 -1
  69. data/lib/linguist/blob_helper.rb +4 -2
  70. data/lib/linguist/generated.rb +39 -12
  71. data/lib/linguist/heuristics.yml +16 -1
  72. data/lib/linguist/languages.json +1 -1
  73. data/lib/linguist/languages.yml +183 -14
  74. data/lib/linguist/linguist.bundle +0 -0
  75. data/lib/linguist/samples.json +6910 -536
  76. data/lib/linguist/vendor.yml +6 -0
  77. metadata +18 -5
  78. data/grammars/source.jlex.json +0 -322
@@ -1409,18 +1409,18 @@
1409
1409
  "patterns": [
1410
1410
  {
1411
1411
  "name": "constant.numeric.hex.js",
1412
- "match": "\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+\\b(?!\\$)"
1412
+ "match": "\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+n?\\b(?!\\$)"
1413
1413
  },
1414
1414
  {
1415
1415
  "name": "constant.numeric.binary.js",
1416
- "match": "\\b(?\u003c!\\$)0(b|B)[01]+\\b(?!\\$)"
1416
+ "match": "\\b(?\u003c!\\$)0(b|B)[01]+n?\\b(?!\\$)"
1417
1417
  },
1418
1418
  {
1419
1419
  "name": "constant.numeric.octal.js",
1420
- "match": "\\b(?\u003c!\\$)0(o|O)?[0-7]+\\b(?!\\$)"
1420
+ "match": "\\b(?\u003c!\\$)0(o|O)?[0-7]+n?\\b(?!\\$)"
1421
1421
  },
1422
1422
  {
1423
- "match": "(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # 1.1E+3\n (?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+\\b)| # 1.E+3\n (?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # .1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+\\b)| # 1.1\n (?:\\b[0-9]+(\\.)\\B)| # 1.\n (?:\\B(\\.)[0-9]+\\b)| # .1\n (?:\\b[0-9]+\\b(?!\\.)) # 1\n)(?!\\$)",
1423
+ "match": "(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # 1.1E+3\n (?:\\b[0-9]+(\\.)[eE][+-]?[0-9]+\\b)| # 1.E+3\n (?:\\B(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # .1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+\\b)| # 1.1\n (?:\\b[0-9]+(\\.)\\B)| # 1.\n (?:\\B(\\.)[0-9]+\\b)| # .1\n (?:\\b[0-9]+n?\\b(?!\\.)) # 1n\n)(?!\\$)",
1424
1424
  "captures": {
1425
1425
  "0": {
1426
1426
  "name": "constant.numeric.decimal.js"
@@ -287,7 +287,7 @@
287
287
  "match": "(?:\u003c\u003c|\u003e\u003e\u003e|\u003e\u003e|\\.\u003e\u003e\u003e|\\.\u003e\u003e|\\.\u003c\u003c)"
288
288
  },
289
289
  {
290
- "match": "(?:\\s*(::|\u003e:|\u003c:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\".+\"))?)))(?:\\.\\.\\.)?",
290
+ "match": "(?:\\s*(::|\u003e:|\u003c:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\".+?(?\u003c!\\\\)\"))?)))(?:\\.\\.\\.)?",
291
291
  "captures": {
292
292
  "1": {
293
293
  "name": "keyword.operator.relation.julia"
@@ -616,12 +616,51 @@
616
616
  }
617
617
  }
618
618
  },
619
+ {
620
+ "name": "string.quoted.other.julia",
621
+ "begin": "(raw)(\"\"\")",
622
+ "end": "\"\"\"",
623
+ "beginCaptures": {
624
+ "1": {
625
+ "name": "support.function.macro.julia"
626
+ },
627
+ "2": {
628
+ "name": "punctuation.definition.string.begin.julia"
629
+ }
630
+ },
631
+ "endCaptures": {
632
+ "0": {
633
+ "name": "punctuation.definition.string.end.julia"
634
+ }
635
+ }
636
+ },
637
+ {
638
+ "name": "string.quoted.other.julia",
639
+ "begin": "(raw)(\")",
640
+ "end": "\"",
641
+ "beginCaptures": {
642
+ "1": {
643
+ "name": "support.function.macro.julia"
644
+ },
645
+ "2": {
646
+ "name": "punctuation.definition.string.begin.julia"
647
+ }
648
+ },
649
+ "endCaptures": {
650
+ "0": {
651
+ "name": "punctuation.definition.string.end.julia"
652
+ }
653
+ }
654
+ },
619
655
  {
620
656
  "name": "embed.markdown.julia",
621
657
  "contentName": "source.gfm",
622
658
  "begin": "(md)(\"\"\")",
623
659
  "end": "\"\"\"",
624
660
  "patterns": [
661
+ {
662
+ "include": "source.gfm"
663
+ },
625
664
  {
626
665
  "include": "source.gfm"
627
666
  },
@@ -649,6 +688,9 @@
649
688
  "begin": "(md)(\")",
650
689
  "end": "\"",
651
690
  "patterns": [
691
+ {
692
+ "include": "source.gfm"
693
+ },
652
694
  {
653
695
  "include": "source.gfm"
654
696
  },
@@ -672,7 +714,7 @@
672
714
  },
673
715
  {
674
716
  "name": "string.docstring.julia",
675
- "begin": "^\\s?(doc|raw)?(\"\"\")\\s?$",
717
+ "begin": "^\\s?(doc)?(\"\"\")\\s?$",
676
718
  "end": "(\"\"\")",
677
719
  "patterns": [
678
720
  {
@@ -699,7 +741,7 @@
699
741
  {
700
742
  "name": "string.quoted.single.julia",
701
743
  "begin": "'",
702
- "end": "'",
744
+ "end": "'(?!')",
703
745
  "patterns": [
704
746
  {
705
747
  "include": "#string_escaped_char"
@@ -361,7 +361,7 @@
361
361
  },
362
362
  {
363
363
  "name": "storage.modifier.kotlin",
364
- "match": "\\b(external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|override|vararg|typealias|expect|actual|suspend|yield)\\b"
364
+ "match": "\\b(external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|override|vararg|typealias|expect|actual|suspend|yield|lateinit)\\b"
365
365
  },
366
366
  {
367
367
  "name": "keyword.control.catch-exception.kotlin",
@@ -102,20 +102,20 @@
102
102
  }
103
103
  }
104
104
  },
105
- "jlex": {
106
- "name": "meta.jlex.lex",
105
+ "jflex": {
106
+ "name": "meta.jflex.lex",
107
107
  "begin": "^(?=\\s*(?:package|import)\\s+\\w)",
108
108
  "end": "(?=A)B",
109
109
  "patterns": [
110
110
  {
111
- "include": "source.jlex"
111
+ "include": "source.jflex"
112
112
  }
113
113
  ]
114
114
  },
115
115
  "main": {
116
116
  "patterns": [
117
117
  {
118
- "include": "#jlex"
118
+ "include": "#jflex"
119
119
  },
120
120
  {
121
121
  "include": "#comments"
@@ -3,16 +3,7 @@
3
3
  "scopeName": "source.m4",
4
4
  "patterns": [
5
5
  {
6
- "include": "#comment"
7
- },
8
- {
9
- "include": "#dnl"
10
- },
11
- {
12
- "include": "#define"
13
- },
14
- {
15
- "include": "#builtins"
6
+ "include": "#main"
16
7
  }
17
8
  ],
18
9
  "repository": {
@@ -28,91 +19,70 @@
28
19
  }
29
20
  ]
30
21
  },
31
- "builtins": {
32
- "name": "meta.builtin.$1.m4",
33
- "begin": "(?x) (?\u003c!`|\\w)\n(changequote|divert|divnum|dumpdef|errprint|eval|ifdef|ifelse\n|include|incr|index|len|maketemp|sinclude|substr|syscmd|translit\n|undefine|undivert)\n(\\()",
34
- "end": "\\)",
35
- "patterns": [
36
- {
37
- "include": "#macro-innards"
38
- }
39
- ],
22
+ "comment": {
23
+ "name": "comment.line.number-sign.m4",
24
+ "begin": "#",
25
+ "end": "$",
40
26
  "beginCaptures": {
41
- "1": {
42
- "name": "entity.name.function.m4"
43
- },
44
- "2": {
45
- "name": "punctuation.definition.parameters.begin.bracket.round.m4"
46
- }
47
- },
48
- "endCaptures": {
49
27
  "0": {
50
- "name": "punctuation.definition.parameters.end.bracket.round.m4"
28
+ "name": "punctuation.definition.comment.m4"
51
29
  }
52
30
  }
53
31
  },
54
- "comment": {
55
- "patterns": [
56
- {
57
- "name": "comment.line.number-sign.m4",
58
- "begin": "#",
59
- "end": "$",
60
- "beginCaptures": {
61
- "0": {
62
- "name": "punctuation.definition.comment.m4"
63
- }
64
- }
32
+ "dnl": {
33
+ "name": "comment.line.dnl.m4",
34
+ "begin": "dnl",
35
+ "end": "$\\n?",
36
+ "beginCaptures": {
37
+ "0": {
38
+ "name": "keyword.operator.macro.dnl.m4"
65
39
  }
66
- ]
40
+ }
67
41
  },
68
- "define": {
69
- "name": "meta.macro-definition.m4",
70
- "begin": "(?\u003c!`|\\w)(define)(\\()\\s*",
71
- "end": "\\)",
42
+ "macro": {
72
43
  "patterns": [
73
44
  {
74
- "name": "entity.name.function.quoted.m4",
75
- "match": "\\G(`)(?![0-9])\\w+(')",
45
+ "name": "meta.macro.m4",
46
+ "match": "(?x) (?\u003c!\\w)\n( __file__\n| __line__\n| __oline__\n| AC_AIX\n| AC_ALLOCA\n| AC_ARG_ARRAY\n| AC_ARG_PROGRAM\n| AC_AUTOCONF_VERSION\n| AC_CACHE_LOAD\n| AC_CACHE_SAVE\n| AC_CANONICAL_BUILD\n| AC_CANONICAL_HOST\n| AC_CANONICAL_SYSTEM\n| AC_CANONICAL_TARGET\n| AC_CHAR_UNSIGNED\n| AC_CONST\n| AC_CROSS_CHECK\n| AC_CYGWIN\n| AC_C_BACKSLASH_A\n| AC_C_CHAR_UNSIGNED\n| AC_C_CONST\n| AC_C_CROSS\n| AC_C_FLEXIBLE_ARRAY_MEMBER\n| AC_C_INLINE\n| AC_C_LONG_DOUBLE\n| AC_C_PROTOTYPES\n| AC_C_RESTRICT\n| AC_C_STRINGIZE\n| AC_C_TYPEOF\n| AC_C_VARARRAYS\n| AC_C_VOLATILE\n| AC_DECL_SYS_SIGLIST\n| AC_DECL_YYTEXT\n| AC_DIR_HEADER\n| AC_DISABLE_OPTION_CHECKING\n| AC_DYNIX_SEQ\n| AC_EMXOS2\n| AC_ERLANG_SUBST_ERTS_VER\n| AC_ERLANG_SUBST_INSTALL_LIB_DIR\n| AC_ERLANG_SUBST_LIB_DIR\n| AC_ERLANG_SUBST_ROOT_DIR\n| AC_ERROR\n| AC_EXEEXT\n| AC_F77_LIBRARY_LDFLAGS\n| AC_F77_MAIN\n| AC_F77_WRAPPERS\n| AC_FC_LIBRARY_LDFLAGS\n| AC_FC_MAIN\n| AC_FC_WRAPPERS\n| AC_FIND_XTRA\n| AC_FIND_X\n| AC_FOREACH\n| AC_FUNC_ALLOCA\n| AC_FUNC_CHECK\n| AC_FUNC_CHOWN\n| AC_FUNC_CLOSEDIR_VOID\n| AC_FUNC_ERROR_AT_LINE\n| AC_FUNC_FNMATCH_GNU\n| AC_FUNC_FNMATCH\n| AC_FUNC_FORK\n| AC_FUNC_FSEEKO\n| AC_FUNC_GETGROUPS\n| AC_FUNC_GETLOADAVG\n| AC_FUNC_GETMNTENT\n| AC_FUNC_GETPGRP\n| AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK\n| AC_FUNC_LSTAT\n| AC_FUNC_MALLOC\n| AC_FUNC_MBRTOWC\n| AC_FUNC_MEMCMP\n| AC_FUNC_MKTIME\n| AC_FUNC_MMAP\n| AC_FUNC_OBSTACK\n| AC_FUNC_REALLOC\n| AC_FUNC_SELECT_ARGTYPES\n| AC_FUNC_SETPGRP\n| AC_FUNC_SETVBUF_REVERSED\n| AC_FUNC_STAT\n| AC_FUNC_STRCOLL\n| AC_FUNC_STRERROR_R\n| AC_FUNC_STRFTIME\n| AC_FUNC_STRNLEN\n| AC_FUNC_STRTOD\n| AC_FUNC_STRTOLD\n| AC_FUNC_UTIME_NULL\n| AC_FUNC_VPRINTF\n| AC_FUNC_WAIT3\n| AC_GCC_TRADITIONAL\n| AC_GETGROUPS_T\n| AC_GETLOADAVG\n| AC_GNU_SOURCE\n| AC_HAVE_FUNCS\n| AC_HAVE_HEADERS\n| AC_HAVE_POUNDBANG\n| AC_HEADER_ASSERT\n| AC_HEADER_CHECK\n| AC_HEADER_DIRENT\n| AC_HEADER_EGREP\n| AC_HEADER_MAJOR\n| AC_HEADER_RESOLV\n| AC_HEADER_STAT\n| AC_HEADER_STDBOOL\n| AC_HEADER_STDC\n| AC_HEADER_SYS_WAIT\n| AC_HEADER_TIME\n| AC_HEADER_TIOCGWINSZ\n| AC_HELP_STRING\n| AC_INLINE\n| AC_INT_16_BITS\n| AC_IRIX_SUN\n| AC_ISC_POSIX\n| AC_LANG_CPLUSPLUS\n| AC_LANG_C\n| AC_LANG_FORTRAN77\n| AC_LANG_RESTORE\n| AC_LANG_SAVE\n| AC_LANG_WERROR\n| AC_LN_S\n| AC_LONG_64_BITS\n| AC_LONG_DOUBLE\n| AC_LONG_FILE_NAMES\n| AC_MAJOR_HEADER\n| AC_MEMORY_H\n| AC_MINGW32\n| AC_MINIX\n| AC_MINUS_C_MINUS_O\n| AC_MMAP\n| AC_MODE_T\n| AC_OBJEXT\n| AC_OFF_T\n| AC_OPENMP\n| AC_OUTPUT\n| AC_PATH_XTRA\n| AC_PATH_X\n| AC_PID_T\n| AC_PREFIX\n| AC_PRESERVE_HELP_ORDER\n| AC_PROGRAMS_CHECK\n| AC_PROGRAMS_PATH\n| AC_PROGRAM_CHECK\n| AC_PROGRAM_EGREP\n| AC_PROGRAM_PATH\n| AC_PROG_AWK\n| AC_PROG_CC_C89\n| AC_PROG_CC_C99\n| AC_PROG_CC_C_O\n| AC_PROG_CC_STDC\n| AC_PROG_CPP_WERROR\n| AC_PROG_CPP\n| AC_PROG_CXXCPP\n| AC_PROG_CXX_C_O\n| AC_PROG_EGREP\n| AC_PROG_F77_C_O\n| AC_PROG_FC_C_O\n| AC_PROG_FGREP\n| AC_PROG_GCC_TRADITIONAL\n| AC_PROG_GREP\n| AC_PROG_INSTALL\n| AC_PROG_LEX\n| AC_PROG_LN_S\n| AC_PROG_MAKE_SET\n| AC_PROG_MKDIR_P\n| AC_PROG_OBJCPP\n| AC_PROG_OBJCXXCPP\n| AC_PROG_RANLIB\n| AC_PROG_SED\n| AC_PROG_YACC\n| AC_REMOTE_TAPE\n| AC_REPLACE_FNMATCH\n| AC_REQUIRE_CPP\n| AC_RESTARTABLE_SYSCALLS\n| AC_RETSIGTYPE\n| AC_RSH\n| AC_SCO_INTL\n| AC_SETVBUF_REVERSED\n| AC_SET_MAKE\n| AC_SIZEOF_TYPE\n| AC_SIZE_T\n| AC_STAT_MACROS_BROKEN\n| AC_STDC_HEADERS\n| AC_STRCOLL\n| AC_STRUCT_DIRENT_D_INO\n| AC_STRUCT_DIRENT_D_TYPE\n| AC_STRUCT_ST_BLKSIZE\n| AC_STRUCT_ST_BLOCKS\n| AC_STRUCT_ST_RDEV\n| AC_STRUCT_TIMEZONE\n| AC_STRUCT_TM\n| AC_ST_BLKSIZE\n| AC_ST_BLOCKS\n| AC_ST_RDEV\n| AC_SYS_INTERPRETER\n| AC_SYS_LARGEFILE\n| AC_SYS_LONG_FILE_NAMES\n| AC_SYS_POSIX_TERMIOS\n| AC_SYS_RESTARTABLE_SYSCALLS\n| AC_SYS_SIGLIST_DECLARED\n| AC_TEST_CPP\n| AC_TEST_PROGRAM\n| AC_TIMEZONE\n| AC_TIME_WITH_SYS_TIME\n| AC_TYPE_GETGROUPS\n| AC_TYPE_INT16_T\n| AC_TYPE_INT32_T\n| AC_TYPE_INT64_T\n| AC_TYPE_INT8_T\n| AC_TYPE_INTMAX_T\n| AC_TYPE_INTPTR_T\n| AC_TYPE_LONG_DOUBLE_WIDER\n| AC_TYPE_LONG_DOUBLE\n| AC_TYPE_LONG_LONG_INT\n| AC_TYPE_MBSTATE_T\n| AC_TYPE_MODE_T\n| AC_TYPE_OFF_T\n| AC_TYPE_PID_T\n| AC_TYPE_SIGNAL\n| AC_TYPE_SIZE_T\n| AC_TYPE_SSIZE_T\n| AC_TYPE_UID_T\n| AC_TYPE_UINT16_T\n| AC_TYPE_UINT32_T\n| AC_TYPE_UINT64_T\n| AC_TYPE_UINT8_T\n| AC_TYPE_UINTMAX_T\n| AC_TYPE_UINTPTR_T\n| AC_TYPE_UNSIGNED_LONG_LONG_INT\n| AC_UID_T\n| AC_UNISTD_H\n| AC_USE_SYSTEM_EXTENSIONS\n| AC_USG\n| AC_UTIME_NULL\n| AC_VFORK\n| AC_VPRINTF\n| AC_WAIT3\n| AC_WARN\n| AC_WORDS_BIGENDIAN\n| AC_XENIX_DIR\n| AC_YYTEXT_POINTER\n| AH_HEADER\n| AM_MAINTAINER_MODE\n| AM_PATH_LISPDIR\n| AM_PROG_AS\n| AM_PROG_CC_C_O\n| AM_PROG_LEX\n| AM_PROG_GCJ\n| AM_PROG_MKDIR_P\n| AM_SILENT_RULES\n| AM_WITH_DMALLOC\n| AS_BOURNE_COMPATIBLE\n| AS_INIT\n| AS_LINENO_PREPARE\n| AS_MESSAGE_FD\n| AS_MESSAGE_LOG_FD\n| AS_ME_PREPARE\n| AS_ORIGINAL_STDIN_FD\n| AS_SHELL_SANITIZE\n| AT_CLEANUP\n| AT_COLOR_TESTS\n| m4_init\n| m4_location\n) \\b",
76
47
  "captures": {
77
48
  "1": {
78
- "name": "punctuation.definition.string.begin.m4"
79
- },
80
- "2": {
81
- "name": "punctuation.definition.string.end.m4"
49
+ "name": "keyword.operator.macro.$1.m4"
82
50
  }
83
51
  }
84
52
  },
85
53
  {
86
- "name": "entity.name.function.m4",
87
- "match": "\\G(?![0-9])\\w+"
54
+ "name": "meta.macro.m4",
55
+ "contentName": "meta.parameters.m4",
56
+ "begin": "(?x) (?\u003c!\\w)\n( builtin\n| changecom\n| changequote\n| changesyntax\n| changeword\n| debugfile\n| debugmode\n| decr\n| define\n| divert\n| divnum\n| dumpdef\n| errprint\n| esyscmd\n| eval\n| format\n| ifdef\n| ifelse\n| include\n| incr\n| index\n| indir\n| len\n| maketemp\n| pushdef\n| shift\n| sinclude\n| substr\n| syscmd\n| sysval\n| traceoff\n| traceon\n| translit\n| undefine\n| undivert\n| _AM_DEPENDENCIES\n| AC_ARG_ENABLE\n| AC_ARG_VAR\n| AC_ARG_WITH\n| AC_BEFORE\n| AC_CACHE_CHECK\n| AC_CACHE_VAL\n| AC_CHECKING\n| AC_CHECK_ALIGNOF\n| AC_CHECK_DECLS_ONCE\n| AC_CHECK_DECLS\n| AC_CHECK_DECL\n| AC_CHECK_FILES\n| AC_CHECK_FILE\n| AC_CHECK_FUNCS_ONCE\n| AC_CHECK_FUNCS\n| AC_CHECK_FUNC\n| AC_CHECK_HEADERS_ONCE\n| AC_CHECK_HEADERS\n| AC_CHECK_HEADER\n| AC_CHECK_LIB\n| AC_CHECK_MEMBERS\n| AC_CHECK_MEMBER\n| AC_CHECK_PROGS\n| AC_CHECK_PROG\n| AC_CHECK_SIZEOF\n| AC_CHECK_TARGET_TOOLS\n| AC_CHECK_TARGET_TOOL\n| AC_CHECK_TOOLS\n| AC_CHECK_TOOL\n| AC_CHECK_TYPES\n| AC_CHECK_TYPE\n| AC_COMPILE_CHECK\n| AC_COMPILE_IFELSE\n| AC_COMPUTE_INT\n| AC_CONFIG_AUX_DIR\n| AC_CONFIG_COMMANDS_POST\n| AC_CONFIG_COMMANDS_PRE\n| AC_CONFIG_COMMANDS\n| AC_CONFIG_FILES\n| AC_CONFIG_HEADERS\n| AC_CONFIG_LIBOBJ_DIR\n| AC_CONFIG_LINKS\n| AC_CONFIG_MACRO_DIR\n| AC_CONFIG_SRCDIR\n| AC_CONFIG_SUBDIRS\n| AC_CONFIG_TESTDIR\n| AC_COPYRIGHT\n| AC_DEFINE_UNQUOTED\n| AC_DEFINE\n| AC_DEFUN_ONCE\n| AC_DEFUN\n| AC_DIAGNOSE\n| AC_EGREP_CPP\n| AC_EGREP_HEADER\n| AC_ENABLE\n| AC_ERLANG_CHECK_LIB\n| AC_ERLANG_SUBST_INSTALL_LIB_SUBDIR\n| AC_F77_FUNC\n| AC_FATAL\n| AC_FC_FUNC\n| AC_FC_SRCEXT\n| AC_HAVE_LIBRARY\n| AC_INIT\n| AC_LANG_ASSERT\n| AC_LANG_CALL\n| AC_LANG_CONFTEST\n| AC_LANG_FUNC_LINK_TRY\n| AC_LANG_PROGRAM\n| AC_LANG_PUSH\n| AC_LANG_SOURCE\n| AC_LANG\n| AC_LIBOBJ\n| AC_LIBSOURCES\n| AC_LIBSOURCE\n| AC_LINK_FILES\n| AC_LINK_IFELSE\n| AC_MSG_CHECKING\n| AC_MSG_ERROR\n| AC_MSG_FAILURE\n| AC_MSG_NOTICE\n| AC_MSG_RESULT\n| AC_MSG_WARN\n| AC_OBSOLETE_COMMANDS\n| AC_PATH_PROGS_FEATURE_CHECK\n| AC_PATH_PROGS\n| AC_PATH_PROG\n| AC_PATH_TARGET_TOOL\n| AC_PATH_TOOL\n| AC_PREFIX_DEFAULT\n| AC_PREFIX_PROGRAM\n| AC_PREPROC_IFELSE\n| AC_PREREQ\n| AC_REPLACE_FUNCS\n| AC_REQUIRE_AUX_FILE\n| AC_REQUIRE\n| AC_REVISION\n| AC_RUN_IFELSE\n| AC_SEARCH_LIBS\n| AC_SUBST_FILE\n| AC_SUBST\n| AC_TRY_COMPILE\n| AC_TRY_CPP\n| AC_TRY_LINK_FUNC\n| AC_TRY_LINK\n| AC_TRY_RUN\n| AC_VERBOSE\n| AC_WARNING\n| AC_WITH\n| AH_BOTTOM\n| AH_TEMPLATE\n| AH_TOP\n| AH_VERBATIM\n| AM_DEP_TRACK\n| AM_INIT_AUTOMAKE\n| AM_MAKE_INCLUDE\n| AM_MISSING_PROG\n| AM_OUTPUT_DEPENDENCY_COMMANDS\n| AM_PROG_AR\n| AM_PROG_INSTALL_STRIP\n| AM_PROG_UPC\n| AM_SANITY_CHECK\n| AM_SET_DEPDIR\n| AS_BOX\n| AS_CASE\n| AS_DIRNAME\n| AS_ECHO_N\n| AS_ECHO\n| AS_ESCAPE\n| AS_HELP_STRING\n| AS_IF\n| AS_INIT_GENERATED\n| AS_LITERAL_IF\n| AS_LITERAL_WORD_IF\n| AS_MKDIR_P\n| AS_SET_CATFILE\n| AS_SET_STATUS\n| AS_TR_CPP\n| AS_TR_SH\n| AS_UNSET\n| AS_VAR_APPEND\n| AS_VAR_ARITH\n| AS_VAR_COPY\n| AS_VAR_IF\n| AS_VAR_POPDEF\n| AS_VAR_PUSHDEF\n| AS_VAR_SET_IF\n| AS_VAR_SET\n| AS_VAR_TEST_SET\n| AS_VERSION_COMPARE\n| AT_ARG_OPTION_ARG\n| AT_ARG_OPTION\n| AT_BANNER\n| AT_CAPTURE_FILE\n| AT_CHECK_EUNIT\n| AT_CHECK_UNQUOTED\n| AT_CHECK\n| AT_COPYRIGHT\n| AT_DATA\n| AT_FAIL_IF\n| AT_KEYWORDS\n| AT_SETUP\n| AT_SKIP_IF\n| AT_TESTED\n| AT_XFAIL_IF\n| AU_ALIAS\n| AU_DEFUN\n| m4_append_uniq_w\n| m4_append_uniq\n| m4_append\n| m4_apply\n| m4_argn\n| m4_assert\n| m4_bmatch\n| m4_bpatsubsts\n| m4_bpatsubst\n| m4_bregexp\n| m4_builtin\n| m4_car\n| m4_case\n| m4_cdr\n| m4_changecom\n| m4_changequote\n| m4_chomp_all\n| m4_chomp\n| m4_cleardivert\n| m4_cmp\n| m4_cond\n| m4_copy_force\n| m4_copy\n| m4_count\n| m4_curry\n| m4_debugfile\n| m4_debugmode\n| m4_decr\n| m4_default_nblank_quoted\n| m4_default_nblank\n| m4_default_quoted\n| m4_default\n| m4_define\n| m4_defn\n| m4_divert_once\n| m4_divert_push\n| m4_divert_text\n| m4_divert\n| m4_divnum\n| m4_do\n| m4_dquote_elt\n| m4_dquote\n| m4_dumpdefs\n| m4_dumpdef\n| m4_echo\n| m4_errprintn\n| m4_errprint\n| m4_escape\n| m4_esyscmd_s\n| m4_esyscmd\n| m4_eval\n| m4_exit\n| m4_expand\n| m4_fatal\n| m4_flatten\n| m4_foreach_w\n| m4_foreach\n| m4_format\n| m4_for\n| m4_ifblank\n| m4_ifdef\n| m4_ifnblank\n| m4_ifndef\n| m4_ifset\n| m4_ifvaln\n| m4_ifval\n| m4_if\n| m4_ignore\n| m4_include\n| m4_incr\n| m4_index\n| m4_indir\n| m4_len\n| m4_list_cmp\n| m4_make_list\n| m4_maketemp\n| m4_map_args_pair\n| m4_map_args_w\n| m4_map_args\n| m4_map_sep\n| m4_mapall_sep\n| m4_mapall\n| m4_map\n| m4_max\n| m4_min\n| m4_mkstemp\n| m4_normalize\n| m4_n\n| m4_pattern_allow\n| m4_pattern_forbid\n| m4_popdef\n| m4_pushdef\n| m4_quote\n| m4_re_escape\n| m4_rename_force\n| m4_rename\n| m4_reverse\n| m4_set_add_all\n| m4_set_add\n| m4_set_contains\n| m4_set_contents\n| m4_set_delete\n| m4_set_difference\n| m4_set_dump\n| m4_set_empty\n| m4_set_foreach\n| m4_set_intersection\n| m4_set_listc\n| m4_set_list\n| m4_set_map_sep\n| m4_set_map\n| m4_set_remove\n| m4_set_size\n| m4_set_union\n| m4_shift2\n| m4_shift3\n| m4_shiftn\n| m4_shift\n| m4_sign\n| m4_sinclude\n| m4_split\n| m4_stack_foreach_lifo\n| m4_stack_foreach_sep_lifo\n| m4_stack_foreach_sep\n| m4_stack_foreach\n| m4_strip\n| m4_substr\n| m4_syscmd\n| m4_sysval\n| m4_text_box\n| m4_text_wrap\n| m4_tolower\n| m4_toupper\n| m4_traceoff\n| m4_traceon\n| m4_translit\n| m4_undefine\n| m4_undivert\n| m4_unquote\n| m4_version_compare\n| m4_version_prereq\n| m4_warn\n| m4_wrap_lifo\n| m4_wrap\n) (?=\\()",
57
+ "end": "(?\u003c=\\))",
58
+ "patterns": [
59
+ {
60
+ "include": "#macro-innards"
61
+ }
62
+ ],
63
+ "beginCaptures": {
64
+ "1": {
65
+ "name": "keyword.operator.macro.$1.m4"
66
+ }
67
+ }
88
68
  },
89
69
  {
90
- "include": "#macro-innards"
91
- }
92
- ],
93
- "beginCaptures": {
94
- "1": {
95
- "name": "storage.type.function.m4"
96
- },
97
- "2": {
98
- "name": "punctuation.definition.parameters.begin.bracket.round.m4"
99
- }
100
- },
101
- "endCaptures": {
102
- "0": {
103
- "name": "punctuation.definition.parameters.end.bracket.round.m4"
104
- }
105
- }
106
- },
107
- "dnl": {
108
- "name": "comment.line.dnl.m4",
109
- "begin": "dnl",
110
- "end": "$\\n?",
111
- "beginCaptures": {
112
- "0": {
113
- "name": "keyword.operator.builtin.dnl.m4"
70
+ "name": "meta.macro.m4",
71
+ "contentName": "meta.parameters.m4",
72
+ "begin": "(?x) (?\u003c!\\w)\n( AC_C_BIGENDIAN\n| AC_ERLANG_NEED_ERLC\n| AC_ERLANG_NEED_ERL\n| AC_ERLANG_PATH_ERLC\n| AC_ERLANG_PATH_ERL\n| AC_F77_DUMMY_MAIN\n| AC_FC_DUMMY_MAIN\n| AC_FC_FIXEDFORM\n| AC_FC_FREEFORM\n| AC_FC_LINE_LENGTH\n| AC_INCLUDES_DEFAULT\n| AC_LANG_POP\n| AC_OUTPUT\n| AC_PROG_CC\n| AC_PROG_CXX\n| AC_PROG_F77\n| AC_PROG_FC\n| AC_PROG_OBJCXX\n| AC_PROG_OBJC\n| AC_VALIDATE_CACHED_SYSTEM_TUPLE\n| AS_EXIT\n| AT_INIT\n| m4_combine\n| m4_divert_pop\n| m4_joinall\n| m4_join\n| m4_map_args_sep\n| m4_newline\n\n# The following macros have an undetermined arity, simply because I haven't researched their\n# actual definitions. Source: https://www.gnu.org/software/autoconf-archive/The-Macros.html\n| AX_ABSOLUTE_HEADER\n| AX_AC_APPEND_TO_FILE\n| AX_AC_PRINT_TO_FILE\n| AX_ADD_AM_MACRO_STATIC\n| AX_ADD_AM_MACRO\n| AX_ADD_AM_TRILINOS_MAKEFILE_EXPORT\n| AX_ADD_FORTIFY_SOURCE\n| AX_ADD_RECURSIVE_AM_MACRO_STATIC\n| AX_ADD_RECURSIVE_AM_MACRO\n| AX_AFS\n| AX_AM_JOBSERVER\n| AX_AM_MACROS_STATIC\n| AX_AM_MACROS\n| AX_AM_OVERRIDE_VAR\n| AX_APPEND_COMPILE_FLAGS\n| AX_APPEND_FLAG\n| AX_APPEND_LINK_FLAGS\n| AX_APPEND_TO_FILE\n| AX_ARG_WITH_PATH_STYLE\n| AX_ASM_INLINE\n| AX_AT_CHECK_PATTERN\n| AX_AUTO_INCLUDE_HEADERS\n| AX_BERKELEY_DB_CXX\n| AX_BERKELEY_DB\n| AX_BLAS_F77_FUNC\n| AX_BLAS\n| AX_BOOST_ASIO\n| AX_BOOST_BASE\n| AX_BOOST_CHRONO\n| AX_BOOST_CONTEXT\n| AX_BOOST_COROUTINE\n| AX_BOOST_DATE_TIME\n| AX_BOOST_FILESYSTEM\n| AX_BOOST_IOSTREAMS\n| AX_BOOST_LOCALE\n| AX_BOOST_LOG_SETUP\n| AX_BOOST_LOG\n| AX_BOOST_PROGRAM_OPTIONS\n| AX_BOOST_PYTHON\n| AX_BOOST_REGEX\n| AX_BOOST_SERIALIZATION\n| AX_BOOST_SIGNALS\n| AX_BOOST_SYSTEM\n| AX_BOOST_TEST_EXEC_MONITOR\n| AX_BOOST_THREAD\n| AX_BOOST_UNIT_TEST_FRAMEWORK\n| AX_BOOST_WAVE\n| AX_BOOST_WSERIALIZATION\n| AX_BUILD_DATE_EPOCH\n| AX_C99_INLINE\n| AX_CACHE_SIZE\n| AX_CAOLAN_CHECK_PACKAGE\n| AX_CAOLAN_SEARCH_PACKAGE\n| AX_CC_FOR_BUILD\n| AX_CC_MAXOPT\n| AX_CFLAGS_AIX_OPTION\n| AX_CFLAGS_FORCE_C89\n| AX_CFLAGS_HPUX_OPTION\n| AX_CFLAGS_IRIX_OPTION\n| AX_CFLAGS_NO_WRITABLE_STRINGS\n| AX_CFLAGS_STRICT_PROTOTYPES\n| AX_CFLAGS_SUN_OPTION\n| AX_CFLAGS_WARN_ALL\n| AX_CF_EBCDIC\n| AX_CHECK_ALIGNED_ACCESS_REQUIRED\n| AX_CHECK_ALLOCATED_CTIME\n| AX_CHECK_AWK_AND\n| AX_CHECK_AWK_ARGIND\n| AX_CHECK_AWK_ARRAY_DELETE_ELEM\n| AX_CHECK_AWK_ARRAY_DELETE\n| AX_CHECK_AWK_ARRAY_IN\n| AX_CHECK_AWK_ASORTI\n| AX_CHECK_AWK_ASORT\n| AX_CHECK_AWK_ASSOCIATIVE_ARRAY\n| AX_CHECK_AWK_ATAN2\n| AX_CHECK_AWK_COMPL\n| AX_CHECK_AWK_CONDITIONAL_EXPRESSION\n| AX_CHECK_AWK_COS\n| AX_CHECK_AWK_ENVIRON\n| AX_CHECK_AWK_ERRNO\n| AX_CHECK_AWK_EXIT\n| AX_CHECK_AWK_EXP\n| AX_CHECK_AWK_GENSUB\n| AX_CHECK_AWK_GETLINE\n| AX_CHECK_AWK_GSUB\n| AX_CHECK_AWK_IGNORECASE\n| AX_CHECK_AWK_INDEX\n| AX_CHECK_AWK_INT\n| AX_CHECK_AWK_LENGTH\n| AX_CHECK_AWK_LOG\n| AX_CHECK_AWK_LSHIFT\n| AX_CHECK_AWK_MATCH_2PARMS\n| AX_CHECK_AWK_MATCH_3PARMS\n| AX_CHECK_AWK_OPERATOR_MULTIPLY_MULTIPLY\n| AX_CHECK_AWK_OPERATOR_SQUARE\n| AX_CHECK_AWK_OR\n| AX_CHECK_AWK_PRINTF\n| AX_CHECK_AWK_RAND\n| AX_CHECK_AWK_RSHIFT\n| AX_CHECK_AWK_SIN\n| AX_CHECK_AWK_SPLIT\n| AX_CHECK_AWK_SPRINTF\n| AX_CHECK_AWK_SQRT\n| AX_CHECK_AWK_SRAND\n| AX_CHECK_AWK_STRFTIME\n| AX_CHECK_AWK_STRTONUM\n| AX_CHECK_AWK_SUBSTR\n| AX_CHECK_AWK_SUB\n| AX_CHECK_AWK_SYSTEM\n| AX_CHECK_AWK_SYSTIME\n| AX_CHECK_AWK_TOLOWER\n| AX_CHECK_AWK_TOUPPER\n| AX_CHECK_AWK_USER_DEFINED_FUNCTIONS\n| AX_CHECK_AWK_VARIABLE_VALUE_PAIRS\n| AX_CHECK_AWK_VAR_REGEXP\n| AX_CHECK_AWK_XOR\n| AX_CHECK_AWK__V\n| AX_CHECK_AWK__X_ESCAPES\n| AX_CHECK_CLASSPATH\n| AX_CHECK_CLASS\n| AX_CHECK_COMPILE_FLAG\n| AX_CHECK_DEFINE\n| AX_CHECK_DOCBOOK_DTD\n| AX_CHECK_DOCBOOK_XSLT_MIN\n| AX_CHECK_DOCBOOK_XSLT\n| AX_CHECK_DOS_FILESYS\n| AX_CHECK_ENABLE_DEBUG\n| AX_CHECK_FUNC_IN\n| AX_CHECK_GD\n| AX_CHECK_GIRS_GJS\n| AX_CHECK_GIR_SYMBOLS_GJS\n| AX_CHECK_GLUT\n| AX_CHECK_GLU\n| AX_CHECK_GLX\n| AX_CHECK_GL\n| AX_CHECK_GNU_MAKE\n| AX_CHECK_ICU\n| AX_CHECK_JAVA_HOME\n| AX_CHECK_JAVA_PLUGIN\n| AX_CHECK_JUNIT\n| AX_CHECK_LIBRARY\n| AX_CHECK_LINK_FLAG\n| AX_CHECK_MYSQLR\n| AX_CHECK_MYSQL_DB\n| AX_CHECK_MYSQL\n| AX_CHECK_OFF64_T\n| AX_CHECK_OPENSSL\n| AX_CHECK_PAGE_ALIGNED_MALLOC\n| AX_CHECK_PATHFIND\n| AX_CHECK_PATHNAME_STYLE\n| AX_CHECK_PGSQL_DB\n| AX_CHECK_POSIX_REGCOMP\n| AX_CHECK_POSIX_SYSINFO\n| AX_CHECK_POSTGRES_DB\n| AX_CHECK_PREPROC_FLAG\n| AX_CHECK_RQRD_CLASS\n| AX_CHECK_SIGN\n| AX_CHECK_STRCSPN\n| AX_CHECK_STRFTIME\n| AX_CHECK_STRUCT_FOR\n| AX_CHECK_SYMBOL\n| AX_CHECK_SYS_SIGLIST\n| AX_CHECK_TYPEDEF\n| AX_CHECK_UNAME_SYSCALL\n| AX_CHECK_USER\n| AX_CHECK_VSCRIPT\n| AX_CHECK_X86_FEATURES\n| AX_CHECK_ZLIB\n| AX_CODE_COVERAGE\n| AX_COMPARE_VERSION\n| AX_COMPILER_FLAGS_CFLAGS\n| AX_COMPILER_FLAGS_CXXFLAGS\n| AX_COMPILER_FLAGS_GIR\n| AX_COMPILER_FLAGS_LDFLAGS\n| AX_COMPILER_FLAGS\n| AX_COMPILER_VENDOR\n| AX_COMPILER_VERSION\n| AX_COMPILE_CHECK_SIZEOF\n| AX_COMPUTE_RELATIVE_PATHS\n| AX_COMPUTE_STANDARD_RELATIVE_PATHS\n| AX_COND_WITH_LEVEL\n| AX_CONFIGURE_ARGS\n| AX_CONFIG_FEATURE\n| AX_COUNT_CPUS\n| AX_CPU_FREQ\n| AX_CPU_VENDOR\n| AX_CREATE_GENERIC_CONFIG\n| AX_CREATE_PKGCONFIG_INFO\n| AX_CREATE_STDINT_H\n| AX_CREATE_TARGET_H\n| AX_CVS\n| AX_CXX_BOOL\n| AX_CXX_COMPILE_STDCXX_0X\n| AX_CXX_COMPILE_STDCXX_11\n| AX_CXX_COMPILE_STDCXX_14\n| AX_CXX_COMPILE_STDCXX_17\n| AX_CXX_COMPILE_STDCXX\n| AX_CXX_COMPLEX_MATH_IN_NAMESPACE_STD\n| AX_CXX_CONST_CAST\n| AX_CXX_CPPFLAGS_STD_LANG\n| AX_CXX_CXXFLAGS_STD_LANG\n| AX_CXX_DEFAULT_TEMPLATE_PARAMETERS\n| AX_CXX_DELETE_METHOD\n| AX_CXX_DTOR_AFTER_ATEXIT\n| AX_CXX_DYNAMIC_CAST\n| AX_CXX_ENUM_COMPUTATIONS_WITH_CAST\n| AX_CXX_ENUM_COMPUTATIONS\n| AX_CXX_ERASE_ITERATOR_TYPE\n| AX_CXX_EXCEPTIONS\n| AX_CXX_EXPLICIT_INSTANTIATIONS\n| AX_CXX_EXPLICIT_TEMPLATE_FUNCTION_QUALIFICATION\n| AX_CXX_EXPLICIT\n| AX_CXX_EXTERN_TEMPLATE\n| AX_CXX_FULL_SPECIALIZATION_SYNTAX\n| AX_CXX_FUNCTION_NONTYPE_PARAMETERS\n| AX_CXX_FUNCTION_TRY_BLOCKS\n| AX_CXX_GCC_ABI_DEMANGLE\n| AX_CXX_GNUCXX_HASHMAP\n| AX_CXX_HAVE_BAD_FUNCTION_CALL\n| AX_CXX_HAVE_BIND\n| AX_CXX_HAVE_BIT_AND\n| AX_CXX_HAVE_BIT_OR\n| AX_CXX_HAVE_BIT_XOR\n| AX_CXX_HAVE_COMPLEX_MATH1\n| AX_CXX_HAVE_COMPLEX_MATH2\n| AX_CXX_HAVE_COMPLEX\n| AX_CXX_HAVE_CREF\n| AX_CXX_HAVE_EMPTY_IOSTREAM\n| AX_CXX_HAVE_EXT_HASH_MAP\n| AX_CXX_HAVE_EXT_HASH_SET\n| AX_CXX_HAVE_EXT_SLIST\n| AX_CXX_HAVE_FREEZE_SSTREAM\n| AX_CXX_HAVE_FUNCTION\n| AX_CXX_HAVE_HASH\n| AX_CXX_HAVE_IEEE_MATH\n| AX_CXX_HAVE_IS_BIND_EXPRESSION\n| AX_CXX_HAVE_IS_PLACEHOLDER\n| AX_CXX_HAVE_KOENIG_LOOKUP\n| AX_CXX_HAVE_LONG_LONG_FOR_IOSTREAM\n| AX_CXX_HAVE_MEM_FN\n| AX_CXX_HAVE_NUMERIC_LIMITS\n| AX_CXX_HAVE_PLACEHOLDERS\n| AX_CXX_HAVE_REFERENCE_WRAPPER\n| AX_CXX_HAVE_REF\n| AX_CXX_HAVE_SSTREAM\n| AX_CXX_HAVE_STD\n| AX_CXX_HAVE_STL\n| AX_CXX_HAVE_STRING_PUSH_BACK\n| AX_CXX_HAVE_SYSTEM_V_MATH\n| AX_CXX_HAVE_VALARRAY\n| AX_CXX_HAVE_VECTOR_AT\n| AX_CXX_HEADER_PRE_STDCXX\n| AX_CXX_HEADER_STDCXX_0X\n| AX_CXX_HEADER_STDCXX_98\n| AX_CXX_HEADER_STDCXX_TR1\n| AX_CXX_HEADER_TR1_UNORDERED_MAP\n| AX_CXX_HEADER_TR1_UNORDERED_SET\n| AX_CXX_HEADER_UNORDERED_MAP\n| AX_CXX_HEADER_UNORDERED_SET\n| AX_CXX_LDFLAGS_STD_LANG\n| AX_CXX_MEMBER_CONSTANTS\n| AX_CXX_MEMBER_TEMPLATES_OUTSIDE_CLASS\n| AX_CXX_MEMBER_TEMPLATES\n| AX_CXX_MUTABLE\n| AX_CXX_NAMESPACES\n| AX_CXX_NAMESPACE_STD\n| AX_CXX_NEW_FOR_SCOPING\n| AX_CXX_OLD_FOR_SCOPING\n| AX_CXX_PARTIAL_ORDERING\n| AX_CXX_PARTIAL_SPECIALIZATION\n| AX_CXX_REINTERPRET_CAST\n| AX_CXX_RESTRICT_THIS\n| AX_CXX_RTTI\n| AX_CXX_RVALUE_REFERENCES\n| AX_CXX_STATIC_CAST\n| AX_CXX_STLPORT_HASHMAP\n| AX_CXX_TEMPLATES_AS_TEMPLATE_ARGUMENTS\n| AX_CXX_TEMPLATES\n| AX_CXX_TEMPLATE_KEYWORD_QUALIFIER\n| AX_CXX_TEMPLATE_QUALIFIED_BASE_CLASS\n| AX_CXX_TEMPLATE_QUALIFIED_RETURN_TYPE\n| AX_CXX_TEMPLATE_SCOPED_ARGUMENT_MATCHING\n| AX_CXX_TYPENAME\n| AX_CXX_USE_NUMTRAIT\n| AX_CXX_VAR_PRETTYFUNC\n| AX_CXX_VERBOSE_TERMINATE_HANDLER\n| AX_CZMQ\n| AX_C_ARITHMETIC_RSHIFT\n| AX_C_COMPILE_VALUE\n| AX_C_DECLARE_BLOCK\n| AX_C_FLOAT_WORDS_BIGENDIAN\n| AX_C_LONG_LONG\n| AX_C_REFERENCEABLE_PASSED_VA_LIST\n| AX_C_VAR_FUNC\n| AX_C___ATTRIBUTE__\n| AX_DECL_WCHAR_MAX\n| AX_DEFINE_INTEGER_BITS\n| AX_DEFINE_SUB_PATH\n| AX_DIRNAME\n| AX_DIST_MSI\n| AX_DIST_RPM\n| AX_DLL_STRING\n| AX_ELISP\n| AX_ENABLE_BUILDDIR\n| AX_EXECINFO\n| AX_EXPAND_PREFIX\n| AX_EXTEND_SRCDIR\n| AX_EXTRA_DIST\n| AX_EXT_CHECK_HEADER\n| AX_EXT_HAVE_LIB\n| AX_EXT\n| AX_F77_CMAIN_FFLAGS\n| AX_F90_HEADER\n| AX_F90_INTERNAL_HEADMOD\n| AX_F90_LIBRARY_SETUP\n| AX_F90_LIBRARY\n| AX_F90_MODULE_EXTENSION\n| AX_F90_MODULE_FLAG\n| AX_F90_MODULE\n| AX_FC_CHECK_DEFINE\n| AX_FILE_ESCAPES\n| AX_FIND_HAMCREST\n| AX_FIND_JUNIT\n| AX_FIND_SCALA_STDLIB\n| AX_FORCEINLINE\n| AX_FUNC_ACCEPT_ARGTYPES\n| AX_FUNC_GETOPT_LONG\n| AX_FUNC_MEMMOVE\n| AX_FUNC_MKDIR\n| AX_FUNC_POSIX_MEMALIGN\n| AX_FUNC_SNPRINTF\n| AX_FUNC_WHICH_GETHOSTBYNAME_R\n| AX_FUNC_WHICH_GETSERVBYNAME_R\n| AX_GCC_ARCHFLAG\n| AX_GCC_BUILTIN\n| AX_GCC_CONST_CALL\n| AX_GCC_FUNC_ATTRIBUTE\n| AX_GCC_LIBGCC_EH\n| AX_GCC_LIBSUPCXX\n| AX_GCC_LIB\n| AX_GCC_MALLOC_CALL\n| AX_GCC_VAR_ATTRIBUTE\n| AX_GCC_WARN_UNUSED_RESULT\n| AX_GCC_X86_AVX_XGETBV\n| AX_GCC_X86_CPUID\n| AX_GCC_X86_CPU_SUPPORTS\n| AX_GENERATE_CHANGELOG\n| AX_GNU_AUTOTEST\n| AX_HAVE_ADNS\n| AX_HAVE_EPOLL\n| AX_HAVE_POLL\n| AX_HAVE_QT\n| AX_HAVE_SELECT\n| AX_INCLUDE_STRCASECMP\n| AX_INSTALL_FILES\n| AX_INT128\n| AX_IS_RELEASE\n| AX_JAVA_CHECK_CLASS\n| AX_JAVA_OPTIONS\n| AX_JNI_INCLUDE_DIR\n| AX_LAPACK\n| AX_LIBGCJ_JAR\n| AX_LIBTOOLIZE_CFLAGS\n| AX_LIB_BEECRYPT\n| AX_LIB_CGAL_CORE\n| AX_LIB_CRYPTO\n| AX_LIB_CURL\n| AX_LIB_EV\n| AX_LIB_EXPAT\n| AX_LIB_FIREBIRD\n| AX_LIB_GCRYPT\n| AX_LIB_GDAL\n| AX_LIB_HDF5\n| AX_LIB_ID3\n| AX_LIB_LIBKML\n| AX_LIB_METIS\n| AX_LIB_MYSQLCPPCONN\n| AX_LIB_MYSQL\n| AX_LIB_NETCDF4\n| AX_LIB_NETTLE\n| AX_LIB_NOKALVA\n| AX_LIB_ORACLE_OCCI\n| AX_LIB_ORACLE_OCI\n| AX_LIB_ORBIT2\n| AX_LIB_POSTGRESQL\n| AX_LIB_READLINE\n| AX_LIB_SAMTOOLS\n| AX_LIB_SOCKET_NSL\n| AX_LIB_SQLITE3\n| AX_LIB_TABIX\n| AX_LIB_TAGLIB\n| AX_LIB_TRACE\n| AX_LIB_UPNP\n| AX_LIB_WAD\n| AX_LIB_XALAN\n| AX_LIB_XERCES\n| AX_LIB_XML_SECURITY\n| AX_LLVM\n| AX_LUAROCKS_ROCK\n| AX_LUA\n| AX_MAINTAINER_MODE_AUTO_SILENT\n| AX_MISSING_PROG\n| AX_MPIP\n| AX_MPI\n| AX_NEED_AWK\n| AX_NORMALIZE_PATH\n| AX_NOT_ENABLE_FRAME_POINTER\n| AX_NUMERIC_NAMEDLEVEL\n| AX_OPEN62541_CHECK_H\n| AX_OPEN62541_CHECK_LIB\n| AX_OPEN62541_PATH\n| AX_OPENMP\n| AX_PATCH_LIBTOOL_CHANGING_CMDS_IFS\n| AX_PATH_BDB\n| AX_PATH_GENERIC\n| AX_PATH_LIB_PCRE\n| AX_PATH_MILTER\n| AX_PATH_MISSING\n| AX_PERL_EXT_FLAGS\n| AX_PERL_EXT\n| AX_PERL_MODULE_VERSION\n| AX_PGSQL_PRIV_ROOT\n| AX_PKG_CHECK_MODULES\n| AX_PKG_MICO\n| AX_PKG_SWIG\n| AX_PREFIX_CONFIG_H\n| AX_PREPEND_FLAG\n| AX_PRINTF_SIZE_T\n| AX_PRINT_TO_FILE\n| AX_PROG_APACHE\n| AX_PROG_BISON_VERSION\n| AX_PROG_BISON\n| AX_PROG_CC_CHAR_SUBSCRIPTS\n| AX_PROG_CC_FOR_BUILD\n| AX_PROG_CC_MPI\n| AX_PROG_CP_S\n| AX_PROG_CRONTAB\n| AX_PROG_CXX_FOR_BUILD\n| AX_PROG_CXX_MPI\n| AX_PROG_DATE\n| AX_PROG_DOTNETCORE_VERSION\n| AX_PROG_DOXYGEN\n| AX_PROG_EMACS\n| AX_PROG_F77_MPI\n| AX_PROG_FASM_OPT\n| AX_PROG_FASM\n| AX_PROG_FC_MPI\n| AX_PROG_FIG2DEV\n| AX_PROG_FLEX_VERSION\n| AX_PROG_FLEX\n| AX_PROG_GJS\n| AX_PROG_GUILE_VERSION\n| AX_PROG_HAXE_VERSION\n| AX_PROG_HELP2MAN\n| AX_PROG_HLA_OPT\n| AX_PROG_HLA\n| AX_PROG_HTTPD\n| AX_PROG_JAR\n| AX_PROG_JAVAC_WORKS\n| AX_PROG_JAVAC\n| AX_PROG_JAVADOC\n| AX_PROG_JAVAH\n| AX_PROG_JAVA_CC\n| AX_PROG_JAVA_WORKS\n| AX_PROG_JAVA\n| AX_PROG_MASM_OPT\n| AX_PROG_MASM\n| AX_PROG_MD5SUM\n| AX_PROG_MODPROBE\n| AX_PROG_MYSQLADMIN\n| AX_PROG_MYSQLD\n| AX_PROG_MYSQLIMPORT\n| AX_PROG_MYSQLSHOW\n| AX_PROG_MYSQL\n| AX_PROG_NASM_OPT\n| AX_PROG_NASM\n| AX_PROG_PERL_MODULES\n| AX_PROG_PERL_VERSION\n| AX_PROG_PGCLIENT\n| AX_PROG_PYTHON_VERSION\n| AX_PROG_RUBY_VERSION\n| AX_PROG_SCALAC\n| AX_PROG_SCALA\n| AX_PROG_SCP\n| AX_PROG_SPLINT\n| AX_PROG_SSH\n| AX_PROG_TASM_OPT\n| AX_PROG_TASM\n| AX_PROG_TCL\n| AX_PROG_XSLTPROC\n| AX_PROG_YASM_OPT\n| AX_PROG_YASM\n| AX_PROTOTYPE_ACCEPT\n| AX_PROTOTYPE_GETSOCKNAME\n| AX_PROTOTYPE_SETSOCKOPT\n| AX_PROTOTYPE\n| AX_PTHREAD\n| AX_PYTHON_CONFIG_VAR\n| AX_PYTHON_DEVEL\n| AX_PYTHON_EMBED\n| AX_PYTHON_MODULE_VERSION\n| AX_PYTHON_MODULE\n| AX_PYTHON\n| AX_RECURSIVE_EVAL\n| AX_REQUIRE_DEFINED\n| AX_REQUIRE_ONE_FUNC\n| AX_RESTORE_FLAGS_WITH_PREFIX\n| AX_RESTORE_FLAGS\n| AX_RPM_INIT\n| AX_RUBY_DEVEL\n| AX_RUBY_EXT\n| AX_R_PACKAGE\n| AX_SAVE_FLAGS_WITH_PREFIX\n| AX_SAVE_FLAGS\n| AX_SET_DEFAULT_PATHS_SYSTEM\n| AX_SHORT_SLEEP\n| AX_SILENT_MODE\n| AX_SIP_DEVEL\n| AX_SPEC_FILE\n| AX_SPEC_PACKAGE_VERSION\n| AX_SPLIT_VERSION\n| AX_STRINGS_STRCASECMP\n| AX_STRING_STRCASECMP\n| AX_STRUCT_SEMUN\n| AX_SUBDIRS_CONFIGURE\n| AX_SUBDIR_FILES\n| AX_SUBST_WITH\n| AX_SWIG_ENABLE_CXX\n| AX_SWIG_MULTI_MODULE_SUPPORT\n| AX_SWIG_PYTHON\n| AX_SWITCH_FLAGS\n| AX_SYSV_IPC\n| AX_SYS_DEV_POLL\n| AX_SYS_LARGEFILE_SENSITIVE\n| AX_SYS_PERLSHARPBANG\n| AX_SYS_WEAK_ALIAS\n| AX_TLS\n| AX_TRILINOS_AMESOS\n| AX_TRILINOS_BASE\n| AX_TRILINOS_EPETRAEXT_HDF5\n| AX_TRILINOS_EPETRAEXT\n| AX_TRILINOS_EPETRA\n| AX_TRILINOS_RTOP\n| AX_TRILINOS_RYTHMOS\n| AX_TRILINOS_TEUCHOS\n| AX_TRILINOS_THYRA_EPETRAEXT\n| AX_TRILINOS_THYRA_EPETRA\n| AX_TRILINOS_THYRA\n| AX_TRY_AWK_ANYOUT\n| AX_TRY_AWK_EXPOUT\n| AX_TRY_COMPILE_JAVA\n| AX_TRY_RUN_JAVA\n| AX_TYPE_SOCKLEN_T\n| AX_UPLOAD\n| AX_VALGRIND_CHECK\n| AX_VAR_POP\n| AX_VAR_PUSH\n| AX_VAR_TIMEZONE_EXTERNALS\n| AX_VERY_NICE\n| AX_WARNING_DEFAULT_ACLOCALDIR\n| AX_WARNING_DEFAULT_PKGCONFIG\n| AX_WINT_T\n| AX_WITH_APXS\n| AX_WITH_BUILD_PATH\n| AX_WITH_CURSES_EXTRA\n| AX_WITH_CURSES\n| AX_WITH_DMALLOC\n| AX_WITH_MPATROL\n| AX_WITH_PROG\n| AX_XERCESC\n| AX_XSDCXX\n| AX_XTRA_CLASSPATH\n| AX_ZMQ\n| AX_ZONEINFO\n) (?:(?=\\()|\\b)",
73
+ "end": "(?\u003c=\\))|\\G(?!\\()",
74
+ "patterns": [
75
+ {
76
+ "include": "#macro-innards"
77
+ }
78
+ ],
79
+ "beginCaptures": {
80
+ "1": {
81
+ "name": "keyword.operator.macro.$1.m4"
82
+ }
83
+ }
114
84
  }
115
- }
85
+ ]
116
86
  },
117
87
  "macro-innards": {
118
88
  "patterns": [
@@ -121,65 +91,137 @@
121
91
  "end": "\\)",
122
92
  "patterns": [
123
93
  {
124
- "include": "$self"
94
+ "include": "#macro-innards"
125
95
  }
126
96
  ],
127
97
  "beginCaptures": {
128
98
  "0": {
129
- "name": "punctuation.definition.parameters.begin.bracket.round.m4"
99
+ "name": "punctuation.definition.string.begin.bracket.round.m4"
130
100
  }
131
101
  },
132
102
  "endCaptures": {
133
103
  "0": {
134
- "name": "punctuation.definition.parameters.end.bracket.round.m4"
104
+ "name": "punctuation.definition.string.end.bracket.round.m4"
135
105
  }
136
106
  }
137
107
  },
138
108
  {
139
- "name": "punctuation.delimiter.separator.comma.m4",
140
- "match": ","
109
+ "include": "etc#comma"
141
110
  },
142
111
  {
143
- "name": "constant.numeric.decimal.m4",
144
- "match": "(?\u003c!\\w)[-+]?\\d+"
112
+ "include": "#variables"
145
113
  },
146
114
  {
147
- "name": "variable.other.positional.m4",
148
- "match": "(\\$)[0-9]+",
149
- "captures": {
150
- "1": {
151
- "name": "punctuation.definition.variable.m4"
152
- }
153
- }
115
+ "include": "#arithmetic"
154
116
  },
155
117
  {
156
- "include": "#arithmetic"
118
+ "include": "#string-bracketed"
119
+ },
120
+ {
121
+ "include": "#quadrigraph"
157
122
  },
158
123
  {
159
- "include": "#string"
124
+ "include": "#main"
160
125
  },
161
126
  {
162
- "include": "$self"
127
+ "include": "#string-unquoted"
163
128
  }
164
129
  ]
165
130
  },
166
- "string": {
167
- "name": "string.quoted.double.other.m4",
131
+ "main": {
132
+ "patterns": [
133
+ {
134
+ "include": "#comment"
135
+ },
136
+ {
137
+ "include": "#dnl"
138
+ },
139
+ {
140
+ "include": "#macro"
141
+ },
142
+ {
143
+ "include": "#string-bracketed"
144
+ }
145
+ ]
146
+ },
147
+ "quadrigraph": {
148
+ "name": "constant.character.quadrigraph.m4",
149
+ "match": "@(?:\u003c:|:\u003e|S\\||%:|{:|:}|\u0026t)@"
150
+ },
151
+ "string-asymmetric": {
152
+ "name": "string.quoted.double.other.asymmetric.m4",
168
153
  "begin": "`",
169
154
  "end": "'",
170
155
  "patterns": [
171
156
  {
172
- "include": "#string"
157
+ "include": "#string-asymmetric"
158
+ },
159
+ {
160
+ "include": "#variables"
173
161
  }
174
162
  ],
175
163
  "beginCaptures": {
176
164
  "0": {
177
- "name": "punctuation.definition.string.begin.m4"
165
+ "name": "punctuation.definition.string.asymmetric.begin.m4"
178
166
  }
179
167
  },
180
168
  "endCaptures": {
181
169
  "0": {
182
- "name": "punctuation.definition.string.end.m4"
170
+ "name": "punctuation.definition.string.asymmetric.end.m4"
171
+ }
172
+ }
173
+ },
174
+ "string-bracketed": {
175
+ "name": "constant.other.quoted.m4",
176
+ "begin": "\\[",
177
+ "end": "\\]",
178
+ "patterns": [
179
+ {
180
+ "include": "#string-bracketed"
181
+ },
182
+ {
183
+ "include": "#variables"
184
+ },
185
+ {
186
+ "include": "#quadrigraph"
187
+ },
188
+ {
189
+ "include": "#macro"
190
+ }
191
+ ],
192
+ "beginCaptures": {
193
+ "0": {
194
+ "name": "punctuation.definition.string.square.bracket.begin.m4"
195
+ }
196
+ },
197
+ "endCaptures": {
198
+ "0": {
199
+ "name": "punctuation.definition.string.square.bracket.end.m4"
200
+ }
201
+ }
202
+ },
203
+ "string-unquoted": {
204
+ "name": "constant.other.unquoted.m4",
205
+ "match": "[^\\s\\[\\](),]+",
206
+ "captures": {
207
+ "0": {
208
+ "patterns": [
209
+ {
210
+ "include": "#variables"
211
+ },
212
+ {
213
+ "include": "#quadrigraph"
214
+ }
215
+ ]
216
+ }
217
+ }
218
+ },
219
+ "variables": {
220
+ "name": "variable.parameter.m4",
221
+ "match": "(\\$)[0-9#@*]",
222
+ "captures": {
223
+ "1": {
224
+ "name": "punctuation.definition.variable.m4"
183
225
  }
184
226
  }
185
227
  }