github-linguist 7.5.1 → 7.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +122 -24
  3. data/grammars/etc.json +7 -0
  4. data/grammars/hint.haskell.json +122 -24
  5. data/grammars/hint.message.haskell.json +122 -24
  6. data/grammars/hint.type.haskell.json +122 -24
  7. data/grammars/injections.etc.json +48 -10
  8. data/grammars/source.abnf.json +180 -353
  9. data/grammars/source.ballerina.json +205 -50
  10. data/grammars/source.bnf.json +191 -0
  11. data/grammars/source.cabal.json +1 -1
  12. data/grammars/source.ditroff.desc.json +1 -1
  13. data/grammars/source.ebnf.json +157 -147
  14. data/grammars/source.editorconfig.json +30 -5
  15. data/grammars/source.emacs.lisp.json +4 -4
  16. data/grammars/source.gremlin.json +200 -0
  17. data/grammars/source.haproxy-config.json +65 -13
  18. data/grammars/source.haskell.json +122 -24
  19. data/grammars/source.hql.json +1 -1
  20. data/grammars/source.hsig.json +122 -24
  21. data/grammars/source.hx.json +5 -5
  22. data/grammars/source.hxml.json +4 -4
  23. data/grammars/source.ideal.json +4 -4
  24. data/grammars/source.igor.json +325 -0
  25. data/grammars/source.jlex.json +322 -0
  26. data/grammars/source.julia.json +132 -1
  27. data/grammars/source.lean.json +103 -54
  28. data/grammars/source.lex.json +232 -0
  29. data/grammars/source.lex.regexp.json +269 -0
  30. data/grammars/source.logos.json +1 -1
  31. data/grammars/source.meson.json +1 -1
  32. data/grammars/source.mlir.json +389 -0
  33. data/grammars/source.nanorc.json +3 -0
  34. data/grammars/source.pic.json +19 -19
  35. data/grammars/source.plist.json +336 -0
  36. data/grammars/source.powershell.json +2 -2
  37. data/grammars/source.purescript.json +2 -2
  38. data/grammars/source.rascal.json +1 -0
  39. data/grammars/source.regexp.extended.json +544 -6
  40. data/grammars/source.regexp.json +408 -31
  41. data/grammars/source.renpy.json +3 -1
  42. data/grammars/source.scala.json +199 -97
  43. data/grammars/source.smpl.json +314 -0
  44. data/grammars/source.solidity.json +1 -1
  45. data/grammars/source.sourcepawn.json +654 -0
  46. data/grammars/source.sqf.json +5 -1
  47. data/grammars/source.swift.json +56 -11
  48. data/grammars/source.sy.json +800 -0
  49. data/grammars/source.ts.json +64 -47
  50. data/grammars/source.tsx.json +65 -48
  51. data/grammars/source.v.json +1184 -0
  52. data/grammars/source.viml.json +31 -31
  53. data/grammars/source.wollok.json +1 -1
  54. data/grammars/source.xojo.json +2 -2
  55. data/grammars/source.yacc.json +626 -0
  56. data/grammars/source.yara.json +1 -1
  57. data/grammars/source.yasnippet.json +15 -25
  58. data/grammars/source.zeek.json +4 -4
  59. data/grammars/source.zig.json +594 -195
  60. data/grammars/text.eml.basic.json +19 -6
  61. data/grammars/text.html.php.blade.json +3 -3
  62. data/grammars/text.plain.json +18 -0
  63. data/grammars/text.roff.json +926 -437
  64. data/grammars/text.runoff.json +3 -3
  65. data/grammars/text.tex.latex.haskell.json +122 -24
  66. data/grammars/text.texinfo.json +1525 -0
  67. data/grammars/text.xml.plist.json +664 -0
  68. data/grammars/text.xml.svg.json +556 -0
  69. data/grammars/version +1 -1
  70. data/lib/linguist.rb +3 -1
  71. data/lib/linguist/VERSION +1 -1
  72. data/lib/linguist/generated.rb +62 -17
  73. data/lib/linguist/heuristics.yml +13 -0
  74. data/lib/linguist/language.rb +1 -11
  75. data/lib/linguist/languages.json +1 -1
  76. data/lib/linguist/languages.yml +179 -19
  77. data/lib/linguist/samples.json +2778 -732
  78. data/lib/linguist/strategy/manpage.rb +42 -0
  79. metadata +22 -5
  80. data/grammars/source.bison.json +0 -55
  81. data/grammars/source.sp.json +0 -113
@@ -1064,127 +1064,127 @@
1064
1064
  },
1065
1065
  "vimAugroupKey": {
1066
1066
  "name": "support.function.vimAugroupKey.viml",
1067
- "match": "\\b(aug|augroup)\\b"
1067
+ "match": "(?x) \\b\n( aug\n| augroup\n) \\b"
1068
1068
  },
1069
1069
  "vimAutoEvent": {
1070
1070
  "name": "support.function.auto-event.viml",
1071
- "match": "(?i)\\b(BufAdd|BufCreate|BufDelete|BufEnter|BufFilePost|BufFilePre|BufHidden|BufLeave|BufNew|BufNewFile|BufRead|BufReadCmd|BufReadPost|BufReadPre|BufUnload|BufWinEnter|BufWinLeave|BufWipeout|BufWrite|BufWriteCmd|BufWritePost|BufWritePre|CmdUndefined|CmdwinEnter|CmdwinLeave|ColorScheme|CompleteDone|CursorHold|CursorHoldI|CursorMoved|CursorMovedI|EncodingChanged|FileAppendCmd|FileAppendPost|FileAppendPre|FileChangedRO|FileChangedShell|FileChangedShellPost|FileEncoding|FileReadCmd|FileReadPost|FileReadPre|FileType|FileWriteCmd|FileWritePost|FileWritePre|FilterReadPost|FilterReadPre|FilterWritePost|FilterWritePre|FocusGained|FocusLost|FuncUndefined|GUIEnter|GUIFailed|InsertChange|InsertCharPre|InsertEnter|InsertLeave|MenuPopup|OptionSet|QuickFixCmdPost|QuickFixCmdPre|QuitPre|RemoteReply|SessionLoadPost|ShellCmdPost|ShellFilterPost|SourceCmd|SourcePre|SpellFileMissing|StdinReadPost|StdinReadPre|SwapExists|Syntax|TabClosed|TabEnter|TabLeave|TabNew|TermChanged|TermResponse|TextChanged|TextChangedI|User|VimEnter|VimLeave|VimLeavePre|VimResized|WinEnter|WinLeave|WinNew)\\b"
1071
+ "match": "(?xi) \\b\n( BufAdd\n| BufCreate\n| BufDelete\n| BufEnter\n| BufFilePost\n| BufFilePre\n| BufHidden\n| BufLeave\n| BufNewFile\n| BufNew\n| BufReadCmd\n| BufReadPost\n| BufReadPre\n| BufRead\n| BufUnload\n| BufWinEnter\n| BufWinLeave\n| BufWipeout\n| BufWriteCmd\n| BufWritePost\n| BufWritePre\n| BufWrite\n| CmdUndefined\n| CmdlineChanged\n| CmdlineEnter\n| CmdlineLeave\n| CmdwinEnter\n| CmdwinLeave\n| ColorSchemePre\n| ColorScheme\n| CompleteChanged\n| CompleteDone\n| CursorHoldI\n| CursorHold\n| CursorMovedI\n| CursorMoved\n| DiffUpdated\n| DirChanged\n| EncodingChanged\n| ExitPre\n| FileAppendCmd\n| FileAppendPost\n| FileAppendPre\n| FileChangedRO\n| FileChangedShellPost\n| FileChangedShell\n| FileEncoding\n| FileReadCmd\n| FileReadPost\n| FileReadPre\n| FileType\n| FileWriteCmd\n| FileWritePost\n| FileWritePre\n| FilterReadPost\n| FilterReadPre\n| FilterWritePost\n| FilterWritePre\n| FocusGained\n| FocusLost\n| FuncUndefined\n| GUIEnter\n| GUIFailed\n| InsertChange\n| InsertCharPre\n| InsertEnter\n| InsertLeave\n| MenuPopup\n| OptionSet\n| QuickFixCmdPost\n| QuickFixCmdPre\n| QuitPre\n| RemoteReply\n| SessionLoadPost\n| ShellCmdPost\n| ShellFilterPost\n| SourceCmd\n| SourcePost\n| SourcePre\n| SpellFileMissing\n| StdinReadPost\n| StdinReadPre\n| SwapExists\n| Syntax\n| TabClosed\n| TabEnter\n| TabLeave\n| TabNew\n| TermChanged\n| TermResponse\n| TerminalOpen\n| TextChangedI\n| TextChangedP\n| TextChanged\n| TextYankPost\n| User\n| VimEnter\n| VimLeavePre\n| VimLeave\n| VimResized\n| WinEnter\n| WinLeave\n| WinNew\n) \\b"
1072
1072
  },
1073
1073
  "vimBehaveModel": {
1074
1074
  "name": "support.function.vimBehaveModel.viml",
1075
- "match": "\\b(mswin|xterm)\\b"
1075
+ "match": "(?x) \\b\n( mswin\n| xterm\n) \\b"
1076
1076
  },
