rouge-alda 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (335) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +28 -0
  3. data/LICENSE +186 -0
  4. data/bin/rougify +18 -0
  5. data/lib/rouge/cli.rb +432 -0
  6. data/lib/rouge/demos/abap +6 -0
  7. data/lib/rouge/demos/actionscript +4 -0
  8. data/lib/rouge/demos/alda +10 -0
  9. data/lib/rouge/demos/apache +21 -0
  10. data/lib/rouge/demos/apiblueprint +33 -0
  11. data/lib/rouge/demos/applescript +2 -0
  12. data/lib/rouge/demos/awk +4 -0
  13. data/lib/rouge/demos/biml +38 -0
  14. data/lib/rouge/demos/bsl +7 -0
  15. data/lib/rouge/demos/c +8 -0
  16. data/lib/rouge/demos/ceylon +7 -0
  17. data/lib/rouge/demos/cfscript +18 -0
  18. data/lib/rouge/demos/clojure +5 -0
  19. data/lib/rouge/demos/cmake +7 -0
  20. data/lib/rouge/demos/coffeescript +5 -0
  21. data/lib/rouge/demos/common_lisp +1 -0
  22. data/lib/rouge/demos/conf +4 -0
  23. data/lib/rouge/demos/console +6 -0
  24. data/lib/rouge/demos/coq +13 -0
  25. data/lib/rouge/demos/cpp +8 -0
  26. data/lib/rouge/demos/crystal +45 -0
  27. data/lib/rouge/demos/csharp +5 -0
  28. data/lib/rouge/demos/css +4 -0
  29. data/lib/rouge/demos/d +16 -0
  30. data/lib/rouge/demos/dart +6 -0
  31. data/lib/rouge/demos/diff +7 -0
  32. data/lib/rouge/demos/digdag +19 -0
  33. data/lib/rouge/demos/docker +9 -0
  34. data/lib/rouge/demos/dot +5 -0
  35. data/lib/rouge/demos/eiffel +30 -0
  36. data/lib/rouge/demos/elixir +1 -0
  37. data/lib/rouge/demos/elm +4 -0
  38. data/lib/rouge/demos/erb +1 -0
  39. data/lib/rouge/demos/erlang +7 -0
  40. data/lib/rouge/demos/factor +5 -0
  41. data/lib/rouge/demos/fortran +22 -0
  42. data/lib/rouge/demos/fsharp +12 -0
  43. data/lib/rouge/demos/gherkin +17 -0
  44. data/lib/rouge/demos/glsl +14 -0
  45. data/lib/rouge/demos/go +7 -0
  46. data/lib/rouge/demos/gradle +10 -0
  47. data/lib/rouge/demos/graphql +17 -0
  48. data/lib/rouge/demos/groovy +9 -0
  49. data/lib/rouge/demos/hack +5 -0
  50. data/lib/rouge/demos/haml +5 -0
  51. data/lib/rouge/demos/handlebars +7 -0
  52. data/lib/rouge/demos/haskell +6 -0
  53. data/lib/rouge/demos/hcl +7 -0
  54. data/lib/rouge/demos/html +8 -0
  55. data/lib/rouge/demos/http +14 -0
  56. data/lib/rouge/demos/hylang +10 -0
  57. data/lib/rouge/demos/idlang +8 -0
  58. data/lib/rouge/demos/igorpro +9 -0
  59. data/lib/rouge/demos/ini +4 -0
  60. data/lib/rouge/demos/io +11 -0
  61. data/lib/rouge/demos/irb +4 -0
  62. data/lib/rouge/demos/irb_output +2 -0
  63. data/lib/rouge/demos/java +5 -0
  64. data/lib/rouge/demos/javascript +1 -0
  65. data/lib/rouge/demos/jinja +9 -0
  66. data/lib/rouge/demos/json +1 -0
  67. data/lib/rouge/demos/json-doc +1 -0
  68. data/lib/rouge/demos/jsonnet +28 -0
  69. data/lib/rouge/demos/jsp +29 -0
  70. data/lib/rouge/demos/jsx +17 -0
  71. data/lib/rouge/demos/julia +11 -0
  72. data/lib/rouge/demos/kotlin +3 -0
  73. data/lib/rouge/demos/lasso +12 -0
  74. data/lib/rouge/demos/liquid +11 -0
  75. data/lib/rouge/demos/literate_coffeescript +3 -0
  76. data/lib/rouge/demos/literate_haskell +7 -0
  77. data/lib/rouge/demos/llvm +20 -0
  78. data/lib/rouge/demos/lua +12 -0
  79. data/lib/rouge/demos/m68k +16 -0
  80. data/lib/rouge/demos/make +6 -0
  81. data/lib/rouge/demos/markdown +4 -0
  82. data/lib/rouge/demos/mathematica +8 -0
  83. data/lib/rouge/demos/matlab +6 -0
  84. data/lib/rouge/demos/moonscript +16 -0
  85. data/lib/rouge/demos/mosel +10 -0
  86. data/lib/rouge/demos/mxml +22 -0
  87. data/lib/rouge/demos/nasm +26 -0
  88. data/lib/rouge/demos/nginx +5 -0
  89. data/lib/rouge/demos/nim +27 -0
  90. data/lib/rouge/demos/nix +19 -0
  91. data/lib/rouge/demos/objective_c +18 -0
  92. data/lib/rouge/demos/ocaml +12 -0
  93. data/lib/rouge/demos/pascal +14 -0
  94. data/lib/rouge/demos/perl +5 -0
  95. data/lib/rouge/demos/php +3 -0
  96. data/lib/rouge/demos/plaintext +1 -0
  97. data/lib/rouge/demos/plist +142 -0
  98. data/lib/rouge/demos/pony +17 -0
  99. data/lib/rouge/demos/powershell +49 -0
  100. data/lib/rouge/demos/praat +26 -0
  101. data/lib/rouge/demos/prolog +9 -0
  102. data/lib/rouge/demos/prometheus +9 -0
  103. data/lib/rouge/demos/properties +7 -0
  104. data/lib/rouge/demos/protobuf +5 -0
  105. data/lib/rouge/demos/puppet +6 -0
  106. data/lib/rouge/demos/python +6 -0
  107. data/lib/rouge/demos/q +2 -0
  108. data/lib/rouge/demos/qml +9 -0
  109. data/lib/rouge/demos/r +8 -0
  110. data/lib/rouge/demos/racket +24 -0
  111. data/lib/rouge/demos/ruby +9 -0
  112. data/lib/rouge/demos/rust +12 -0
  113. data/lib/rouge/demos/sass +3 -0
  114. data/lib/rouge/demos/scala +3 -0
  115. data/lib/rouge/demos/scheme +4 -0
  116. data/lib/rouge/demos/scss +5 -0
  117. data/lib/rouge/demos/sed +4 -0
  118. data/lib/rouge/demos/shell +2 -0
  119. data/lib/rouge/demos/sieve +10 -0
  120. data/lib/rouge/demos/slim +17 -0
  121. data/lib/rouge/demos/smalltalk +6 -0
  122. data/lib/rouge/demos/smarty +12 -0
  123. data/lib/rouge/demos/sml +4 -0
  124. data/lib/rouge/demos/sqf +14 -0
  125. data/lib/rouge/demos/sql +1 -0
  126. data/lib/rouge/demos/swift +5 -0
  127. data/lib/rouge/demos/tap +5 -0
  128. data/lib/rouge/demos/tcl +1 -0
  129. data/lib/rouge/demos/terraform +31 -0
  130. data/lib/rouge/demos/tex +1 -0
  131. data/lib/rouge/demos/toml +9 -0
  132. data/lib/rouge/demos/tsx +17 -0
  133. data/lib/rouge/demos/tulip +13 -0
  134. data/lib/rouge/demos/turtle +26 -0
  135. data/lib/rouge/demos/twig +9 -0
  136. data/lib/rouge/demos/typescript +1 -0
  137. data/lib/rouge/demos/vala +8 -0
  138. data/lib/rouge/demos/vb +4 -0
  139. data/lib/rouge/demos/verilog +27 -0
  140. data/lib/rouge/demos/vhdl +23 -0
  141. data/lib/rouge/demos/viml +14 -0
  142. data/lib/rouge/demos/vue +11 -0
  143. data/lib/rouge/demos/wollok +11 -0
  144. data/lib/rouge/demos/xml +2 -0
  145. data/lib/rouge/demos/yaml +4 -0
  146. data/lib/rouge/formatter.rb +76 -0
  147. data/lib/rouge/formatters/html.rb +38 -0
  148. data/lib/rouge/formatters/html_inline.rb +31 -0
  149. data/lib/rouge/formatters/html_legacy.rb +45 -0
  150. data/lib/rouge/formatters/html_linewise.rb +28 -0
  151. data/lib/rouge/formatters/html_pygments.rb +18 -0
  152. data/lib/rouge/formatters/html_table.rb +62 -0
  153. data/lib/rouge/formatters/null.rb +20 -0
  154. data/lib/rouge/formatters/terminal256.rb +181 -0
  155. data/lib/rouge/guesser.rb +57 -0
  156. data/lib/rouge/guessers/disambiguation.rb +106 -0
  157. data/lib/rouge/guessers/filename.rb +27 -0
  158. data/lib/rouge/guessers/glob_mapping.rb +45 -0
  159. data/lib/rouge/guessers/mimetype.rb +16 -0
  160. data/lib/rouge/guessers/modeline.rb +46 -0
  161. data/lib/rouge/guessers/source.rb +31 -0
  162. data/lib/rouge/guessers/util.rb +34 -0
  163. data/lib/rouge/lexer.rb +462 -0
  164. data/lib/rouge/lexers/abap.rb +240 -0
  165. data/lib/rouge/lexers/actionscript.rb +196 -0
  166. data/lib/rouge/lexers/alda.rb +43 -0
  167. data/lib/rouge/lexers/apache/keywords.yml +764 -0
  168. data/lib/rouge/lexers/apache.rb +73 -0
  169. data/lib/rouge/lexers/apiblueprint.rb +49 -0
  170. data/lib/rouge/lexers/apple_script.rb +369 -0
  171. data/lib/rouge/lexers/awk.rb +162 -0
  172. data/lib/rouge/lexers/biml.rb +43 -0
  173. data/lib/rouge/lexers/bsl.rb +82 -0
  174. data/lib/rouge/lexers/c.rb +213 -0
  175. data/lib/rouge/lexers/ceylon.rb +124 -0
  176. data/lib/rouge/lexers/cfscript.rb +154 -0
  177. data/lib/rouge/lexers/clojure.rb +113 -0
  178. data/lib/rouge/lexers/cmake.rb +207 -0
  179. data/lib/rouge/lexers/coffeescript.rb +175 -0
  180. data/lib/rouge/lexers/common_lisp.rb +346 -0
  181. data/lib/rouge/lexers/conf.rb +25 -0
  182. data/lib/rouge/lexers/console.rb +137 -0
  183. data/lib/rouge/lexers/coq.rb +188 -0
  184. data/lib/rouge/lexers/cpp.rb +79 -0
  185. data/lib/rouge/lexers/crystal.rb +430 -0
  186. data/lib/rouge/lexers/csharp.rb +115 -0
  187. data/lib/rouge/lexers/css.rb +274 -0
  188. data/lib/rouge/lexers/d.rb +177 -0
  189. data/lib/rouge/lexers/dart.rb +105 -0
  190. data/lib/rouge/lexers/diff.rb +33 -0
  191. data/lib/rouge/lexers/digdag.rb +70 -0
  192. data/lib/rouge/lexers/docker.rb +51 -0
  193. data/lib/rouge/lexers/dot.rb +69 -0
  194. data/lib/rouge/lexers/eiffel.rb +66 -0
  195. data/lib/rouge/lexers/elixir.rb +134 -0
  196. data/lib/rouge/lexers/elm.rb +90 -0
  197. data/lib/rouge/lexers/erb.rb +53 -0
  198. data/lib/rouge/lexers/erlang.rb +115 -0
  199. data/lib/rouge/lexers/factor.rb +303 -0
  200. data/lib/rouge/lexers/fortran.rb +178 -0
  201. data/lib/rouge/lexers/fsharp.rb +119 -0
  202. data/lib/rouge/lexers/gherkin/keywords.rb +16 -0
  203. data/lib/rouge/lexers/gherkin.rb +138 -0
  204. data/lib/rouge/lexers/glsl.rb +136 -0
  205. data/lib/rouge/lexers/go.rb +175 -0
  206. data/lib/rouge/lexers/gradle.rb +38 -0
  207. data/lib/rouge/lexers/graphql.rb +254 -0
  208. data/lib/rouge/lexers/groovy.rb +113 -0
  209. data/lib/rouge/lexers/hack.rb +49 -0
  210. data/lib/rouge/lexers/haml.rb +230 -0
  211. data/lib/rouge/lexers/handlebars.rb +80 -0
  212. data/lib/rouge/lexers/haskell.rb +198 -0
  213. data/lib/rouge/lexers/hcl.rb +163 -0
  214. data/lib/rouge/lexers/html.rb +140 -0
  215. data/lib/rouge/lexers/http.rb +81 -0
  216. data/lib/rouge/lexers/hylang.rb +94 -0
  217. data/lib/rouge/lexers/idlang.rb +312 -0
  218. data/lib/rouge/lexers/igorpro.rb +664 -0
  219. data/lib/rouge/lexers/ini.rb +54 -0
  220. data/lib/rouge/lexers/io.rb +69 -0
  221. data/lib/rouge/lexers/irb.rb +67 -0
  222. data/lib/rouge/lexers/java.rb +88 -0
  223. data/lib/rouge/lexers/javascript.rb +283 -0
  224. data/lib/rouge/lexers/jinja.rb +138 -0
  225. data/lib/rouge/lexers/json.rb +30 -0
  226. data/lib/rouge/lexers/json_doc.rb +24 -0
  227. data/lib/rouge/lexers/jsonnet.rb +152 -0
  228. data/lib/rouge/lexers/jsp.rb +120 -0
  229. data/lib/rouge/lexers/jsx.rb +104 -0
  230. data/lib/rouge/lexers/julia.rb +167 -0
  231. data/lib/rouge/lexers/kotlin.rb +127 -0
  232. data/lib/rouge/lexers/lasso/keywords.yml +446 -0
  233. data/lib/rouge/lexers/lasso.rb +215 -0
  234. data/lib/rouge/lexers/liquid.rb +288 -0
  235. data/lib/rouge/lexers/literate_coffeescript.rb +34 -0
  236. data/lib/rouge/lexers/literate_haskell.rb +37 -0
  237. data/lib/rouge/lexers/llvm.rb +81 -0
  238. data/lib/rouge/lexers/lua/builtins.rb +24 -0
  239. data/lib/rouge/lexers/lua.rb +126 -0
  240. data/lib/rouge/lexers/m68k.rb +144 -0
  241. data/lib/rouge/lexers/make.rb +113 -0
  242. data/lib/rouge/lexers/markdown.rb +155 -0
  243. data/lib/rouge/lexers/mathematica/builtins.rb +13 -0
  244. data/lib/rouge/lexers/mathematica.rb +96 -0
  245. data/lib/rouge/lexers/matlab/builtins.rb +13 -0
  246. data/lib/rouge/lexers/matlab.rb +72 -0
  247. data/lib/rouge/lexers/moonscript.rb +115 -0
  248. data/lib/rouge/lexers/mosel.rb +232 -0
  249. data/lib/rouge/lexers/mxml.rb +69 -0
  250. data/lib/rouge/lexers/nasm.rb +199 -0
  251. data/lib/rouge/lexers/nginx.rb +72 -0
  252. data/lib/rouge/lexers/nim.rb +153 -0
  253. data/lib/rouge/lexers/nix.rb +211 -0
  254. data/lib/rouge/lexers/objective_c.rb +195 -0
  255. data/lib/rouge/lexers/ocaml.rb +101 -0
  256. data/lib/rouge/lexers/pascal.rb +67 -0
  257. data/lib/rouge/lexers/perl.rb +201 -0
  258. data/lib/rouge/lexers/php/builtins.rb +196 -0
  259. data/lib/rouge/lexers/php.rb +194 -0
  260. data/lib/rouge/lexers/plain_text.rb +27 -0
  261. data/lib/rouge/lexers/plist.rb +47 -0
  262. data/lib/rouge/lexers/pony.rb +94 -0
  263. data/lib/rouge/lexers/powershell.rb +679 -0
  264. data/lib/rouge/lexers/praat.rb +351 -0
  265. data/lib/rouge/lexers/prolog.rb +61 -0
  266. data/lib/rouge/lexers/prometheus.rb +123 -0
  267. data/lib/rouge/lexers/properties.rb +52 -0
  268. data/lib/rouge/lexers/protobuf.rb +71 -0
  269. data/lib/rouge/lexers/puppet.rb +129 -0
  270. data/lib/rouge/lexers/python.rb +247 -0
  271. data/lib/rouge/lexers/q.rb +125 -0
  272. data/lib/rouge/lexers/qml.rb +74 -0
  273. data/lib/rouge/lexers/r.rb +90 -0
  274. data/lib/rouge/lexers/racket.rb +545 -0
  275. data/lib/rouge/lexers/ruby.rb +439 -0
  276. data/lib/rouge/lexers/rust.rb +198 -0
  277. data/lib/rouge/lexers/sass/common.rb +181 -0
  278. data/lib/rouge/lexers/sass.rb +75 -0
  279. data/lib/rouge/lexers/scala.rb +143 -0
  280. data/lib/rouge/lexers/scheme.rb +113 -0
  281. data/lib/rouge/lexers/scss.rb +35 -0
  282. data/lib/rouge/lexers/sed.rb +173 -0
  283. data/lib/rouge/lexers/shell.rb +190 -0
  284. data/lib/rouge/lexers/sieve.rb +97 -0
  285. data/lib/rouge/lexers/slim.rb +229 -0
  286. data/lib/rouge/lexers/smalltalk.rb +117 -0
  287. data/lib/rouge/lexers/smarty.rb +81 -0
  288. data/lib/rouge/lexers/sml.rb +345 -0
  289. data/lib/rouge/lexers/sqf/commands.rb +15 -0
  290. data/lib/rouge/lexers/sqf.rb +109 -0
  291. data/lib/rouge/lexers/sql.rb +141 -0
  292. data/lib/rouge/lexers/swift.rb +182 -0
  293. data/lib/rouge/lexers/tap.rb +89 -0
  294. data/lib/rouge/lexers/tcl.rb +193 -0
  295. data/lib/rouge/lexers/terraform.rb +105 -0
  296. data/lib/rouge/lexers/tex.rb +70 -0
  297. data/lib/rouge/lexers/toml.rb +68 -0
  298. data/lib/rouge/lexers/tsx.rb +20 -0
  299. data/lib/rouge/lexers/tulip.rb +108 -0
  300. data/lib/rouge/lexers/turtle.rb +64 -0
  301. data/lib/rouge/lexers/twig.rb +40 -0
  302. data/lib/rouge/lexers/typescript/common.rb +34 -0
  303. data/lib/rouge/lexers/typescript.rb +23 -0
  304. data/lib/rouge/lexers/vala.rb +78 -0
  305. data/lib/rouge/lexers/vb.rb +165 -0
  306. data/lib/rouge/lexers/verilog.rb +165 -0
  307. data/lib/rouge/lexers/vhdl.rb +98 -0
  308. data/lib/rouge/lexers/viml/keywords.rb +14 -0
  309. data/lib/rouge/lexers/viml.rb +102 -0
  310. data/lib/rouge/lexers/vue.rb +124 -0
  311. data/lib/rouge/lexers/wollok.rb +104 -0
  312. data/lib/rouge/lexers/xml.rb +58 -0
  313. data/lib/rouge/lexers/yaml.rb +374 -0
  314. data/lib/rouge/plugins/redcarpet.rb +31 -0
  315. data/lib/rouge/regex_lexer.rb +442 -0
  316. data/lib/rouge/template_lexer.rb +21 -0
  317. data/lib/rouge/text_analyzer.rb +50 -0
  318. data/lib/rouge/theme.rb +214 -0
  319. data/lib/rouge/themes/base16.rb +131 -0
  320. data/lib/rouge/themes/colorful.rb +68 -0
  321. data/lib/rouge/themes/github.rb +72 -0
  322. data/lib/rouge/themes/gruvbox.rb +168 -0
  323. data/lib/rouge/themes/igor_pro.rb +21 -0
  324. data/lib/rouge/themes/molokai.rb +83 -0
  325. data/lib/rouge/themes/monokai.rb +93 -0
  326. data/lib/rouge/themes/monokai_sublime.rb +92 -0
  327. data/lib/rouge/themes/pastie.rb +70 -0
  328. data/lib/rouge/themes/thankful_eyes.rb +75 -0
  329. data/lib/rouge/themes/tulip.rb +70 -0
  330. data/lib/rouge/token.rb +183 -0
  331. data/lib/rouge/util.rb +102 -0
  332. data/lib/rouge/version.rb +8 -0
  333. data/lib/rouge.rb +84 -0
  334. data/rouge.gemspec +25 -0
  335. metadata +384 -0
