github-linguist 7.7.0 → 7.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +47 -0
  3. data/grammars/hidden.manref.json +1 -1
  4. data/grammars/hint.haskell.json +47 -0
  5. data/grammars/hint.message.haskell.json +47 -0
  6. data/grammars/hint.type.haskell.json +47 -0
  7. data/grammars/markdown.plantuml.codeblock.json +26 -0
  8. data/grammars/source.4dm.json +1100 -0
  9. data/grammars/source.abap.json +1 -1
  10. data/grammars/source.agda.json +32 -202
  11. data/grammars/source.ahk.json +6 -2
  12. data/grammars/source.chapel.json +4 -4
  13. data/grammars/source.csound.json +1 -1
  14. data/grammars/source.dart.json +57 -31
  15. data/grammars/source.dircolors.json +101 -3
  16. data/grammars/source.editorconfig.json +23 -5
  17. data/grammars/source.elixir.json +8 -0
  18. data/grammars/source.elm.json +1 -1
  19. data/grammars/source.emacs.lisp.json +10 -0
  20. data/grammars/source.faust.json +119 -0
  21. data/grammars/source.gcode.json +166 -8
  22. data/grammars/source.hack.json +4 -18
  23. data/grammars/source.haskell.json +47 -0
  24. data/grammars/source.hlsl.json +9 -5
  25. data/grammars/source.hsig.json +47 -0
  26. data/grammars/source.hx.json +4 -0
  27. data/grammars/source.igor.json +44 -0
  28. data/grammars/source.julia.json +25 -21
  29. data/grammars/source.lean.json +19 -3
  30. data/grammars/source.lean.markdown.json +2598 -0
  31. data/grammars/source.matlab.json +215 -152
  32. data/grammars/source.mcfunction-snapshot.json +1 -1
  33. data/grammars/source.meson.json +1 -1
  34. data/grammars/source.mrc.json +416 -534
  35. data/grammars/source.nasl.json +155 -0
  36. data/grammars/source.nextflow.json +2 -2
  37. data/grammars/source.odin-ehr.json +806 -0
  38. data/grammars/source.odin.json +402 -0
  39. data/grammars/source.prisma.json +7 -0
  40. data/grammars/source.qasm.json +66 -0
  41. data/grammars/source.ql.json +1408 -0
  42. data/grammars/source.scala.json +27 -3
  43. data/grammars/source.sy.json +2088 -183
  44. data/grammars/source.terraform.json +576 -132
  45. data/grammars/source.tnsaudit.json +256 -0
  46. data/grammars/source.ts.json +89 -30
  47. data/grammars/source.tsx.json +89 -30
  48. data/grammars/source.v.json +541 -788
  49. data/grammars/source.viml.json +2 -2
  50. data/grammars/source.webassembly.json +10 -0
  51. data/grammars/source.wsd.json +775 -0
  52. data/grammars/text.tex.latex.haskell.json +47 -0
  53. data/grammars/version +1 -1
  54. data/lib/linguist/VERSION +1 -1
  55. data/lib/linguist/file_blob.rb +1 -1
  56. data/lib/linguist/generated.rb +23 -3
  57. data/lib/linguist/heuristics.yml +48 -3
  58. data/lib/linguist/languages.json +1 -1
  59. data/lib/linguist/languages.yml +156 -34
  60. data/lib/linguist/lazy_blob.rb +10 -10
  61. data/lib/linguist/linguist.bundle +0 -0
  62. data/lib/linguist/samples.json +7739 -2010
  63. data/lib/linguist/shebang.rb +5 -3
  64. data/lib/linguist/vendor.yml +3 -0
  65. metadata +13 -7
  66. data/grammars/source.LS.json +0 -85
  67. data/grammars/source.MCPOST.json +0 -54
  68. data/grammars/source.MOD.json +0 -55
  69. data/grammars/source.apt.json +0 -18
  70. data/grammars/source.yaml-ext.json +0 -324
@@ -1076,7 +1076,7 @@
1076
1076
  },