1077
1077
  "vimCommand": {
1078
1078
  "name": "support.function.command.viml",
1079
- "match": "\\b(a|ab|abc|abclear|abo|aboveleft|all?|ar|args|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|argu|argument|as|ascii|au|b|buffer|ba|ball|badd?|bd|bdelete|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|br|brewind|break?|breaka|breakadd|breakd|breakdel|breakl|breaklist|bro|browse|bufdo|buffers|bun|bunload|bw|bwipeout|c|change|cabc|cabclear|cad|caddbuffer|cadde|caddexpr|caddf|caddfile|call?|cat|catch|cb|cbuffer|cbo|cbottom|cc|ccl|cclose|cd|cdo|ce|center|cex|cexpr|cf|cfile|cfdo|cfir|cfirst|cg|cgetfile|cgetb|cgetbuffer|cgete|cgetexpr|changes|chd|chdir|che|checkpath|checkt|checktime|chi|chistory|cl|clist|cla|clast|cle|clearjumps|clo|close|cmapc|cmapclear|cn|cnext|cN|cNext|cnew|cnewer|cnf|cnfile|cNf|cNfile|co|copy|col|colder|colo|colorscheme|com|comc|comclear|comp|compiler|con|continue|conf|confirm|copen?|cp|cprevious|cpf|cpfile|cq|cquit|cr|crewind|cs|cscope|cstag|cuna|cunabbrev|cw|cwindow|d|delete|debug|debugg|debuggreedy|delc|delcommand|delel|delep|deletel|deletep|deletl|deletp|delf|delfunction|dell|delm|delmarks|delp|dep|di|display|dif|diffupdate|diffg|diffget|diffo|diffoff|diffp|diffpatch|diffput?|diffs|diffsplit|difft|diffthis|dig|digraphs|dir|dj|djump|dl|dli|dlist|do|doau|dp|dr|drop|ds|dsearch|dsp|dsplit|e|edit|ea|earlier|ec|echoe|echoerr|echom|echomsg|echon|el|else|elseif?|em|emenu|en|endif|endf|endfunction|endfor?|endt|endtry|endw|endwhile|enew?|ex|exit?|exu|exusage|f|file|files|filet|filetype|filt|filter|find?|fina|finally|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|foldd|folddoopen|folddoc|folddoclosed|foldo|foldopen|for|fu|function|g|go|goto|gr|grep|grepa|grepadd|gui|gvim|h|help|ha|hardcopy|helpc|helpclose|helpf|helpfind|helpg|helpgrep|helpt|helptags|hi|hide?|his|history|i|ia|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|intro|is|isearch|isp|isplit|iuna|iunabbrev|j|join|ju|jumps|k|kee|keepmarks|keepa|keepalt|keepj|keepjumps|keepp|keeppatterns|l|list|la|last|lad|laddexpr|laddb|laddbuffer|laddf|laddfile|lan|language|lat|later|lb|lbuffer|lbo|lbottom|lcd?|lch|lchdir|lcl|lclose|lcs|lcscope|ldo?|le|left|lefta|leftabove|lex|lexpr|lf|lfile|lfdo|lfir|lfirst|lg|lgetfile|lgetb|lgetbuffer|lgete|lgetexpr|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|lhi|lhistory|ll|lla|llast|lli|llist|lmake?|lmapc|lmapclear|lN|lNext|lne|lnext|lnew|lnewer|lnf|lnfile|lNf|lNfile|lo|loadview|loadk|loadkeymap|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lp|lprevious|lpf|lpfile|lr|lrewind|ls|lt|ltag|lua|luado|luafile|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|m|move|ma|mark|make?|marks|mat|match|menut|menutranslate|mes|messages|mk|mkexrc|mks|mksession|mksp|mkspell|mkv|mkvimrc|mkview?|mode?|mz|mzscheme|mzf|mzfile|n|next|nb|nbkey|nbc|nbclose|nbs|nbstart|new|nmapc|nmapclear|noa|noautocmd|noh|nohlsearch|nor|nore|nos|noswapfile|nu|number|o|open|ol|oldfiles|omapc|omapclear|on|only|opt|options|ownsyntax|p|print|pa|packadd|packl|packloadall|pc|pclose|pe|perl|ped|pedit|perldo?|pop?|popup?|pp|ppop|pre|preserve|prev|previous|pro|prof|profile|profd|profdel|promptf|promptfind|promptr|promptrepl|ps|psearch|ptag?|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|put?|pwd?|py|python|py3|py3do|pydo|pyf|pyfile|python3|pythonx|pyx|pyxdo|pyxfile|q|quit|qa|qall|quita|quitall|r|read|rec|recover|redo?|redir?|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|ru|runtime|ruby?|rubydo?|rubyf|rubyfile|rundo|rv|rviminfo|sa|sargument|sall?|san|sandbox|sav|saveas|sb|sbuffer|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sc|sce|scg|sci|scI|scl|scp|scr|scriptnames|scripte|scriptencoding|scs|scscope|set?|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sg|sgc|sge|sgi|sgI|sgl|sgn|sgp|sgr|sh|shell|si|sI|sic|sIc|sie|sIe|sig|sIg|sign|sIl|sil|silent|sim|simalt|sin|sIn|sip|sIp|sir|sIr|sl|sleep|sla|slast|sm|smagic|sm|smap|sme|smenu|smile|sn|snext|sN|sNext|sno|snomagic|snoreme|snoremenu|so|source|sort?|sp|split|spe|spellgood|spelld|spelldump|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|spr|sprevious|sr|src|sre|srewind|srg|sri|srI|srl|srn|srp|st|stop|stag?|star|startinsert|startg|startgreplace|startr|startreplace|stj|stjump|stopi|stopinsert|sts|stselect|sun|sunhide|sunme|sunmenu|sus|suspend|sv|sview|sw|swapname|sy|syn|sync|syncbind|syntime|t|tag?|tab|tabc|tabclose|tabdo?|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabn|tabnext|tabN|tabNext|tabnew|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|tags|tcl?|tcd|tch|tchdir|tcldo?|tclf|tclfile|te|tearoff|ter|terminal|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tmenu|tmap?|tmapc|tmapclear|tn|tnext|tN|tNext|tno|tnoremap|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tunmenu|tunmap?|u|undo|una|unabbreviate|undoj|undojoin|undol|undolist|unh|unhide|unl|unlo|unlockvar|uns|unsilent|up|update|v|ve|version|verb|verbose|vert|vertical|vi|visual|view?|vim|vimgrep|vimgrepa|vimgrepadd|viu|viusage|vmapc|vmapclear|vnew?|vs|vsplit|w|write|wa|wall|wh|while|win|winsize|winc|wincmd|windo|winp|winpos|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|ws|wsverb|wundo|wv|wviminfo|x|xit|xa|xall|xmapc|xmapclear|xme|xmenu|xnoreme|xnoremenu|xprop|xunme|xunmenu|xwininfo|y|yank)\\b"
1079
+ "match": "(?x) \\b\n( abc\n| abclear\n| abo\n| aboveleft\n| ab\n| addd\n| all?\n| ar\n| args\n| arga\n| argadd\n| argd\n| argdelete\n| argdo\n| arge\n| argedit\n| argg\n| argglobal\n| argl\n| arglocal\n| argu\n| argument\n| as\n| ascii\n| au\n| a\n| bN\n| bNext\n| b\n| buffer\n| ba\n| ball\n| badd?\n| bd\n| bdelete\n| bel\n| belowright\n| bf\n| bfirst\n| bl\n| blast\n| bm\n| bmodified\n| bn\n| bnext\n| bo\n| botright\n| bp\n| bprevious\n| br\n| brewind\n| break?\n| breaka\n| breakadd\n| breakd\n| breakdel\n| breakl\n| breaklist\n| bro\n| browse\n| bufdo\n| buffers\n| bun\n| bunload\n| bw\n| bwipeout\n| cN\n| cNext\n| cNf\n| cNfile\n| c\n| change\n| cabc\n| cabclear\n| cabo\n| cabove\n| cad\n| caddbuffer\n| cadde\n| caddexpr\n| caddf\n| caddfile\n| caf\n| cafter\n| call?\n| cat\n| catch\n| ca\n| cb\n| cbuffer\n| cbe\n| cbefore\n| cbel\n| cbelow\n| cbo\n| cbottom\n| ccl\n| cclose\n| cc\n| cdo\n| cd\n| ce\n| center\n| cex\n| cexpr\n| cf\n| cfile\n| cfdo\n| cfir\n| cfirst\n| cg\n| cgetfile\n| cgetb\n| cgetbuffer\n| cgete\n| cgetexpr\n| changes\n| chd\n| chdir\n| che\n| checkpath\n| checkt\n| checktime\n| chi\n| chistory\n| cl\n| clist\n| cla\n| clast\n| cle\n| clearjumps\n| clo\n| close\n| cmapc\n| cmapclear\n| cn\n| cnext\n| cnew\n| cnewer\n| cnf\n| cnfile\n| cnor\n| co\n| copy\n| col\n| colder\n| colo\n| colorscheme\n| comc\n| comclear\n| comp\n| compiler\n| com\n| con\n| continue\n| conf\n| confirm\n| const?\n| copen?\n| cp\n| cprevious\n| cpf\n| cpfile\n| cq\n| cquit\n| cr\n| crewind\n| cscope\n| cstag\n| cs\n| cuna\n| cunabbrev\n| cun\n| cw\n| cwindow\n| d\n| delete\n| debugg\n| debuggreedy\n| debug\n| delc\n| delcommand\n| delel\n| delep\n| deletel\n| deletep\n| deletl\n| deletp\n| delf\n| delfunction\n| dell\n| delm\n| delmarks\n| delp\n| dep\n| di\n| display\n| dif\n| diffupdate\n| diffg\n| diffget\n| diffo\n| diffoff\n| diffp\n| diffpatch\n| diffput?\n| diffs\n| diffsplit\n| difft\n| diffthis\n| dig\n| digraphs\n| dir\n| dj\n| djump\n| dli\n| dlist\n| dl\n| doaut\n| doau\n| do\n| dp\n| dr\n| drop\n| ds\n| dsearch\n| dsp\n| dsplit\n| e\n| edit\n| earlier\n| ea\n| echoe\n| echoerr\n| echom\n| echomsg\n| echon\n| ec\n| el\n| else\n| elseif?\n| em\n| emenu\n| en\n| endif\n| endf\n| endfunction\n| endfor?\n| endt\n| endtry\n| endw\n| endwhile\n| enew?\n| exit?\n| exu\n| exusage\n| ex\n| f\n| file\n| files\n| filetype\n| filet\n| filt\n| filter\n| find?\n| fina\n| finally\n| fini\n| finish\n| fir\n| first\n| fix\n| fixdel\n| fo\n| fold\n| foldc\n| foldclose\n| foldd\n| folddoopen\n| folddoc\n| folddoclosed\n| foldo\n| foldopen\n| for\n| fu\n| function\n| go\n| goto\n| gr\n| grep\n| grepa\n| grepadd\n| gui\n| gvim\n| g\n| h\n| help\n| ha\n| hardcopy\n| helpc\n| helpclose\n| helpf\n| helpfind\n| helpg\n| helpgrep\n| helpt\n| helptags\n| hide?\n| his\n| history\n| hi\n| iabc\n| iabclear\n| ia\n| if\n| ij\n| ijump\n| il\n| ilist\n| imapc\n| imapclear\n| inor\n| intro\n| in\n| is\n| isearch\n| isp\n| isplit\n| iuna\n| iunabbrev\n| i\n| j\n| join\n| ju\n| jumps\n| kee\n| keepmarks\n| keepalt\n| keepa\n| keepj\n| keepjumps\n| keepp\n| keeppatterns\n| k\n| lN\n| lNext\n| lNf\n| lNfile\n| l\n| list\n| la\n| last\n| lab\n| labove\n| lad\n| laddexpr\n| laddb\n| laddbuffer\n| laddf\n| laddfile\n| laf\n| lafter\n| lan\n| language\n| later\n| lat\n| lb\n| lbuffer\n| lbe\n| lbefore\n| lbel\n| lbelow\n| lbo\n| lbottom\n| lcd?\n| lch\n| lchdir\n| lcl\n| lclose\n| lcscope\n| lcs\n| ldo?\n| le\n| left\n| lefta\n| leftabove\n| lex\n| lexpr\n| lf\n| lfile\n| lfdo\n| lfir\n| lfirst\n| lg\n| lgetfile\n| lgetb\n| lgetbuffer\n| lgete\n| lgetexpr\n| lgr\n| lgrep\n| lgrepa\n| lgrepadd\n| lh\n| lhelpgrep\n| lhi\n| lhistory\n| lla\n| llast\n| lli\n| llist\n| ll\n| lmake?\n| lmapc\n| lmapclear\n| lma\n| lne\n| lnext\n| lnew\n| lnewer\n| lnf\n| lnfile\n| lo\n| loadview\n| loadkeymap\n| loadk\n| loc\n| lockmarks\n| lockv\n| lockvar\n| lol\n| lolder\n| lop\n| lopen\n| lp\n| lprevious\n| lpf\n| lpfile\n| lr\n| lrewind\n| ls\n| lt\n| ltag\n| luado\n| luafile\n| lua\n| lv\n| lvimgrep\n| lvimgrepa\n| lvimgrepadd\n| lw\n| lwindow\n| m\n| move\n| ma\n| mark\n| make?\n| marks\n| mat\n| match\n| menut\n| menutranslate\n| messages\n| mes\n| mk\n| mkexrc\n| mks\n| mksession\n| mksp\n| mkspell\n| mkv\n| mkvimrc\n| mkview?\n| mode?\n| mz\n| mzscheme\n| mzf\n| mzfile\n| n\n| next\n| nb\n| nbkey\n| nbc\n| nbclose\n| nbs\n| nbstart\n| new\n| nmapc\n| nmapclear\n| noautocmd\n| noa\n| noh\n| nohlsearch\n| nore\n| nor\n| nos\n| noswapfile\n| nu\n| number\n| o\n| open\n| ol\n| oldfiles\n| omapc\n| omapclear\n| on\n| only\n| opt\n| options\n| ownsyntax\n| p\n| print\n| pa\n| packadd\n| packl\n| packloadall\n| pc\n| pclose\n| pe\n| perl\n| ped\n| pedit\n| perldo?\n| pop?\n| popup?\n| pp\n| ppop\n| pre\n| preserve\n| prev\n| previous\n| prof\n| profile\n| profd\n| profdel\n| promptf\n| promptfind\n| promptr\n| promptrepl\n| pro\n| ps\n| psearch\n| ptN\n| ptNext\n| ptag?\n| ptf\n| ptfirst\n| ptj\n| ptjump\n| ptl\n| ptlast\n| ptn\n| ptnext\n| ptp\n| ptprevious\n| ptr\n| ptrewind\n| pts\n| ptselect\n| put?\n| pwd?\n| py3do\n| py3\n| py\n| python\n| pydo\n| pyf\n| pyfile\n| python3\n| pythonx\n| pyxdo\n| pyxfile\n| pyx\n| q\n| quit\n| qa\n| qall\n| quita\n| quitall\n| r\n| read\n| rec\n| recover\n| redo?\n| redir?\n| redr\n| redraw\n| redraws\n| redrawstatus\n| redrawt\n| redrawtabline\n| reg\n| registers\n| res\n| resize\n| ret\n| retab\n| retu\n| return\n| rew\n| rewind\n| ri\n| right\n| rightb\n| rightbelow\n| ru\n| runtime\n| ruby?\n| rubydo?\n| rubyf\n| rubyfile\n| rundo\n| rv\n| rviminfo\n| sIc\n| sIe\n| sIg\n| sIl\n| sIn\n| sIp\n| sIr\n| sI\n| sN\n| sNext\n| sa\n| sargument\n| sall?\n| san\n| sandbox\n| sav\n| saveas\n| sbN\n| sbNext\n| sb\n| sbuffer\n| sba\n| sball\n| sbf\n| sbfirst\n| sbl\n| sblast\n| sbm\n| sbmodified\n| sbn\n| sbnext\n| sbp\n| sbprevious\n| sbr\n| sbrewind\n| scI\n| sce\n| scg\n| sci\n| scl\n| scp\n| scr\n| scriptnames\n| scripte\n| scriptencoding\n| scriptv\n| scriptversion\n| scscope\n| scs\n| sc\n| set?\n| setf\n| setfiletype\n| setg\n| setglobal\n| setl\n| setlocal\n| sf\n| sfind\n| sfir\n| sfirst\n| sgI\n| sgc\n| sge\n| sgi\n| sgl\n| sgn\n| sgp\n| sgr\n| sg\n| sh\n| shell\n| sic\n| sie\n| sign\n| sig\n| sil\n| silent\n| sim\n| simalt\n| sin\n| sip\n| sir\n| si\n| sl\n| sleep\n| sla\n| slast\n| sm\n| smagic\n| sm\n| smap\n| smenu\n| sme\n| smile\n| sn\n| snext\n| sno\n| snomagic\n| snoremenu\n| snoreme\n| so\n| source\n| sort?\n| sp\n| split\n| spe\n| spellgood\n| spelld\n| spelldump\n| spelli\n| spellinfo\n| spellr\n| spellrepall\n| spellu\n| spellundo\n| spellw\n| spellwrong\n| spr\n| sprevious\n| srI\n| src\n| sre\n| srewind\n| srg\n| sri\n| srl\n| srn\n| srp\n| sr\n| st\n| stop\n| stag?\n| star\n| startinsert\n| startg\n| startgreplace\n| startr\n| startreplace\n| stj\n| stjump\n| stopi\n| stopinsert\n| sts\n| stselect\n| sun\n| sunhide\n| sunmenu\n| sunme\n| sus\n| suspend\n| sv\n| sview\n| sw\n| swapname\n| syncbind\n| sync\n| syntime\n| syn\n| sy\n| tN\n| tNext\n| tag?\n| tabN\n| tabNext\n| tabc\n| tabclose\n| tabdo?\n| tabe\n| tabedit\n| tabf\n| tabfind\n| tabfir\n| tabfirst\n| tabl\n| tablast\n| tabm\n| tabmove\n| tabn\n| tabnext\n| tabnew\n| tabo\n| tabonly\n| tabp\n| tabprevious\n| tabr\n| tabrewind\n| tabs\n| tab\n| tags\n| tcl?\n| tcd\n| tch\n| tchdir\n| tcldo?\n| tclf\n| tclfile\n| te\n| tearoff\n| ter\n| terminal\n| tf\n| tfirst\n| th\n| throw\n| tj\n| tjump\n| tl\n| tlast\n| tlmenu\n| tlm\n| tlnoremenu\n| tln\n| tlunmenu\n| tlu\n| tm\n| tmenu\n| tmap?\n| tmapc\n| tmapclear\n| tn\n| tnext\n| tno\n| tnoremap\n| to\n| topleft\n| tp\n| tprevious\n| tr\n| trewind\n| try\n| ts\n| tselect\n| tu\n| tunmenu\n| tunmap?\n| t\n| u\n| undo\n| una\n| unabbreviate\n| undoj\n| undojoin\n| undol\n| undolist\n| unh\n| unhide\n| unlo\n| unlockvar\n| unl\n| uns\n| unsilent\n| up\n| update\n| ve\n| version\n| verb\n| verbose\n| vert\n| vertical\n| vi\n| visual\n| view?\n| vim\n| vimgrep\n| vimgrepa\n| vimgrepadd\n| viu\n| viusage\n| vmapc\n| vmapclear\n| vnew?\n| vs\n| vsplit\n| v\n| wN\n| wNext\n| w\n| write\n| wa\n| wall\n| wh\n| while\n| win\n| winsize\n| winc\n| wincmd\n| windo\n| winp\n| winpos\n| wn\n| wnext\n| wp\n| wprevious\n| wqa\n| wqall\n| wq\n| wundo\n| wv\n| wviminfo\n| x\n| xit\n| xa\n| xall\n| xmapc\n| xmapclear\n| xmenu\n| xme\n| xnoremenu\n| xnoreme\n| xprop\n| xr\n| xrestore\n| xunmenu\n| xunme\n| xwininfo\n| y\n| yank\n) \\b"
1080
1080
  },