@@ -0,0 +1,23 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ load_lexer 'javascript.rb'
7
+ load_lexer 'typescript/common.rb'
8
+
9
+ class Typescript < Javascript
10
+ include TypescriptCommon
11
+
12
+ title "TypeScript"
13
+ desc "TypeScript, a superset of JavaScript"
14
+
15
+ tag 'typescript'
16
+ aliases 'ts'
17
+
18
+ filenames '*.ts', '*.d.ts'
19
+
20
+ mimetypes 'text/typescript'
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,78 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ class Vala < RegexLexer
7
+ tag 'vala'
8
+ filenames '*.vala'
9
+ mimetypes 'text/x-vala'
10
+
11
+ title "Vala"
12
+ desc 'A programming language similar to csharp.'
13
+
14
+ id = /@?[_a-z]\w*/i
15
+
16
+ keywords = %w(
17
+ abstract as async base break case catch const construct continue
18
+ default delegate delete do dynamic else ensures enum errordomain
19
+ extern false finally for foreach get global if in inline interface
20
+ internal is lock new null out override owned private protected
21
+ public ref requires return set signal sizeof static switch this
22
+ throw throws true try typeof unowned var value virtual void weak
23
+ while yield
24
+ )
25
+
26
+ keywords_type = %w(
27
+ bool char double float int int8 int16 int32 int64 long short size_t
28
+ ssize_t string unichar uint uint8 uint16 uint32 uint64 ulong ushort
29
+ )
30
+
31
+ state :whitespace do
32
+ rule /\s+/m, Text
33
+ rule %r(//.*?$), Comment::Single
34
+ rule %r(/[*].*?[*]/)m, Comment::Multiline
35
+ end
36
+
37
+ state :root do
38
+ mixin :whitespace
39
+
40
+ rule /^\s*\[.*?\]/, Name::Attribute
41
+
42
+ rule /(<\[)\s*(#{id}:)?/, Keyword
43
+ rule /\]>/, Keyword
44
+
45
+ rule /[~!%^&*()+=|\[\]{}:;,.<>\/?-]/, Punctuation
46
+ rule /@"(\\.|.)*?"/, Str
47
+ rule /"(\\.|.)*?["\n]/, Str
48
+ rule /'(\\.|.)'/, Str::Char
49
+ rule /0x[0-9a-f]+[lu]?/i, Num
50
+ rule %r(
51
+ [0-9]
52
+ ([.][0-9]*)? # decimal
53
+ (e[+-][0-9]+)? # exponent
54
+ [fldu]? # type
55
+ )ix, Num
56
+ rule /\b(#{keywords.join('|')})\b/, Keyword
57
+ rule /\b(#{keywords_type.join('|')})\b/, Keyword::Type
58
+ rule /class|struct/, Keyword, :class
59
+ rule /namespace|using/, Keyword, :namespace
60
+ rule /#{id}(?=\s*[(])/, Name::Function
61
+ rule id, Name
62
+
63
+ rule /#.*/, Comment::Preproc
64
+ end
65
+
66
+ state :class do
67
+ mixin :whitespace
68
+ rule id, Name::Class, :pop!
69
+ end
70
+
71
+ state :namespace do
72
+ mixin :whitespace
73
+ rule /(?=[(])/, Text, :pop!
74
+ rule /(#{id}|[.])+/, Name::Namespace, :pop!
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,165 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ class VisualBasic < RegexLexer
7
+ title "Visual Basic"
8
+ desc "Visual Basic"
9
+ tag 'vb'
10
+ aliases 'visualbasic'
11
+ filenames '*.vbs', '*.vb'
12
+ mimetypes 'text/x-visualbasic', 'application/x-visualbasic'
13
+
14
+ def self.keywords
15
+ @keywords ||= Set.new %w(
16
+ AddHandler Alias ByRef ByVal CBool CByte CChar CDate CDbl CDec
17
+ CInt CLng CObj CSByte CShort CSng CStr CType CUInt CULng CUShort
18
+ Call Case Catch Class Const Continue Declare Default Delegate
19
+ Dim DirectCast Do Each Else ElseIf End EndIf Enum Erase Error
20
+ Event Exit False Finally For Friend Function Get Global GoSub
21
+ GoTo Handles If Implements Imports Inherits Interface Let
22
+ Lib Loop Me Module MustInherit MustOverride MyBase MyClass
23
+ Namespace Narrowing New Next Not NotInheritable NotOverridable
24
+ Nothing Of On Operator Option Optional Overloads Overridable
25
+ Overrides ParamArray Partial Private Property Protected Public
26
+ RaiseEvent ReDim ReadOnly RemoveHandler Resume Return Select Set
27
+ Shadows Shared Single Static Step Stop Structure Sub SyncLock
28
+ Then Throw To True Try TryCast Using Wend When While Widening
29
+ With WithEvents WriteOnly
30
+ )
31
+ end
32
+
33
+ def self.keywords_type
34
+ @keywords_type ||= Set.new %w(
35
+ Boolean Byte Char Date Decimal Double Integer Long Object
36
+ SByte Short Single String Variant UInteger ULong UShort
37
+ )
38
+ end
39
+
40
+ def self.operator_words
41
+ @operator_words ||= Set.new %w(
42
+ AddressOf And AndAlso As GetType In Is IsNot Like Mod Or OrElse
43
+ TypeOf Xor
44
+ )
45
+ end
46
+
47
+ def self.builtins
48
+ @builtins ||= Set.new %w(
49
+ Console ConsoleColor
50
+ )
51
+ end
52
+
53
+ id = /[a-z_]\w*/i
54
+ upper_id = /[A-Z]\w*/
55
+
56
+ state :whitespace do
57
+ rule /\s+/, Text
58
+ rule /\n/, Text, :bol
59
+ rule /rem\b.*?$/i, Comment::Single
60
+ rule %r(%\{.*?%\})m, Comment::Multiline
61
+ rule /'.*$/, Comment::Single
62
+ end
63
+
64
+ state :bol do
65
+ rule /\s+/, Text
66
+ rule /<.*?>/, Name::Attribute
67
+ rule(//) { :pop! }
68
+ end
69
+
70
+ state :root do
71
+ mixin :whitespace
72
+ rule %r(
73
+ [#]If\b .*? \bThen
74
+ | [#]ElseIf\b .*? \bThen
75
+ | [#]End \s+ If
76
+ | [#]Const
77
+ | [#]ExternalSource .*? \n
78
+ | [#]End \s+ ExternalSource
79
+ | [#]Region .*? \n
80
+ | [#]End \s+ Region
81
+ | [#]ExternalChecksum
82
+ )x, Comment::Preproc
83
+ rule /[.]/, Punctuation, :dotted
84
+ rule /[(){}!#,:]/, Punctuation
85
+ rule /Option\s+(Strict|Explicit|Compare)\s+(On|Off|Binary|Text)/,
86
+ Keyword::Declaration
87
+ rule /End\b/, Keyword, :end
88
+ rule /(Dim|Const)\b/, Keyword, :dim
89
+ rule /(Function|Sub|Property)\b/, Keyword, :funcname
90
+ rule /(Class|Structure|Enum)\b/, Keyword, :classname
91
+ rule /(Module|Namespace|Imports)\b/, Keyword, :namespace
92
+
93
+ rule upper_id do |m|
94
+ match = m[0]
95
+ if self.class.keywords.include? match
96
+ token Keyword
97
+ elsif self.class.keywords_type.include? match
98
+ token Keyword::Type
99
+ elsif self.class.operator_words.include? match
100
+ token Operator::Word
101
+ elsif self.class.builtins.include? match
102
+ token Name::Builtin
103
+ else
104
+ token Name
105
+ end
106
+ end
107
+
108
+ rule(
109
+ %r(&=|[*]=|/=|\\=|\^=|\+=|-=|<<=|>>=|<<|>>|:=|<=|>=|<>|[-&*/\\^+=<>.]),
110
+ Operator
111
+ )
112
+
113
+ rule /"/, Str, :string
114
+ rule /#{id}[%&@!#\$]?/, Name
115
+ rule /#.*?#/, Literal::Date
116
+
117
+ rule /(\d+\.\d*|\d*\.\d+)(f[+-]?\d+)?/i, Num::Float
118
+ rule /\d+([SILDFR]|US|UI|UL)?/, Num::Integer
119
+ rule /&H[0-9a-f]+([SILDFR]|US|UI|UL)?/, Num::Integer
120
+ rule /&O[0-7]+([SILDFR]|US|UI|UL)?/, Num::Integer
121
+
122
+ rule /_\n/, Keyword
123
+ end
124
+
125
+ state :dotted do
126
+ mixin :whitespace
127
+ rule id, Name, :pop!
128
+ end
129
+
130
+ state :string do
131
+ rule /""/, Str::Escape
132
+ rule /"C?/, Str, :pop!
133
+ rule /[^"]+/, Str
134
+ end
135
+
136
+ state :dim do
137
+ mixin :whitespace
138
+ rule id, Name::Variable, :pop!
139
+ rule(//) { pop! }
140
+ end
141
+
142
+ state :funcname do
143
+ mixin :whitespace
144
+ rule id, Name::Function, :pop!
145
+ end
146
+
147
+ state :classname do
148
+ mixin :whitespace
149
+ rule id, Name::Class, :pop!
150
+ end
151
+
152
+ state :namespace do
153
+ mixin :whitespace
154
+ rule /#{id}([.]#{id})*/, Name::Namespace, :pop!
155
+ end
156
+
157
+ state :end do
158
+ mixin :whitespace
159
+ rule /(Function|Sub|Property|Class|Structure|Enum|Module|Namespace)\b/,
160
+ Keyword, :pop!
161
+ rule(//) { pop! }
162
+ end
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,165 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ class Verilog < RegexLexer
7
+ title "Verilog and System Verilog"
8
+ desc "The System Verilog hardware description language"
9
+ tag 'verilog'
10
+ filenames '*.v', '*.sv', '*.svh'
11
+ mimetypes 'text/x-verilog', 'text/x-systemverilog'
12
+
13
+ # optional comment or whitespace
14
+ ws = %r((?:\s|//.*?\n|/[*].*?[*]/)+)
15
+ id = /[a-zA-Z_][a-zA-Z0-9_]*/
16
+
17
+ def self.keywords
18
+ @keywords ||= Set.new %w(
19
+ alias always always_comb always_ff always_latch assert assert_strobe
20
+ assign assume automatic attribute before begin bind bins binsof break
21
+ case casex casez clocking config constraint context continue cover
22
+ covergroup coverpoint cross deassign defparam default design dist do
23
+ else end endattribute endcase endclass endclocking endconfig
24
+ endfunction endgenerate endgroup endinterface endmodule endpackage
25
+ endprimitive endprogram endproperty endspecify endsequence endtable
26
+ endtask expect export extends extern final first_match for force
27
+ foreach fork forkjoin forever function generate genvar if iff ifnone
28
+ ignore_bins illegal_bins import incdir include initial inside instance
29
+ interface intersect join join_any join_none liblist library local
30
+ localparam matches module modport new noshowcancelled null package
31
+ parameter primitive priority program property protected
32
+ pulsestyle_onevent pulsestyle_ondetect pure rand randc randcase
33
+ randsequence release return sequence showcancelled solve specify super
34
+ table task this throughout timeprecision timeunit type typedef unique
35
+ use wait wait_order while wildcard with within
36
+ )
37
+ end
38
+
39
+ def self.keywords_type
40
+ @keywords_type ||= Set.new %w(
41
+ and bit buf bufif0 bufif1 byte cell chandle class cmos const disable
42
+ edge enum event highz0 highz1 initial inout input int integer join
43
+ logic longint macromodule medium nand negedge nmos nor not
44
+ notif0 notif1 or output packed parameter pmos posedge pull0 pull1
45
+ pulldown pullup rcmos real realtime ref reg repeat rnmos rpmos rtran
46
+ rtranif0 rtranif1 scalared shortint shortreal signed specparam
47
+ static string strength strong0 strong1 struct supply0 supply1 tagged
48
+ time tran tranif0 tranif1 tri tri0 tri1 triand trior trireg union
49
+ unsigned uwire var vectored virtual void wait wand weak[01] wire wor
50
+ xnor xor
51
+ )
52
+ end
53
+
54
+ def self.keywords_system_task
55
+ @keyword_system_task ||= Set.new %w(
56
+ acos acosh asin asinh assertfailoff assertfailon assertkill
57
+ assertnonvacuouson assertoff asserton assertpassoff assertpasson
58
+ assertvacuousoff atan atan2 atanh bits bitstoreal bitstoshortreal
59
+ cast ceil changed changed_gclk changing_gclk clog2 cos cosh countones
60
+ coverage_control coverage_get coverage_get_max coverage_merge
61
+ coverage_save dimensions display displayb displayh displayo
62
+ dist_chi_square dist_erlang dist_exponential dist_normal dist_poisson
63
+ dist_t dist_uniform dumpall dumpfile dumpflush dumplimit dumpoff
64
+ dumpon dumpports dumpportsall dumpportsflush dumpportslimit
65
+ dumpportsoff dumpportson dumpvars error exit exp falling_gclk fclose
66
+ fdisplay fdisplayb fdisplayh fdisplayo fell fell_gclk feof ferror
67
+ fflush fgetc fgets finish floor fmonitor fmonitorb fmonitorh fmonitoro
68
+ fopen fread fscanf fseek fstrobe fstrobeb fstrobeh fstrobeo ftell
69
+ future_gclk fwrite fwriteb fwriteh fwriteo get_coverage high hypot
70
+ increment info isunbounded isunknown itor left ln load_coverage_db
71
+ log10 low monitor monitorb monitorh monitoro monitoroff monitoron
72
+ onehot onehot0 past past_gclk pow printtimescale q_add q_exam q_full
73
+ q_initialize q_remove random readmemb readmemh realtime realtobits
74
+ rewind right rising_gclk rose rose_gclk rtoi sampled
75
+ set_coverage_db_name sformat sformatf shortrealtobits signed sin sinh
76
+ size sqrt sscanf stable stable_gclk steady_gclk stime stop strobe
77
+ strobeb strobeh strobeo swrite swriteb swriteh swriteo system tan tanh
78
+ time timeformat typename ungetc unpacked_dimensions unsigned warning
79
+ write writeb writeh writememb writememh writeo
80
+ )
81
+ end
82
+
83
+ state :expr_bol do
84
+ mixin :inline_whitespace
85
+ rule /`define/, Comment::Preproc, :macro
86
+
87
+ rule(//) { pop! }
88
+ end
89
+
90
+ # :expr_bol is the same as :bol but without labels, since
91
+ # labels can only appear at the beginning of a statement.
92
+ state :bol do
93
+ rule /#{id}:(?!:)/, Name::Label
94
+ mixin :expr_bol
95
+ end
96
+
97
+ state :inline_whitespace do
98
+ rule /[ \t\r]+/, Text
99
+ rule /\\\n/, Text # line continuation
100
+ rule %r(/(\\\n)?[*].*?[*](\\\n)?/)m, Comment::Multiline
101
+ end
102
+
103
+ state :whitespace do
104
+ rule /\n+/m, Text, :bol
105
+ rule %r(//(\\.|.)*?\n), Comment::Single, :bol
106
+ mixin :inline_whitespace
107
+ end
108
+
109
+ state :expr_whitespace do
110
+ rule /\n+/m, Text, :expr_bol
111
+ mixin :whitespace
112
+ end
113
+
114
+ state :string do
115
+ rule /"/, Str, :pop!
116
+ rule /\\([\\abfnrtv"']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})/, Str::Escape
117
+ rule /[^\\"\n]+/, Str
118
+ rule /\\\n/, Str
119
+ rule /\\/, Str # stray backslash
120
+ end
121
+
122
+ state :statement do
123
+ mixin :whitespace
124
+ rule /L?"/, Str, :string
125
+ rule /([0-9_]+\.[0-9_]*|[0-9_]*\.[0-9_]+)(e[+-]?[0-9_]+)?/i, Num::Float
126
+ rule /[0-9_]+e[+-]?[0-9_]+/i, Num::Float
127
+ rule /[0-9]*'h[0-9a-fA-F_?]+/, Num::Hex
128
+ rule /[0-9]*'b?[01xz_?]+/, Num::Bin
129
+ rule /[0-9]*'d[0-9_?]+/, Num::Integer
130
+ rule /[0-9_]+[lu]*/i, Num::Integer
131
+ rule %r([~!%^&*+-=\|?:<>/@{}]), Operator
132
+ rule /[()\[\],.$\#]/, Punctuation
133
+ rule /`(\w+)/, Comment::Preproc
134
+
135
+ rule id do |m|
136
+ name = m[0]
137
+
138
+ if self.class.keywords.include? name
139
+ token Keyword
140
+ elsif self.class.keywords_type.include? name
141
+ token Keyword::Type
142
+ elsif self.class.keywords_system_task.include? name
143
+ token Name::Builtin
144
+ else
145
+ token Name
146
+ end
147
+ end
148
+ end
149
+
150
+ state :root do
151
+ mixin :expr_whitespace
152
+ rule(//) { push :statement }
153
+ end
154
+
155
+ state :macro do
156
+ rule /\n/, Comment::Preproc, :pop!
157
+ mixin :inline_whitespace
158
+ rule /;/, Punctuation
159
+ rule /\=/, Operator
160
+ rule /(\w+)/, Text
161
+ end
162
+
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,98 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ class VHDL < RegexLexer
7
+ title "VHDL 2008"
8
+ desc "Very High Speed Integrated Circuit Hardware Description Language"
9
+ tag 'vhdl'
10
+
11
+ filenames '*.vhd', '*.vhdl', '*.vho'
12
+
13
+ mimetypes 'text/x-vhdl'
14
+ def self.keywords
15
+ @keywords ||= Set.new %w(
16
+ access after alias all architecture array assert assume assume_guarantee attribute
17
+ begin block body buffer bus case component configuration constant context cover
18
+ default disconnect downto else elsif end entity exit fairness file for force function
19
+ generate generic group guarded if impure in inertial inout is label library linkage
20
+ literal loop map new next null of on open others out package parameter port postponed
21
+ procedure process property protected pure range record register reject release report
22
+ return select sequence severity shared signal strong subtype then to transport type
23
+ unaffected units until use variable vmode vprop vunit wait when while with
24
+ )
25
+ end
26
+
27
+ def self.keywords_type
28
+ @keywords_type ||= Set.new %w(
29
+ bit bit_vector boolean boolean_vector character integer integer_vector natural positive
30
+ real real_vector severity_level signed std_logic std_logic_vector std_ulogic
31
+ std_ulogic_vector string unsigned time time_vector
32
+ )
33
+ end
34
+
35
+ def self.operator_words
36
+ @operator_words ||= Set.new %w(
37
+ abs and mod nand nor not or rem rol ror sla sll sra srl xnor xor
38
+ )
39
+ end
40
+
41
+ id = /[a-zA-Z][a-zA-Z0-9_]*/
42
+
43
+ state :whitespace do
44
+ rule /\s+/, Text
45
+ rule /\n/, Text
46
+ # Find Comments (VHDL doesn't support multiline comments)
47
+ rule /--.*$/, Comment::Single
48
+ end
49
+
50
+ state :statements do
51
+
52
+ # Find Numbers
53
+ rule /-?\d+/i, Num::Integer
54
+ rule /-?\d+[.]\d+/i, Num::Float
55
+
56
+ # Find Strings
57
+ rule /[box]?"[^"]*"/i, Str::Single
58
+ rule /'[^']?'/i, Str::Char
59
+
60
+ # Find Attributes
61
+ rule /'#{id}/i, Name::Attribute
62
+
63
+ # Punctuations
64
+ rule /[(),:;]/, Punctuation
65
+
66
+ # Boolean and NULL
67
+ rule /(?:true|false|null)\b/i, Name::Builtin
68
+
69
+ rule id do |m|
70
+ match = m[0].downcase #convert to lower case
71
+ if self.class.keywords.include? match
72
+ token Keyword
73
+ elsif self.class.keywords_type.include? match
74
+ token Keyword::Type
75
+ elsif self.class.operator_words.include? match
76
+ token Operator::Word
77
+ else
78
+ token Name
79
+ end
80
+ end
81
+
82
+ rule(
83
+ %r(=>|[*][*]|:=|\/=|>=|<=|<>|\?\?|\?=|\?\/=|\?>|\?<|\?>=|\?<=|<<|>>|[#&'*+-.\/:<=>\?@^]),
84
+ Operator
85
+ )
86
+
87
+ end
88
+
89
+ state :root do
90
+
91
+ mixin :whitespace
92
+ mixin :statements
93
+
94
+ end
95
+
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ # DO NOT EDIT: automatically generated by `rake builtins:vim`.
5
+ # see tasks/vim.rake for more info.
6
+ module Rouge
7
+ module Lexers
8
+ class VimL
9
+ 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"]]}
11
+ end
12
+ end
13
+ end
14
+ end