rouge 3.15.0 → 3.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/rougify +2 -2
- data/lib/rouge.rb +67 -52
- data/lib/rouge/cli.rb +18 -1
- data/lib/rouge/demos/augeas +16 -0
- data/lib/rouge/demos/bibtex +12 -0
- data/lib/rouge/demos/cypher +5 -0
- data/lib/rouge/demos/datastudio +21 -0
- data/lib/rouge/demos/ecl +18 -0
- data/lib/rouge/demos/ghc-cmm +23 -0
- data/lib/rouge/demos/hlsl +20 -0
- data/lib/rouge/demos/isbl +4 -0
- data/lib/rouge/demos/livescript +15 -0
- data/lib/rouge/demos/nasm +6 -6
- data/lib/rouge/demos/rego +8 -0
- data/lib/rouge/demos/solidity +13 -0
- data/lib/rouge/demos/vcl +12 -0
- data/lib/rouge/demos/velocity +9 -0
- data/lib/rouge/demos/yang +17 -0
- data/lib/rouge/demos/zig +6 -0
- data/lib/rouge/formatters/terminal256.rb +22 -6
- data/lib/rouge/formatters/terminal_truecolor.rb +37 -0
- data/lib/rouge/lexer.rb +4 -2
- data/lib/rouge/lexers/apache.rb +22 -12
- data/lib/rouge/lexers/apache/keywords.rb +24 -0
- data/lib/rouge/lexers/augeas.rb +93 -0
- data/lib/rouge/lexers/bibtex.rb +115 -0
- data/lib/rouge/lexers/cmake.rb +1 -0
- data/lib/rouge/lexers/coffeescript.rb +47 -15
- data/lib/rouge/lexers/console.rb +53 -37
- data/lib/rouge/lexers/cpp.rb +18 -5
- data/lib/rouge/lexers/cypher.rb +108 -0
- data/lib/rouge/lexers/d.rb +3 -3
- data/lib/rouge/lexers/datastudio.rb +138 -0
- data/lib/rouge/lexers/diff.rb +1 -1
- data/lib/rouge/lexers/ecl.rb +175 -0
- data/lib/rouge/lexers/fsharp.rb +1 -0
- data/lib/rouge/lexers/ghc_cmm.rb +340 -0
- data/lib/rouge/lexers/gherkin.rb +1 -1
- data/lib/rouge/lexers/gherkin/keywords.rb +9 -6
- data/lib/rouge/lexers/haskell.rb +27 -19
- data/lib/rouge/lexers/hlsl.rb +166 -0
- data/lib/rouge/lexers/html.rb +1 -1
- data/lib/rouge/lexers/isbl.rb +97 -0
- data/lib/rouge/lexers/isbl/builtins.rb +17 -0
- data/lib/rouge/lexers/java.rb +4 -5
- data/lib/rouge/lexers/javascript.rb +1 -3
- data/lib/rouge/lexers/json.rb +3 -0
- data/lib/rouge/lexers/json_doc.rb +1 -0
- data/lib/rouge/lexers/jsx.rb +47 -59
- data/lib/rouge/lexers/kotlin.rb +14 -2
- data/lib/rouge/lexers/lasso.rb +11 -12
- data/lib/rouge/lexers/lasso/keywords.rb +20 -0
- data/lib/rouge/lexers/livescript.rb +310 -0
- data/lib/rouge/lexers/llvm.rb +6 -33
- data/lib/rouge/lexers/llvm/keywords.rb +25 -0
- data/lib/rouge/lexers/lua.rb +41 -3
- data/lib/rouge/lexers/lua/keywords.rb +28 -0
- data/lib/rouge/lexers/markdown.rb +9 -5
- data/lib/rouge/lexers/mathematica.rb +2 -2
- data/lib/rouge/lexers/mathematica/keywords.rb +17 -0
- data/lib/rouge/lexers/matlab.rb +3 -4
- data/lib/rouge/lexers/matlab/builtins.rb +11 -0
- data/lib/rouge/lexers/matlab/keywords.rb +15 -0
- data/lib/rouge/lexers/nasm.rb +42 -168
- data/lib/rouge/lexers/objective_c/common.rb +2 -2
- data/lib/rouge/lexers/opentype_feature_file.rb +27 -42
- data/lib/rouge/lexers/pascal.rb +1 -1
- data/lib/rouge/lexers/php.rb +48 -33
- data/lib/rouge/lexers/php/keywords.rb +202 -0
- data/lib/rouge/lexers/powershell.rb +7 -2
- data/lib/rouge/lexers/python.rb +58 -57
- data/lib/rouge/lexers/racket.rb +24 -1
- data/lib/rouge/lexers/rego.rb +45 -0
- data/lib/rouge/lexers/ruby.rb +16 -3
- data/lib/rouge/lexers/rust.rb +2 -10
- data/lib/rouge/lexers/scala.rb +1 -1
- data/lib/rouge/lexers/shell.rb +1 -1
- data/lib/rouge/lexers/solidity.rb +185 -0
- data/lib/rouge/lexers/sparql.rb +5 -4
- data/lib/rouge/lexers/sqf.rb +2 -2
- data/lib/rouge/lexers/sqf/keywords.rb +12 -0
- data/lib/rouge/lexers/terraform.rb +15 -0
- data/lib/rouge/lexers/toml.rb +23 -0
- data/lib/rouge/lexers/tsx.rb +10 -3
- data/lib/rouge/lexers/turtle.rb +1 -1
- data/lib/rouge/lexers/typescript.rb +1 -1
- data/lib/rouge/lexers/typescript/common.rb +18 -4
- data/lib/rouge/lexers/varnish.rb +168 -0
- data/lib/rouge/lexers/velocity.rb +71 -0
- data/lib/rouge/lexers/viml.rb +6 -38
- data/lib/rouge/lexers/viml/keywords.rb +11 -4
- data/lib/rouge/lexers/vue.rb +4 -1
- data/lib/rouge/lexers/yang.rb +147 -0
- data/lib/rouge/lexers/zig.rb +139 -0
- data/lib/rouge/version.rb +1 -1
- metadata +43 -9
- data/lib/rouge/lexers/apache/keywords.yml +0 -764
- data/lib/rouge/lexers/lasso/keywords.yml +0 -446
- data/lib/rouge/lexers/lua/builtins.rb +0 -24
- data/lib/rouge/lexers/mathematica/builtins.rb +0 -13
- data/lib/rouge/lexers/matlab/builtins.yml +0 -3515
- data/lib/rouge/lexers/php/builtins.rb +0 -203
- data/lib/rouge/lexers/sqf/commands.rb +0 -15
data/lib/rouge/lexers/viml.rb
CHANGED
@@ -14,7 +14,7 @@ module Rouge
|
|
14
14
|
mimetypes 'text/x-vim'
|
15
15
|
|
16
16
|
def self.keywords
|
17
|
-
load File.join(
|
17
|
+
Kernel::load File.join(Lexers::BASE_DIR, 'viml/keywords.rb')
|
18
18
|
self.keywords
|
19
19
|
end
|
20
20
|
|
@@ -49,11 +49,13 @@ module Rouge
|
|
49
49
|
name = m[0]
|
50
50
|
keywords = self.class.keywords
|
51
51
|
|
52
|
-
if
|
52
|
+
if keywords[:command].include? name
|
53
53
|
token Keyword
|
54
|
-
elsif
|
54
|
+
elsif keywords[:function].include? name
|
55
55
|
token Name::Builtin
|
56
|
-
elsif
|
56
|
+
elsif keywords[:option].include? name
|
57
|
+
token Name::Builtin
|
58
|
+
elsif keywords[:auto].include? name
|
57
59
|
token Name::Builtin
|
58
60
|
else
|
59
61
|
token Text
|
@@ -63,40 +65,6 @@ module Rouge
|
|
63
65
|
# no errors in VimL!
|
64
66
|
rule %r/./m, Text
|
65
67
|
end
|
66
|
-
|
67
|
-
def mapping_contains?(mapping, word)
|
68
|
-
shortest, longest = find_likely_mapping(mapping, word)
|
69
|
-
|
70
|
-
shortest and word.start_with?(shortest) and
|
71
|
-
longest and longest.start_with?(word)
|
72
|
-
end
|
73
|
-
|
74
|
-
# binary search through the mappings to find the one that's likely
|
75
|
-
# to actually work.
|
76
|
-
def find_likely_mapping(mapping, word)
|
77
|
-
min = 0
|
78
|
-
max = mapping.size
|
79
|
-
|
80
|
-
until max == min
|
81
|
-
mid = (max + min) / 2
|
82
|
-
|
83
|
-
cmp, _ = mapping[mid]
|
84
|
-
|
85
|
-
case word <=> cmp
|
86
|
-
when 1
|
87
|
-
# too low
|
88
|
-
min = mid + 1
|
89
|
-
when -1
|
90
|
-
# too high
|
91
|
-
max = mid
|
92
|
-
when 0
|
93
|
-
# just right, abort!
|
94
|
-
return mapping[mid]
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
mapping[max - 1]
|
99
|
-
end
|
100
68
|
end
|
101
69
|
end
|
102
70
|
end
|
@@ -1,13 +1,20 @@
|
|
1
|
-
#
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
|
-
# DO NOT EDIT
|
5
|
-
#
|
4
|
+
# DO NOT EDIT
|
5
|
+
# This file is automatically generated by `rake builtins:viml`.
|
6
|
+
# See tasks/builtins/viml.rake for more info.
|
7
|
+
|
6
8
|
module Rouge
|
7
9
|
module Lexers
|
8
10
|
class VimL
|
9
11
|
def self.keywords
|
10
|
-
@keywords ||= {:command=>[["a", "a"], ["abc", "abclear"], ["abo", "aboveleft"], ["al", "all"], ["ar", "args"], ["arga", "argadd"], ["argd", "argdelete"], ["argdo", "argdo"], ["arge", "argedit"], ["argg", "argglobal"], ["argl", "arglocal"], ["argu", "argument"], ["as", "ascii"], ["au", "au"], ["b", "buffer"], ["bN", "bNext"], ["ba", "ball"], ["bad", "badd"], ["bd", "bdelete"], ["bel", "belowright"], ["bf", "bfirst"], ["bl", "blast"], ["bm", "bmodified"], ["bn", "bnext"], ["bo", "botright"], ["bp", "bprevious"], ["br", "brewind"], ["brea", "break"], ["breaka", "breakadd"], ["breakd", "breakdel"], ["breakl", "breaklist"], ["bro", "browse"], ["bufdo", "bufdo"], ["buffers", "buffers"], ["bun", "bunload"], ["bw", "bwipeout"], ["c", "change"], ["cN", "cNext"], ["cNf", "cNfile"], ["cabc", "cabclear"], ["cad", "caddbuffer"], ["cadde", "caddexpr"], ["caddf", "caddfile"], ["cal", "call"], ["cat", "catch"], ["cb", "cbuffer"], ["cbo", "cbottom"], ["cc", "cc"], ["ccl", "cclose"], ["cd", "cd"], ["cdo", "cdo"], ["ce", "center"], ["cex", "cexpr"], ["cf", "cfile"], ["cfdo", "cfdo"], ["cfir", "cfirst"], ["cg", "cgetfile"], ["cgetb", "cgetbuffer"], ["cgete", "cgetexpr"], ["changes", "changes"], ["chd", "chdir"], ["che", "checkpath"], ["checkt", "checktime"], ["chi", "chistory"], ["cl", "clist"], ["cla", "clast"], ["cle", "clearjumps"], ["clo", "close"], ["cmapc", "cmapclear"], ["cn", "cnext"], ["cnew", "cnewer"], ["cnf", "cnfile"], ["co", "copy"], ["col", "colder"], ["colo", "colorscheme"], ["com", "com"], ["comc", "comclear"], ["comp", "compiler"], ["con", "continue"], ["conf", "confirm"], ["cope", "copen"], ["cp", "cprevious"], ["cpf", "cpfile"], ["cq", "cquit"], ["cr", "crewind"], ["cs", "cs"], ["cscope", "cscope"], ["cstag", "cstag"], ["cuna", "cunabbrev"], ["cw", "cwindow"], ["d", "delete"], ["debug", "debug"], ["debugg", "debuggreedy"], ["delc", "delcommand"], ["delel", "delel"], ["delep", "delep"], ["deletel", "deletel"], ["deletep", "deletep"], ["deletl", "deletl"], ["deletp", "deletp"], ["delf", "delfunction"], ["dell", "dell"], ["delm", "delmarks"], ["delp", "delp"], ["dep", "dep"], ["di", "display"], ["dif", "diffupdate"], ["diffg", "diffget"], ["diffo", "diffoff"], ["diffp", "diffpatch"], ["diffpu", "diffput"], ["diffs", "diffsplit"], ["difft", "diffthis"], ["dig", "digraphs"], ["dir", "dir"], ["dj", "djump"], ["dl", "dl"], ["dli", "dlist"], ["do", "do"], ["doau", "doau"], ["dp", "dp"], ["dr", "drop"], ["ds", "dsearch"], ["dsp", "dsplit"], ["e", "edit"], ["ea", "ea"], ["earlier", "earlier"], ["echoe", "echoerr"], ["echom", "echomsg"], ["echon", "echon"], ["el", "else"], ["elsei", "elseif"], ["em", "emenu"], ["en", "endif"], ["endf", "endfunction"], ["endfo", "endfor"], ["endt", "endtry"], ["endw", "endwhile"], ["ene", "enew"], ["ex", "ex"], ["exi", "exit"], ["exu", "exusage"], ["f", "file"], ["files", "files"], ["filet", "filet"], ["filetype", "filetype"], ["filt", "filter"], ["fin", "find"], ["fina", "finally"], ["fini", "finish"], ["fir", "first"], ["fix", "fixdel"], ["fo", "fold"], ["foldc", "foldclose"], ["foldd", "folddoopen"], ["folddoc", "folddoclosed"], ["foldo", "foldopen"], ["for", "for"], ["fu", "function"], ["g", "g"], ["go", "goto"], ["gr", "grep"], ["grepa", "grepadd"], ["gui", "gui"], ["gvim", "gvim"], ["h", "help"], ["ha", "hardcopy"], ["helpc", "helpclose"], ["helpf", "helpfind"], ["helpg", "helpgrep"], ["helpt", "helptags"], ["hi", "hi"], ["hid", "hide"], ["his", "history"], ["i", "i"], ["iabc", "iabclear"], ["if", "if"], ["ij", "ijump"], ["il", "ilist"], ["imapc", "imapclear"], ["in", "in"], ["intro", "intro"], ["is", "isearch"], ["isp", "isplit"], ["iuna", "iunabbrev"], ["j", "join"], ["ju", "jumps"], ["k", "k"], ["kee", "keepmarks"], ["keepa", "keepa"], ["keepalt", "keepalt"], ["keepj", "keepjumps"], ["keepp", "keeppatterns"], ["l", "list"], ["lN", "lNext"], ["lNf", "lNfile"], ["la", "last"], ["lad", "laddexpr"], ["laddb", "laddbuffer"], ["laddf", "laddfile"], ["lan", "language"], ["lat", "lat"], ["later", "later"], ["lb", "lbuffer"], ["lbo", "lbottom"], ["lc", "lcd"], ["lch", "lchdir"], ["lcl", "lclose"], ["lcs", "lcs"], ["lcscope", "lcscope"], ["ld", "ldo"], ["le", "left"], ["lefta", "leftabove"], ["lex", "lexpr"], ["lf", "lfile"], ["lfdo", "lfdo"], ["lfir", "lfirst"], ["lg", "lgetfile"], ["lgetb", "lgetbuffer"], ["lgete", "lgetexpr"], ["lgr", "lgrep"], ["lgrepa", "lgrepadd"], ["lh", "lhelpgrep"], ["lhi", "lhistory"], ["ll", "ll"], ["lla", "llast"], ["lli", "llist"], ["lmak", "lmake"], ["lmapc", "lmapclear"], ["lne", "lnext"], ["lnew", "lnewer"], ["lnf", "lnfile"], ["lo", "loadview"], ["loadk", "loadk"], ["loadkeymap", "loadkeymap"], ["loc", "lockmarks"], ["lockv", "lockvar"], ["lol", "lolder"], ["lop", "lopen"], ["lp", "lprevious"], ["lpf", "lpfile"], ["lr", "lrewind"], ["ls", "ls"], ["lt", "ltag"], ["lua", "lua"], ["luado", "luado"], ["luafile", "luafile"], ["lv", "lvimgrep"], ["lvimgrepa", "lvimgrepadd"], ["lw", "lwindow"], ["m", "move"], ["ma", "mark"], ["mak", "make"], ["marks", "marks"], ["mat", "match"], ["menut", "menutranslate"], ["mes", "mes"], ["messages", "messages"], ["mk", "mkexrc"], ["mks", "mksession"], ["mksp", "mkspell"], ["mkv", "mkvimrc"], ["mkvie", "mkview"], ["mod", "mode"], ["mz", "mzscheme"], ["mzf", "mzfile"], ["n", "next"], ["nb", "nbkey"], ["nbc", "nbclose"], ["nbs", "nbstart"], ["new", "new"], ["nmapc", "nmapclear"], ["noa", "noa"], ["noautocmd", "noautocmd"], ["noh", "nohlsearch"], ["nor", "nor"], ["nore", "nore"], ["nos", "noswapfile"], ["nu", "number"], ["o", "open"], ["ol", "oldfiles"], ["omapc", "omapclear"], ["on", "only"], ["opt", "options"], ["ownsyntax", "ownsyntax"], ["p", "print"], ["pa", "packadd"], ["packl", "packloadall"], ["pc", "pclose"], ["pe", "perl"], ["ped", "pedit"], ["perld", "perldo"], ["po", "pop"], ["popu", "popup"], ["pp", "ppop"], ["pre", "preserve"], ["prev", "previous"], ["pro", "pro"], ["prof", "profile"], ["profd", "profdel"], ["promptf", "promptfind"], ["promptr", "promptrepl"], ["ps", "psearch"], ["ptN", "ptNext"], ["pta", "ptag"], ["ptf", "ptfirst"], ["ptj", "ptjump"], ["ptl", "ptlast"], ["ptn", "ptnext"], ["ptp", "ptprevious"], ["ptr", "ptrewind"], ["pts", "ptselect"], ["pu", "put"], ["pw", "pwd"], ["py", "python"], ["py3", "py3"], ["py3", "py3"], ["py3do", "py3do"], ["pydo", "pydo"], ["pyf", "pyfile"], ["python3", "python3"], ["q", "quit"], ["qa", "qall"], ["quita", "quitall"], ["r", "read"], ["rec", "recover"], ["red", "redo"], ["redi", "redir"], ["redr", "redraw"], ["redraws", "redrawstatus"], ["reg", "registers"], ["res", "resize"], ["ret", "retab"], ["retu", "return"], ["rew", "rewind"], ["ri", "right"], ["rightb", "rightbelow"], ["ru", "runtime"], ["rub", "ruby"], ["rubyd", "rubydo"], ["rubyf", "rubyfile"], ["rundo", "rundo"], ["rv", "rviminfo"], ["sI", "sI"], ["sIc", "sIc"], ["sIe", "sIe"], ["sIg", "sIg"], ["sIl", "sIl"], ["sIn", "sIn"], ["sIp", "sIp"], ["sIr", "sIr"], ["sN", "sNext"], ["sa", "sargument"], ["sal", "sall"], ["san", "sandbox"], ["sav", "saveas"], ["sb", "sbuffer"], ["sbN", "sbNext"], ["sba", "sball"], ["sbf", "sbfirst"], ["sbl", "sblast"], ["sbm", "sbmodified"], ["sbn", "sbnext"], ["sbp", "sbprevious"], ["sbr", "sbrewind"], ["sc", "sc"], ["scI", "scI"], ["sce", "sce"], ["scg", "scg"], ["sci", "sci"], ["scl", "scl"], ["scp", "scp"], ["scr", "scriptnames"], ["scripte", "scriptencoding"], ["scs", "scs"], ["scscope", "scscope"], ["se", "set"], ["setf", "setfiletype"], ["setg", "setglobal"], ["setl", "setlocal"], ["sf", "sfind"], ["sfir", "sfirst"], ["sg", "sg"], ["sgI", "sgI"], ["sgc", "sgc"], ["sge", "sge"], ["sgi", "sgi"], ["sgl", "sgl"], ["sgn", "sgn"], ["sgp", "sgp"], ["sgr", "sgr"], ["sh", "shell"], ["si", "si"], ["sic", "sic"], ["sie", "sie"], ["sig", "sig"], ["sign", "sign"], ["sil", "silent"], ["sim", "simalt"], ["sin", "sin"], ["sip", "sip"], ["sir", "sir"], ["sl", "sleep"], ["sla", "slast"], ["sm", "smagic"], ["sm", "smap"], ["sme", "sme"], ["smenu", "smenu"], ["smile", "smile"], ["sn", "snext"], ["sno", "snomagic"], ["snoreme", "snoreme"], ["snoremenu", "snoremenu"], ["so", "source"], ["sor", "sort"], ["sp", "split"], ["spe", "spellgood"], ["spelld", "spelldump"], ["spelli", "spellinfo"], ["spellr", "spellrepall"], ["spellu", "spellundo"], ["spellw", "spellwrong"], ["spr", "sprevious"], ["sr", "sr"], ["srI", "srI"], ["src", "src"], ["sre", "srewind"], ["srg", "srg"], ["sri", "sri"], ["srl", "srl"], ["srn", "srn"], ["srp", "srp"], ["st", "stop"], ["sta", "stag"], ["star", "startinsert"], ["startg", "startgreplace"], ["startr", "startreplace"], ["stj", "stjump"], ["stopi", "stopinsert"], ["sts", "stselect"], ["sun", "sunhide"], ["sunme", "sunme"], ["sunmenu", "sunmenu"], ["sus", "suspend"], ["sv", "sview"], ["sw", "swapname"], ["sy", "sy"], ["syn", "syn"], ["sync", "sync"], ["syncbind", "syncbind"], ["syntime", "syntime"], ["t", "t"], ["tN", "tNext"], ["ta", "tag"], ["tab", "tab"], ["tabN", "tabNext"], ["tabc", "tabclose"], ["tabd", "tabdo"], ["tabe", "tabedit"], ["tabf", "tabfind"], ["tabfir", "tabfirst"], ["tabl", "tablast"], ["tabm", "tabmove"], ["tabn", "tabnext"], ["tabnew", "tabnew"], ["tabo", "tabonly"], ["tabp", "tabprevious"], ["tabr", "tabrewind"], ["tabs", "tabs"], ["tags", "tags"], ["tc", "tcl"], ["tcld", "tcldo"], ["tclf", "tclfile"], ["te", "tearoff"], ["tf", "tfirst"], ["th", "throw"], ["tj", "tjump"], ["tl", "tlast"], ["tm", "tmenu"], ["tn", "tnext"], ["to", "topleft"], ["tp", "tprevious"], ["tr", "trewind"], ["try", "try"], ["ts", "tselect"], ["tu", "tunmenu"], ["u", "undo"], ["una", "unabbreviate"], ["undoj", "undojoin"], ["undol", "undolist"], ["unh", "unhide"], ["unlo", "unlockvar"], ["uns", "unsilent"], ["up", "update"], ["v", "v"], ["ve", "version"], ["verb", "verbose"], ["vert", "vertical"], ["vi", "visual"], ["vie", "view"], ["vim", "vimgrep"], ["vimgrepa", "vimgrepadd"], ["viu", "viusage"], ["vmapc", "vmapclear"], ["vne", "vnew"], ["vs", "vsplit"], ["w", "write"], ["wN", "wNext"], ["wa", "wall"], ["wh", "while"], ["win", "winsize"], ["winc", "wincmd"], ["windo", "windo"], ["winp", "winpos"], ["wn", "wnext"], ["wp", "wprevious"], ["wq", "wq"], ["wqa", "wqall"], ["ws", "wsverb"], ["wundo", "wundo"], ["wv", "wviminfo"], ["x", "xit"], ["xa", "xall"], ["xmapc", "xmapclear"], ["xme", "xme"], ["xmenu", "xmenu"], ["xnoreme", "xnoreme"], ["xnoremenu", "xnoremenu"], ["xprop", "xprop"], ["xunme", "xunme"], ["xunmenu", "xunmenu"], ["xwininfo", "xwininfo"], ["y", "yank"]], :option=>[], :auto=>[["BufAdd", "BufAdd"], ["BufCreate", "BufCreate"], ["BufDelete", "BufDelete"], ["BufEnter", "BufEnter"], ["BufFilePost", "BufFilePost"], ["BufFilePre", "BufFilePre"], ["BufHidden", "BufHidden"], ["BufLeave", "BufLeave"], ["BufNew", "BufNew"], ["BufNewFile", "BufNewFile"], ["BufRead", "BufRead"], ["BufReadCmd", "BufReadCmd"], ["BufReadPost", "BufReadPost"], ["BufReadPre", "BufReadPre"], ["BufUnload", "BufUnload"], ["BufWinEnter", "BufWinEnter"], ["BufWinLeave", "BufWinLeave"], ["BufWipeout", "BufWipeout"], ["BufWrite", "BufWrite"], ["BufWriteCmd", "BufWriteCmd"], ["BufWritePost", "BufWritePost"], ["BufWritePre", "BufWritePre"], ["CmdUndefined", "CmdUndefined"], ["CmdwinEnter", "CmdwinEnter"], ["CmdwinLeave", "CmdwinLeave"], ["ColorScheme", "ColorScheme"], ["CompleteDone", "CompleteDone"], ["CursorHold", "CursorHold"], ["CursorHoldI", "CursorHoldI"], ["CursorMoved", "CursorMoved"], ["CursorMovedI", "CursorMovedI"], ["EncodingChanged", "EncodingChanged"], ["FileAppendCmd", "FileAppendCmd"], ["FileAppendPost", "FileAppendPost"], ["FileAppendPre", "FileAppendPre"], ["FileChangedRO", "FileChangedRO"], ["FileChangedShell", "FileChangedShell"], ["FileChangedShellPost", "FileChangedShellPost"], ["FileEncoding", "FileEncoding"], ["FileReadCmd", "FileReadCmd"], ["FileReadPost", "FileReadPost"], ["FileReadPre", "FileReadPre"], ["FileType", "FileType"], ["FileWriteCmd", "FileWriteCmd"], ["FileWritePost", "FileWritePost"], ["FileWritePre", "FileWritePre"], ["FilterReadPost", "FilterReadPost"], ["FilterReadPre", "FilterReadPre"], ["FilterWritePost", "FilterWritePost"], ["FilterWritePre", "FilterWritePre"], ["FocusGained", "FocusGained"], ["FocusLost", "FocusLost"], ["FuncUndefined", "FuncUndefined"], ["GUIEnter", "GUIEnter"], ["GUIFailed", "GUIFailed"], ["InsertChange", "InsertChange"], ["InsertCharPre", "InsertCharPre"], ["InsertEnter", "InsertEnter"], ["InsertLeave", "InsertLeave"], ["MenuPopup", "MenuPopup"], ["OptionSet", "OptionSet"], ["QuickFixCmdPost", "QuickFixCmdPost"], ["QuickFixCmdPre", "QuickFixCmdPre"], ["QuitPre", "QuitPre"], ["RemoteReply", "RemoteReply"], ["SessionLoadPost", "SessionLoadPost"], ["ShellCmdPost", "ShellCmdPost"], ["ShellFilterPost", "ShellFilterPost"], ["SourceCmd", "SourceCmd"], ["SourcePre", "SourcePre"], ["SpellFileMissing", "SpellFileMissing"], ["StdinReadPost", "StdinReadPost"], ["StdinReadPre", "StdinReadPre"], ["SwapExists", "SwapExists"], ["Syntax", "Syntax"], ["TabClosed", "TabClosed"], ["TabEnter", "TabEnter"], ["TabLeave", "TabLeave"], ["TabNew", "TabNew"], ["TermChanged", "TermChanged"], ["TermResponse", "TermResponse"], ["TextChanged", "TextChanged"], ["TextChangedI", "TextChangedI"], ["User", "User"], ["VimEnter", "VimEnter"], ["VimLeave", "VimLeave"], ["VimLeavePre", "VimLeavePre"], ["VimResized", "VimResized"], ["WinEnter", "WinEnter"], ["WinLeave", "WinLeave"], ["WinNew", "WinNew"]]}
|
12
|
+
@keywords ||= {}.tap do |kw|
|
13
|
+
kw[:command] = Set.new ["a", "ar", "args", "argl", "arglocal", "ba", "ball", "bm", "bmodified", "breaka", "breakadd", "bun", "bunload", "cabc", "cabclear", "cal", "call", "cc", "cf", "cfile", "changes", "cla", "clast", "cnf", "cnfile", "comc", "comclear", "cp", "cprevious", "cstag", "debugg", "debuggreedy", "deletl", "dep", "diffpu", "diffput", "dl", "dr", "drop", "ec", "em", "emenu", "ene", "enew", "files", "fini", "finish", "folddoc", "folddoclosed", "gr", "grep", "helpc", "helpclose", "his", "history", "il", "ilist", "isp", "isplit", "keepa", "l", "list", "laf", "lafter", "lbel", "lbelow", "lcscope", "lfdo", "lgrepa", "lgrepadd", "lma", "lo", "loadview", "lop", "lopen", "lua", "m", "move", "mes", "mkvie", "mkview", "nbc", "nbclose", "noh", "nohlsearch", "ol", "oldfiles", "pa", "packadd", "po", "pop", "prof", "profile", "pta", "ptag", "ptr", "ptrewind", "py3f", "py3file", "pythonx", "quita", "quitall", "redraws", "redrawstatus", "rew", "rewind", "rubyf", "rubyfile", "sIg", "sa", "sargument", "sba", "sball", "sbr", "sbrewind", "scl", "scscope", "sfir", "sfirst", "sgl", "sic", "sin", "sm", "smap", "snoreme", "spelld", "spelldump", "spellw", "spellwrong", "srg", "st", "stop", "stj", "stjump", "sunmenu", "syn", "tN", "tNext", "tabd", "tabdo", "tabm", "tabmove", "tabr", "tabrewind", "tch", "tchdir", "tf", "tfirst", "tlmenu", "tm", "tmenu", "to", "topleft", "tu", "tunmenu", "undol", "undolist", "up", "update", "vi", "visual", "vmapc", "vmapclear", "wa", "wall", "winp", "winpos", "wundo", "xme", "xr", "xrestore", "ab", "arga", "argadd", "argu", "argument", "bad", "badd", "bn", "bnext", "breakd", "breakdel", "bw", "bwipeout", "cabo", "cabove", "cat", "catch", "ccl", "cclose", "cfdo", "chd", "chdir", "cle", "clearjumps", "cnor", "comp", "compiler", "cpf", "cpfile", "cun", "delc", "delcommand", "deletp", "di", "display", "diffs", "diffsplit", "dli", "dlist", "ds", "dsearch", "echoe", "echoerr", "en", "endif", "eval", "filet", "fir", "first", "foldo", "foldopen", "grepa", "grepadd", "helpf", "helpfind", "i", "imapc", "imapclear", "iuna", "iunabbrev", "keepalt", "la", "last", "lan", "language", "lbo", "lbottom", "ld", "ldo", "lfir", "lfirst", "lh", "lhelpgrep", "lmak", "lmake", "loadk", "lp", "lprevious", "luado", "ma", "mark", "messages", "mod", "mode", "nbs", "nbstart", "nor", "omapc", "omapclear", "packl", "packloadall", "popu", "popup", "profd", "profdel", "ptf", "ptfirst", "pts", "ptselect", "pyx", "r", "read", "redrawt", "redrawtabline", "ri", "right", "rundo", "sIl", "sal", "sall", "sbf", "sbfirst", "sc", "scp", "se", "set", "sg", "sgn", "sie", "sip", "sme", "snoremenu", "spelli", "spellinfo", "spr", "sprevious", "sri", "sta", "stag", "stopi", "stopinsert", "sus", "suspend", "sync", "ta", "tag", "tabe", "tabedit", "tabn", "tabnext", "tabs", "tcld", "tcldo", "th", "throw", "tln", "tma", "tmap", "tp", "tprevious", "tunma", "tunmap", "unh", "unhide", "v", "vie", "view", "vne", "vnew", "wh", "while", "wn", "wnext", "wv", "wviminfo", "xmenu", "xunme", "abc", "abclear", "argd", "argdelete", "as", "ascii", "bd", "bdelete", "bo", "botright", "breakl", "breaklist", "cN", "cNext", "cad", "caddbuffer", "cb", "cbuffer", "cd", "cfir", "cfirst", "che", "checkpath", "clo", "close", "co", "copy", "con", "continue", "cq", "cquit", "cuna", "cunabbrev", "delel", "delf", "delfunction", "dif", "diffupdate", "difft", "diffthis", "do", "dsp", "dsplit", "echom", "echomsg", "endf", "endfunction", "ex", "filetype", "fix", "fixdel", "for", "gui", "helpg", "helpgrep", "ia", "in", "j", "join", "keepj", "keepjumps", "lab", "labove", "lat", "lc", "lcd", "le", "left", "lg", "lgetfile", "lhi", "lhistory", "lmapc", "lmapclear", "loadkeymap", "lpf", "lpfile", "luafile", "mak", "make", "mk", "mkexrc", "mz", "mzscheme", "new", "nore", "on", "only", "pc", "pclose", "pp", "ppop", "promptf", "promptfind", "ptj", "ptjump", "pu", "put", "py", "python", "pyxdo", "rec", "recover", "reg", "registers", "rightb", "rightbelow", "rv", "rviminfo", "sIn", "san", "sandbox", "sbl", "sblast", "scI", "scr", "scriptnames", "setf", "setfiletype", "sgI", "sgp", "sig", "sir", "smenu", "so", "source", "spellr", "spellrare", "sr", "srl", "star", "startinsert", "sts", "stselect", "sv", "sview", "syncbind", "tab", "tabf", "tabfind", "tabnew", "tags", "tclf", "tclfile", "tj", "tjump", "tlnoremenu", "tmapc", "tmapclear", "tr", "trewind", "u", "undo", "unl", "ve", "version", "vim", "vimgrep", "vs", "vsplit", "win", "winsize", "wp", "wprevious", "x", "xit", "xnoreme", "xunmenu", "abo", "aboveleft", "argdo", "au", "bel", "belowright", "bp", "bprevious", "bro", "browse", "cNf", "cNfile", "cadde", "caddexpr", "cbe", "cbefore", "cdo", "cg", "cgetfile", "checkt", "checktime", "cmapc", "cmapclear", "col", "colder", "conf", "confirm", "cr", "crewind", "cw", "cwindow", "delep", "dell", "diffg", "diffget", "dig", "digraphs", "doau", "e", "edit", "echon", "endfo", "endfor", "exi", "exit", "filt", "filter", "fo", "fold", "fu", "function", "gvim", "helpt", "helptags", "iabc", "iabclear", "inor", "ju", "jumps", "keepp", "keeppatterns", "lad", "laddexpr", "later", "lch", "lchdir", "lefta", "leftabove", "lgetb", "lgetbuffer", "ll", "lne", "lnext", "loc", "lockmarks", "lr", "lrewind", "lv", "lvimgrep", "marks", "mks", "mksession", "mzf", "mzfile", "nmapc", "nmapclear", "nos", "noswapfile", "opt", "options", "pe", "perl", "pre", "preserve", "promptr", "promptrepl", "ptl", "ptlast", "pw", "pwd", "pydo", "pyxfile", "red", "redo", "res", "resize", "ru", "runtime", "sI", "sIp", "sav", "saveas", "sbm", "sbmodified", "sce", "scripte", "scriptencoding", "setg", "setglobal", "sgc", "sgr", "sign", "sl", "sleep", "smile", "sor", "sort", "spellrepall", "srI", "srn", "startg", "startgreplace", "sun", "sunhide", "sw", "swapname", "syntime", "tabN", "tabNext", "tabfir", "tabfirst", "tabo", "tabonly", "tc", "tcl", "te", "tearoff", "tl", "tlast", "tlu", "tn", "tnext", "try", "una", "unabbreviate", "unlo", "unlockvar", "verb", "verbose", "vimgrepa", "vimgrepadd", "wN", "wNext", "winc", "wincmd", "wq", "xa", "xall", "xnoremenu", "xwininfo", "addd", "arge", "argedit", "bN", "bNext", "bf", "bfirst", "br", "brewind", "bufdo", "c", "change", "caddf", "caddfile", "cbel", "cbelow", "ce", "center", "cgetb", "cgetbuffer", "chi", "chistory", "cn", "cnext", "colo", "colorscheme", "cons", "const", "cs", "d", "delete", "deletel", "delm", "delmarks", "diffo", "diffoff", "dir", "doaut", "ea", "el", "else", "endt", "endtry", "exu", "exusage", "fin", "find", "foldc", "foldclose", "g", "h", "help", "hi", "if", "intro", "k", "lN", "lNext", "laddb", "laddbuffer", "lb", "lbuffer", "lcl", "lclose", "lex", "lexpr", "lgete", "lgetexpr", "lla", "llast", "lnew", "lnewer", "lockv", "lockvar", "ls", "lvimgrepa", "lvimgrepadd", "mat", "match", "mksp", "mkspell", "n", "next", "noa", "nu", "number", "ownsyntax", "ped", "pedit", "prev", "previous", "ps", "psearch", "ptn", "ptnext", "py3", "pyf", "pyfile", "q", "quit", "redi", "redir", "ret", "retab", "rub", "ruby", "sIc", "sIr", "sbN", "sbNext", "sbn", "sbnext", "scg", "scriptv", "scriptversion", "setl", "setlocal", "sge", "sh", "shell", "sil", "silent", "sla", "slast", "sn", "snext", "sp", "split", "spellrrare", "src", "srp", "startr", "startreplace", "sunme", "sy", "t", "tabc", "tabclose", "tabl", "tablast", "tabp", "tabprevious", "tcd", "ter", "terminal", "tlm", "tlunmenu", "tno", "tnoremap", "ts", "tselect", "undoj", "undojoin", "uns", "unsilent", "vert", "vertical", "viu", "viusage", "w", "write", "windo", "wqa", "wqall", "xmapc", "xmapclear", "xprop", "y", "yank", "al", "all", "argg", "argglobal", "b", "buffer", "bl", "blast", "brea", "break", "buffers", "ca", "caf", "cafter", "cbo", "cbottom", "cex", "cexpr", "cgete", "cgetexpr", "cl", "clist", "cnew", "cnewer", "com", "cope", "copen", "cscope", "debug", "deletep", "delp", "diffp", "diffpatch", "dj", "djump", "dp", "earlier", "elsei", "elseif", "endw", "endwhile", "f", "file", "fina", "finally", "foldd", "folddoopen", "go", "goto", "ha", "hardcopy", "hid", "hide", "ij", "ijump", "is", "isearch", "kee", "keepmarks", "lNf", "lNfile", "laddf", "laddfile", "lbe", "lbefore", "lcs", "lf", "lfile", "lgr", "lgrep", "lli", "llist", "lnf", "lnfile", "lol", "lolder", "lt", "ltag", "lw", "lwindow", "menut", "menutranslate", "mkv", "mkvimrc", "nb", "nbkey", "noautocmd", "o", "open", "p", "print", "perld", "perldo", "pro", "ptN", "ptNext", "ptp", "ptprevious", "py3do", "python3", "qa", "qall", "redr", "redraw", "retu", "return", "rubyd", "rubydo", "sIe", "sN", "sNext", "sb", "sbuffer", "sbp", "sbprevious", "sci", "scs", "sf", "sfind", "sgi", "si", "sim", "simalt", "smagic", "sno", "snomagic", "spe", "spellgood", "spellu", "spellundo", "sre", "srewind", "def", "endd", "enddef", "disa", "disassemble", "vim9", "vim9script", "imp", "import", "exp", "export"]
|
14
|
+
kw[:option] = Set.new ["acd", "ambw", "arshape", "background", "ballooneval", "bex", "bl", "brk", "buftype", "cf", "cinkeys", "cmdwinheight", "com", "completeslash", "cpoptions", "cscoperelative", "csre", "cursorcolumn", "delcombine", "digraph", "eadirection", "emo", "equalprg", "expandtab", "fdls", "fex", "fileignorecase", "fml", "foldlevel", "formatexpr", "gcr", "go", "guifontset", "helpheight", "history", "hlsearch", "imaf", "ims", "includeexpr", "infercase", "iskeyword", "keywordprg", "laststatus", "lispwords", "lrm", "magic", "maxfuncdepth", "menuitems", "mm", "modifiable", "mousemodel", "mzq", "numberwidth", "opfunc", "patchexpr", "pfn", "pp", "printfont", "pumwidth", "pythonthreehome", "redrawtime", "ri", "rs", "sb", "scroll", "sect", "sft", "shellredir", "shiftwidth", "showmatch", "signcolumn", "smarttab", "sp", "spf", "srr", "startofline", "suffixes", "switchbuf", "ta", "tagfunc", "tbi", "term", "termwintype", "tgc", "titlelen", "toolbariconsize", "ttimeout", "ttymouse", "twt", "undofile", "varsofttabstop", "verbosefile", "viminfofile", "wak", "weirdinvert", "wig", "wildoptions", "winheight", "wm", "wrapscan", "ai", "anti", "autochdir", "backspace", "balloonevalterm", "bexpr", "bo", "browsedir", "casemap", "cfu", "cino", "cmp", "comments", "concealcursor", "cpp", "cscopetag", "cst", "cursorline", "dex", "dip", "eb", "emoji", "errorbells", "exrc", "fdm", "ff", "filetype", "fmr", "foldlevelstart", "formatlistpat", "gd", "gp", "guifontwide", "helplang", "hk", "ic", "imak", "imsearch", "incsearch", "insertmode", "isp", "km", "lazyredraw", "list", "ls", "makeef", "maxmapdepth", "mfd", "mmd", "modified", "mouses", "mzquantum", "nuw", "osfiletype", "patchmode", "ph", "preserveindent", "printheader", "pvh", "pyx", "regexpengine", "rightleft", "rtp", "sbo", "scrollbind", "sections", "sh", "shellslash", "shm", "showmode", "siso", "smc", "spc", "spl", "ss", "statusline", "suffixesadd", "sws", "tabline", "taglength", "tbidi", "termbidi", "terse", "tgst", "titleold", "top", "ttimeoutlen", "ttyscroll", "tx", "undolevels", "vartabstop", "vfile", "virtualedit", "warn", "wfh", "wildchar", "wim", "winminheight", "wmh", "write", "akm", "antialias", "autoindent", "backup", "balloonexpr", "bg", "bomb", "bs", "cb", "ch", "cinoptions", "cms", "commentstring", "conceallevel", "cpt", "cscopetagorder", "csto", "cursorlineopt", "dg", "dir", "ed", "enc", "errorfile", "fcl", "fdn", "ffs", "fillchars", "fo", "foldmarker", "formatoptions", "gdefault", "grepformat", "guiheadroom", "hf", "hkmap", "icon", "imc", "imsf", "inde", "is", "isprint", "kmp", "lbr", "listchars", "lsp", "makeencoding", "maxmem", "mh", "mmp", "more", "mouseshape", "mzschemedll", "odev", "pa", "path", "pheader", "previewheight", "printmbcharset", "pvp", "pyxversion", "relativenumber", "rightleftcmd", "ru", "sbr", "scrollfocus", "secure", "shcf", "shelltemp", "shortmess", "showtabline", "sj", "smd", "spell", "splitbelow", "ssl", "stl", "sw", "sxe", "tabpagemax", "tagrelative", "tbis", "termencoding", "textauto", "thesaurus", "titlestring", "tpm", "ttm", "ttytype", "uc", "undoreload", "vb", "vi", "visualbell", "wb", "wfw", "wildcharm", "winaltkeys", "winminwidth", "wmnu", "writeany", "al", "ar", "autoread", "backupcopy", "bdir", "bh", "breakat", "bsdir", "cc", "charconvert", "cinw", "co", "compatible", "confirm", "crb", "cscopeverbose", "csverb", "cwh", "dict", "directory", "edcompatible", "encoding", "errorformat", "fcs", "fdo", "fic", "fixendofline", "foldclose", "foldmethod", "formatprg", "gfm", "grepprg", "guioptions", "hh", "hkmapp", "iconstring", "imcmdline", "imst", "indentexpr", "isf", "joinspaces", "kp", "lcs", "lm", "luadll", "makeprg", "maxmempattern", "mis", "mmt", "mouse", "mouset", "mzschemegcdll", "oft", "packpath", "pdev", "pi", "previewpopup", "printmbfont", "pvw", "qe", "remap", "rl", "rubydll", "sc", "scrolljump", "sel", "shell", "shelltype", "shortname", "shq", "slm", "sn", "spellcapcheck", "splitright", "ssop", "stmp", "swapfile", "sxq", "tabstop", "tags", "tbs", "termguicolors", "textmode", "tildeop", "tl", "tr", "tty", "tw", "udf", "updatecount", "vbs", "viewdir", "vop", "wc", "wh", "wildignore", "wincolor", "winptydll", "wmw", "writebackup", "aleph", "arab", "autowrite", "backupdir", "bdlay", "bin", "breakindent", "bsk", "ccv", "ci", "cinwords", "cocu", "complete", "copyindent", "cryptmethod", "csl", "cuc", "debug", "dictionary", "display", "ef", "endofline", "esckeys", "fdc", "fdt", "fileencoding", "fixeol", "foldcolumn", "foldminlines", "fp", "gfn", "gtl", "guipty", "hi", "hkp", "ignorecase", "imd", "imstatusfunc", "indentkeys", "isfname", "js", "langmap", "linebreak", "lmap", "lw", "mat", "maxmemtot", "mkspellmem", "mod", "mousef", "mousetime", "nf", "ofu", "para", "penc", "pm", "previewwindow", "printoptions", "pw", "quoteescape", "renderoptions", "rlc", "ruf", "scb", "scrolloff", "selection", "shellcmdflag", "shellxescape", "showbreak", "si", "sm", "so", "spellfile", "spr", "st", "sts", "swapsync", "syn", "tag", "tagstack", "tc", "termwinkey", "textwidth", "timeout", "tm", "ts", "ttybuiltin", "twk", "udir", "updatetime", "vdir", "viewoptions", "vsts", "wcm", "whichwrap", "wildignorecase", "window", "winwidth", "wop", "writedelay", "allowrevins", "arabic", "autowriteall", "backupext", "belloff", "binary", "breakindentopt", "bt", "cd", "cin", "clipboard", "cole", "completefunc", "cot", "cscopepathcomp", "cspc", "cul", "deco", "diff", "dy", "efm", "eol", "et", "fde", "fen", "fileencodings", "fk", "foldenable", "foldnestmax", "fs", "gfs", "gtt", "guitablabel", "hid", "hl", "im", "imdisable", "imstyle", "indk", "isi", "key", "langmenu", "lines", "lnr", "lz", "matchpairs", "mco", "ml", "modeline", "mousefocus", "mp", "nrformats", "omnifunc", "paragraphs", "perldll", "pmbcs", "printdevice", "prompt", "pythondll", "rdt", "report", "rnu", "ruler", "scf", "scrollopt", "selectmode", "shellpipe", "shellxquote", "showcmd", "sidescroll", "smartcase", "softtabstop", "spelllang", "sps", "sta", "su", "swb", "synmaxcol", "tagbsearch", "tal", "tcldll", "termwinscroll", "tf", "timeoutlen", "to", "tsl", "ttyfast", "tws", "ul", "ur", "ve", "vif", "vts", "wcr", "wi", "wildmenu", "winfixheight", "wiv", "wrap", "ws", "altkeymap", "arabicshape", "aw", "backupskip", "beval", "bk", "bri", "bufhidden", "cdpath", "cindent", "cm", "colorcolumn", "completeopt", "cp", "cscopeprg", "csprg", "culopt", "def", "diffexpr", "ea", "ei", "ep", "eventignore", "fdi", "fenc", "fileformat", "fkmap", "foldexpr", "foldopen", "fsync", "gfw", "guicursor", "guitabtooltip", "hidden", "hlg", "imactivatefunc", "imi", "inc", "inex", "isident", "keymap", "langnoremap", "linespace", "loadplugins", "ma", "matchtime", "mef", "mle", "modelineexpr", "mousehide", "mps", "nu", "opendevice", "paste", "pex", "pmbfn", "printencoding", "pt", "pythonhome", "re", "restorescreen", "ro", "rulerformat", "scl", "scs", "sessionoptions", "shellquote", "shiftround", "showfulltag", "sidescrolloff", "smartindent", "sol", "spellsuggest", "sr", "stal", "sua", "swf", "syntax", "tagcase", "tb", "tenc", "termwinsize", "tfu", "title", "toolbar", "tsr", "ttym", "twsl", "undodir", "ut", "verbose", "viminfo", "wa", "wd", "wic", "wildmode", "winfixwidth", "wiw", "wrapmargin", "ww", "ambiwidth", "ari", "awa", "balloondelay", "bevalterm", "bkc", "briopt", "buflisted", "cedit", "cink", "cmdheight", "columns", "completepopup", "cpo", "cscopequickfix", "csqf", "cursorbind", "define", "diffopt", "ead", "ek", "equalalways", "ex", "fdl", "fencs", "fileformats", "flp", "foldignore", "foldtext", "ft", "ghr", "guifont", "helpfile", "highlight", "hls", "imactivatekey", "iminsert", "include", "inf", "isk", "keymodel", "langremap", "lisp", "lpl", "macatsui", "maxcombine", "menc", "mls", "modelines", "mousem", "msm", "number", "operatorfunc", "pastetoggle", "pexpr", "popt", "printexpr", "pumheight", "pythonthreedll", "readonly", "revins", "rop", "runtimepath", "scr", "noacd", "noallowrevins", "noantialias", "noarabic", "noarshape", "noautoread", "noaw", "noballooneval", "nobevalterm", "nobk", "nobreakindent", "nocf", "nocindent", "nocopyindent", "nocscoperelative", "nocsre", "nocuc", "nocursorcolumn", "nodelcombine", "nodigraph", "noed", "noemo", "noeol", "noesckeys", "noexpandtab", "nofic", "nofixeol", "nofoldenable", "nogd", "nohid", "nohkmap", "nohls", "noicon", "noimc", "noimdisable", "noinfercase", "nojoinspaces", "nolangremap", "nolinebreak", "nolnr", "nolrm", "nomacatsui", "noml", "nomod", "nomodelineexpr", "nomodified", "nomousef", "nomousehide", "nonumber", "noopendevice", "nopi", "nopreviewwindow", "nopvw", "norelativenumber", "norestorescreen", "nori", "norl", "noro", "noru", "nosb", "noscb", "noscrollbind", "noscs", "nosft", "noshelltemp", "noshortname", "noshowfulltag", "noshowmode", "nosm", "nosmartindent", "nosmd", "nosol", "nosplitbelow", "nospr", "nossl", "nostartofline", "noswapfile", "nota", "notagrelative", "notbi", "notbs", "noterse", "notextmode", "notgst", "notimeout", "noto", "notr", "nottybuiltin", "notx", "noundofile", "novisualbell", "nowarn", "noweirdinvert", "nowfw", "nowildignorecase", "nowinfixheight", "nowiv", "nowrap", "nowrite", "nowritebackup", "noai", "noaltkeymap", "noar", "noarabicshape", "noautochdir", "noautowrite", "noawa", "noballoonevalterm", "nobin", "nobl", "nobri", "noci", "nocompatible", "nocp", "nocscopetag", "nocst", "nocul", "nocursorline", "nodg", "noea", "noedcompatible", "noemoji", "noequalalways", "noet", "noexrc", "nofileignorecase", "nofk", "nofs", "nogdefault", "nohidden", "nohkmapp", "nohlsearch", "noignorecase", "noimcmdline", "noincsearch", "noinsertmode", "nojs", "nolazyredraw", "nolisp", "noloadplugins", "nolz", "nomagic", "nomle", "nomodeline", "nomodifiable", "nomore", "nomousefocus", "nonu", "noodev", "nopaste", "nopreserveindent", "noprompt", "noreadonly", "noremap", "norevins", "norightleft", "nornu", "nors", "noruler", "nosc", "noscf", "noscrollfocus", "nosecure", "noshellslash", "noshiftround", "noshowcmd", "noshowmatch", "nosi", "nosmartcase", "nosmarttab", "nosn", "nospell", "nosplitright", "nosr", "nosta", "nostmp", "noswf", "notagbsearch", "notagstack", "notbidi", "notermbidi", "notextauto", "notf", "notildeop", "notitle", "notop", "nottimeout", "nottyfast", "noudf", "novb", "nowa", "nowb", "nowfh", "nowic", "nowildmenu", "nowinfixwidth", "nowmnu", "nowrapscan", "nowriteany", "nows", "noakm", "noanti", "noarab", "noari", "noautoindent", "noautowriteall", "nobackup", "nobeval", "nobinary", "nobomb", "nobuflisted", "nocin", "noconfirm", "nocrb", "nocscopeverbose", "nocsverb", "nocursorbind", "nodeco", "nodiff", "noeb", "noek", "noendofline", "noerrorbells", "noex", "nofen", "nofixendofline", "nofkmap", "nofsync", "noguipty", "nohk", "nohkp", "noic", "noim", "noimd", "noinf", "nois", "nolangnoremap", "nolbr", "nolist", "nolpl", "noma", "nomh", "invacd", "invallowrevins", "invantialias", "invarabic", "invarshape", "invautoread", "invaw", "invballooneval", "invbevalterm", "invbk", "invbreakindent", "invcf", "invcindent", "invcopyindent", "invcscoperelative", "invcsre", "invcuc", "invcursorcolumn", "invdelcombine", "invdigraph", "inved", "invemo", "inveol", "invesckeys", "invexpandtab", "invfic", "invfixeol", "invfoldenable", "invgd", "invhid", "invhkmap", "invhls", "invicon", "invimc", "invimdisable", "invinfercase", "invjoinspaces", "invlangremap", "invlinebreak", "invlnr", "invlrm", "invmacatsui", "invml", "invmod", "invmodelineexpr", "invmodified", "invmousef", "invmousehide", "invnumber", "invopendevice", "invpi", "invpreviewwindow", "invpvw", "invrelativenumber", "invrestorescreen", "invri", "invrl", "invro", "invru", "invsb", "invscb", "invscrollbind", "invscs", "invsft", "invshelltemp", "invshortname", "invshowfulltag", "invshowmode", "invsm", "invsmartindent", "invsmd", "invsol", "invsplitbelow", "invspr", "invssl", "invstartofline", "invswapfile", "invta", "invtagrelative", "invtbi", "invtbs", "invterse", "invtextmode", "invtgst", "invtimeout", "invto", "invtr", "invttybuiltin", "invtx", "invundofile", "invvisualbell", "invwarn", "invweirdinvert", "invwfw", "invwildignorecase", "invwinfixheight", "invwiv", "invwrap", "invwrite", "invwritebackup", "invai", "invaltkeymap", "invar", "invarabicshape", "invautochdir", "invautowrite", "invawa", "invballoonevalterm", "invbin", "invbl", "invbri", "invci", "invcompatible", "invcp", "invcscopetag", "invcst", "invcul", "invcursorline", "invdg", "invea", "invedcompatible", "invemoji", "invequalalways", "invet", "invexrc", "invfileignorecase", "invfk", "invfs", "invgdefault", "invhidden", "invhkmapp", "invhlsearch", "invignorecase", "invimcmdline", "invincsearch", "invinsertmode", "invjs", "invlazyredraw", "invlisp", "invloadplugins", "invlz", "invmagic", "invmle", "invmodeline", "invmodifiable", "invmore", "invmousefocus", "invnu", "invodev", "invpaste", "invpreserveindent", "invprompt", "invreadonly", "invremap", "invrevins", "invrightleft", "invrnu", "invrs", "invruler", "invsc", "invscf", "invscrollfocus", "invsecure", "invshellslash", "invshiftround", "invshowcmd", "invshowmatch", "invsi", "invsmartcase", "invsmarttab", "invsn", "invspell", "invsplitright", "invsr", "invsta", "invstmp", "invswf", "invtagbsearch", "invtagstack", "invtbidi", "invtermbidi", "invtextauto", "invtf", "invtildeop", "invtitle", "invtop", "invttimeout", "invttyfast", "invudf", "invvb", "invwa", "invwb", "invwfh", "invwic", "invwildmenu", "invwinfixwidth", "invwmnu", "invwrapscan", "invwriteany", "invws", "invakm", "invanti", "invarab", "invari", "invautoindent", "invautowriteall", "invbackup", "invbeval", "invbinary", "invbomb", "invbuflisted", "invcin", "invconfirm", "invcrb", "invcscopeverbose", "invcsverb", "invcursorbind", "invdeco", "invdiff", "inveb", "invek", "invendofline", "inverrorbells", "invex", "invfen", "invfixendofline", "invfkmap", "invfsync", "invguipty", "invhk", "invhkp", "invic", "invim", "invimd", "invinf", "invis", "invlangnoremap", "invlbr", "invlist", "invlpl", "invma", "invmh", "t_8b", "t_AB", "t_al", "t_bc", "t_BE", "t_ce", "t_cl", "t_Co", "t_Cs", "t_CV", "t_db", "t_DL", "t_EI", "t_F2", "t_F4", "t_F6", "t_F8", "t_fs", "t_IE", "t_k1", "t_k2", "t_K3", "t_K4", "t_K5", "t_K6", "t_K7", "t_K8", "t_K9", "t_kb", "t_KB", "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_RI", "t_RS", "t_RT", "t_RV", "t_Sb", "t_SC", "t_se", "t_Sf", "t_SH", "t_Si", "t_SI", "t_so", "t_sr", "t_SR", "t_ST", "t_te", "t_Te", "t_TE", "t_ti", "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", "t_8f", "t_AF", "t_AL", "t_BD", "t_cd", "t_Ce", "t_cm", "t_cs", "t_CS", "t_da", "t_dl", "t_EC", "t_F1", "t_F3", "t_F5", "t_F7", "t_F9", "t_GP", "t_IS", "t_K1", "t_k3", "t_k4", "t_k5", "t_k6", "t_k7", "t_k8", "t_k9", "t_KA", "t_kB", "t_KC", "t_kD"]
|
15
|
+
kw[:auto] = Set.new ["BufAdd", "BufDelete", "BufFilePost", "BufHidden", "BufNew", "BufRead", "BufReadPost", "BufUnload", "BufWinEnter", "BufWinLeave", "BufWipeout", "BufWrite", "BufWriteCmd", "BufWritePost", "BufWritePre", "CmdlineChanged", "CmdlineEnter", "CmdlineLeave", "CmdUndefined", "CmdwinEnter", "CmdwinLeave", "ColorScheme", "ColorSchemePre", "CompleteChanged", "CompleteDone", "CompleteDonePre", "CursorHold", "CursorHoldI", "CursorMoved", "CursorMovedI", "DiffUpdated", "DirChanged", "EncodingChanged", "ExitPre", "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", "SafeState", "SafeStateAgain", "SessionLoadPost", "ShellCmdPost", "ShellFilterPost", "SourceCmd", "SourcePost", "SourcePre", "SpellFileMissing", "StdinReadPost", "StdinReadPre", "SwapExists", "Syntax", "TabClosed", "TabEnter", "TabLeave", "TabNew", "TermChanged", "TerminalOpen", "TerminalWinOpen", "TermResponse", "TextChanged", "TextChangedI", "TextChangedP", "TextYankPost", "User", "VimEnter", "VimLeave", "VimLeavePre", "VimResized", "WinEnter", "WinLeave", "WinNew", "BufCreate", "BufEnter", "BufFilePre", "BufLeave", "BufNewFile", "BufReadCmd", "BufReadPre"]
|
16
|
+
kw[:function] = Set.new ["abs", "appendbufline", "asin", "assert_fails", "assert_notmatch", "balloon_gettext", "bufadd", "bufname", "byteidx", "char2nr", "ch_evalexpr", "ch_log", "ch_readraw", "cindent", "complete_check", "cosh", "deepcopy", "diff_hlID", "eval", "exists", "feedkeys", "findfile", "fnamemodify", "foldtextresult", "get", "getchar", "getcmdtype", "getenv", "getftype", "getmatches", "getreg", "gettagstack", "getwinvar", "has_key", "histget", "iconv", "inputlist", "interrupt", "isnan", "job_start", "js_encode", "libcall", "list2str", "log", "mapcheck", "matchdelete", "max", "nextnonblank", "popup_atcursor", "popup_dialog", "popup_getoptions", "popup_notification", "prevnonblank", "prop_add", "prop_type_add", "pum_getpos", "rand", "reg_recording", "remote_foreground", "remove", "round", "screencol", "searchdecl", "serverlist", "setenv", "setpos", "settagstack", "sign_define", "sign_placelist", "sin", "sound_playevent", "split", "str2list", "strftime", "strpart", "submatch", "synID", "systemlist", "taglist", "term_dumpload", "term_getcursor", "term_getstatus", "term_sendkeys", "term_setsize", "test_autochdir", "test_getvalue", "test_null_dict", "test_null_string", "test_scrollbar", "test_unknown", "timer_start", "toupper", "type", "values", "winbufnr", "win_findbuf", "winheight", "winline", "winsaveview", "winwidth", "acos", "argc", "assert_beeps", "assert_false", "assert_report", "balloon_show", "bufexists", "bufnr", "byteidxcomp", "ch_canread", "ch_evalraw", "ch_logfile", "ch_sendexpr", "clearmatches", "complete_info", "count", "delete", "echoraw", "eventhandler", "exp", "filereadable", "float2nr", "foldclosed", "foreground", "getbufinfo", "getcharmod", "getcmdwintype", "getfontname", "getimstatus", "getmousepos", "getregtype", "getwininfo", "glob", "haslocaldir", "histnr", "indent", "inputrestore", "invert", "items", "job_status", "json_decode", "libcallnr", "listener_add", "log10", "match", "matchend", "min", "nr2char", "popup_beval", "popup_filter_menu", "popup_getpos", "popup_setoptions", "printf", "prop_clear", "prop_type_change", "pumvisible", "range", "reltime", "remote_peek", "rename", "rubyeval", "screenpos", "searchpair", "setbufline", "setfperm", "setqflist", "setwinvar", "sign_getdefined", "sign_undefine", "sinh", "sound_playfile", "sqrt", "str2nr", "strgetchar", "strptime", "substitute", "synIDattr", "tabpagebuflist", "tan", "term_dumpwrite", "term_getjob", "term_gettitle", "term_setansicolors", "term_start", "test_feedinput", "test_ignore_error", "test_null_job", "test_option_not_set", "test_setmouse", "test_void", "timer_stop", "tr", "undofile", "virtcol", "wincol", "win_getid", "win_id2tabwin", "winnr", "win_screenpos", "wordcount", "add", "argidx", "assert_equal", "assert_inrange", "assert_true", "balloon_split", "buflisted", "bufwinid", "call", "ch_close", "ch_getbufnr", "ch_open", "ch_sendraw", "col", "confirm", "cscope_connection", "deletebufline", "empty", "executable", "expand", "filewritable", "floor", "foldclosedend", "funcref", "getbufline", "getcharsearch", "getcompletion", "getfperm", "getjumplist", "getpid", "gettabinfo", "getwinpos", "glob2regpat", "hasmapto", "hlexists", "index", "inputsave", "isdirectory", "job_getchannel", "job_stop", "json_encode", "line", "listener_flush", "luaeval", "matchadd", "matchlist", "mkdir", "or", "popup_clear", "popup_filter_yesno", "popup_hide", "popup_settext", "prompt_setcallback", "prop_find", "prop_type_delete", "py3eval", "readdir", "reltimefloat", "remote_read", "repeat", "screenattr", "screenrow", "searchpairpos", "setbufvar", "setline", "setreg", "sha256", "sign_getplaced", "sign_unplace", "sort", "sound_stop", "srand", "strcharpart", "stridx", "strridx", "swapinfo", "synIDtrans", "tabpagenr", "tanh", "term_getaltscreen", "term_getline", "term_gettty", "term_setapi", "term_wait", "test_garbagecollect_now", "test_null_blob", "test_null_list", "test_override", "test_settime", "timer_info", "timer_stopall", "trim", "undotree", "visualmode", "windowsversion", "win_gettype", "win_id2win", "winrestcmd", "win_splitmove", "writefile", "and", "arglistid", "assert_equalfile", "assert_match", "atan", "browse", "bufload", "bufwinnr", "ceil", "ch_close_in", "ch_getjob", "ch_read", "ch_setoptions", "complete", "copy", "cursor", "did_filetype", "environ", "execute", "expandcmd", "filter", "fmod", "foldlevel", "function", "getbufvar", "getcmdline", "getcurpos", "getfsize", "getline", "getpos", "gettabvar", "getwinposx", "globpath", "histadd", "hlID", "input", "inputsecret", "isinf", "job_info", "join", "keys", "line2byte", "listener_remove", "map", "matchaddpos", "matchstr", "mode", "pathshorten", "popup_close", "popup_findinfo", "popup_menu", "popup_show", "prompt_setinterrupt", "prop_list", "prop_type_get", "pyeval", "readfile", "reltimestr", "remote_send", "resolve", "screenchar", "screenstring", "searchpos", "setcharsearch", "setloclist", "settabvar", "shellescape", "sign_jump", "sign_unplacelist", "sound_clear", "spellbadword", "state", "strchars", "string", "strtrans", "swapname", "synstack", "tabpagewinnr", "tempname", "term_getansicolors", "term_getscrolled", "term_list", "term_setkill", "test_alloc_fail", "test_garbagecollect_soon", "test_null_channel", "test_null_partial", "test_refcount", "test_srand_seed", "timer_pause", "tolower", "trunc", "uniq", "wildmenumode", "win_execute", "win_gotoid", "winlayout", "winrestview", "win_type", "xor", "append", "argv", "assert_exception", "assert_notequal", "atan2", "browsedir", "bufloaded", "byte2line", "changenr", "chdir", "ch_info", "ch_readblob", "ch_status", "complete_add", "cos", "debugbreak", "diff_filler", "escape", "exepath", "extend", "finddir", "fnameescape", "foldtext", "garbagecollect", "getchangelist", "getcmdpos", "getcwd", "getftime", "getloclist", "getqflist", "gettabwinvar", "getwinposy", "has", "histdel", "hostname", "inputdialog", "insert", "islocked", "job_setoptions", "js_decode", "len", "lispindent", "localtime", "maparg", "matcharg", "matchstrpos", "mzeval", "perleval", "popup_create", "popup_findpreview", "popup_move", "pow", "prompt_setprompt", "prop_remove", "prop_type_list", "pyxeval", "reg_executing", "remote_expr", "remote_startserver", "reverse", "screenchars", "search", "server2client", "setcmdpos", "setmatches", "settabwinvar", "shiftwidth", "sign_place", "simplify", "soundfold", "spellsuggest", "str2float", "strdisplaywidth", "strlen", "strwidth", "synconcealed", "system", "tagfiles", "term_dumpdiff", "term_getattr", "term_getsize", "term_scrape", "term_setrestore"]
|
17
|
+
end
|
11
18
|
end
|
12
19
|
end
|
13
20
|
end
|
data/lib/rouge/lexers/vue.rb
CHANGED
@@ -58,6 +58,10 @@ module Rouge
|
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
61
|
+
prepend :tag do
|
62
|
+
rule %r/[a-zA-Z0-9_:#\[\]()*.-]+\s*=\s*/m, Name::Attribute, :attr
|
63
|
+
end
|
64
|
+
|
61
65
|
state :style do
|
62
66
|
rule %r/(<\s*\/\s*)(style)(\s*>)/ do
|
63
67
|
groups Name::Tag, Keyword, Name::Tag
|
@@ -121,4 +125,3 @@ module Rouge
|
|
121
125
|
end
|
122
126
|
end
|
123
127
|
end
|
124
|
-
|
@@ -0,0 +1,147 @@
|
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Rouge
|
5
|
+
module Lexers
|
6
|
+
class YANG < RegexLexer
|
7
|
+
title 'YANG'
|
8
|
+
desc "Lexer for the YANG 1.1 modeling language (RFC7950)"
|
9
|
+
tag 'yang'
|
10
|
+
filenames '*.yang'
|
11
|
+
mimetypes 'application/yang'
|
12
|
+
|
13
|
+
id = /[\w_-]+(?=[^\w\-\:])\b/
|
14
|
+
|
15
|
+
#Keywords from RFC7950 ; oriented at BNF style
|
16
|
+
def self.top_stmts_keywords
|
17
|
+
@top_stms_keywords ||= Set.new %w(
|
18
|
+
module submodule
|
19
|
+
)
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.module_header_stmts_keywords
|
23
|
+
@module_header_stmts_keywords ||= Set.new %w(
|
24
|
+
belongs-to namespace prefix yang-version
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.meta_stmts_keywords
|
29
|
+
@meta_stmts_keywords ||= Set.new %w(
|
30
|
+
contact description organization reference revision
|
31
|
+
)
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.linkage_stmts_keywords
|
35
|
+
@linkage_stmts_keywords ||= Set.new %w(
|
36
|
+
import include revision-date
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.body_stmts_keywords
|
41
|
+
@body_stms_keywords ||= Set.new %w(
|
42
|
+
action argument augment deviation extension feature grouping identity
|
43
|
+
if-feature input notification output rpc typedef
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.data_def_stmts_keywords
|
48
|
+
@data_def_stms_keywords ||= Set.new %w(
|
49
|
+
anydata anyxml case choice config container deviate leaf leaf-list
|
50
|
+
list must presence refine uses when
|
51
|
+
)
|
52
|
+
end
|
53
|
+
|
54
|
+
def self.type_stmts_keywords
|
55
|
+
@type_stmts_keywords ||= Set.new %w(
|
56
|
+
base bit default enum error-app-tag error-message fraction-digits
|
57
|
+
length max-elements min-elements modifier ordered-by path pattern
|
58
|
+
position range require-instance status type units value yin-element
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
def self.list_stmts_keywords
|
63
|
+
@list_stmts_keywords ||= Set.new %w(
|
64
|
+
key mandatory unique
|
65
|
+
)
|
66
|
+
end
|
67
|
+
|
68
|
+
#RFC7950 other keywords
|
69
|
+
def self.constants_keywords
|
70
|
+
@constants_keywords ||= Set.new %w(
|
71
|
+
add current delete deprecated false invert-match max min
|
72
|
+
not-supported obsolete replace true unbounded user
|
73
|
+
)
|
74
|
+
end
|
75
|
+
|
76
|
+
#RFC7950 Built-In Types
|
77
|
+
def self.types
|
78
|
+
@types ||= Set.new %w(
|
79
|
+
binary bits boolean decimal64 empty enumeration identityref
|
80
|
+
instance-identifier int16 int32 int64 int8 leafref string uint16
|
81
|
+
uint32 uint64 uint8 union
|
82
|
+
)
|
83
|
+
end
|
84
|
+
|
85
|
+
state :comment do
|
86
|
+
rule %r/[^*\/]/, Comment
|
87
|
+
rule %r/\/\*/, Comment, :comment
|
88
|
+
rule %r/\*\//, Comment, :pop!
|
89
|
+
rule %r/[*\/]/, Comment
|
90
|
+
end
|
91
|
+
|
92
|
+
#Keyword::Reserved
|
93
|
+
#groups Name::Tag, Text::Whitespace
|
94
|
+
state :root do
|
95
|
+
rule %r/\s+/, Text::Whitespace
|
96
|
+
rule %r/[\{\}\;]+/, Punctuation
|
97
|
+
rule %r/(?<![\-\w])(and|or|not|\+|\.)(?![\-\w])/, Operator
|
98
|
+
|
99
|
+
rule %r/"(?:\\"|[^"])*?"/, Str::Double #for double quotes
|
100
|
+
rule %r/'(?:\\'|[^'])*?'/, Str::Single #for single quotes
|
101
|
+
|
102
|
+
rule %r/\/\*/, Comment, :comment
|
103
|
+
rule %r/\/\/.*?$/, Comment
|
104
|
+
|
105
|
+
#match BNF stmt for `node-identifier` with [ prefix ":"]
|
106
|
+
rule %r/(?:^|(?<=[\s{};]))([\w.-]+)(:)([\w.-]+)(?=[\s{};])/ do
|
107
|
+
groups Name::Namespace, Punctuation, Name
|
108
|
+
end
|
109
|
+
|
110
|
+
#match BNF stmt `date-arg-str`
|
111
|
+
rule %r/([0-9]{4}\-[0-9]{2}\-[0-9]{2})(?=[\s\{\}\;])/, Name::Label
|
112
|
+
rule %r/([0-9]+\.[0-9]+)(?=[\s\{\}\;])/, Num::Float
|
113
|
+
rule %r/([0-9]+)(?=[\s\{\}\;])/, Num::Integer
|
114
|
+
|
115
|
+
rule id do |m|
|
116
|
+
name = m[0].downcase
|
117
|
+
|
118
|
+
if self.class.top_stmts_keywords.include? name
|
119
|
+
token Keyword::Declaration
|
120
|
+
elsif self.class.module_header_stmts_keywords.include? name
|
121
|
+
token Keyword::Declaration
|
122
|
+
elsif self.class.meta_stmts_keywords.include? name
|
123
|
+
token Keyword::Declaration
|
124
|
+
elsif self.class.linkage_stmts_keywords.include? name
|
125
|
+
token Keyword::Declaration
|
126
|
+
elsif self.class.body_stmts_keywords.include? name
|
127
|
+
token Keyword::Declaration
|
128
|
+
elsif self.class.data_def_stmts_keywords.include? name
|
129
|
+
token Keyword::Declaration
|
130
|
+
elsif self.class.type_stmts_keywords.include? name
|
131
|
+
token Keyword::Declaration
|
132
|
+
elsif self.class.list_stmts_keywords.include? name
|
133
|
+
token Keyword::Declaration
|
134
|
+
elsif self.class.types.include? name
|
135
|
+
token Keyword::Type
|
136
|
+
elsif self.class.constants_keywords.include? name
|
137
|
+
token Name::Constant
|
138
|
+
else
|
139
|
+
token Name
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
rule %r/[^;{}\s'"]+/, Name
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
147
|
+
end
|
@@ -0,0 +1,139 @@
|
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Rouge
|
5
|
+
module Lexers
|
6
|
+
class Zig < RegexLexer
|
7
|
+
tag 'zig'
|
8
|
+
aliases 'zir'
|
9
|
+
filenames '*.zig'
|
10
|
+
mimetypes 'text/x-zig'
|
11
|
+
|
12
|
+
title 'Zig'
|
13
|
+
desc 'The Zig programming language (ziglang.org)'
|
14
|
+
|
15
|
+
def self.keywords
|
16
|
+
@keywords ||= %w(
|
17
|
+
align linksection threadlocal struct enum union error break return
|
18
|
+
anyframe fn c_longlong c_ulonglong c_longdouble c_void comptime_float
|
19
|
+
c_short c_ushort c_int c_uint c_long c_ulong continue asm defer
|
20
|
+
errdefer const var extern packed export pub if else switch and or
|
21
|
+
orelse while for bool unreachable try catch async suspend nosuspend
|
22
|
+
await resume undefined usingnamespace test void noreturn type
|
23
|
+
anyerror usize noalias inline noinline comptime callconv volatile
|
24
|
+
allowzero
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.builtins
|
29
|
+
@builtins ||= %w(
|
30
|
+
@addWithOverflow @as @atomicLoad @atomicStore @bitCast @breakpoint
|
31
|
+
@alignCast @alignOf @cDefine @cImport @cInclude @bitOffsetOf
|
32
|
+
@atomicRmw @bytesToSlice @byteOffsetOf @OpaqueType @panic @ptrCast
|
33
|
+
@bitReverse @Vector @sin @cUndef @canImplicitCast @clz @cmpxchgWeak
|
34
|
+
@cmpxchgStrong @compileError @compileLog @ctz @popCount @divExact
|
35
|
+
@divFloor @cos @divTrunc @embedFile @export @tagName @TagType
|
36
|
+
@errorName @call @errorReturnTrace @fence @fieldParentPtr @field
|
37
|
+
@unionInit @errorToInt @intToEnum @enumToInt @setAlignStack @frame
|
38
|
+
@Frame @exp @exp2 @log @log2 @log10 @fabs @floor @ceil @trunc @round
|
39
|
+
@floatCast @intToFloat @floatToInt @boolToInt @errSetCast @intToError
|
40
|
+
@frameAddress @import @newStackCall @asyncCall @intToPtr @intCast
|
41
|
+
@frameSize @memcpy @memset @mod @mulWithOverflow @splat @ptrToInt
|
42
|
+
@rem @returnAddress @setCold @Type @shuffle @setGlobalLinkage
|
43
|
+
@setGlobalSection @shlExact @This @hasDecl @hasField
|
44
|
+
@setRuntimeSafety @setEvalBranchQuota @setFloatMode @shlWithOverflow
|
45
|
+
@shrExact @sizeOf @bitSizeOf @sqrt @byteSwap @subWithOverflow
|
46
|
+
@sliceToBytes comptime_int @truncate @typeInfo @typeName @TypeOf
|
47
|
+
)
|
48
|
+
end
|
49
|
+
|
50
|
+
id = /[a-z_]\w*/i
|
51
|
+
escapes = /\\ ([nrt'"\\0] | x\h{2} | u\h{4} | U\h{8})/x
|
52
|
+
|
53
|
+
state :bol do
|
54
|
+
mixin :whitespace
|
55
|
+
rule %r/#\s[^\n]*/, Comment::Special
|
56
|
+
rule(//) { pop! }
|
57
|
+
end
|
58
|
+
|
59
|
+
state :attribute do
|
60
|
+
mixin :whitespace
|
61
|
+
mixin :literals
|
62
|
+
rule %r/[(,)=:]/, Name::Decorator
|
63
|
+
rule %r/\]/, Name::Decorator, :pop!
|
64
|
+
rule id, Name::Decorator
|
65
|
+
end
|
66
|
+
|
67
|
+
state :whitespace do
|
68
|
+
rule %r/\s+/, Text
|
69
|
+
rule %r(//[^\n]*), Comment
|
70
|
+
end
|
71
|
+
|
72
|
+
state :root do
|
73
|
+
rule %r/\n/, Text, :bol
|
74
|
+
|
75
|
+
mixin :whitespace
|
76
|
+
|
77
|
+
rule %r/\b(?:(i|u)[0-9]+)\b/, Keyword::Type
|
78
|
+
rule %r/\b(?:f(16|32|64|128))\b/, Keyword::Type
|
79
|
+
rule %r/\b(?:(isize|usize))\b/, Keyword::Type
|
80
|
+
|
81
|
+
mixin :literals
|
82
|
+
|
83
|
+
rule %r/'#{id}/, Name::Variable
|
84
|
+
rule %r/([.]?)(\s*)(@?#{id})(\s*)([(]?)/ do |m|
|
85
|
+
name = m[3]
|
86
|
+
t = if self.class.keywords.include? name
|
87
|
+
Keyword
|
88
|
+
elsif self.class.builtins.include? name
|
89
|
+
Name::Builtin
|
90
|
+
elsif !m[1].empty? && !m[5].empty?
|
91
|
+
Name::Function
|
92
|
+
elsif !m[1].empty?
|
93
|
+
Name::Property
|
94
|
+
else
|
95
|
+
Name
|
96
|
+
end
|
97
|
+
|
98
|
+
groups Punctuation, Text, t, Text, Punctuation
|
99
|
+
end
|
100
|
+
|
101
|
+
rule %r/[()\[\]{}|,:;]/, Punctuation
|
102
|
+
rule %r/[*\/!@~&+%^<>=\?-]|\.{1,3}/, Operator
|
103
|
+
end
|
104
|
+
|
105
|
+
state :literals do
|
106
|
+
rule %r/\b(?:true|false|null)\b/, Keyword::Constant
|
107
|
+
rule %r(
|
108
|
+
' (?: #{escapes} | [^\\] ) '
|
109
|
+
)x, Str::Char
|
110
|
+
|
111
|
+
rule %r/"/, Str, :string
|
112
|
+
rule %r/r(#*)".*?"\1/m, Str
|
113
|
+
|
114
|
+
dot = /[.][0-9_]+/
|
115
|
+
exp = /e[-+]?[0-9_]+/
|
116
|
+
|
117
|
+
rule %r(
|
118
|
+
[0-9]+
|
119
|
+
(#{dot} #{exp}?
|
120
|
+
|#{dot}? #{exp}
|
121
|
+
)
|
122
|
+
)x, Num::Float
|
123
|
+
|
124
|
+
rule %r(
|
125
|
+
( 0b[10_]+
|
126
|
+
| 0x[0-9a-fA-F_]+
|
127
|
+
| [0-9_]+
|
128
|
+
)
|
129
|
+
)x, Num::Integer
|
130
|
+
end
|
131
|
+
|
132
|
+
state :string do
|
133
|
+
rule %r/"/, Str, :pop!
|
134
|
+
rule escapes, Str::Escape
|
135
|
+
rule %r/[^"\\]+/m, Str
|
136
|
+
end
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
data/lib/rouge/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rouge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.20.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeanine Adkisson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Rouge aims to a be a simple, easy-to-extend drop-in replacement for pygments.
|
14
14
|
email:
|
@@ -31,9 +31,11 @@ files:
|
|
31
31
|
- lib/rouge/demos/apiblueprint
|
32
32
|
- lib/rouge/demos/applescript
|
33
33
|
- lib/rouge/demos/armasm
|
34
|
+
- lib/rouge/demos/augeas
|
34
35
|
- lib/rouge/demos/awk
|
35
36
|
- lib/rouge/demos/batchfile
|
36
37
|
- lib/rouge/demos/bbcbasic
|
38
|
+
- lib/rouge/demos/bibtex
|
37
39
|
- lib/rouge/demos/biml
|
38
40
|
- lib/rouge/demos/bpf
|
39
41
|
- lib/rouge/demos/brainfuck
|
@@ -56,13 +58,16 @@ files:
|
|
56
58
|
- lib/rouge/demos/css
|
57
59
|
- lib/rouge/demos/csvs
|
58
60
|
- lib/rouge/demos/cuda
|
61
|
+
- lib/rouge/demos/cypher
|
59
62
|
- lib/rouge/demos/cython
|
60
63
|
- lib/rouge/demos/d
|
61
64
|
- lib/rouge/demos/dart
|
65
|
+
- lib/rouge/demos/datastudio
|
62
66
|
- lib/rouge/demos/diff
|
63
67
|
- lib/rouge/demos/digdag
|
64
68
|
- lib/rouge/demos/docker
|
65
69
|
- lib/rouge/demos/dot
|
70
|
+
- lib/rouge/demos/ecl
|
66
71
|
- lib/rouge/demos/eex
|
67
72
|
- lib/rouge/demos/eiffel
|
68
73
|
- lib/rouge/demos/elixir
|
@@ -76,6 +81,7 @@ files:
|
|
76
81
|
- lib/rouge/demos/freefem
|
77
82
|
- lib/rouge/demos/fsharp
|
78
83
|
- lib/rouge/demos/gdscript
|
84
|
+
- lib/rouge/demos/ghc-cmm
|
79
85
|
- lib/rouge/demos/ghc-core
|
80
86
|
- lib/rouge/demos/gherkin
|
81
87
|
- lib/rouge/demos/glsl
|
@@ -89,6 +95,7 @@ files:
|
|
89
95
|
- lib/rouge/demos/haskell
|
90
96
|
- lib/rouge/demos/haxe
|
91
97
|
- lib/rouge/demos/hcl
|
98
|
+
- lib/rouge/demos/hlsl
|
92
99
|
- lib/rouge/demos/hocon
|
93
100
|
- lib/rouge/demos/hql
|
94
101
|
- lib/rouge/demos/html
|
@@ -100,6 +107,7 @@ files:
|
|
100
107
|
- lib/rouge/demos/io
|
101
108
|
- lib/rouge/demos/irb
|
102
109
|
- lib/rouge/demos/irb_output
|
110
|
+
- lib/rouge/demos/isbl
|
103
111
|
- lib/rouge/demos/java
|
104
112
|
- lib/rouge/demos/javascript
|
105
113
|
- lib/rouge/demos/jinja
|
@@ -115,6 +123,7 @@ files:
|
|
115
123
|
- lib/rouge/demos/liquid
|
116
124
|
- lib/rouge/demos/literate_coffeescript
|
117
125
|
- lib/rouge/demos/literate_haskell
|
126
|
+
- lib/rouge/demos/livescript
|
118
127
|
- lib/rouge/demos/llvm
|
119
128
|
- lib/rouge/demos/lua
|
120
129
|
- lib/rouge/demos/lustre
|
@@ -160,6 +169,7 @@ files:
|
|
160
169
|
- lib/rouge/demos/r
|
161
170
|
- lib/rouge/demos/racket
|
162
171
|
- lib/rouge/demos/reasonml
|
172
|
+
- lib/rouge/demos/rego
|
163
173
|
- lib/rouge/demos/robot_framework
|
164
174
|
- lib/rouge/demos/ruby
|
165
175
|
- lib/rouge/demos/rust
|
@@ -176,6 +186,7 @@ files:
|
|
176
186
|
- lib/rouge/demos/smalltalk
|
177
187
|
- lib/rouge/demos/smarty
|
178
188
|
- lib/rouge/demos/sml
|
189
|
+
- lib/rouge/demos/solidity
|
179
190
|
- lib/rouge/demos/sparql
|
180
191
|
- lib/rouge/demos/sqf
|
181
192
|
- lib/rouge/demos/sql
|
@@ -194,6 +205,8 @@ files:
|
|
194
205
|
- lib/rouge/demos/typescript
|
195
206
|
- lib/rouge/demos/vala
|
196
207
|
- lib/rouge/demos/vb
|
208
|
+
- lib/rouge/demos/vcl
|
209
|
+
- lib/rouge/demos/velocity
|
197
210
|
- lib/rouge/demos/verilog
|
198
211
|
- lib/rouge/demos/vhdl
|
199
212
|
- lib/rouge/demos/viml
|
@@ -204,6 +217,8 @@ files:
|
|
204
217
|
- lib/rouge/demos/xpath
|
205
218
|
- lib/rouge/demos/xquery
|
206
219
|
- lib/rouge/demos/yaml
|
220
|
+
- lib/rouge/demos/yang
|
221
|
+
- lib/rouge/demos/zig
|
207
222
|
- lib/rouge/formatter.rb
|
208
223
|
- lib/rouge/formatters/html.rb
|
209
224
|
- lib/rouge/formatters/html_inline.rb
|
@@ -214,6 +229,7 @@ files:
|
|
214
229
|
- lib/rouge/formatters/html_table.rb
|
215
230
|
- lib/rouge/formatters/null.rb
|
216
231
|
- lib/rouge/formatters/terminal256.rb
|
232
|
+
- lib/rouge/formatters/terminal_truecolor.rb
|
217
233
|
- lib/rouge/formatters/tex.rb
|
218
234
|
- lib/rouge/guesser.rb
|
219
235
|
- lib/rouge/guessers/disambiguation.rb
|
@@ -228,14 +244,16 @@ files:
|
|
228
244
|
- lib/rouge/lexers/actionscript.rb
|
229
245
|
- lib/rouge/lexers/ada.rb
|
230
246
|
- lib/rouge/lexers/apache.rb
|
231
|
-
- lib/rouge/lexers/apache/keywords.
|
247
|
+
- lib/rouge/lexers/apache/keywords.rb
|
232
248
|
- lib/rouge/lexers/apex.rb
|
233
249
|
- lib/rouge/lexers/apiblueprint.rb
|
234
250
|
- lib/rouge/lexers/apple_script.rb
|
235
251
|
- lib/rouge/lexers/armasm.rb
|
252
|
+
- lib/rouge/lexers/augeas.rb
|
236
253
|
- lib/rouge/lexers/awk.rb
|
237
254
|
- lib/rouge/lexers/batchfile.rb
|
238
255
|
- lib/rouge/lexers/bbcbasic.rb
|
256
|
+
- lib/rouge/lexers/bibtex.rb
|
239
257
|
- lib/rouge/lexers/biml.rb
|
240
258
|
- lib/rouge/lexers/bpf.rb
|
241
259
|
- lib/rouge/lexers/brainfuck.rb
|
@@ -258,13 +276,16 @@ files:
|
|
258
276
|
- lib/rouge/lexers/css.rb
|
259
277
|
- lib/rouge/lexers/csvs.rb
|
260
278
|
- lib/rouge/lexers/cuda.rb
|
279
|
+
- lib/rouge/lexers/cypher.rb
|
261
280
|
- lib/rouge/lexers/cython.rb
|
262
281
|
- lib/rouge/lexers/d.rb
|
263
282
|
- lib/rouge/lexers/dart.rb
|
283
|
+
- lib/rouge/lexers/datastudio.rb
|
264
284
|
- lib/rouge/lexers/diff.rb
|
265
285
|
- lib/rouge/lexers/digdag.rb
|
266
286
|
- lib/rouge/lexers/docker.rb
|
267
287
|
- lib/rouge/lexers/dot.rb
|
288
|
+
- lib/rouge/lexers/ecl.rb
|
268
289
|
- lib/rouge/lexers/eex.rb
|
269
290
|
- lib/rouge/lexers/eiffel.rb
|
270
291
|
- lib/rouge/lexers/elixir.rb
|
@@ -278,6 +299,7 @@ files:
|
|
278
299
|
- lib/rouge/lexers/freefem.rb
|
279
300
|
- lib/rouge/lexers/fsharp.rb
|
280
301
|
- lib/rouge/lexers/gdscript.rb
|
302
|
+
- lib/rouge/lexers/ghc_cmm.rb
|
281
303
|
- lib/rouge/lexers/ghc_core.rb
|
282
304
|
- lib/rouge/lexers/gherkin.rb
|
283
305
|
- lib/rouge/lexers/gherkin/keywords.rb
|
@@ -292,6 +314,7 @@ files:
|
|
292
314
|
- lib/rouge/lexers/haskell.rb
|
293
315
|
- lib/rouge/lexers/haxe.rb
|
294
316
|
- lib/rouge/lexers/hcl.rb
|
317
|
+
- lib/rouge/lexers/hlsl.rb
|
295
318
|
- lib/rouge/lexers/hocon.rb
|
296
319
|
- lib/rouge/lexers/hql.rb
|
297
320
|
- lib/rouge/lexers/html.rb
|
@@ -302,6 +325,8 @@ files:
|
|
302
325
|
- lib/rouge/lexers/ini.rb
|
303
326
|
- lib/rouge/lexers/io.rb
|
304
327
|
- lib/rouge/lexers/irb.rb
|
328
|
+
- lib/rouge/lexers/isbl.rb
|
329
|
+
- lib/rouge/lexers/isbl/builtins.rb
|
305
330
|
- lib/rouge/lexers/java.rb
|
306
331
|
- lib/rouge/lexers/javascript.rb
|
307
332
|
- lib/rouge/lexers/jinja.rb
|
@@ -314,13 +339,15 @@ files:
|
|
314
339
|
- lib/rouge/lexers/julia.rb
|
315
340
|
- lib/rouge/lexers/kotlin.rb
|
316
341
|
- lib/rouge/lexers/lasso.rb
|
317
|
-
- lib/rouge/lexers/lasso/keywords.
|
342
|
+
- lib/rouge/lexers/lasso/keywords.rb
|
318
343
|
- lib/rouge/lexers/liquid.rb
|
319
344
|
- lib/rouge/lexers/literate_coffeescript.rb
|
320
345
|
- lib/rouge/lexers/literate_haskell.rb
|
346
|
+
- lib/rouge/lexers/livescript.rb
|
321
347
|
- lib/rouge/lexers/llvm.rb
|
348
|
+
- lib/rouge/lexers/llvm/keywords.rb
|
322
349
|
- lib/rouge/lexers/lua.rb
|
323
|
-
- lib/rouge/lexers/lua/
|
350
|
+
- lib/rouge/lexers/lua/keywords.rb
|
324
351
|
- lib/rouge/lexers/lustre.rb
|
325
352
|
- lib/rouge/lexers/lutin.rb
|
326
353
|
- lib/rouge/lexers/m68k.rb
|
@@ -329,9 +356,10 @@ files:
|
|
329
356
|
- lib/rouge/lexers/markdown.rb
|
330
357
|
- lib/rouge/lexers/mason.rb
|
331
358
|
- lib/rouge/lexers/mathematica.rb
|
332
|
-
- lib/rouge/lexers/mathematica/
|
359
|
+
- lib/rouge/lexers/mathematica/keywords.rb
|
333
360
|
- lib/rouge/lexers/matlab.rb
|
334
|
-
- lib/rouge/lexers/matlab/builtins.
|
361
|
+
- lib/rouge/lexers/matlab/builtins.rb
|
362
|
+
- lib/rouge/lexers/matlab/keywords.rb
|
335
363
|
- lib/rouge/lexers/minizinc.rb
|
336
364
|
- lib/rouge/lexers/moonscript.rb
|
337
365
|
- lib/rouge/lexers/mosel.rb
|
@@ -352,7 +380,7 @@ files:
|
|
352
380
|
- lib/rouge/lexers/pascal.rb
|
353
381
|
- lib/rouge/lexers/perl.rb
|
354
382
|
- lib/rouge/lexers/php.rb
|
355
|
-
- lib/rouge/lexers/php/
|
383
|
+
- lib/rouge/lexers/php/keywords.rb
|
356
384
|
- lib/rouge/lexers/plain_text.rb
|
357
385
|
- lib/rouge/lexers/plist.rb
|
358
386
|
- lib/rouge/lexers/pony.rb
|
@@ -369,6 +397,7 @@ files:
|
|
369
397
|
- lib/rouge/lexers/r.rb
|
370
398
|
- lib/rouge/lexers/racket.rb
|
371
399
|
- lib/rouge/lexers/reasonml.rb
|
400
|
+
- lib/rouge/lexers/rego.rb
|
372
401
|
- lib/rouge/lexers/robot_framework.rb
|
373
402
|
- lib/rouge/lexers/ruby.rb
|
374
403
|
- lib/rouge/lexers/rust.rb
|
@@ -386,9 +415,10 @@ files:
|
|
386
415
|
- lib/rouge/lexers/smalltalk.rb
|
387
416
|
- lib/rouge/lexers/smarty.rb
|
388
417
|
- lib/rouge/lexers/sml.rb
|
418
|
+
- lib/rouge/lexers/solidity.rb
|
389
419
|
- lib/rouge/lexers/sparql.rb
|
390
420
|
- lib/rouge/lexers/sqf.rb
|
391
|
-
- lib/rouge/lexers/sqf/
|
421
|
+
- lib/rouge/lexers/sqf/keywords.rb
|
392
422
|
- lib/rouge/lexers/sql.rb
|
393
423
|
- lib/rouge/lexers/supercollider.rb
|
394
424
|
- lib/rouge/lexers/swift.rb
|
@@ -405,7 +435,9 @@ files:
|
|
405
435
|
- lib/rouge/lexers/typescript.rb
|
406
436
|
- lib/rouge/lexers/typescript/common.rb
|
407
437
|
- lib/rouge/lexers/vala.rb
|
438
|
+
- lib/rouge/lexers/varnish.rb
|
408
439
|
- lib/rouge/lexers/vb.rb
|
440
|
+
- lib/rouge/lexers/velocity.rb
|
409
441
|
- lib/rouge/lexers/verilog.rb
|
410
442
|
- lib/rouge/lexers/vhdl.rb
|
411
443
|
- lib/rouge/lexers/viml.rb
|
@@ -417,6 +449,8 @@ files:
|
|
417
449
|
- lib/rouge/lexers/xpath.rb
|
418
450
|
- lib/rouge/lexers/xquery.rb
|
419
451
|
- lib/rouge/lexers/yaml.rb
|
452
|
+
- lib/rouge/lexers/yang.rb
|
453
|
+
- lib/rouge/lexers/zig.rb
|
420
454
|
- lib/rouge/plugins/redcarpet.rb
|
421
455
|
- lib/rouge/regex_lexer.rb
|
422
456
|
- lib/rouge/template_lexer.rb
|