1081
1081
  "vimErrSetting": {
1082
1082
  "name": "invalid.deprecated.legacy-setting.viml",
1083
- "match": "\\b(autoprint|beautify|biosk|bioskey|consk|conskey|flash|graphic|hardtabs|ht|mesg|noautoprint|nobeautify|nobiosk|nobioskey|noconsk|noconskey|noflash|nographic|nohardtabs|nomesg|nonovice|noop|noopen|nooptimize|noredraw|noslow|noslowopen|nosourceany|novice|now1200|now300|now9600|op|open|optimize|redraw|slow|slowopen|sourceany|w1200|w300|w9600)\\b"
1083
+ "match": "(?x) \\b\n( autoprint\n| beautify\n| bioskey\n| biosk\n| conskey\n| consk\n| flash\n| graphic\n| hardtabs\n| ht\n| mesg\n| noautoprint\n| nobeautify\n| nobioskey\n| nobiosk\n| noconskey\n| noconsk\n| noflash\n| nographic\n| nohardtabs\n| nomesg\n| nonovice\n| noopen\n| nooptimize\n| noop\n| noredraw\n| noslowopen\n| noslow\n| nosourceany\n| novice\n| now1200\n| now300\n| now9600\n| open\n| optimize\n| op\n| redraw\n| slowopen\n| slow\n| sourceany\n| w1200\n| w300\n| w9600\n) \\b"
1084
1084
  },
1085
1085
  "vimFTCmd": {
1086
1086
  "name": "support.function.vimFTCmd.viml",
1087
- "match": "\\b(filet|filetype)\\b"
1087
+ "match": "(?x) \\b\n( filet\n| filetype\n) \\b"
1088
1088
  },
1089
1089
  "vimFTOption": {
1090
1090
  "name": "support.function.vimFTOption.viml",
1091
- "match": "\\b(detect|indent|off|on|plugin)\\b"
1091
+ "match": "(?x) \\b\n( detect\n| indent\n| off\n| on\n| plugin\n) \\b"
1092
1092
  },
1093
1093
  "vimFgBgAttrib": {
1094
1094
  "name": "support.constant.attribute.viml",
1095
- "match": "\\b(background|bg|fg|foreground|none)\\b"
1095
+ "match": "(?x) \\b\n( background\n| bg\n| fg\n| foreground\n| none\n) \\b"
1096
1096
  },
1097
1097
  "vimFuncKey": {
1098
1098
  "name": "support.function.vimFuncKey.viml",
1099
- "match": "\\b(fu|function)\\b"
1099
+ "match": "(?x) \\b\n( fu\n| function\n) \\b"
1100
1100
  },
1101
1101
  "vimFuncName": {
1102
1102
  "name": "support.function.viml",
1103
- "match": "\\b(abs|acos|add|and|append|appendbufline|argc|argidx|arglistid|argv|asin|assert_beeps|assert_equal|assert_equalfile|assert_exception|assert_fails|assert_false|assert_inrange|assert_match|assert_notequal|assert_notmatch|assert_report|assert_true|atan|atan2|balloon_show|balloon_split|browse|browsedir|bufexists|buflisted|bufloaded|bufname|bufnr|bufwinid|bufwinnr|byte2line|byteidx|byteidxcomp|call|ceil|ch_canread|ch_close|ch_close_in|ch_evalexpr|ch_evalraw|ch_getbufnr|ch_getjob|ch_info|ch_log|ch_logfile|ch_open|ch_read|ch_readraw|ch_sendexpr|ch_sendraw|ch_setoptions|ch_status|changenr|char2nr|cindent|clearmatches|col|complete|complete_add|complete_check|confirm|copy|cos|cosh|count|cscope_connection|cursor|debugbreak|deepcopy|delete|deletebufline|did_filetype|diff_filler|diff_hlID|empty|escape|eval|eventhandler|executable|execute|exepath|exists|exp|expand|extend|feedkeys|filereadable|filewritable|filter|finddir|findfile|float2nr|floor|fmod|fnameescape|fnamemodify|foldclosed|foldclosedend|foldlevel|foldtext|foldtextresult|foreground|funcref|function|garbagecollect|get|getbufinfo|getbufline|getbufvar|getchangelist|getchar|getcharmod|getcharsearch|getcmdline|getcmdpos|getcmdtype|getcmdwintype|getcompletion|getcurpos|getcwd|getfontname|getfperm|getfsize|getftime|getftype|getjumplist|getline|getloclist|getmatches|getpid|getpos|getqflist|getreg|getregtype|gettabinfo|gettabvar|gettabwinvar|getwininfo|getwinpos|getwinposx|getwinposy|getwinvar|glob|glob2regpat|globpath|has|has_key|haslocaldir|hasmapto|histadd|histdel|histget|histnr|hlexists|hlID|hostname|iconv|indent|index|input|inputdialog|inputlist|inputrestore|inputsave|inputsecret|insert|invert|isdirectory|islocked|isnan|items|job_getchannel|job_info|job_setoptions|job_start|job_status|job_stop|join|js_decode|js_encode|json_decode|json_encode|keys|len|libcall|libcallnr|line|line2byte|lispindent|localtime|log|log10|luaeval|map|maparg|mapcheck|match|matchadd|matchaddpos|matcharg|matchdelete|matchend|matchlist|matchstr|matchstrpos|max|min|mkdir|mode|mzeval|nextnonblank|nr2char|or|pathshorten|perleval|pow|prevnonblank|printf|prompt_addtext|prompt_setcallback|prompt_setinterrupt|prompt_setprompt|pumvisible|py3eval|pyeval|pyxeval|range|readfile|reg_executing|reg_recording|reltime|reltimefloat|reltimestr|remote_expr|remote_foreground|remote_peek|remote_read|remote_send|remote_startserver|remove|rename|repeat|resolve|reverse|round|screenattr|screenchar|screencol|screenrow|search|searchdecl|searchpair|searchpairpos|searchpos|server2client|serverlist|setbufline|setbufvar|setcharsearch|setcmdpos|setfperm|setline|setloclist|setmatches|setpos|setqflist|setreg|settabvar|settabwinvar|setwinvar|sha256|shellescape|shiftwidth|simplify|sin|sinh|sort|soundfold|spellbadword|spellsuggest|split|sqrt|str2float|str2nr|strcharpart|strchars|strdisplaywidth|strftime|strgetchar|stridx|string|strlen|strpart|strridx|strtrans|strwidth|submatch|substitute|synconcealed|synID|synIDattr|synIDtrans|synstack|system|systemlist|tabpagebuflist|tabpagenr|tabpagewinnr|tagfiles|taglist|tan|tanh|tempname|term_dumpdiff|term_dumpload|term_dumpwrite|term_getaltscreen|term_getansicolors|term_getattr|term_getcursor|term_getjob|term_getline|term_getscrolled|term_getsize|term_getstatus|term_gettitle|term_gettty|term_list|term_scrape|term_sendkeys|term_setansicolors|term_setkill|term_setrestore|term_setsize|term_start|term_wait|test_alloc_fail|test_autochdir|test_feedinput|test_garbagecollect_now|test_ignore_error|test_null_channel|test_null_dict|test_null_job|test_null_list|test_null_partial|test_null_string|test_override|test_settime|timer_info|timer_pause|timer_start|timer_stop|timer_stopall|tolower|toupper|tr|trim|trunc|type|undofile|undotree|uniq|values|virtcol|visualmode|wildmenumode|win_findbuf|win_getid|win_gotoid|win_id2tabwin|win_id2win|win_screenpos|winbufnr|wincol|winheight|winline|winnr|winrestcmd|winrestview|winsaveview|winwidth|wordcount|writefile|xor)\\b"
1103
+ "match": "(?x) \\b\n( abs\n| acos\n| add\n| and\n| appendbufline\n| append\n| argc\n| argidx\n| arglistid\n| argv\n| asin\n| assert_beeps\n| assert_equalfile\n| assert_equal\n| assert_exception\n| assert_fails\n| assert_false\n| assert_inrange\n| assert_match\n| assert_notequal\n| assert_notmatch\n| assert_report\n| assert_true\n| atan2\n| atan\n| balloon_gettext\n| balloon_show\n| balloon_split\n| browsedir\n| browse\n| bufadd\n| bufexists\n| buflisted\n| bufloaded\n| bufload\n| bufname\n| bufnr\n| bufwinid\n| bufwinnr\n| byte2line\n| byteidxcomp\n| byteidx\n| call\n| ceil\n| ch_canread\n| ch_close_in\n| ch_close\n| ch_evalexpr\n| ch_evalraw\n| ch_getbufnr\n| ch_getjob\n| ch_info\n| ch_logfile\n| ch_log\n| ch_open\n| ch_readblob\n| ch_readraw\n| ch_read\n| ch_sendexpr\n| ch_sendraw\n| ch_setoptions\n| ch_status\n| changenr\n| char2nr\n| chdir\n| cindent\n| clearmatches\n| col\n| complete_add\n| complete_check\n| complete_info\n| complete\n| confirm\n| copy\n| cosh\n| cos\n| count\n| cscope_connection\n| cursor\n| debugbreak\n| deepcopy\n| deletebufline\n| delete\n| did_filetype\n| diff_filler\n| diff_hlID\n| empty\n| environ\n| escape\n| eval\n| eventhandler\n| executable\n| execute\n| exepath\n| exists\n| expandcmd\n| expand\n| exp\n| extend\n| feedkeys\n| filereadable\n| filewritable\n| filter\n| finddir\n| findfile\n| float2nr\n| floor\n| fmod\n| fnameescape\n| fnamemodify\n| foldclosedend\n| foldclosed\n| foldlevel\n| foldtextresult\n| foldtext\n| foreground\n| funcref\n| function\n| garbagecollect\n| getbufinfo\n| getbufline\n| getbufvar\n| getchangelist\n| getcharmod\n| getcharsearch\n| getchar\n| getcmdline\n| getcmdpos\n| getcmdtype\n| getcmdwintype\n| getcompletion\n| getcurpos\n| getcwd\n| getenv\n| getfontname\n| getfperm\n| getfsize\n| getftime\n| getftype\n| getjumplist\n| getline\n| getloclist\n| getmatches\n| getpid\n| getpos\n| getqflist\n| getregtype\n| getreg\n| gettabinfo\n| gettabvar\n| gettabwinvar\n| gettagstack\n| getwininfo\n| getwinposx\n| getwinposy\n| getwinpos\n| getwinvar\n| get\n| glob2regpat\n| globpath\n| glob\n| has_key\n| haslocaldir\n| hasmapto\n| has\n| histadd\n| histdel\n| histget\n| histnr\n| hlID\n| hlexists\n| hostname\n| iconv\n| indent\n| index\n| inputdialog\n| inputlist\n| inputrestore\n| inputsave\n| inputsecret\n| input\n| insert\n| invert\n| isdirectory\n| isinf\n| islocked\n| isnan\n| items\n| job_getchannel\n| job_info\n| job_setoptions\n| job_start\n| job_status\n| job_stop\n| join\n| js_decode\n| js_encode\n| json_decode\n| json_encode\n| keys\n| len\n| libcallnr\n| libcall\n| line2byte\n| line\n| lispindent\n| list2str\n| listener_add\n| listener_flush\n| listener_remove\n| localtime\n| log10\n| log\n| luaeval\n| maparg\n| mapcheck\n| map\n| matchaddpos\n| matchadd\n| matcharg\n| matchdelete\n| matchend\n| matchlist\n| matchstrpos\n| matchstr\n| match\n| max\n| min\n| mkdir\n| mode\n| mzeval\n| nextnonblank\n| nr2char\n| or\n| pathshorten\n| perleval\n| popup_atcursor\n| popup_beval\n| popup_clear\n| popup_close\n| popup_create\n| popup_dialog\n| popup_filter_menu\n| popup_filter_yesno\n| popup_getoptions\n| popup_getpos\n| popup_hide\n| popup_menu\n| popup_move\n| popup_notification\n| popup_setoptions\n| popup_settext\n| popup_show\n| pow\n| prevnonblank\n| printf\n| prompt_setcallback\n| prompt_setinterrupt\n| prompt_setprompt\n| prop_add\n| prop_clear\n| prop_find\n| prop_list\n| prop_remove\n| prop_type_add\n| prop_type_change\n| prop_type_delete\n| prop_type_get\n| prop_type_list\n| pumvisible\n| py3eval\n| pyeval\n| pyxeval\n| range\n| readdir\n| readfile\n| reg_executing\n| reg_recording\n| reltimefloat\n| reltimestr\n| reltime\n| remote_expr\n| remote_foreground\n| remote_peek\n| remote_read\n| remote_send\n| remote_startserver\n| remove\n| rename\n| repeat\n| resolve\n| reverse\n| round\n| rubyeval\n| screenattr\n| screenchars\n| screenchar\n| screencol\n| screenpos\n| screenrow\n| screenstring\n| searchdecl\n| searchpairpos\n| searchpair\n| searchpos\n| search\n| server2client\n| serverlist\n| setbufline\n| setbufvar\n| setcharsearch\n| setcmdpos\n| setenv\n| setfperm\n| setline\n| setloclist\n| setmatches\n| setpos\n| setqflist\n| setreg\n| settabvar\n| settabwinvar\n| settagstack\n| setwinvar\n| sha256\n| shellescape\n| shiftwidth\n| sign_define\n| sign_getdefined\n| sign_getplaced\n| sign_jump\n| sign_placelist\n| sign_place\n| sign_undefine\n| sign_unplacelist\n| sign_unplace\n| simplify\n| sinh\n| sin\n| sort\n| sound_clear\n| sound_playevent\n| sound_playfile\n| sound_stop\n| soundfold\n| spellbadword\n| spellsuggest\n| split\n| sqrt\n| str2float\n| str2list\n| str2nr\n| strcharpart\n| strchars\n| strdisplaywidth\n| strftime\n| strgetchar\n| stridx\n| string\n| strlen\n| strpart\n| strridx\n| strtrans\n| strwidth\n| submatch\n| substitute\n| swapinfo\n| swapname\n| synIDattr\n| synIDtrans\n| synID\n| synconcealed\n| synstack\n| systemlist\n| system\n| tabpagebuflist\n| tabpagenr\n| tabpagewinnr\n| tagfiles\n| taglist\n| tanh\n| tan\n| tempname\n| term_dumpdiff\n| term_dumpload\n| term_dumpwrite\n| term_getaltscreen\n| term_getansicolors\n| term_getattr\n| term_getcursor\n| term_getjob\n| term_getline\n| term_getscrolled\n| term_getsize\n| term_getstatus\n| term_gettitle\n| term_gettty\n| term_list\n| term_scrape\n| term_sendkeys\n| term_setansicolors\n| term_setkill\n| term_setrestore\n| term_setsize\n| term_start\n| term_wait\n| test_alloc_fail\n| test_autochdir\n| test_feedinput\n| test_garbagecollect_now\n| test_garbagecollect_soon\n| test_getvalue\n| test_ignore_error\n| test_null_blob\n| test_null_channel\n| test_null_dict\n| test_null_job\n| test_null_list\n| test_null_partial\n| test_null_string\n| test_option_not_set\n| test_override\n| test_refcount\n| test_scrollbar\n| test_setmouse\n| test_settime\n| timer_info\n| timer_pause\n| timer_start\n| timer_stopall\n| timer_stop\n| tolower\n| toupper\n| trim\n| trunc\n| tr\n| type\n| undofile\n| undotree\n| uniq\n| values\n| virtcol\n| visualmode\n| wildmenumode\n| win_execute\n| win_findbuf\n| win_getid\n| win_gotoid\n| win_id2tabwin\n| win_id2win\n| win_screenpos\n| winbufnr\n| wincol\n| winheight\n| winlayout\n| winline\n| winnr\n| winrestcmd\n| winrestview\n| winsaveview\n| winwidth\n| wordcount\n| writefile\n| xor\n) \\b"
1104
1104
  },