1077
1077
  "vimCommand": {
1078
1078
  "name": "support.function.command.viml",
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| eval\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| py3f\n| py3file\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| spellrare\n| spellr\n| spellrepall\n| spellr\n| spellrrare\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"
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| def\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| disa\n| disassemble\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| endd\n| enddef\n| endf\n| endfunction\n| endfor?\n| endt\n| endtry\n| endw\n| endwhile\n| enew?\n| eval\n| exit?\n| exp\n| export\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| imp\n| import\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| py3f\n| py3file\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| spellrare\n| spellr\n| spellrepall\n| spellr\n| spellrrare\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| vim9\n| vim9script\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",
@@ -1096,7 +1096,7 @@
1096
1096
  },
1097
1097
  "vimFuncKey": {
1098
1098
  "name": "support.function.vimFuncKey.viml",
1099
- "match": "(?x) \\b\n( fu\n| function\n) \\b"
1099
+ "match": "(?x) \\b\n( def\n| fu\n| function\n) \\b"
1100
1100
  },
1101
1101
  "vimFuncName": {
1102
1102
  "name": "support.function.viml",
@@ -2,6 +2,16 @@
2
2
  "name": "WebAssembly",
3
3
  "scopeName": "source.webassembly",
4
4
  "patterns": [
5
+ {
6
+ "name": "comment.line.hashbang.webassembly",
7
+ "begin": "\\A(#!)",
8
+ "end": "$",
9
+ "beginCaptures": {
10
+ "1": {
11
+ "name": "punctuation.definition.comment.hashbang.webassembly"
12
+ }
13
+ }
14
+ },
5
15
  {
6
16
  "include": "#main"
7
17
  }
@@ -0,0 +1,775 @@
1
+ {
2
+ "name": "Diagram",
3
+ "scopeName": "source.wsd",
4
+ "patterns": [
5
+ {
6
+ "name": "diagram.source.wsd",
7
+ "begin": "(?i)^\\s*(@start[a-z]+)((\\s+)(.+?))?\\s*$",
8
+ "end": "(?i)^\\s*(@end[a-z]+)\\s*$",
9
+ "patterns": [
10
+ {
11
+ "include": "#Quoted"
12
+ },
13
+ {
14
+ "include": "#Comment"
15
+ },
16
+ {
17
+ "include": "#Style"
18
+ },
19
+ {
20
+ "include": "#Class"
21
+ },
22
+ {
23
+ "include": "#Object"
24
+ },
25
+ {
26
+ "include": "#Activity"
27
+ },
28
+ {
29
+ "include": "#Sequence"
30
+ },
31
+ {
32
+ "include": "#State"
33
+ },
34
+ {
35
+ "include": "#Keywords"
36
+ },
37
+ {
38
+ "include": "#Gerneral"
39
+ }
40
+ ],
41
+ "beginCaptures": {
42
+ "1": {
43
+ "name": "keyword.control.diagram.source.wsd"
44
+ },
45
+ "5": {
46
+ "name": "entity.name.function.diagram.source.wsd"
47
+ }
48
+ },
49
+ "endCaptures": {
50
+ "1": {
51
+ "name": "keyword.control.diagram.source.wsd"
52
+ }
53
+ }
54
+ },
55
+ {
56
+ "include": "#Quoted"
57
+ },
58
+ {
59
+ "include": "#Comment"
60
+ },
61
+ {
62
+ "include": "#Style"
63
+ },
64
+ {
65
+ "include": "#Class"
66
+ },
67
+ {
68
+ "include": "#Object"
69
+ },
70
+ {
71
+ "include": "#Activity"
72
+ },
73
+ {
74
+ "include": "#Sequence"
75
+ },
76
+ {
77
+ "include": "#State"
78
+ },
79
+ {
80
+ "include": "#Keywords"
81
+ },
82
+ {
83
+ "include": "#Gerneral"
84
+ }
85
+ ],
86
+ "repository": {
87
+ "Activity": {
88
+ "patterns": [
89
+ {
90
+ "match": "(?i)^\\s*(else *if|if)\\s?\\((.+?)\\)\\s?(then)(\\s?\\((.+?)\\))?\\s*$",
91
+ "captures": {
92
+ "1": {
93
+ "name": "keyword.other.activity.if.source.wsd"
94
+ },
95
+ "2": {
96
+ "name": "string.quoted.double.activity.if.source.wsd"
97
+ },
98
+ "3": {
99
+ "name": "keyword.other.activity.if.source.wsd"
100
+ },
101
+ "5": {
102
+ "name": "comment.line.activity.if.source.wsd"
103
+ }
104
+ }
105
+ },
106
+ {
107
+ "match": "(?i)^\\s*(else)(\\s?\\((.+?)\\))?\\s*$",
108
+ "captures": {
109
+ "1": {
110
+ "name": "keyword.other.activity.else.source.wsd"
111
+ },
112
+ "3": {
113
+ "name": "comment.line.activity.else.source.wsd"
114
+ }
115
+ }
116
+ },
117
+ {
118
+ "match": "(?i)^\\s*(repeat\\s+)?(while)\\s*\\((.+?)\\)(\\s*(is)(\\s*\\((.+?)\\))?)?\\s*$",
119
+ "captures": {
120
+ "1": {
121
+ "name": "keyword.other.activity.while.source.wsd"
122
+ },
123
+ "2": {
124
+ "name": "keyword.other.activity.while.source.wsd"
125
+ },
126
+ "3": {
127
+ "name": "string.quoted.double.activity.while.source.wsd"
128
+ },
129
+ "5": {
130
+ "name": "keyword.other.activity.while.source.wsd"
131
+ },
132
+ "7": {
133
+ "name": "comment.line.activity.while.source.wsd"
134
+ }
135
+ }
136
+ },
137
+ {
138
+ "match": "(?i)^\\s*(end)\\s?(while)(\\s*\\((.+?)\\))?\\s*$",
139
+ "captures": {
140
+ "1": {
141
+ "name": "keyword.other.activity.endwhile.source.wsd"
142
+ },
143
+ "2": {
144
+ "name": "keyword.other.activity.endwhile.source.wsd"
145
+ },
146
+ "4": {
147
+ "name": "comment.line.activity.endwhile.source.wsd"
148
+ }
149
+ }
150
+ }
151
+ ]
152
+ },
153
+ "Class": {
154
+ "patterns": [
155
+ {
156
+ "begin": "(?i)^\\s*(enum|abstract|class|abstract\\s+class)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?(\\s+(as)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?)?(\\s+#(([\\w\\|\\\\\\/\\-]+)))?\\s*\\{\\s*$",
157
+ "end": "^\\s*(?\u003c!\\\\)\\}\\s*$",
158
+ "patterns": [
159
+ {
160
+ "match": "(?i)^\\s*([.=_-]{2,})\\s*((.+?)\\s*([.=_-]{2,}))?",
161
+ "captures": {
162
+ "1": {
163
+ "name": "comment.line.class.group.separator.source.wsd"
164
+ },
165
+ "3": {
166
+ "name": "string.quoted.double.class.group.separator.source.wsd"
167
+ },
168
+ "4": {
169
+ "name": "comment.line.class.group.separator.source.wsd"
170
+ }
171
+ }
172
+ },
173
+ {
174
+ "match": "(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?((\\w+(\\[\\])?)\\s+)?([0-9a-zA-Z_]+)(\\(\\))\\s*$",
175
+ "captures": {
176
+ "1": {
177
+ "name": "storage.modifier.class.fileds.source.wsd"
178
+ },
179
+ "3": {
180
+ "name": "keyword.other.class.fileds.source.wsd"
181
+ },
182
+ "5": {
183
+ "name": "support.type.class.function.source.wsd"
184
+ },
185
+ "7": {
186
+ "name": "support.variable.class.function.source.wsd"
187
+ }
188
+ }
189
+ },
190
+ {
191
+ "match": "(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?((\\w+(\\[\\])?)\\s+([0-9a-zA-Z_]+)|([0-9a-zA-Z_]+)\\s*:\\s*(\\w+))\\s*$",
192
+ "captures": {
193
+ "1": {
194
+ "name": "storage.modifier.class.fileds.source.wsd"
195
+ },
196
+ "3": {
197
+ "name": "keyword.other.class.fileds.source.wsd"
198
+ },
199
+ "5": {
200
+ "name": "support.type.class.fileds.source.wsd"
201
+ },
202
+ "7": {
203
+ "name": "support.variable.class.fileds.source.wsd"
204
+ },
205
+ "8": {
206
+ "name": "support.variable.class.fileds.source.wsd"
207
+ },
208
+ "9": {
209
+ "name": "support.type.class.fileds.source.wsd"
210
+ }
211
+ }
212
+ },
213
+ {
214
+ "match": "(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(.+?)\\s*$",
215
+ "captures": {
216
+ "1": {
217
+ "name": "storage.modifier.class.fileds.source.wsd"
218
+ },
219
+ "3": {
220
+ "name": "keyword.other.class.fileds.source.wsd"
221
+ },
222
+ "4": {
223
+ "name": "string.quoted.double.class.other.source.wsd"
224
+ }
225
+ }
226
+ }
227
+ ],
228
+ "beginCaptures": {
229
+ "1": {
230
+ "name": "keyword.other.class.group.source.wsd"
231
+ },
232
+ "10": {
233
+ "name": "constant.numeric.class.definition.source.wsd"
234
+ },
235
+ "2": {
236
+ "name": "support.variable.class.group.source.wsd"
237
+ },
238
+ "4": {
239
+ "name": "string.quoted.double.class.definition.source.wsd"
240
+ },
241
+ "6": {
242
+ "name": "keyword.other.class.group.source.wsd"
243
+ },
244
+ "7": {
245
+ "name": "support.variable.class.group.source.wsd"
246
+ },
247
+ "9": {
248
+ "name": "string.quoted.double.class.definition.source.wsd"
249
+ }
250
+ }
251
+ },
252
+ {
253
+ "match": "(?i)^\\s*(hide|show)\\s+(([\\w\\d_\\.]+|\"[^\"]+\")|\u003c\u003c.+?\u003e\u003e|Stereotypes|class|interface|enum)(\\s+(empty fields|empty methods|fields|attributes|methods|members|circle))?\\s*$",
254
+ "captures": {
255
+ "1": {
256
+ "name": "keyword.other.class.hideshow.source.wsd"
257
+ },
258
+ "2": {
259
+ "name": "support.variable.class.hideshow.source.wsd"
260
+ },
261
+ "5": {
262
+ "name": "constant.numeric.class.hideshow.source.wsd"
263
+ }
264
+ }
265
+ }
266
+ ]
267
+ },
268
+ "Comment": {
269
+ "patterns": [
270
+ {
271
+ "name": "comment.line.comment.source.wsd",
272
+ "begin": "(?i)^\\s*(')",
273
+ "end": "(?i)\\n"
274
+ },
275
+ {
276
+ "name": "comment.block.source.wsd",
277
+ "begin": "(?i)^\\s*(/')",
278
+ "end": "(?i)('/)\\s*$"
279
+ }
280
+ ]
281
+ },
282
+ "Gerneral": {
283
+ "patterns": [
284
+ {
285
+ "begin": "(?i)^\\s*(title)\\s*$",
286
+ "end": "(?i)^\\s*\\b(end\\s+title)\\b",
287
+ "patterns": [
288
+ {
289
+ "match": "(?i)^\\s*(.+?)\\s*$",
290
+ "captures": {
291
+ "1": {
292
+ "name": "entity.name.function.title.source.wsd"
293
+ }
294
+ }
295
+ }
296
+ ],
297
+ "beginCaptures": {
298
+ "1": {
299
+ "name": "keyword.other.title.source.wsd"
300
+ }
301
+ },
302
+ "endCaptures": {
303
+ "1": {
304
+ "name": "keyword.other.title.source.wsd"
305
+ }
306
+ }
307
+ },
308
+ {
309
+ "match": "(?i)^\\s*(title)\\s+(.+?)\\s*$",
310
+ "captures": {
311
+ "1": {
312
+ "name": "keyword.other.title.source.wsd"
313
+ },
314
+ "2": {
315
+ "name": "entity.name.function.title.source.wsd"
316
+ }
317
+ }
318
+ },
319
+ {
320
+ "name": "keyword.other.scale.source.wsd",
321
+ "match": "(?i)^\\s*(scale)\\s+((max)\\s+)?(\\d+(\\.?\\d+)?)\\s*((([\\*/])\\s*(\\d+\\.?(\\.?\\d+)?))|(width|height))?\\s*$",
322
+ "captures": {
323
+ "1": {
324
+ "name": "keyword.other.scale.source.wsd"
325
+ },
326
+ "11": {
327
+ "name": "keyword.other.scale.source.wsd"
328
+ },
329
+ "3": {
330
+ "name": "keyword.other.scale.source.wsd"
331
+ },
332
+ "4": {
333
+ "name": "constant.numeric.scale.source.wsd"
334
+ },
335
+ "8": {
336
+ "name": "keyword.operator.scale.source.wsd"
337
+ },
338
+ "9": {
339
+ "name": "constant.numeric.scale.source.wsd"
340
+ }
341
+ }
342
+ },
343
+ {
344
+ "match": "(?i)^\\s*(caption)\\s+(.+)\\s*$",
345
+ "captures": {
346
+ "1": {
347
+ "name": "keyword.other.note.source.wsd"
348
+ },
349
+ "2": {
350
+ "name": "constant.numeric.caption.source.wsd"
351
+ }
352
+ }
353
+ },
354
+ {
355
+ "match": "(?i)^\\s*(note\\s(left|right))\\s*:\\s*(.+)\\s*$",
356
+ "captures": {
357
+ "1": {
358
+ "name": "keyword.other.note.source.wsd"
359
+ },
360
+ "3": {
361
+ "name": "comment.line.note.source.wsd"
362
+ }
363
+ }
364
+ },
365
+ {
366
+ "begin": "(?i)^\\s*(note\\s(left|right))\\s*$",
367
+ "end": "(?i)^\\s*(end\\s*note)",
368
+ "patterns": [
369
+ {
370
+ "name": "comment.line.multiple.note.source.wsd",
371
+ "match": ".+?"
372
+ }
373
+ ],
374
+ "beginCaptures": {
375
+ "1": {
376
+ "name": "keyword.other.note.source.wsd"
377
+ }
378
+ },
379
+ "endCaptures": {
380
+ "1": {
381
+ "name": "keyword.other.note.source.wsd"
382
+ }
383
+ }
384
+ },
385
+ {
386
+ "match": "(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*:\\s*(.+)$",
387
+ "captures": {
388
+ "1": {
389
+ "name": "keyword.other.noteof.source.wsd"
390
+ },
391
+ "2": {
392
+ "name": "constant.numeric.noteof.source.wsd"
393
+ },
394
+ "3": {
395
+ "name": "keyword.other.noteof.source.wsd"
396
+ },
397
+ "4": {
398
+ "name": "support.variable.noteof.source.wsd"
399
+ },
400
+ "5": {
401
+ "name": "support.variable.noteof.source.wsd"
402
+ },
403
+ "6": {
404
+ "name": "support.variable.noteof.source.wsd"
405
+ },
406
+ "7": {
407
+ "name": "keyword.other.noteof.source.wsd"
408
+ },
409
+ "8": {
410
+ "name": "constant.numeric.noteof.source.wsd"
411
+ },
412
+ "9": {
413
+ "name": "comment.line.noteof.source.wsd"
414
+ }
415
+ }
416
+ },
417
+ {
418
+ "begin": "(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*$",
419
+ "end": "(?i)^\\s*(end\\s*[rh]?note)",
420
+ "patterns": [
421
+ {
422
+ "name": "comment.line.multline.noteof.source.wsd",
423
+ "match": ".+?"
424
+ }
425
+ ],
426
+ "beginCaptures": {
427
+ "1": {
428
+ "name": "keyword.other.noteof.source.wsd"
429
+ },
430
+ "2": {
431
+ "name": "constant.numeric.noteof.source.wsd"
432
+ },
433
+ "3": {
434
+ "name": "keyword.other.noteof.source.wsd"
435
+ },
436
+ "4": {
437
+ "name": "support.variable.noteof.source.wsd"
438
+ },
439
+ "5": {
440
+ "name": "support.variable.noteof.source.wsd"
441
+ },
442
+ "6": {
443
+ "name": "support.variable.noteof.source.wsd"
444
+ },
445
+ "7": {
446
+ "name": "keyword.other.noteof.source.wsd"
447
+ },
448
+ "8": {
449
+ "name": "constant.numeric.noteof.source.wsd"
450
+ }
451
+ },
452
+ "endCaptures": {
453
+ "1": {
454
+ "name": "keyword.other.multline.noteof.source.wsd"
455
+ }
456
+ }
457
+ },
458
+ {
459
+ "match": "(?i)^\\s*(note)\\s+(\".+?\")\\s+(as)\\s+([\\w\\d]+)\\s*$",
460
+ "captures": {
461
+ "1": {
462
+ "name": "keyword.other.noteas.source.wsd"
463
+ },
464
+ "2": {
465
+ "name": "comment.line.noteas.source.wsd"
466
+ },
467
+ "3": {
468
+ "name": "keyword.other.noteas.source.wsd"
469
+ },
470
+ "4": {
471
+ "name": "support.variable.noteas.source.wsd"
472
+ }
473
+ }
474
+ },
475
+ {
476
+ "begin": "(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s*\\n",
477
+ "end": "(?i)^\\s*(end\\s?(header|legend|footer))",
478
+ "patterns": [
479
+ {
480
+ "name": "comment.line.header_legend_footer.source.wsd",
481
+ "match": ".+?"
482
+ }
483
+ ],
484
+ "beginCaptures": {
485
+ "1": {
486
+ "name": "constant.numeric.header_legend_footer.source.wsd"
487
+ },
488
+ "2": {
489
+ "name": "keyword.other.header_legend_footer.source.wsd"
490
+ }
491
+ },
492
+ "endCaptures": {
493
+ "1": {
494
+ "name": "keyword.other.header_legend_footer.source.wsd"
495
+ }
496
+ }
497
+ },
498
+ {
499
+ "match": "(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s+(.+?)\\s*$",
500
+ "captures": {
501
+ "1": {
502
+ "name": "constant.numeric.header_legend_footer.source.wsd"
503
+ },
504
+ "2": {
505
+ "name": "keyword.other.header_legend_footer.source.wsd"
506
+ },
507
+ "3": {
508
+ "name": "comment.line.header_legend_footer.source.wsd"
509
+ }
510
+ }
511
+ },
512
+ {
513
+ "name": "support.class.preprocessings.source.wsd",
514
+ "match": "(?i)(!includesub|!include|!enddefinelong|!definelong|!define|!startsub|!endsub|!ifdef|!else|!endif|!ifndef)"
515
+ },
516
+ {
517
+ "begin": "(?i)((?:(?:(?:\\s+[ox]|[+*])?(?:\u003c\u003c|\u003c\\|?|\\\\\\\\|\\\\|//|\\}|\\^|#|0|0\\))?)(?=[-.~=]))[-.~=]+(\\[(?:\\#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)(?:[-\\\\/](?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+))?\\b)\\])?(?:(left|right|up|down)(?:[-.~=]))?[-.]*(?:(?:\u003e\u003e|\\|?\u003e|\\\\\\\\|\\\\|//|\\{|\\^|#|0|\\(0)?(?:[ox]\\s+|[+*])?))",
518
+ "end": "$",
519
+ "patterns": [
520
+ {
521
+ "include": "#Gerneral"
522
+ },
523
+ {
524
+ "match": "(?i):([^:]+):\\s*:(.+)$",
525
+ "captures": {
526
+ "1": {
527
+ "name": "support.variable.actor.link.source.wsd"
528
+ },
529
+ "2": {
530
+ "name": "comment.line.message.link.source.wsd"
531
+ }
532
+ }
533
+ },
534
+ {
535
+ "match": "(?i):(.+)$",
536
+ "captures": {
537
+ "1": {
538
+ "name": "comment.line.message.link.source.wsd"
539
+ }
540
+ }
541
+ }
542
+ ],
543
+ "beginCaptures": {
544
+ "1": {
545
+ "name": "keyword.control.note.source.wsd"
546
+ },
547
+ "2": {
548
+ "name": "constant.numeric.link.color.source.wsd"
549
+ },
550
+ "3": {
551
+ "name": "constant.language.link.source.wsd"
552
+ }
553
+ }
554
+ },
555
+ {
556
+ "name": "constant.numeric.colors.source.wsd",
557
+ "match": "(?i)#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)"
558
+ },
559
+ {
560
+ "name": "support.variable.source.wsd",
561
+ "match": "\\b[\\w_]+"
562
+ }
563
+ ]
564
+ },
565
+ "Keywords": {
566
+ "patterns": [
567
+ {
568
+ "name": "keyword.other.linebegin.source.wsd",
569
+ "match": "(?i)^\\s*(usecase|actor|object|participant|boundary|control|entity|database|create|component|interface|package|node|folder|frame|cloud|annotation|enum|abstract|class|abstract\\s+class|state|autonumber(\\s+stop|resume)?|activate|deactivate|destroy|newpage|alt|else|opt|loop|par|break|critical|group|box|rectangle|namespace|partition)\\b"
570
+ },
571
+ {
572
+ "name": "keyword.other.wholeline.source.wsd",
573
+ "match": "(?i)^\\s*(split( again)?|endif|repeat|start|stop|end|end\\s+fork|end\\s+split|fork( again)?|detach|end\\s+box|top\\s+to\\s+bottom\\s+direction|left\\s+to\\s+right\\s+direction)\\s*$"
574
+ },
575
+ {
576
+ "name": "keyword.other.other.source.wsd",
577
+ "match": "(?i)\\b(as|{(static|abstract)\\})\\b"
578
+ }
579
+ ]
580
+ },
581
+ "Object": {
582
+ "patterns": [
583
+ {
584
+ "match": "(?i)^\\s*([\\w\\d_]+)\\s+:\\s+s*$",
585
+ "captures": {
586
+ "1": {
587
+ "name": "support.variable.object.addfileds.source.wsd"
588
+ },
589
+ "2": {
590
+ "name": "comment.line.object.addfileds.source.wsd"
591
+ }
592
+ }
593
+ }
594
+ ]
595
+ },
596
+ "Quoted": {
597
+ "patterns": [
598
+ {
599
+ "name": "support.variable.definitions.source.wsd",
600
+ "begin": "(?i)^\\s*(:)",
601
+ "end": "(?i)(:)|[\\];|\u003c\u003e/}]?\\s*$"
602
+ },
603
+ {
604
+ "name": "string.quoted.double.source.wsd",
605
+ "begin": "\"",
606
+ "end": "\""
607
+ }
608
+ ]
609
+ },
610
+ "Sequence": {
611
+ "patterns": [
612
+ {
613
+ "match": "(?i)^\\s*(={2,})\\s*(.+?)\\s*(={2,})\\s*$",
614
+ "captures": {
615
+ "1": {
616
+ "name": "keyword.operator.sequence.divider.source.wsd"
617
+ },
618
+ "2": {
619
+ "name": "string.quoted.double.sequence.divider.source.wsd"
620
+ },
621
+ "3": {
622
+ "name": "keyword.operator.sequence.divider.source.wsd"
623
+ }
624
+ }
625
+ },
626
+ {
627
+ "match": "(?i)^\\s*(\\.{3,})\\s*$",
628
+ "captures": {
629
+ "1": {
630
+ "name": "keyword.operator.sequence.omission.source.wsd"
631
+ }
632
+ }
633
+ },
634
+ {
635
+ "match": "(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*:\\s*(.+)\\s*$",
636
+ "captures": {
637
+ "1": {
638
+ "name": "keyword.other.sequence.ref.source.wsd"
639
+ },
640
+ "2": {
641
+ "name": "support.variable.sequence.ref.source.wsd"
642
+ },
643
+ "3": {
644
+ "name": "comment.line.sequence.ref.source.wsd"
645
+ }
646
+ }
647
+ },
648
+ {
649
+ "begin": "(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*$",
650
+ "end": "(?i)end\\s+ref",
651
+ "patterns": [
652
+ {
653
+ "name": "comment.line.sequence.ref.source.wsd",
654
+ "match": ".+?"
655
+ }
656
+ ],
657
+ "beginCaptures": {
658
+ "1": {
659
+ "name": "keyword.other.sequence.ref.source.wsd"
660
+ },
661
+ "2": {
662
+ "name": "support.variable.sequence.ref.source.wsd"
663
+ }
664
+ },
665
+ "endCaptures": {
666
+ "0": {
667
+ "name": "keyword.other.sequence.ref.source.wsd"
668
+ }
669
+ }
670
+ },
671
+ {
672
+ "match": "(?i)^\\s*(\\.{3,})\\s*(.+)\\s*(\\.{3,})\\s*$",
673
+ "captures": {
674
+ "1": {
675
+ "name": "keyword.operator.sequence.delay.source.wsd"
676
+ },
677
+ "2": {
678
+ "name": "comment.line.sequence.delay.source.wsd"
679
+ },
680
+ "3": {
681
+ "name": "keyword.operator.sequence.delay.source.wsd"
682
+ }
683
+ }
684
+ },
685
+ {
686
+ "match": "(?i)(\\|{2,})(\\d+)?(\\|{1,})",
687
+ "captures": {
688
+ "1": {
689
+ "name": "keyword.operator.sequence.space.source.wsd"
690
+ },
691
+ "2": {
692
+ "name": "constant.numeric.sequence.space.source.wsd"
693
+ },
694
+ "3": {
695
+ "name": "keyword.operator.sequence.space.source.wsd"
696
+ }
697
+ }
698
+ }
699
+ ]
700
+ },
701
+ "State": {
702
+ "patterns": [
703
+ {
704
+ "match": "(?i)^\\s*(-{2,})\\s*$",
705
+ "captures": {
706
+ "1": {
707
+ "name": "keyword.other.state.concurrent.source.wsd"
708
+ }
709
+ }
710
+ }
711
+ ]
712
+ },
713
+ "Style": {
714
+ "patterns": [
715
+ {
716
+ "match": "(?i)^\\s*(skinparam)\\s+(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$",
717
+ "captures": {
718
+ "1": {
719
+ "name": "keyword.other.skinparam.source.wsd"
720
+ },
721
+ "2": {
722
+ "name": "keyword.other.skinparam.keyword.source.wsd"
723
+ },
724
+ "3": {
725
+ "name": "constant.numeric.skinparam.keyword.source.wsd"
726
+ },
727
+ "4": {
728
+ "name": "string.quoted.double.skinparam.value.source.wsd"
729
+ }
730
+ }
731
+ },
732
+ {
733
+ "begin": "(?i)^\\s*(?:(skinparam)(?:\\s+(\\w+?)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)?|(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)\\s*\\{\\s*$",
734
+ "end": "^\\s*(?\u003c!\\\\)\\}\\s*$",
735
+ "patterns": [
736
+ {
737
+ "match": "(?i)^\\s*(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$",
738
+ "captures": {
739
+ "1": {
740
+ "name": "keyword.other.skinparam.keyword.source.wsd"
741
+ },
742
+ "2": {
743
+ "name": "constant.numeric.skinparam.keyword.source.wsd"
744
+ },
745
+ "3": {
746
+ "name": "string.quoted.double.skinparam.value.source.wsd"
747
+ }
748
+ }
749
+ },
750
+ {
751
+ "include": "$self"
752
+ }
753
+ ],
754
+ "beginCaptures": {
755
+ "1": {
756
+ "name": "keyword.other.skinparam.source.wsd"
757
+ },
758
+ "2": {
759
+ "name": "keyword.other.skinparam.keyword.source.wsd"
760
+ },
761
+ "3": {
762
+ "name": "constant.numeric.skinparam.keyword.source.wsd"
763
+ },
764
+ "4": {
765
+ "name": "keyword.other.skinparam.keyword.source.wsd"
766
+ },
767
+ "5": {
768
+ "name": "constant.numeric.skinparam.keyword.source.wsd"
769
+ }
770
+ }
771
+ }
772
+ ]
773
+ }
774
+ }
775
+ }