1105
1105
  "vimGroup": {
1106
1106
  "name": "support.type.group.viml",
1107
- "match": "(?i)\\b(Boolean|Character|Comment|Conditional|Constant|Debug|Define|Delimiter|Error|Exception|Float|Function|Identifier|Ignore|Include|Keyword|Label|Macro|Number|Operator|PreCondit|PreProc|Repeat|Special|SpecialChar|SpecialComment|Statement|StorageClass|String|Structure|Tag|Todo|Type|Typedef|Underlined)\\b"
1107
+ "match": "(?xi) \\b\n( Boolean\n| Character\n| Comment\n| Conditional\n| Constant\n| Debug\n| Define\n| Delimiter\n| Error\n| Exception\n| Float\n| Function\n| Identifier\n| Ignore\n| Include\n| Keyword\n| Label\n| Macro\n| Number\n| Operator\n| PreCondit\n| PreProc\n| Repeat\n| SpecialChar\n| SpecialComment\n| Special\n| Statement\n| StorageClass\n| String\n| Structure\n| Tag\n| Todo\n| Typedef\n| Type\n| Underlined\n) \\b"
1108
1108
  },
1109
1109
  "vimGroupSpecial": {
1110
1110
  "name": "support.function.vimGroupSpecial.viml",
1111
- "match": "\\b(ALL|ALLBUT|CONTAINED|TOP)\\b"
1111
+ "match": "(?x) \\b\n( ALLBUT\n| ALL\n| CONTAINED\n| TOP\n) \\b"
1112
1112
  },
1113
1113
  "vimHLGroup": {
1114
1114
  "name": "support.type.highlight-group.viml",
1115
- "match": "(?i)\\b(ColorColumn|Cursor|CursorColumn|CursorIM|CursorLine|CursorLineNr|DiffAdd|DiffChange|DiffDelete|DiffText|Directory|EndOfBuffer|ErrorMsg|FoldColumn|Folded|IncSearch|LineNr|MatchParen|Menu|ModeMsg|MoreMsg|NonText|Normal|Pmenu|PmenuSbar|PmenuSel|PmenuThumb|Question|Scrollbar|Search|SignColumn|SpecialKey|SpellBad|SpellCap|SpellLocal|SpellRare|StatusLine|StatusLineNC|TabLine|TabLineFill|TabLineSel|Title|Tooltip|VertSplit|Visual|VisualNOS|WarningMsg|WildMenu)\\b"
1115
+ "match": "(?xi) \\b\n( ColorColumn\n| CursorColumn\n| CursorIM\n| CursorLineNr\n| CursorLine\n| Cursor\n| DiffAdd\n| DiffChange\n| DiffDelete\n| DiffText\n| Directory\n| EndOfBuffer\n| ErrorMsg\n| FoldColumn\n| Folded\n| IncSearch\n| LineNr\n| MatchParen\n| Menu\n| ModeMsg\n| MoreMsg\n| NonText\n| Normal\n| PmenuSbar\n| PmenuSel\n| PmenuThumb\n| Pmenu\n| Question\n| QuickFixLine\n| Scrollbar\n| Search\n| SignColumn\n| SpecialKey\n| SpellBad\n| SpellCap\n| SpellLocal\n| SpellRare\n| StatusLineNC\n| StatusLineTerm\n| StatusLine\n| TabLineFill\n| TabLineSel\n| TabLine\n| Terminal\n| Title\n| Tooltip\n| VertSplit\n| VisualNOS\n| Visual\n| WarningMsg\n| WildMenu\n) \\b"
1116
1116
  },
1117
1117
  "vimHiAttrib": {
1118
1118
  "name": "support.function.vimHiAttrib.viml",
1119
- "match": "\\b(bold|inverse|italic|nocombine|none|reverse|standout|strikethrough|undercurl|underline)\\b"
1119
+ "match": "(?x) \\b\n( bold\n| inverse\n| italic\n| nocombine\n| none\n| reverse\n| standout\n| strikethrough\n| undercurl\n| underline\n) \\b"
1120
1120
  },
1121
1121
  "vimHiClear": {
1122
1122
  "name": "support.function.vimHiClear.viml",
1123
- "match": "\\b(clear)\\b"
1123
+ "match": "(?x) \\b\n( clear\n) \\b"
1124
1124
  },
1125
1125
  "vimHiCtermColor": {
1126
1126
  "name": "support.constant.colour.color.$1.viml",
1127
- "match": "\\b(black|blue|brown|cyan|darkblue|darkcyan|darkgray|darkgreen|darkgrey|darkmagenta|darkred|darkyellow|gray|green|grey|lightblue|lightcyan|lightgray|lightgreen|lightgrey|lightmagenta|lightred|magenta|red|white|yellow)\\b"
1127
+ "match": "(?x) \\b\n( black\n| blue\n| brown\n| cyan\n| darkblue\n| darkcyan\n| darkgray\n| darkgreen\n| darkgrey\n| darkmagenta\n| darkred\n| darkyellow\n| gray\n| green\n| grey\n| lightblue\n| lightcyan\n| lightgray\n| lightgreen\n| lightgrey\n| lightmagenta\n| lightred\n| magenta\n| red\n| white\n| yellow\n) \\b"
1128
1128
  },
1129
1129
  "vimMapModKey": {
1130
1130
  "name": "support.function.vimMapModKey.viml",
1131
- "match": "\\b(buffer|expr|leader|localleader|nowait|plug|script|sid|silent|unique)\\b"
1131
+ "match": "(?x) \\b\n( buffer\n| expr\n| leader\n| localleader\n| nowait\n| plug\n| script\n| sid\n| silent\n| unique\n) \\b"
1132
1132
  },
1133
1133
  "vimOption": {
1134
1134
  "name": "support.variable.option.viml",
1135
- "match": "\\b(acd|ai|akm|al|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|ar|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonevalterm|balloonexpr|bdir|bdlay|belloff|beval|bevalterm|bex|bexpr|bg|bh|bin|binary|bk|bkc|bl|bo|bomb|breakat|breakindent|breakindentopt|bri|briopt|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|cb|cc|ccv|cd|cdpath|cedit|cf|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cm|cmdheight|cmdwinheight|cmp|cms|co|cocu|cole|colorcolumn|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|confirm|copyindent|cot|cp|cpo|cpoptions|cpt|crb|cryptmethod|cscopepathcomp|cscopeprg|cscopequickfix|cscoperelative|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|csre|cst|csto|csverb|cuc|cul|cursor|cursorbind|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|display|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|emo|emoji|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|ex|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fic|fileencoding|fileencodings|fileformat|fileformats|fileignorecase|filetype|fillchars|fixendofline|fixeol|fk|fkmap|flp|fml|fmr|fo|foldclose|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldopen|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|go|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hid|hidden|highlight|history|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatefunc|imactivatekey|imaf|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|imsf|imst|imstatusfunc|imstyle|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invballoonevalterm|invbeval|invbevalterm|invbin|invbinary|invbk|invbl|invbomb|invbreakindent|invbri|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invcopyindent|invcp|invcrb|invcscoperelative|invcscopetag|invcscopeverbose|invcsre|invcst|invcsverb|invcuc|invcul|invcursorbind|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invea|inveb|inved|invedcompatible|invek|invemo|invemoji|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfic|invfileignorecase|invfixendofline|invfixeol|invfk|invfkmap|invfoldenable|invfs|invfsync|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invimdisable|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlangnoremap|invlangremap|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invlnr|invloadplugins|invlpl|invlrm|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invrelativenumber|invremap|invrestorescreen|invrevins|invri|invrightleft|invrl|invrnu|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invudf|invundofile|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwic|invwildignorecase|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|is|isf|isfname|isi|isident|isk|iskeyword|isp|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|langnoremap|langremap|laststatus|lazyredraw|lbr|lcs|level|linebreak|lines|linespace|lisp|lispwords|list|listchars|lm|lmap|lnr|loadplugins|lpl|lrm|ls|lsp|luadll|lw|lz|ma|macatsui|magic|makeef|makeencoding|makeprg|mat|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menc|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|mod|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|mzschemedll|mzschemegcdll|nf|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|noballoonevalterm|nobeval|nobevalterm|nobin|nobinary|nobk|nobl|nobomb|nobreakindent|nobri|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|nocopyindent|nocp|nocrb|nocscoperelative|nocscopetag|nocscopeverbose|nocsre|nocst|nocsverb|nocuc|nocul|nocursorbind|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|noea|noeb|noed|noedcompatible|noek|noemo|noemoji|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofic|nofileignorecase|nofixendofline|nofixeol|nofk|nofkmap|nofoldenable|nofs|nofsync|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|nohlsearch|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noimdisable|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolangnoremap|nolangremap|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|nolnr|noloadplugins|nolpl|nolrm|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|norelativenumber|noremap|norestorescreen|norevins|nori|norightleft|norl|nornu|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|noudf|noundofile|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowic|nowildignorecase|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|nrformats|nu|number|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|packpath|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|perldll|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|pp|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pumwidth|pvh|pvw|pw|pythondll|pythonhome|pythonthreedll|pythonthreehome|pyx|pyxversion|qe|quoteescape|rdt|re|readonly|redrawtime|regexpengine|relativenumber|remap|renderoptions|report|restorescreen|revins|ri|rightleft|rightleftcmd|rl|rlc|rnu|ro|rop|rs|rtp|ru|rubydll|ruf|ruler|rulerformat|runtimepath|sb|sbo|sbr|sc|scb|scl|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|sh|shcf|shell|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxescape|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|signcolumn|siso|sj|slm|sm|smartcase|smartindent|smarttab|smc|smd|sn|so|softtabstop|sol|sp|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|spr|sps|sr|srr|ss|ssl|ssop|st|sta|stal|startofline|statusline|stl|stmp|sts|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxe|sxq|syn|synmaxcol|syntax|t_8b|t_8f|t_AB|t_AF|t_al|t_AL|t_bc|t_BD|t_BE|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EC|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_GP|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_PE|t_PS|t_RB|t_RC|t_RF|t_RI|t_RS|t_RV|t_Sb|t_SC|t_se|t_Sf|t_SH|t_SI|t_so|t_sr|t_SR|t_te|t_Te|t_ti|t_ts|t_Ts|t_u7|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_VS|t_WP|t_WS|t_xn|t_xs|t_ZH|t_ZR|ta|tabline|tabpagemax|tabstop|tag|tagbsearch|tagcase|taglength|tagrelative|tags|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tc|tcldll|tenc|term|termbidi|termencoding|termguicolors|termwinkey|termwinscroll|termwinsize|terse|textauto|textmode|textwidth|tf|tgc|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|tl|tm|to|toolbar|toolbariconsize|top|tpm|tr|ts|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|twk|tws|twsl|tx|uc|udf|udir|ul|undodir|undofile|undolevels|undoreload|updatecount|updatetime|ur|ut|varsofttabstop|vartabstop|vb|vbs|vdir|ve|verbose|verbosefile|vfile|vi|viewdir|viewoptions|vif|viminfo|viminfofile|virtualedit|visualbell|vop|vsts|vts|wa|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|wh|whichwrap|wi|wic|wig|wildchar|wildcharm|wildignore|wildignorecase|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winptydll|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|write|writeany|writebackup|writedelay|ws|ww)\\b"
1135
+ "match": "(?x) \\b\n( acd\n| ai\n| akm\n| aleph\n| allowrevins\n| altkeymap\n| al\n| ambiwidth\n| ambw\n| antialias\n| anti\n| arabicshape\n| arabic\n| arab\n| ari\n| arshape\n| ar\n| autochdir\n| autoindent\n| autoread\n| autowriteall\n| autowrite\n| awa\n| aw\n| background\n| backspace\n| backupcopy\n| backupdir\n| backupext\n| backupskip\n| backup\n| balloondelay\n| balloonevalterm\n| ballooneval\n| balloonexpr\n| bdir\n| bdlay\n| belloff\n| bevalterm\n| beval\n| bexpr\n| bex\n| bg\n| bh\n| binary\n| bin\n| bkc\n| bk\n| bl\n| bomb\n| bo\n| breakat\n| breakindentopt\n| breakindent\n| briopt\n| bri\n| brk\n| browsedir\n| bsdir\n| bsk\n| bs\n| bt\n| bufhidden\n| buflisted\n| buftype\n| casemap\n| cb\n| ccv\n| cc\n| cdpath\n| cd\n| cedit\n| cfu\n| cf\n| charconvert\n| ch\n| cindent\n| cinkeys\n| cink\n| cinoptions\n| cino\n| cinwords\n| cinw\n| cin\n| ci\n| clipboard\n| cmdheight\n| cmdwinheight\n| cmp\n| cms\n| cm\n| cocu\n| cole\n| colorcolumn\n| columns\n| commentstring\n| comments\n| compatible\n| completefunc\n| completeopt\n| complete\n| com\n| confirm\n| copyindent\n| cot\n| co\n| cpoptions\n| cpo\n| cpt\n| cp\n| crb\n| cryptmethod\n| cscopepathcomp\n| cscopeprg\n| cscopequickfix\n| cscoperelative\n| cscopetagorder\n| cscopetag\n| cscopeverbose\n| cspc\n| csprg\n| csqf\n| csre\n| csto\n| cst\n| csverb\n| cuc\n| cul\n| cursorbind\n| cursorcolumn\n| cursorline\n| cursor\n| cwh\n| debug\n| deco\n| define\n| def\n| delcombine\n| dex\n| dg\n| dictionary\n| dict\n| diffexpr\n| diffopt\n| diff\n| digraph\n| dip\n| directory\n| dir\n| display\n| dy\n| eadirection\n| ead\n| ea\n| eb\n| edcompatible\n| ed\n| efm\n| ef\n| ei\n| ek\n| emoji\n| emo\n| encoding\n| enc\n| endofline\n| eol\n| ep\n| equalalways\n| equalprg\n| errorbells\n| errorfile\n| errorformat\n| esckeys\n| et\n| eventignore\n| expandtab\n| exrc\n| ex\n| fcl\n| fcs\n| fdc\n| fde\n| fdi\n| fdls\n| fdl\n| fdm\n| fdn\n| fdo\n| fdt\n| fencs\n| fenc\n| fen\n| fex\n| ffs\n| ff\n| fic\n| fileencodings\n| fileencoding\n| fileformats\n| fileformat\n| fileignorecase\n| filetype\n| fillchars\n| fixendofline\n| fixeol\n| fkmap\n| fk\n| flp\n| fml\n| fmr\n| foldclose\n| foldcolumn\n| foldenable\n| foldexpr\n| foldignore\n| foldlevelstart\n| foldlevel\n| foldmarker\n| foldmethod\n| foldminlines\n| foldnestmax\n| foldopen\n| foldtext\n| formatexpr\n| formatlistpat\n| formatoptions\n| formatprg\n| fo\n| fp\n| fsync\n| fs\n| ft\n| gcr\n| gdefault\n| gd\n| gfm\n| gfn\n| gfs\n| gfw\n| ghr\n| go\n| gp\n| grepformat\n| grepprg\n| gtl\n| gtt\n| guicursor\n| guifontset\n| guifontwide\n| guifont\n| guiheadroom\n| guioptions\n| guipty\n| guitablabel\n| guitabtooltip\n| helpfile\n| helpheight\n| helplang\n| hf\n| hh\n| hidden\n| hid\n| highlight\n| history\n| hi\n| hkmapp\n| hkmap\n| hkp\n| hk\n| hlg\n| hlsearch\n| hls\n| hl\n| iconstring\n| icon\n| ic\n| ignorecase\n| imactivatefunc\n| imactivatekey\n| imaf\n| imak\n| imcmdline\n| imc\n| imdisable\n| imd\n| iminsert\n| imi\n| imsearch\n| imsf\n| imstatusfunc\n| imstyle\n| imst\n| ims\n| im\n| includeexpr\n| include\n| incsearch\n| inc\n| indentexpr\n| indentkeys\n| inde\n| indk\n| inex\n| infercase\n| inf\n| insertmode\n| invacd\n| invai\n| invakm\n| invallowrevins\n| invaltkeymap\n| invantialias\n| invanti\n| invarabicshape\n| invarabic\n| invarab\n| invari\n| invarshape\n| invar\n| invautochdir\n| invautoindent\n| invautoread\n| invautowriteall\n| invautowrite\n| invawa\n| invaw\n| invbackup\n| invballoonevalterm\n| invballooneval\n| invbevalterm\n| invbeval\n| invbinary\n| invbin\n| invbk\n| invbl\n| invbomb\n| invbreakindent\n| invbri\n| invbuflisted\n| invcf\n| invcindent\n| invcin\n| invci\n| invcompatible\n| invconfirm\n| invcopyindent\n| invcp\n| invcrb\n| invcscoperelative\n| invcscopetag\n| invcscopeverbose\n| invcsre\n| invcst\n| invcsverb\n| invcuc\n| invcul\n| invcursorbind\n| invcursorcolumn\n| invcursorline\n| invdeco\n| invdelcombine\n| invdg\n| invdiff\n| invdigraph\n| invea\n| inveb\n| invedcompatible\n| inved\n| invek\n| invemoji\n| invemo\n| invendofline\n| inveol\n| invequalalways\n| inverrorbells\n| invesckeys\n| invet\n| invexpandtab\n| invexrc\n| invex\n| invfen\n| invfic\n| invfileignorecase\n| invfixendofline\n| invfixeol\n| invfkmap\n| invfk\n| invfoldenable\n| invfsync\n| invfs\n| invgdefault\n| invgd\n| invguipty\n| invhidden\n| invhid\n| invhkmapp\n| invhkmap\n| invhkp\n| invhk\n| invhlsearch\n| invhls\n| invicon\n| invic\n| invignorecase\n| invimcmdline\n| invimc\n| invimdisable\n| invimd\n| invim\n| invincsearch\n| invinfercase\n| invinf\n| invinsertmode\n| invis\n| invjoinspaces\n| invjs\n| invlangnoremap\n| invlangremap\n| invlazyredraw\n| invlbr\n| invlinebreak\n| invlisp\n| invlist\n| invlnr\n| invloadplugins\n| invlpl\n| invlrm\n| invlz\n| invmacatsui\n| invmagic\n| invma\n| invmh\n| invmle\n| invml\n| invmodelineexpr\n| invmodeline\n| invmodifiable\n| invmodified\n| invmod\n| invmore\n| invmousefocus\n| invmousef\n| invmousehide\n| invnumber\n| invnu\n| invodev\n| invopendevice\n| invpaste\n| invpi\n| invpreserveindent\n| invpreviewwindow\n| invprompt\n| invpvw\n| invreadonly\n| invrelativenumber\n| invremap\n| invrestorescreen\n| invrevins\n| invrightleft\n| invri\n| invrl\n| invrnu\n| invro\n| invrs\n| invruler\n| invru\n| invsb\n| invscb\n| invscrollbind\n| invscs\n| invsc\n| invsecure\n| invsft\n| invshellslash\n| invshelltemp\n| invshiftround\n| invshortname\n| invshowcmd\n| invshowfulltag\n| invshowmatch\n| invshowmode\n| invsi\n| invsmartcase\n| invsmartindent\n| invsmarttab\n| invsmd\n| invsm\n| invsn\n| invsol\n| invspell\n| invsplitbelow\n| invsplitright\n| invspr\n| invsr\n| invssl\n| invstartofline\n| invsta\n| invstmp\n| invswapfile\n| invswf\n| invtagbsearch\n| invtagrelative\n| invtagstack\n| invta\n| invtbidi\n| invtbi\n| invtbs\n| invtermbidi\n| invterse\n| invtextauto\n| invtextmode\n| invtf\n| invtgst\n| invtildeop\n| invtimeout\n| invtitle\n| invtop\n| invto\n| invtr\n| invttimeout\n| invttybuiltin\n| invttyfast\n| invtx\n| invudf\n| invundofile\n| invvb\n| invvisualbell\n| invwarn\n| invwa\n| invwb\n| invweirdinvert\n| invwfh\n| invwfw\n| invwic\n| invwildignorecase\n| invwildmenu\n| invwinfixheight\n| invwinfixwidth\n| invwiv\n| invwmnu\n| invwrapscan\n| invwrap\n| invwriteany\n| invwritebackup\n| invwrite\n| invws\n| isfname\n| isf\n| isident\n| isi\n| iskeyword\n| isk\n| isprint\n| isp\n| is\n| joinspaces\n| js\n| keymap\n| keymodel\n| keywordprg\n| key\n| kmp\n| km\n| kp\n| langmap\n| langmenu\n| langnoremap\n| langremap\n| laststatus\n| lazyredraw\n| lbr\n| lcs\n| level\n| linebreak\n| linespace\n| lines\n| lispwords\n| lisp\n| listchars\n| list\n| lmap\n| lm\n| lnr\n| loadplugins\n| lpl\n| lrm\n| lsp\n| ls\n| luadll\n| lw\n| lz\n| macatsui\n| magic\n| makeef\n| makeencoding\n| makeprg\n| matchpairs\n| matchtime\n| mat\n| maxcombine\n| maxfuncdepth\n| maxmapdepth\n| maxmempattern\n| maxmemtot\n| maxmem\n| ma\n| mco\n| mef\n| menc\n| menuitems\n| mfd\n| mh\n| mis\n| mkspellmem\n| mle\n| mls\n| ml\n| mmd\n| mmp\n| mmt\n| mm\n| modelineexpr\n| modelines\n| modeline\n| modifiable\n| modified\n| mod\n| more\n| mousefocus\n| mousef\n| mousehide\n| mousemodel\n| mousem\n| mouseshape\n| mouses\n| mousetime\n| mouset\n| mouse\n| mps\n| mp\n| msm\n| mzquantum\n| mzq\n| mzschemedll\n| mzschemegcdll\n| nf\n| noacd\n| noai\n| noakm\n| noallowrevins\n| noaltkeymap\n| noantialias\n| noanti\n| noarabicshape\n| noarabic\n| noarab\n| noari\n| noarshape\n| noar\n| noautochdir\n| noautoindent\n| noautoread\n| noautowriteall\n| noautowrite\n| noawa\n| noaw\n| nobackup\n| noballoonevalterm\n| noballooneval\n| nobevalterm\n| nobeval\n| nobinary\n| nobin\n| nobk\n| nobl\n| nobomb\n| nobreakindent\n| nobri\n| nobuflisted\n| nocf\n| nocindent\n| nocin\n| noci\n| nocompatible\n| noconfirm\n| nocopyindent\n| nocp\n| nocrb\n| nocscoperelative\n| nocscopetag\n| nocscopeverbose\n| nocsre\n| nocst\n| nocsverb\n| nocuc\n| nocul\n| nocursorbind\n| nocursorcolumn\n| nocursorline\n| nodeco\n| nodelcombine\n| nodg\n| nodiff\n| nodigraph\n| noea\n| noeb\n| noedcompatible\n| noed\n| noek\n| noemoji\n| noemo\n| noendofline\n| noeol\n| noequalalways\n| noerrorbells\n| noesckeys\n| noet\n| noexpandtab\n| noexrc\n| noex\n| nofen\n| nofic\n| nofileignorecase\n| nofixendofline\n| nofixeol\n| nofkmap\n| nofk\n| nofoldenable\n| nofsync\n| nofs\n| nogdefault\n| nogd\n| noguipty\n| nohidden\n| nohid\n| nohkmapp\n| nohkmap\n| nohkp\n| nohk\n| nohlsearch\n| nohls\n| noicon\n| noic\n| noignorecase\n| noimcmdline\n| noimc\n| noimdisable\n| noimd\n| noim\n| noincsearch\n| noinfercase\n| noinf\n| noinsertmode\n| nois\n| nojoinspaces\n| nojs\n| nolangnoremap\n| nolangremap\n| nolazyredraw\n| nolbr\n| nolinebreak\n| nolisp\n| nolist\n| nolnr\n| noloadplugins\n| nolpl\n| nolrm\n| nolz\n| nomacatsui\n| nomagic\n| noma\n| nomh\n| nomle\n| noml\n| nomodelineexpr\n| nomodeline\n| nomodifiable\n| nomodified\n| nomod\n| nomore\n| nomousefocus\n| nomousef\n| nomousehide\n| nonumber\n| nonu\n| noodev\n| noopendevice\n| nopaste\n| nopi\n| nopreserveindent\n| nopreviewwindow\n| noprompt\n| nopvw\n| noreadonly\n| norelativenumber\n| noremap\n| norestorescreen\n| norevins\n| norightleft\n| nori\n| norl\n| nornu\n| noro\n| nors\n| noruler\n| noru\n| nosb\n| noscb\n| noscrollbind\n| noscs\n| nosc\n| nosecure\n| nosft\n| noshellslash\n| noshelltemp\n| noshiftround\n| noshortname\n| noshowcmd\n| noshowfulltag\n| noshowmatch\n| noshowmode\n| nosi\n| nosmartcase\n| nosmartindent\n| nosmarttab\n| nosmd\n| nosm\n| nosn\n| nosol\n| nospell\n| nosplitbelow\n| nosplitright\n| nospr\n| nosr\n| nossl\n| nostartofline\n| nosta\n| nostmp\n| noswapfile\n| noswf\n| notagbsearch\n| notagrelative\n| notagstack\n| nota\n| notbidi\n| notbi\n| notbs\n| notermbidi\n| noterse\n| notextauto\n| notextmode\n| notf\n| notgst\n| notildeop\n| notimeout\n| notitle\n| notop\n| noto\n| notr\n| nottimeout\n| nottybuiltin\n| nottyfast\n| notx\n| noudf\n| noundofile\n| novb\n| novisualbell\n| nowarn\n| nowa\n| nowb\n| noweirdinvert\n| nowfh\n| nowfw\n| nowic\n| nowildignorecase\n| nowildmenu\n| nowinfixheight\n| nowinfixwidth\n| nowiv\n| nowmnu\n| nowrapscan\n| nowrap\n| nowriteany\n| nowritebackup\n| nowrite\n| nows\n| nrformats\n| numberwidth\n| number\n| nuw\n| nu\n| odev\n| oft\n| ofu\n| omnifunc\n| opendevice\n| operatorfunc\n| opfunc\n| osfiletype\n| packpath\n| paragraphs\n| para\n| pastetoggle\n| paste\n| patchexpr\n| patchmode\n| path\n| pa\n| pdev\n| penc\n| perldll\n| pexpr\n| pex\n| pfn\n| pheader\n| ph\n| pi\n| pmbcs\n| pmbfn\n| pm\n| popt\n| pp\n| preserveindent\n| previewheight\n| previewwindow\n| printdevice\n| printencoding\n| printexpr\n| printfont\n| printheader\n| printmbcharset\n| printmbfont\n| printoptions\n| prompt\n| pt\n| pumheight\n| pumwidth\n| pvh\n| pvw\n| pw\n| pythondll\n| pythonhome\n| pythonthreedll\n| pythonthreehome\n| pyxversion\n| pyx\n| qe\n| quoteescape\n| rdt\n| readonly\n| redrawtime\n| regexpengine\n| relativenumber\n| remap\n| renderoptions\n| report\n| restorescreen\n| revins\n| re\n| rightleftcmd\n| rightleft\n| ri\n| rlc\n| rl\n| rnu\n| rop\n| ro\n| rs\n| rtp\n| rubydll\n| ruf\n| rulerformat\n| ruler\n| runtimepath\n| ru\n| sbo\n| sbr\n| sb\n| scb\n| scl\n| scrollbind\n| scrolljump\n| scrolloff\n| scrollopt\n| scroll\n| scr\n| scs\n| sc\n| sections\n| sect\n| secure\n| selection\n| selectmode\n| sel\n| sessionoptions\n| sft\n| shcf\n| shellcmdflag\n| shellpipe\n| shellquote\n| shellredir\n| shellslash\n| shelltemp\n| shelltype\n| shellxescape\n| shellxquote\n| shell\n| shiftround\n| shiftwidth\n| shm\n| shortmess\n| shortname\n| showbreak\n| showcmd\n| showfulltag\n| showmatch\n| showmode\n| showtabline\n| shq\n| sh\n| sidescrolloff\n| sidescroll\n| signcolumn\n| siso\n| si\n| sj\n| slm\n| smartcase\n| smartindent\n| smarttab\n| smc\n| smd\n| sm\n| sn\n| softtabstop\n| sol\n| so\n| spc\n| spellcapcheck\n| spellfile\n| spelllang\n| spellsuggest\n| spell\n| spf\n| splitbelow\n| splitright\n| spl\n| spr\n| sps\n| sp\n| srr\n| sr\n| ssl\n| ssop\n| ss\n| stal\n| startofline\n| statusline\n| sta\n| stl\n| stmp\n| sts\n| st\n| sua\n| suffixesadd\n| suffixes\n| su\n| swapfile\n| swapsync\n| swb\n| swf\n| switchbuf\n| sws\n| sw\n| sxe\n| sxq\n| synmaxcol\n| syntax\n| syn\n| t_8b\n| t_8f\n| t_AB\n| t_AF\n| t_AL\n| t_BD\n| t_BE\n| t_CS\n| t_CV\n| t_Ce\n| t_Co\n| t_Cs\n| t_DL\n| t_EC\n| t_EI\n| t_F1\n| t_F2\n| t_F3\n| t_F4\n| t_F5\n| t_F6\n| t_F7\n| t_F8\n| t_F9\n| t_GP\n| t_IE\n| t_IS\n| t_K1\n| t_K3\n| t_K4\n| t_K5\n| t_K6\n| t_K7\n| t_K8\n| t_K9\n| t_KA\n| t_KB\n| t_KC\n| t_KD\n| t_KE\n| t_KF\n| t_KG\n| t_KH\n| t_KI\n| t_KJ\n| t_KK\n| t_KL\n| t_PE\n| t_PS\n| t_RB\n| t_RC\n| t_RF\n| t_RI\n| t_RS\n| t_RT\n| t_RV\n| t_Ri\n| t_SC\n| t_SH\n| t_SI\n| t_SR\n| t_ST\n| t_Sb\n| t_Sf\n| t_Si\n| t_Te\n| t_Ts\n| t_VS\n| t_WP\n| t_WS\n| t_ZH\n| t_ZR\n| t_al\n| t_bc\n| t_cd\n| t_ce\n| t_cl\n| t_cm\n| t_cs\n| t_da\n| t_db\n| t_dl\n| t_fs\n| t_k1\n| t_k2\n| t_k3\n| t_k4\n| t_k5\n| t_k6\n| t_k7\n| t_k8\n| t_k9\n| t_kB\n| t_kD\n| t_kI\n| t_kN\n| t_kP\n| t_kb\n| t_kd\n| t_ke\n| t_kh\n| t_kl\n| t_kr\n| t_ks\n| t_ku\n| t_le\n| t_mb\n| t_md\n| t_me\n| t_mr\n| t_ms\n| t_nd\n| t_op\n| t_se\n| t_so\n| t_sr\n| t_te\n| t_ti\n| t_ts\n| t_u7\n| t_ue\n| t_us\n| t_ut\n| t_vb\n| t_ve\n| t_vi\n| t_vs\n| t_xn\n| t_xs\n| tabline\n| tabpagemax\n| tabstop\n| tagbsearch\n| tagcase\n| tagfunc\n| taglength\n| tagrelative\n| tagstack\n| tags\n| tag\n| tal\n| ta\n| tbidi\n| tbis\n| tbi\n| tbs\n| tb\n| tcldll\n| tc\n| tenc\n| termbidi\n| termencoding\n| termguicolors\n| termwinkey\n| termwinscroll\n| termwinsize\n| termwintype\n| term\n| terse\n| textauto\n| textmode\n| textwidth\n| tfu\n| tf\n| tgc\n| tgst\n| thesaurus\n| tildeop\n| timeoutlen\n| timeout\n| titlelen\n| titleold\n| titlestring\n| title\n| tl\n| tm\n| toolbariconsize\n| toolbar\n| top\n| to\n| tpm\n| tr\n| tsl\n| tsr\n| ts\n| ttimeoutlen\n| ttimeout\n| ttm\n| ttybuiltin\n| ttyfast\n| ttymouse\n| ttym\n| ttyscroll\n| ttytype\n| tty\n| twk\n| twsl\n| tws\n| twt\n| tw\n| tx\n| uc\n| udf\n| udir\n| ul\n| undodir\n| undofile\n| undolevels\n| undoreload\n| updatecount\n| updatetime\n| ur\n| ut\n| varsofttabstop\n| vartabstop\n| vbs\n| vb\n| vdir\n| verbosefile\n| verbose\n| ve\n| vfile\n| viewdir\n| viewoptions\n| vif\n| viminfofile\n| viminfo\n| virtualedit\n| visualbell\n| vi\n| vop\n| vsts\n| vts\n| wak\n| warn\n| wa\n| wb\n| wcm\n| wcr\n| wc\n| wd\n| weirdinvert\n| wfh\n| wfw\n| whichwrap\n| wh\n| wic\n| wig\n| wildcharm\n| wildchar\n| wildignorecase\n| wildignore\n| wildmenu\n| wildmode\n| wildoptions\n| wim\n| winaltkeys\n| wincolor\n| window\n| winfixheight\n| winfixwidth\n| winheight\n| winminheight\n| winminwidth\n| winptydll\n| winwidth\n| wiv\n| wiw\n| wi\n| wmh\n| wmnu\n| wmw\n| wm\n| wop\n| wrapmargin\n| wrapscan\n| wrap\n| writeany\n| writebackup\n| writedelay\n| write\n| ws\n| ww\n) \\b"
1136
1136
  },
1137
1137
  "vimPattern": {
1138
1138
  "name": "support.function.vimPattern.viml",
1139
- "match": "\\b(end|skip|start)\\b"
1139
+ "match": "(?x) \\b\n( end\n| skip\n| start\n) \\b"
1140
1140
  },
1141
1141
  "vimStdPlugin": {
1142
1142
  "name": "support.class.stdplugin.viml",
1143
- "match": "\\b(Arguments|Break|Clear|Continue|DiffOrig|Evaluate|Finish|Gdb|Man|N|Next|Over|P|Print|Program|Run|S|Source|Step|Stop|Termdebug|TermdebugCommand|TOhtml|Winbar|XMLent|XMLns)\\b"
1143
+ "match": "(?x) \\b\n( Arguments\n| Break\n| Cfilter\n| Clear\n| Continue\n| DiffOrig\n| Evaluate\n| Finish\n| Gdb\n| Lfilter\n| Man\n| N\n| Next\n| Over\n| P\n| Print\n| Program\n| Run\n| Source\n| Step\n| Stop\n| S\n| TOhtml\n| TermdebugCommand\n| Termdebug\n| Winbar\n| XMLent\n| XMLns\n) \\b"
1144
1144
  },
1145
1145
  "vimSynCase": {
1146
1146
  "name": "support.function.vimSynCase.viml",
1147
- "match": "\\b(ignore|match)\\b"
1147
+ "match": "(?x) \\b\n( ignore\n| match\n) \\b"
1148
1148
  },
1149
1149
  "vimSynType": {
1150
1150
  "name": "support.function.vimSynType.viml",
1151
- "match": "\\b(case|clear|cluster|enable|include|iskeyword|keyword|list|manual|match|off|on|region|reset|sync)\\b"
1151
+ "match": "(?x) \\b\n( case\n| clear\n| cluster\n| enable\n| include\n| iskeyword\n| keyword\n| list\n| manual\n| match\n| off\n| on\n| region\n| reset\n| sync\n) \\b"
1152
1152
  },
1153
1153
  "vimSyncC": {
1154
1154
  "name": "support.function.vimSyncC.viml",
1155
- "match": "\\b(ccomment|clear|fromstart)\\b"
1155
+ "match": "(?x) \\b\n( ccomment\n| clear\n| fromstart\n) \\b"
1156
1156
  },
1157
1157
  "vimSyncLinecont": {
1158
1158
  "name": "support.function.vimSyncLinecont.viml",
1159
- "match": "\\b(linecont)\\b"
1159
+ "match": "(?x) \\b\n( linecont\n) \\b"
1160
1160
  },
1161
1161
  "vimSyncMatch": {
1162
1162
  "name": "support.function.vimSyncMatch.viml",
1163
- "match": "\\b(match)\\b"
1163
+ "match": "(?x) \\b\n( match\n) \\b"
1164
1164
  },
1165
1165
  "vimSyncNone": {
1166
1166
  "name": "support.function.vimSyncNone.viml",
1167
- "match": "\\b(NONE)\\b"
1167
+ "match": "(?x) \\b\n( NONE\n) \\b"
1168
1168
  },
1169
1169
  "vimSyncRegion": {
1170
1170
  "name": "support.function.vimSyncRegion.viml",
1171
- "match": "\\b(region)\\b"
1171
+ "match": "(?x) \\b\n( region\n) \\b"
1172
1172
  },
1173
1173
  "vimTodo": {
1174
1174
  "name": "support.constant.${1:/downcase}.viml",
1175
- "match": "\\b(COMBAK|FIXME|TODO|XXX)\\b"
1175
+ "match": "(?x) \\b\n( COMBAK\n| FIXME\n| TODO\n| XXX\n) \\b"
1176
1176
  },
1177
1177
  "vimUserAttrbCmplt": {
1178
1178
  "name": "support.function.vimUserAttrbCmplt.viml",
1179
- "match": "\\b(augroup|behave|buffer|color|command|compiler|cscope|custom|customlist|dir|environment|event|expression|file|file_in_path|filetype|function|help|highlight|history|locale|mapping|menu|option|packadd|shellcmd|sign|syntax|syntime|tag|tag_listfiles|user|var)\\b"
1179
+ "match": "(?x) \\b\n( augroup\n| behave\n| buffer\n| color\n| command\n| compiler\n| cscope\n| customlist\n| custom\n| dir\n| environment\n| event\n| expression\n| file_in_path\n| filetype\n| file\n| function\n| help\n| highlight\n| history\n| locale\n| mapping\n| menu\n| option\n| packadd\n| shellcmd\n| sign\n| syntax\n| syntime\n| tag_listfiles\n| tag\n| user\n| var\n) \\b"
1180
1180
  },
1181
1181
  "vimUserAttrbKey": {
1182
1182
  "name": "support.function.vimUserAttrbKey.viml",
1183
- "match": "\\b(bang?|bar|com|complete|cou|count|n|nargs|ra|range|re|register)\\b"
1183
+ "match": "(?x) \\b\n( bang?\n| bar\n| com\n| complete\n| cou\n| count\n| n\n| nargs\n| ra\n| range\n| re\n| register\n) \\b"
1184
1184
  },
1185
1185
  "vimUserCommand": {
1186
1186
  "name": "support.function.vimUserCommand.viml",
1187
- "match": "\\b(com|command)\\b"
1187
+ "match": "(?x) \\b\n( com\n| command\n) \\b"
1188
1188
  }
1189
1189
  }
1190
1190
  }
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "keywords": {
46
46
  "name": "keyword.source.wollok",
47
- "match": "object|class|package|program|method|override|constructor|native|var|const|property|extends|new|if|else|elseif|this|import|null|true|false|return|throw|always|try|catch"
47
+ "match": "\\b(object|class|package|program|test|describe|method|override|constructor|native|var|const|property|inherits|new|if|else|self|super|import|null|true|false|return|throw|then always|try|catch|mixed with|with|mixin|fixture)\\b"
48
48
  },
49
49
  "numbers": {
50
50
  "name": "constant.numeric.source.wollok",
@@ -51,11 +51,11 @@
51
51
  },
52
52
  "keywords": {
53
53
  "name": "keyword.xojo",
54
- "match": "\\b(?i)(me|self|super|return|dim|const|static|as|if|then|else|for|next|do|loop|until|while|wend|end if|select case|case|end select|private|public|protected|try|catch|finally|nil)\\b"
54
+ "match": "\\b(?i)(me|self|super|return|dim|const|static|as|if|then|else|elseif|for|next|do|loop|until|while|wend|end if|select case|case|end select|private|public|protected|inherits|try|catch|finally|nil|and|or|not|mod|to|downto|new|get|set|end)\\b"
55
55
  },
56
56
  "keywords-functions": {
57
57
  "name": "keyword.xojo",
58
- "match": "\\b(?i)(sub|function|class|end|return)\\s\\w++\\b"
58
+ "match": "\\b(?i)(sub|function|class|return|begin)\\s\\w++\\b"
59
59
  },
60
60
  "keywords-numeric": {
61
61
  "name": "keyword.xojo",
@@ -0,0 +1,626 @@
1
+ {
2
+ "name": "Yacc/Bison",
3
+ "scopeName": "source.yacc",
4
+ "patterns": [
5
+ {
6
+ "include": "#main"
7
+ }
8
+ ],
9
+ "repository": {
10
+ "action": {
11
+ "patterns": [
12
+ {
13
+ "name": "meta.predicate.yacc",
14
+ "begin": "(%\\?)({)",
15
+ "end": "}",
16
+ "patterns": [
17
+ {
18
+ "include": "#action-innards"
19
+ }
20
+ ],
21
+ "beginCaptures": {
22
+ "1": {
23
+ "name": "keyword.operator.predicate.action.yacc"
24
+ },
25
+ "2": {
26
+ "name": "punctuation.section.block.begin.bracket.curly.c"
27
+ }
28
+ },
29
+ "endCaptures": {
30
+ "0": {
31
+ "name": "punctuation.section.block.end.bracket.curly.c"
32
+ }
33
+ }
34
+ },
35
+ {
36
+ "name": "meta.action.yacc",
37
+ "begin": "{",
38
+ "end": "}",
39
+ "patterns": [
40
+ {
41
+ "include": "#action-innards"
42
+ }
43
+ ],
44
+ "beginCaptures": {
45
+ "0": {
46
+ "name": "punctuation.section.block.begin.bracket.curly.c"
47
+ }
48
+ },
49
+ "endCaptures": {
50
+ "0": {
51
+ "name": "punctuation.section.block.end.bracket.curly.c"
52
+ }
53
+ }
54
+ }
55
+ ]
56
+ },
57
+ "action-innards": {
58
+ "patterns": [
59
+ {
60
+ "begin": "{",
61
+ "end": "}",
62
+ "patterns": [
63
+ {
64
+ "include": "#action-innards"
65
+ }
66
+ ],
67
+ "beginCaptures": {
68
+ "0": {
69
+ "name": "punctuation.section.block.begin.bracket.curly.c"
70
+ }
71
+ },
72
+ "endCaptures": {
73
+ "0": {
74
+ "name": "punctuation.section.block.end.bracket.curly.c"
75
+ }
76
+ }
77
+ },
78
+ {
79
+ "include": "#action-vars"
80
+ },
81
+ {
82
+ "include": "#bison-defs"
83
+ },
84
+ {
85
+ "include": "source.c++"
86
+ }
87
+ ]
88
+ },
89
+ "action-vars": {
90
+ "patterns": [
91
+ {
92
+ "name": "constant.language.predefined-symbol.$2.yacc",
93
+ "match": "(\\$)(undefined|accept|end)(?![-.])\\b",
94
+ "captures": {
95
+ "1": {
96
+ "name": "punctuation.definition.symbol.yacc"
97
+ }
98
+ }
99
+ },
100
+ {
101
+ "name": "constant.language.predefined-symbol.error.yacc",
102
+ "match": "(?\u003c![-.$])\\b(error)(?![-.])\\b"
103
+ },
104
+ {
105
+ "name": "variable.language.midrule-action-symbol.$2.nth.yacc",
106
+ "match": "(\\$@)([0-9]+)",
107
+ "captures": {
108
+ "1": {
109
+ "name": "punctuation.definition.variable.yacc"
110
+ }
111
+ }
112
+ },
113
+ {
114
+ "name": "variable.language.rule-location.lhs.yacc",
115
+ "match": "(@)\\$",
116
+ "captures": {
117
+ "1": {
118
+ "name": "punctuation.definition.variable.yacc"
119
+ }
120
+ }
121
+ },
122
+ {
123
+ "name": "variable.language.positional.rule-location.rhs.$2.yacc.yacc",
124
+ "match": "(@)([0-9]+)",
125
+ "captures": {
126
+ "1": {
127
+ "name": "punctuation.definition.variable.yacc"
128
+ }
129
+ }
130
+ },
131
+ {
132
+ "name": "variable.language.rule-value.lhs.yacc",
133
+ "match": "(\\$)\\$",
134
+ "captures": {
135
+ "1": {
136
+ "name": "punctuation.definition.variable.yacc"
137
+ }
138
+ }
139
+ },
140
+ {
141
+ "name": "variable.language.positional.rule-value.rhs.$2.yacc.yacc",
142
+ "match": "(\\$)([0-9]+)",
143
+ "captures": {
144
+ "1": {
145
+ "name": "punctuation.definition.variable.yacc"
146
+ }
147
+ }
148
+ },
149
+ {
150
+ "name": "variable.language.symbol-location.yacc",
151
+ "match": "(@)[A-Za-z_.][-.\\w]*|(@)(\\[)\\s*[A-Za-z_.][-.\\w]*\\s*(\\])",
152
+ "captures": {
153
+ "1": {
154
+ "name": "punctuation.definition.variable.yacc"
155
+ },
156
+ "2": {
157
+ "name": "punctuation.definition.variable.yacc"
158
+ },
159
+ "3": {
160
+ "name": "punctuation.section.begin.brace.bracket.square.yacc"
161
+ },
162
+ "4": {
163
+ "name": "punctuation.section.end.bbrace.racket.square.yacc"
164
+ }
165
+ }
166
+ },
167
+ {
168
+ "name": "variable.language.symbol-value.yacc",
169
+ "match": "(\\$)[A-Za-z_.][-.\\w]*|(\\$\\[)\\s*[A-Za-z_.][-.\\w]*\\s*(\\])",
170
+ "captures": {
171
+ "1": {
172
+ "name": "punctuation.definition.variable.yacc"
173
+ },
174
+ "2": {
175
+ "name": "punctuation.definition.variable.begin.yacc"
176
+ },
177
+ "3": {
178
+ "name": "punctuation.definition.variable.end.yacc"
179
+ }
180
+ }
181
+ }
182
+ ]
183
+ },
184
+ "bison-defs": {
185
+ "patterns": [
186
+ {
187
+ "name": "support.function.$1.yacc",
188
+ "match": "(?x) (?\u003c![.-]) \\b\n(YYABORT|YYACCEPT|YYBACKUP|YYDEBUG|YYERROR_VERBOSE|YYERROR|YYFPRINTF|YYINITDEPTH\n|YYMAXDEPTH|YYPRINT|YYRECOVERING|YYSTACK_USE_ALLOCA|yyerrok|yyerror|yylex|yyparse\n|yypstate_delete|yypstate_new|yypull_parse|yypush_parse)\n\\b (?![.-])"
189
+ },
190
+ {
191
+ "name": "support.variable.$1.yacc",
192
+ "match": "(?\u003c![.-])\\b(yychar|yyclearin|yydebug|yylloc|yylval|yynerrs)\\b(?![.-])"
193
+ },
194
+ {
195
+ "name": "support.type.$1.yacc",
196
+ "match": "(?\u003c![.-])\\b(YYSTYPE|YYLTYPE)\\b(?![.-])"
197
+ }
198
+ ]
199
+ },
200
+ "comment": {
201
+ "name": "comment.block.yacc",
202
+ "begin": "/\\*",
203
+ "end": "\\*/",
204
+ "beginCaptures": {
205
+ "0": {
206
+ "name": "punctuation.definition.comment.begin.yacc"
207
+ }
208
+ },
209
+ "endCaptures": {
210
+ "0": {
211
+ "name": "punctuation.definition.comment.end.yacc"
212
+ }
213
+ }
214
+ },
215
+ "constant": {
216
+ "name": "constant.language.other.token.yacc",
217
+ "match": "\\w+"
218
+ },
219
+ "data-type": {
220
+ "patterns": [
221
+ {
222
+ "name": "storage.modifier.type.yacc",
223
+ "match": "(\u003c)(\\*)(\u003e)",
224
+ "captures": {
225
+ "1": {
226
+ "name": "punctuation.definition.angle.bracket.begin.yacc"
227
+ },
228
+ "2": {
229
+ "name": "constant.language.default.yacc"
230
+ },
231
+ "3": {
232
+ "name": "punctuation.definition.angle.bracket.end.yacc"
233
+ }
234
+ }
235
+ },
236
+ {
237
+ "name": "storage.modifier.type.yacc",
238
+ "begin": "\u003c",
239
+ "end": "\u003e",
240
+ "beginCaptures": {
241
+ "0": {
242
+ "name": "punctuation.definition.angle.bracket.begin.yacc"
243
+ }
244
+ },
245
+ "endCaptures": {
246
+ "0": {
247
+ "name": "punctuation.definition.angle.bracket.end.yacc"
248
+ }
249
+ }
250
+ }
251
+ ]
252
+ },
253
+ "declaration-innards": {
254
+ "patterns": [
255
+ {
256
+ "include": "#constant"
257
+ },
258
+ {
259
+ "include": "#comment"
260
+ },
261
+ {
262
+ "include": "#string"
263
+ },
264
+ {
265
+ "include": "#data-type"
266
+ }
267
+ ]
268
+ },
269
+ "declaration-section": {
270
+ "name": "meta.declarations.yacc",
271
+ "begin": "(?\u003c=%})",
272
+ "end": "^(?=\\s*%%)",
273
+ "patterns": [
274
+ {
275
+ "include": "#declarations"
276
+ },
277
+ {
278
+ "include": "#comment"
279
+ },
280
+ {
281
+ "include": "#data-type"
282
+ }
283
+ ]
284
+ },
285
+ "declarations": {
286
+ "patterns": [
287
+ {
288
+ "begin": "^\\s*((%)union)\\b",
289
+ "end": "^(?=\\s*%)|(?\u003c=})",
290
+ "patterns": [
291
+ {
292
+ "include": "source.c++"
293
+ }
294
+ ],
295
+ "beginCaptures": {
296
+ "1": {
297
+ "name": "keyword.control.directive.union.yacc"
298
+ },
299
+ "2": {
300
+ "name": "punctuation.definition.token.percentage-sign.yacc"
301
+ }
302
+ }
303
+ },
304
+ {
305
+ "name": "meta.code-block.yacc",
306
+ "begin": "^\\s*((%)code)\\s+(imports)\\s*({)",
307
+ "end": "}",
308
+ "patterns": [
309
+ {
310
+ "include": "source.java"
311
+ }
312
+ ],
313
+ "beginCaptures": {
314
+ "1": {
315
+ "name": "keyword.control.directive.code.yacc"
316
+ },
317
+ "2": {
318
+ "name": "punctuation.definition.token.percentage-sign.yacc"
319
+ },
320
+ "3": {
321
+ "name": "constant.language.other.qualifier.yacc"
322
+ },
323
+ "4": {
324
+ "name": "punctuation.definition.curly.bracket.begin.yacc"
325
+ }
326
+ },
327
+ "endCaptures": {
328
+ "0": {
329
+ "name": "punctuation.definition.curly.bracket.end.yacc"
330
+ }
331
+ }
332
+ },
333
+ {
334
+ "name": "meta.$3-block.yacc",
335
+ "begin": "^\\s*((%)(code|lex-param|parse-param|param|printer))(?:\\s+(\\w+))?\\s*({)",
336
+ "end": "}",
337
+ "patterns": [
338
+ {
339
+ "include": "source.c++"
340
+ }
341
+ ],
342
+ "beginCaptures": {
343
+ "1": {
344
+ "name": "keyword.control.directive.$3.yacc"
345
+ },
346
+ "2": {
347
+ "name": "punctuation.definition.token.percentage-sign.yacc"
348
+ },
349
+ "4": {
350
+ "name": "constant.language.other.qualifier.yacc"
351
+ },
352
+ "5": {
353
+ "name": "punctuation.definition.curly.bracket.begin.yacc"
354
+ }
355
+ },
356
+ "endCaptures": {
357
+ "0": {
358
+ "name": "punctuation.definition.curly.bracket.end.yacc"
359
+ }
360
+ }
361
+ },
362
+ {
363
+ "name": "meta.defines.yacc",
364
+ "match": "^\\s*((%)defines)(?=\\s|$|/\\*|//)(?:\\s+(?!//|/\\*)(\\S+))?",
365
+ "captures": {
366
+ "1": {
367
+ "name": "keyword.control.directive.defines.yacc"
368
+ },
369
+ "2": {
370
+ "name": "punctuation.definition.token.percentage-sign.yacc"
371
+ },
372
+ "3": {
373
+ "name": "string.unquoted.filename.yacc"
374
+ }
375
+ }
376
+ },
377
+ {
378
+ "begin": "^\\s*((%)define)(?:\\s+([A-Za-z_.][-.\\w]*))?\\s*({)",
379
+ "end": "}",
380
+ "patterns": [
381
+ {
382
+ "include": "source.c++"
383
+ }
384
+ ],
385
+ "beginCaptures": {
386
+ "1": {
387
+ "name": "keyword.control.directive.define.yacc"
388
+ },
389
+ "2": {
390
+ "name": "punctuation.definition.token.percentage-sign.yacc"
391
+ },
392
+ "3": {
393
+ "name": "entity.name.var.yacc"
394
+ },
395
+ "4": {
396
+ "name": "punctuation.definition.curly.bracket.begin.yacc"
397
+ }
398
+ },
399
+ "endCaptures": {
400
+ "0": {
401
+ "name": "punctuation.definition.curly.bracket.end.yacc"
402
+ }
403
+ }
404
+ },
405
+ {
406
+ "begin": "^\\s*((%)define)(?:\\s+([A-Za-z_.][-.\\w]*))?",
407
+ "end": "(?=\\s*$)|^(?!\\s{2,}(?=\\w))|^(?=\\s*%%)",
408
+ "patterns": [
409
+ {
410
+ "include": "#declaration-innards"
411
+ }
412
+ ],
413
+ "beginCaptures": {
414
+ "1": {
415
+ "name": "keyword.control.directive.define.yacc"
416
+ },
417
+ "2": {
418
+ "name": "punctuation.definition.token.percentage-sign.yacc"
419
+ },
420
+ "3": {
421
+ "name": "entity.name.var.yacc"
422
+ }
423
+ }
424
+ },
425
+ {
426
+ "begin": "^\\s*((%)option)(?=\\s|$)",
427
+ "end": "$|(?=\\s*(?://|/\\*))|^(?=\\s*%%)",
428
+ "patterns": [
429
+ {
430
+ "name": "constant.language.option-name.yacc",
431
+ "match": "[A-Za-z_.][-.\\w]*"
432
+ },
433
+ {
434
+ "include": "#declaration-innards"
435
+ }
436
+ ],
437
+ "beginCaptures": {
438
+ "1": {
439
+ "name": "keyword.control.directive.option.yacc"
440
+ },
441
+ "2": {
442
+ "name": "punctuation.definition.token.percentage-sign.yacc"
443
+ }
444
+ }
445
+ },
446
+ {
447
+ "begin": "(?x)\n^\\s* ((%)\n(code|debug|destructor|dprec|empty|error-verbose|expect-rr|expect\n|file-prefix|glr-parser|initial-action|language|left|lex-param\n|locations|merge|name-prefix|no-lines|nonassoc|nterm|output|param\n|parse-param|precedence|prec|printer|pure-parser|required?|right|skeleton\n|start|token-table|token|type|verbose|yacc))\\b",
448
+ "end": "^(?!\\s{2,}(?=\\w))|^(?=\\s*%%)",
449
+ "patterns": [
450
+ {
451
+ "include": "#declaration-innards"
452
+ }
453
+ ],
454
+ "beginCaptures": {
455
+ "1": {
456
+ "name": "keyword.control.directive.$3.yacc"
457
+ },
458
+ "2": {
459
+ "name": "punctuation.definition.token.percentage-sign.yacc"
460
+ }
461
+ }
462
+ },
463
+ {
464
+ "begin": "^\\s*(%{)",
465
+ "end": "^\\s*(%})",
466
+ "patterns": [
467
+ {
468
+ "include": "source.c++"
469
+ }
470
+ ],
471
+ "beginCaptures": {
472
+ "1": {
473
+ "name": "punctuation.section.embedded.begin.yacc"
474
+ }
475
+ },
476
+ "endCaptures": {
477
+ "1": {
478
+ "name": "punctuation.section.embedded.end.yacc"
479
+ }
480
+ }
481
+ }
482
+ ]
483
+ },
484
+ "epilogue": {
485
+ "name": "meta.epilogue.yacc",
486
+ "begin": "(?\u003c=%%)",
487
+ "end": "(?=A)B",
488
+ "patterns": [
489
+ {
490
+ "include": "source.c++"
491
+ }
492
+ ]
493
+ },
494
+ "main": {
495
+ "patterns": [
496
+ {
497
+ "include": "#comment"
498
+ },
499
+ {
500
+ "include": "#prologue"
501
+ },
502
+ {
503
+ "include": "#declaration-section"
504
+ },
505
+ {
506
+ "include": "#rules"
507
+ },
508
+ {
509
+ "include": "#epilogue"
510
+ },
511
+ {
512
+ "include": "source.c++"
513
+ }
514
+ ]
515
+ },
516
+ "prologue": {
517
+ "patterns": [
518
+ {
519
+ "name": "punctuation.section.embedded.begin.yacc",
520
+ "match": "^\\s*(%{)"
521
+ },
522
+ {
523
+ "name": "punctuation.section.embedded.end.yacc",
524
+ "match": "^\\s*(%})"
525
+ },
526
+ {
527
+ "include": "#declarations"
528
+ }
529
+ ]
530
+ },
531
+ "rule": {
532
+ "name": "meta.rule.yacc",
533
+ "begin": "^\\s*([A-Za-z_.][-.\\w]*)\\s*(:)",
534
+ "end": "\\s*(;)\\s*",
535
+ "patterns": [
536
+ {
537
+ "name": "entity.name.rule.yacc",
538
+ "match": "([A-Za-z_.][-.\\w]*)"
539
+ },
540
+ {
541
+ "name": "keyword.operator.logical.or.yacc",
542
+ "match": "\\|"
543
+ },
544
+ {
545
+ "include": "#comment"
546
+ },
547
+ {
548
+ "include": "#string"
549
+ },
550
+ {
551
+ "include": "#action"
552
+ }
553
+ ],
554
+ "beginCaptures": {
555
+ "1": {
556
+ "name": "entity.name.rule.yacc"
557
+ },
558
+ "2": {
559
+ "name": "punctuation.separator.key-value.colon.yacc"
560
+ }
561
+ },
562
+ "endCaptures": {
563
+ "1": {
564
+ "name": "punctuation.terminator.statement.semicolon.yacc"
565
+ }
566
+ }
567
+ },
568
+ "rules": {
569
+ "name": "meta.rules.yacc",
570
+ "begin": "^\\s*(%%)",
571
+ "end": "^\\s*(%%)",
572
+ "patterns": [
573
+ {
574
+ "include": "#comment"
575
+ },
576
+ {
577
+ "include": "#rule"
578
+ }
579
+ ],
580
+ "beginCaptures": {
581
+ "1": {
582
+ "name": "keyword.control.section.begin.yacc"
583
+ }
584
+ },
585
+ "endCaptures": {
586
+ "1": {
587
+ "name": "keyword.control.section.end.yacc"
588
+ }
589
+ }
590
+ },
591
+ "string": {
592
+ "patterns": [
593
+ {
594
+ "name": "string.quoted.double.yacc",
595
+ "begin": "\"",
596
+ "end": "\"",
597
+ "beginCaptures": {
598
+ "0": {
599
+ "name": "punctuation.definition.string.begin.yacc"
600
+ }
601
+ },
602
+ "endCaptures": {
603
+ "0": {
604
+ "name": "punctuation.definition.string.end.yacc"
605
+ }
606
+ }
607
+ },
608
+ {
609
+ "name": "string.quoted.single.yacc",
610
+ "begin": "'",
611
+ "end": "'",
612
+ "beginCaptures": {
613
+ "0": {
614
+ "name": "punctuation.definition.string.begin.yacc"
615
+ }
616
+ },
617
+ "endCaptures": {
618
+ "0": {
619
+ "name": "punctuation.definition.string.end.yacc"
620
+ }
621
+ }
622
+ }
623
+ ]
624
+ }
625
+ }
626
+ }