pygments.rb 2.3.1 → 2.4.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 (324) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +1 -1
  3. data/.rubocop.yml +7 -0
  4. data/CHANGELOG.adoc +4 -0
  5. data/README.adoc +1 -1
  6. data/bench.rb +1 -1
  7. data/lib/pygments/popen.rb +3 -7
  8. data/lib/pygments/version.rb +1 -1
  9. data/pygments.rb.gemspec +2 -2
  10. data/test/test_pygments.rb +0 -19
  11. data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/AUTHORS +21 -1
  12. data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/LICENSE +1 -1
  13. data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/METADATA +19 -11
  14. data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +614 -0
  15. data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/WHEEL +1 -1
  16. data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/entry_points.txt +0 -1
  17. data/vendor/pygments-main/bin/pygmentize +1 -1
  18. data/vendor/pygments-main/pygments/__init__.py +20 -22
  19. data/vendor/pygments-main/pygments/__main__.py +1 -1
  20. data/vendor/pygments-main/pygments/cmdline.py +74 -8
  21. data/vendor/pygments-main/pygments/console.py +1 -1
  22. data/vendor/pygments-main/pygments/filter.py +1 -1
  23. data/vendor/pygments-main/pygments/filters/__init__.py +6 -3
  24. data/vendor/pygments-main/pygments/formatter.py +41 -11
  25. data/vendor/pygments-main/pygments/formatters/__init__.py +21 -16
  26. data/vendor/pygments-main/pygments/formatters/_mapping.py +5 -65
  27. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
  28. data/vendor/pygments-main/pygments/formatters/groff.py +170 -0
  29. data/vendor/pygments-main/pygments/formatters/html.py +54 -32
  30. data/vendor/pygments-main/pygments/formatters/img.py +9 -5
  31. data/vendor/pygments-main/pygments/formatters/irc.py +6 -33
  32. data/vendor/pygments-main/pygments/formatters/latex.py +24 -14
  33. data/vendor/pygments-main/pygments/formatters/other.py +1 -1
  34. data/vendor/pygments-main/pygments/formatters/pangomarkup.py +1 -1
  35. data/vendor/pygments-main/pygments/formatters/rtf.py +1 -1
  36. data/vendor/pygments-main/pygments/formatters/svg.py +1 -1
  37. data/vendor/pygments-main/pygments/formatters/terminal.py +1 -3
  38. data/vendor/pygments-main/pygments/formatters/terminal256.py +2 -4
  39. data/vendor/pygments-main/pygments/lexer.py +101 -32
  40. data/vendor/pygments-main/pygments/lexers/__init__.py +50 -29
  41. data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +103 -0
  42. data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
  43. data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
  44. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +2 -2
  45. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +21 -6
  46. data/vendor/pygments-main/pygments/lexers/_css_builtins.py +558 -0
  47. data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +10 -0
  48. data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
  49. data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +4932 -0
  50. data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +11 -18
  51. data/vendor/pygments-main/pygments/lexers/_mapping.py +71 -82
  52. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
  53. data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +58 -4
  54. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
  55. data/vendor/pygments-main/pygments/lexers/_php_builtins.py +408 -1835
  56. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +70 -8
  57. data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +666 -0
  58. data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1609 -0
  59. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +3 -3
  60. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +9 -18
  61. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +185 -94
  62. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
  63. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
  64. data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -1
  65. data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -1
  66. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
  67. data/vendor/pygments-main/pygments/lexers/actionscript.py +15 -14
  68. data/vendor/pygments-main/pygments/lexers/ada.py +144 -0
  69. data/vendor/pygments-main/pygments/lexers/agile.py +1 -1
  70. data/vendor/pygments-main/pygments/lexers/algebra.py +72 -9
  71. data/vendor/pygments-main/pygments/lexers/ambient.py +8 -7
  72. data/vendor/pygments-main/pygments/lexers/amdgpu.py +4 -3
  73. data/vendor/pygments-main/pygments/lexers/ampl.py +10 -8
  74. data/vendor/pygments-main/pygments/lexers/apdlexer.py +164 -20
  75. data/vendor/pygments-main/pygments/lexers/apl.py +6 -5
  76. data/vendor/pygments-main/pygments/lexers/archetype.py +23 -21
  77. data/vendor/pygments-main/pygments/lexers/arrow.py +10 -9
  78. data/vendor/pygments-main/pygments/lexers/arturo.py +250 -0
  79. data/vendor/pygments-main/pygments/lexers/asc.py +9 -5
  80. data/vendor/pygments-main/pygments/lexers/asm.py +68 -63
  81. data/vendor/pygments-main/pygments/lexers/automation.py +7 -5
  82. data/vendor/pygments-main/pygments/lexers/bare.py +20 -21
  83. data/vendor/pygments-main/pygments/lexers/basic.py +45 -41
  84. data/vendor/pygments-main/pygments/lexers/bdd.py +58 -0
  85. data/vendor/pygments-main/pygments/lexers/berry.py +99 -0
  86. data/vendor/pygments-main/pygments/lexers/bibtex.py +6 -6
  87. data/vendor/pygments-main/pygments/lexers/boa.py +4 -8
  88. data/vendor/pygments-main/pygments/lexers/business.py +18 -18
  89. data/vendor/pygments-main/pygments/lexers/c_cpp.py +80 -40
  90. data/vendor/pygments-main/pygments/lexers/c_like.py +21 -19
  91. data/vendor/pygments-main/pygments/lexers/capnproto.py +6 -8
  92. data/vendor/pygments-main/pygments/lexers/carbon.py +96 -0
  93. data/vendor/pygments-main/pygments/lexers/cddl.py +16 -33
  94. data/vendor/pygments-main/pygments/lexers/chapel.py +14 -9
  95. data/vendor/pygments-main/pygments/lexers/clean.py +3 -2
  96. data/vendor/pygments-main/pygments/lexers/comal.py +80 -0
  97. data/vendor/pygments-main/pygments/lexers/compiled.py +3 -2
  98. data/vendor/pygments-main/pygments/lexers/configs.py +235 -120
  99. data/vendor/pygments-main/pygments/lexers/console.py +5 -4
  100. data/vendor/pygments-main/pygments/lexers/cplint.py +44 -0
  101. data/vendor/pygments-main/pygments/lexers/crystal.py +22 -23
  102. data/vendor/pygments-main/pygments/lexers/csound.py +19 -17
  103. data/vendor/pygments-main/pygments/lexers/css.py +67 -159
  104. data/vendor/pygments-main/pygments/lexers/d.py +15 -12
  105. data/vendor/pygments-main/pygments/lexers/dalvik.py +14 -11
  106. data/vendor/pygments-main/pygments/lexers/data.py +119 -49
  107. data/vendor/pygments-main/pygments/lexers/dax.py +136 -0
  108. data/vendor/pygments-main/pygments/lexers/devicetree.py +9 -8
  109. data/vendor/pygments-main/pygments/lexers/diff.py +23 -19
  110. data/vendor/pygments-main/pygments/lexers/dotnet.py +216 -81
  111. data/vendor/pygments-main/pygments/lexers/dsls.py +86 -64
  112. data/vendor/pygments-main/pygments/lexers/dylan.py +16 -15
  113. data/vendor/pygments-main/pygments/lexers/ecl.py +46 -38
  114. data/vendor/pygments-main/pygments/lexers/eiffel.py +15 -10
  115. data/vendor/pygments-main/pygments/lexers/elm.py +12 -8
  116. data/vendor/pygments-main/pygments/lexers/elpi.py +165 -0
  117. data/vendor/pygments-main/pygments/lexers/email.py +21 -39
  118. data/vendor/pygments-main/pygments/lexers/erlang.py +21 -22
  119. data/vendor/pygments-main/pygments/lexers/esoteric.py +28 -30
  120. data/vendor/pygments-main/pygments/lexers/ezhil.py +10 -9
  121. data/vendor/pygments-main/pygments/lexers/factor.py +104 -83
  122. data/vendor/pygments-main/pygments/lexers/fantom.py +31 -29
  123. data/vendor/pygments-main/pygments/lexers/felix.py +18 -14
  124. data/vendor/pygments-main/pygments/lexers/fift.py +67 -0
  125. data/vendor/pygments-main/pygments/lexers/floscript.py +7 -7
  126. data/vendor/pygments-main/pygments/lexers/forth.py +8 -6
  127. data/vendor/pygments-main/pygments/lexers/fortran.py +16 -11
  128. data/vendor/pygments-main/pygments/lexers/foxpro.py +2 -2
  129. data/vendor/pygments-main/pygments/lexers/freefem.py +7 -10
  130. data/vendor/pygments-main/pygments/lexers/func.py +108 -0
  131. data/vendor/pygments-main/pygments/lexers/functional.py +1 -1
  132. data/vendor/pygments-main/pygments/lexers/futhark.py +12 -17
  133. data/vendor/pygments-main/pygments/lexers/gcodelexer.py +1 -2
  134. data/vendor/pygments-main/pygments/lexers/gdscript.py +76 -233
  135. data/vendor/pygments-main/pygments/lexers/go.py +12 -14
  136. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +22 -26
  137. data/vendor/pygments-main/pygments/lexers/graph.py +36 -15
  138. data/vendor/pygments-main/pygments/lexers/graphics.py +37 -38
  139. data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -1
  140. data/vendor/pygments-main/pygments/lexers/gsql.py +39 -27
  141. data/vendor/pygments-main/pygments/lexers/haskell.py +73 -71
  142. data/vendor/pygments-main/pygments/lexers/haxe.py +13 -11
  143. data/vendor/pygments-main/pygments/lexers/hdl.py +31 -34
  144. data/vendor/pygments-main/pygments/lexers/hexdump.py +21 -21
  145. data/vendor/pygments-main/pygments/lexers/html.py +11 -19
  146. data/vendor/pygments-main/pygments/lexers/idl.py +10 -5
  147. data/vendor/pygments-main/pygments/lexers/igor.py +3 -2
  148. data/vendor/pygments-main/pygments/lexers/inferno.py +9 -8
  149. data/vendor/pygments-main/pygments/lexers/installers.py +39 -33
  150. data/vendor/pygments-main/pygments/lexers/int_fiction.py +35 -20
  151. data/vendor/pygments-main/pygments/lexers/iolang.py +9 -9
  152. data/vendor/pygments-main/pygments/lexers/j.py +20 -13
  153. data/vendor/pygments-main/pygments/lexers/javascript.py +183 -149
  154. data/vendor/pygments-main/pygments/lexers/jmespath.py +68 -0
  155. data/vendor/pygments-main/pygments/lexers/jslt.py +4 -3
  156. data/vendor/pygments-main/pygments/lexers/jsonnet.py +168 -0
  157. data/vendor/pygments-main/pygments/lexers/julia.py +44 -32
  158. data/vendor/pygments-main/pygments/lexers/jvm.py +161 -140
  159. data/vendor/pygments-main/pygments/lexers/kuin.py +93 -59
  160. data/vendor/pygments-main/pygments/lexers/lilypond.py +226 -0
  161. data/vendor/pygments-main/pygments/lexers/lisp.py +244 -107
  162. data/vendor/pygments-main/pygments/lexers/macaulay2.py +1739 -0
  163. data/vendor/pygments-main/pygments/lexers/make.py +21 -16
  164. data/vendor/pygments-main/pygments/lexers/markup.py +752 -11
  165. data/vendor/pygments-main/pygments/lexers/math.py +1 -1
  166. data/vendor/pygments-main/pygments/lexers/matlab.py +18 -3
  167. data/vendor/pygments-main/pygments/lexers/maxima.py +85 -0
  168. data/vendor/pygments-main/pygments/lexers/meson.py +10 -25
  169. data/vendor/pygments-main/pygments/lexers/mime.py +2 -2
  170. data/vendor/pygments-main/pygments/lexers/minecraft.py +394 -0
  171. data/vendor/pygments-main/pygments/lexers/mips.py +128 -0
  172. data/vendor/pygments-main/pygments/lexers/ml.py +9 -6
  173. data/vendor/pygments-main/pygments/lexers/modeling.py +12 -8
  174. data/vendor/pygments-main/pygments/lexers/modula2.py +3 -2
  175. data/vendor/pygments-main/pygments/lexers/monte.py +3 -2
  176. data/vendor/pygments-main/pygments/lexers/mosel.py +1 -1
  177. data/vendor/pygments-main/pygments/lexers/ncl.py +1 -1
  178. data/vendor/pygments-main/pygments/lexers/nimrod.py +62 -20
  179. data/vendor/pygments-main/pygments/lexers/nit.py +3 -2
  180. data/vendor/pygments-main/pygments/lexers/nix.py +5 -5
  181. data/vendor/pygments-main/pygments/lexers/oberon.py +2 -2
  182. data/vendor/pygments-main/pygments/lexers/objective.py +6 -4
  183. data/vendor/pygments-main/pygments/lexers/ooc.py +3 -2
  184. data/vendor/pygments-main/pygments/lexers/other.py +1 -1
  185. data/vendor/pygments-main/pygments/lexers/parasail.py +3 -2
  186. data/vendor/pygments-main/pygments/lexers/parsers.py +23 -21
  187. data/vendor/pygments-main/pygments/lexers/pascal.py +196 -198
  188. data/vendor/pygments-main/pygments/lexers/pawn.py +1 -1
  189. data/vendor/pygments-main/pygments/lexers/perl.py +17 -15
  190. data/vendor/pygments-main/pygments/lexers/phix.py +364 -0
  191. data/vendor/pygments-main/pygments/lexers/php.py +35 -20
  192. data/vendor/pygments-main/pygments/lexers/pointless.py +3 -2
  193. data/vendor/pygments-main/pygments/lexers/pony.py +1 -1
  194. data/vendor/pygments-main/pygments/lexers/praat.py +41 -38
  195. data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
  196. data/vendor/pygments-main/pygments/lexers/prolog.py +7 -8
  197. data/vendor/pygments-main/pygments/lexers/promql.py +5 -12
  198. data/vendor/pygments-main/pygments/lexers/python.py +145 -119
  199. data/vendor/pygments-main/pygments/lexers/q.py +188 -0
  200. data/vendor/pygments-main/pygments/lexers/qlik.py +117 -0
  201. data/vendor/pygments-main/pygments/lexers/qvt.py +1 -1
  202. data/vendor/pygments-main/pygments/lexers/r.py +4 -4
  203. data/vendor/pygments-main/pygments/lexers/rdf.py +3 -3
  204. data/vendor/pygments-main/pygments/lexers/rebol.py +1 -12
  205. data/vendor/pygments-main/pygments/lexers/resource.py +1 -1
  206. data/vendor/pygments-main/pygments/lexers/ride.py +3 -2
  207. data/vendor/pygments-main/pygments/lexers/rita.py +43 -0
  208. data/vendor/pygments-main/pygments/lexers/rnc.py +3 -2
  209. data/vendor/pygments-main/pygments/lexers/roboconf.py +3 -3
  210. data/vendor/pygments-main/pygments/lexers/robotframework.py +6 -5
  211. data/vendor/pygments-main/pygments/lexers/ruby.py +24 -24
  212. data/vendor/pygments-main/pygments/lexers/rust.py +3 -2
  213. data/vendor/pygments-main/pygments/lexers/sas.py +2 -2
  214. data/vendor/pygments-main/pygments/lexers/savi.py +170 -0
  215. data/vendor/pygments-main/pygments/lexers/scdoc.py +4 -7
  216. data/vendor/pygments-main/pygments/lexers/scripting.py +24 -21
  217. data/vendor/pygments-main/pygments/lexers/sgf.py +6 -6
  218. data/vendor/pygments-main/pygments/lexers/shell.py +29 -21
  219. data/vendor/pygments-main/pygments/lexers/sieve.py +14 -4
  220. data/vendor/pygments-main/pygments/lexers/slash.py +1 -1
  221. data/vendor/pygments-main/pygments/lexers/smalltalk.py +5 -3
  222. data/vendor/pygments-main/pygments/lexers/smithy.py +5 -6
  223. data/vendor/pygments-main/pygments/lexers/smv.py +1 -1
  224. data/vendor/pygments-main/pygments/lexers/snobol.py +1 -1
  225. data/vendor/pygments-main/pygments/lexers/solidity.py +3 -7
  226. data/vendor/pygments-main/pygments/lexers/sophia.py +103 -0
  227. data/vendor/pygments-main/pygments/lexers/special.py +2 -5
  228. data/vendor/pygments-main/pygments/lexers/spice.py +71 -0
  229. data/vendor/pygments-main/pygments/lexers/sql.py +212 -17
  230. data/vendor/pygments-main/pygments/lexers/srcinfo.py +62 -0
  231. data/vendor/pygments-main/pygments/lexers/stata.py +4 -3
  232. data/vendor/pygments-main/pygments/lexers/supercollider.py +4 -3
  233. data/vendor/pygments-main/pygments/lexers/tal.py +74 -0
  234. data/vendor/pygments-main/pygments/lexers/tcl.py +21 -16
  235. data/vendor/pygments-main/pygments/lexers/teal.py +9 -8
  236. data/vendor/pygments-main/pygments/lexers/templates.py +62 -29
  237. data/vendor/pygments-main/pygments/lexers/teraterm.py +12 -20
  238. data/vendor/pygments-main/pygments/lexers/testing.py +6 -2
  239. data/vendor/pygments-main/pygments/lexers/text.py +3 -2
  240. data/vendor/pygments-main/pygments/lexers/textedit.py +41 -7
  241. data/vendor/pygments-main/pygments/lexers/textfmts.py +7 -5
  242. data/vendor/pygments-main/pygments/lexers/theorem.py +42 -36
  243. data/vendor/pygments-main/pygments/lexers/thingsdb.py +2 -4
  244. data/vendor/pygments-main/pygments/lexers/tlb.py +57 -0
  245. data/vendor/pygments-main/pygments/lexers/tnt.py +3 -4
  246. data/vendor/pygments-main/pygments/lexers/trafficscript.py +2 -4
  247. data/vendor/pygments-main/pygments/lexers/typoscript.py +2 -3
  248. data/vendor/pygments-main/pygments/lexers/ul4.py +267 -0
  249. data/vendor/pygments-main/pygments/lexers/unicon.py +1 -1
  250. data/vendor/pygments-main/pygments/lexers/urbi.py +4 -4
  251. data/vendor/pygments-main/pygments/lexers/usd.py +2 -1
  252. data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
  253. data/vendor/pygments-main/pygments/lexers/verification.py +4 -3
  254. data/vendor/pygments-main/pygments/lexers/web.py +1 -1
  255. data/vendor/pygments-main/pygments/lexers/webassembly.py +5 -5
  256. data/vendor/pygments-main/pygments/lexers/webidl.py +2 -1
  257. data/vendor/pygments-main/pygments/lexers/webmisc.py +90 -71
  258. data/vendor/pygments-main/pygments/lexers/wgsl.py +407 -0
  259. data/vendor/pygments-main/pygments/lexers/whiley.py +2 -1
  260. data/vendor/pygments-main/pygments/lexers/wowtoc.py +120 -0
  261. data/vendor/pygments-main/pygments/lexers/wren.py +99 -0
  262. data/vendor/pygments-main/pygments/lexers/x10.py +5 -6
  263. data/vendor/pygments-main/pygments/lexers/xorg.py +3 -2
  264. data/vendor/pygments-main/pygments/lexers/yang.py +6 -5
  265. data/vendor/pygments-main/pygments/lexers/zig.py +3 -2
  266. data/vendor/pygments-main/pygments/modeline.py +1 -1
  267. data/vendor/pygments-main/pygments/plugin.py +28 -9
  268. data/vendor/pygments-main/pygments/regexopt.py +1 -1
  269. data/vendor/pygments-main/pygments/scanner.py +2 -2
  270. data/vendor/pygments-main/pygments/sphinxext.py +63 -1
  271. data/vendor/pygments-main/pygments/style.py +7 -1
  272. data/vendor/pygments-main/pygments/styles/__init__.py +19 -5
  273. data/vendor/pygments-main/pygments/styles/abap.py +2 -2
  274. data/vendor/pygments-main/pygments/styles/algol.py +1 -2
  275. data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -2
  276. data/vendor/pygments-main/pygments/styles/arduino.py +2 -3
  277. data/vendor/pygments-main/pygments/styles/autumn.py +1 -3
  278. data/vendor/pygments-main/pygments/styles/borland.py +1 -3
  279. data/vendor/pygments-main/pygments/styles/bw.py +1 -2
  280. data/vendor/pygments-main/pygments/styles/colorful.py +1 -3
  281. data/vendor/pygments-main/pygments/styles/default.py +13 -14
  282. data/vendor/pygments-main/pygments/styles/dracula.py +102 -0
  283. data/vendor/pygments-main/pygments/styles/emacs.py +1 -2
  284. data/vendor/pygments-main/pygments/styles/friendly.py +1 -2
  285. data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +75 -0
  286. data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
  287. data/vendor/pygments-main/pygments/styles/gh_dark.py +107 -0
  288. data/vendor/pygments-main/pygments/styles/gruvbox.py +4 -2
  289. data/vendor/pygments-main/pygments/styles/igor.py +1 -2
  290. data/vendor/pygments-main/pygments/styles/inkpot.py +3 -2
  291. data/vendor/pygments-main/pygments/styles/lilypond.py +56 -0
  292. data/vendor/pygments-main/pygments/styles/lovelace.py +1 -3
  293. data/vendor/pygments-main/pygments/styles/manni.py +1 -1
  294. data/vendor/pygments-main/pygments/styles/material.py +1 -2
  295. data/vendor/pygments-main/pygments/styles/monokai.py +3 -3
  296. data/vendor/pygments-main/pygments/styles/murphy.py +1 -3
  297. data/vendor/pygments-main/pygments/styles/native.py +11 -11
  298. data/vendor/pygments-main/pygments/styles/nord.py +150 -0
  299. data/vendor/pygments-main/pygments/styles/onedark.py +59 -0
  300. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -6
  301. data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -6
  302. data/vendor/pygments-main/pygments/styles/pastie.py +1 -3
  303. data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
  304. data/vendor/pygments-main/pygments/styles/rainbow_dash.py +3 -3
  305. data/vendor/pygments-main/pygments/styles/rrt.py +3 -2
  306. data/vendor/pygments-main/pygments/styles/sas.py +2 -4
  307. data/vendor/pygments-main/pygments/styles/solarized.py +1 -1
  308. data/vendor/pygments-main/pygments/styles/staroffice.py +26 -0
  309. data/vendor/pygments-main/pygments/styles/stata_dark.py +4 -6
  310. data/vendor/pygments-main/pygments/styles/stata_light.py +1 -2
  311. data/vendor/pygments-main/pygments/styles/tango.py +2 -3
  312. data/vendor/pygments-main/pygments/styles/trac.py +1 -3
  313. data/vendor/pygments-main/pygments/styles/vim.py +1 -2
  314. data/vendor/pygments-main/pygments/styles/vs.py +1 -2
  315. data/vendor/pygments-main/pygments/styles/xcode.py +1 -3
  316. data/vendor/pygments-main/pygments/styles/zenburn.py +4 -6
  317. data/vendor/pygments-main/pygments/token.py +2 -1
  318. data/vendor/pygments-main/pygments/unistring.py +4 -6
  319. data/vendor/pygments-main/pygments/util.py +27 -5
  320. metadata +59 -14
  321. data/vendor/pygments-main/Pygments-2.10.0.dist-info/RECORD +0 -524
  322. /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/INSTALLER +0 -0
  323. /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/REQUESTED +0 -0
  324. /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/top_level.txt +0 -0
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for assembly languages.
6
6
 
7
- :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -15,7 +15,7 @@ from pygments.lexer import RegexLexer, include, bygroups, using, words, \
15
15
  from pygments.lexers.c_cpp import CppLexer, CLexer
16
16
  from pygments.lexers.d import DLexer
17
17
  from pygments.token import Text, Name, Number, String, Comment, Punctuation, \
18
- Other, Keyword, Operator, Literal
18
+ Other, Keyword, Operator, Whitespace
19
19
 
20
20
  __all__ = ['GasLexer', 'ObjdumpLexer', 'DObjdumpLexer', 'CppObjdumpLexer',
21
21
  'CObjdumpLexer', 'HsailLexer', 'LlvmLexer', 'LlvmMirBodyLexer',
@@ -37,7 +37,7 @@ class GasLexer(RegexLexer):
37
37
  char = r'[\w$.@-]'
38
38
  identifier = r'(?:[a-zA-Z$_]' + char + r'*|\.' + char + '+)'
39
39
  number = r'(?:0[xX][a-fA-F0-9]+|#?-?\d+)'
40
- register = '%' + identifier
40
+ register = '%' + identifier + r'\b'
41
41
 
42
42
  tokens = {
43
43
  'root': [
@@ -54,7 +54,7 @@ class GasLexer(RegexLexer):
54
54
  ('@' + identifier, Name.Attribute),
55
55
  (number, Number.Integer),
56
56
  (register, Name.Variable),
57
- (r'[\r\n]+', Text, '#pop'),
57
+ (r'[\r\n]+', Whitespace, '#pop'),
58
58
  (r'([;#]|//).*?\n', Comment.Single, '#pop'),
59
59
  (r'/[*].*?[*]/', Comment.Multiline),
60
60
  (r'/[*].*?\n[\w\W]*?[*]/', Comment.Multiline, '#pop'),
@@ -80,7 +80,7 @@ class GasLexer(RegexLexer):
80
80
  # Numeric constants
81
81
  ('$'+number, Number.Integer),
82
82
  (r"$'(.|\\')'", String.Char),
83
- (r'[\r\n]+', Text, '#pop'),
83
+ (r'[\r\n]+', Whitespace, '#pop'),
84
84
  (r'([;#]|//).*?\n', Comment.Single, '#pop'),
85
85
  (r'/[*].*?[*]/', Comment.Multiline),
86
86
  (r'/[*].*?\n[\w\W]*?[*]/', Comment.Multiline, '#pop'),
@@ -89,13 +89,13 @@ class GasLexer(RegexLexer):
89
89
  include('whitespace')
90
90
  ],
91
91
  'whitespace': [
92
- (r'\n', Text),
93
- (r'\s+', Text),
92
+ (r'\n', Whitespace),
93
+ (r'\s+', Whitespace),
94
94
  (r'([;#]|//).*?\n', Comment.Single),
95
95
  (r'/[*][\w\W]*?[*]/', Comment.Multiline)
96
96
  ],
97
97
  'punctuation': [
98
- (r'[-*,.()\[\]!:]+', Punctuation)
98
+ (r'[-*,.()\[\]!:{}]+', Punctuation)
99
99
  ]
100
100
  }
101
101
 
@@ -122,33 +122,37 @@ def _objdump_lexer_tokens(asm_lexer):
122
122
  # Function labels
123
123
  # (With offset)
124
124
  ('('+hex_re+'+)( )(<)(.*?)([-+])(0[xX][A-Za-z0-9]+)(>:)$',
125
- bygroups(Number.Hex, Text, Punctuation, Name.Function,
125
+ bygroups(Number.Hex, Whitespace, Punctuation, Name.Function,
126
126
  Punctuation, Number.Hex, Punctuation)),
127
127
  # (Without offset)
128
128
  ('('+hex_re+'+)( )(<)(.*?)(>:)$',
129
- bygroups(Number.Hex, Text, Punctuation, Name.Function,
129
+ bygroups(Number.Hex, Whitespace, Punctuation, Name.Function,
130
130
  Punctuation)),
131
131
  # Code line with disassembled instructions
132
132
  ('( *)('+hex_re+r'+:)(\t)((?:'+hex_re+hex_re+' )+)( *\t)([a-zA-Z].*?)$',
133
- bygroups(Text, Name.Label, Text, Number.Hex, Text,
133
+ bygroups(Whitespace, Name.Label, Whitespace, Number.Hex, Whitespace,
134
+ using(asm_lexer))),
135
+ # Code line without raw instructions (objdump --no-show-raw-insn)
136
+ ('( *)('+hex_re+r'+:)( *\t)([a-zA-Z].*?)$',
137
+ bygroups(Whitespace, Name.Label, Whitespace,
134
138
  using(asm_lexer))),
135
139
  # Code line with ascii
136
140
  ('( *)('+hex_re+r'+:)(\t)((?:'+hex_re+hex_re+' )+)( *)(.*?)$',
137
- bygroups(Text, Name.Label, Text, Number.Hex, Text, String)),
141
+ bygroups(Whitespace, Name.Label, Whitespace, Number.Hex, Whitespace, String)),
138
142
  # Continued code line, only raw opcodes without disassembled
139
143
  # instruction
140
144
  ('( *)('+hex_re+r'+:)(\t)((?:'+hex_re+hex_re+' )+)$',
141
- bygroups(Text, Name.Label, Text, Number.Hex)),
145
+ bygroups(Whitespace, Name.Label, Whitespace, Number.Hex)),
142
146
  # Skipped a few bytes
143
147
  (r'\t\.\.\.$', Text),
144
148
  # Relocation line
145
149
  # (With offset)
146
150
  (r'(\t\t\t)('+hex_re+r'+:)( )([^\t]+)(\t)(.*?)([-+])(0x'+hex_re+'+)$',
147
- bygroups(Text, Name.Label, Text, Name.Property, Text,
151
+ bygroups(Whitespace, Name.Label, Whitespace, Name.Property, Whitespace,
148
152
  Name.Constant, Punctuation, Number.Hex)),
149
153
  # (Without offset)
150
154
  (r'(\t\t\t)('+hex_re+r'+:)( )([^\t]+)(\t)(.*?)$',
151
- bygroups(Text, Name.Label, Text, Name.Property, Text,
155
+ bygroups(Whitespace, Name.Label, Whitespace, Name.Property, Whitespace,
152
156
  Name.Constant)),
153
157
  (r'[^\n]+\n', Other)
154
158
  ]
@@ -221,7 +225,7 @@ class HsailLexer(RegexLexer):
221
225
  identifier = r'[a-zA-Z_][\w.]*'
222
226
  # Registers
223
227
  register_number = r'[0-9]+'
224
- register = r'(\$(c|s|d|q)' + register_number + ')'
228
+ register = r'(\$(c|s|d|q)' + register_number + r')\b'
225
229
  # Qualifiers
226
230
  alignQual = r'(align\(\d+\))'
227
231
  widthQual = r'(width\((\d+|all)\))'
@@ -270,7 +274,7 @@ class HsailLexer(RegexLexer):
270
274
  (r'[=<>{}\[\]()*.,:;!]|x\b', Punctuation)
271
275
  ],
272
276
  'whitespace': [
273
- (r'(\n|\s)+', Text),
277
+ (r'(\n|\s)+', Whitespace),
274
278
  ],
275
279
  'comments': [
276
280
  (r'/\*.*?\*/', Comment.Multiline),
@@ -346,6 +350,7 @@ class LlvmLexer(RegexLexer):
346
350
  For LLVM assembly code.
347
351
  """
348
352
  name = 'LLVM'
353
+ url = 'https://llvm.org/docs/LangRef.html'
349
354
  aliases = ['llvm']
350
355
  filenames = ['*.ll']
351
356
  mimetypes = ['text/x-llvm']
@@ -379,7 +384,7 @@ class LlvmLexer(RegexLexer):
379
384
  (r'[=<>{}\[\]()*.,!]|x\b', Punctuation)
380
385
  ],
381
386
  'whitespace': [
382
- (r'(\n|\s)+', Text),
387
+ (r'(\n|\s+)+', Whitespace),
383
388
  (r';.*?\n', Comment)
384
389
  ],
385
390
  'keyword': [
@@ -473,7 +478,7 @@ class LlvmLexer(RegexLexer):
473
478
  # Types
474
479
  (words(('void', 'half', 'bfloat', 'float', 'double', 'fp128',
475
480
  'x86_fp80', 'ppc_fp128', 'label', 'metadata', 'x86_mmx',
476
- 'x86_amx', 'token')),
481
+ 'x86_amx', 'token', 'ptr')),
477
482
  Keyword.Type),
478
483
 
479
484
  # Integer types
@@ -486,11 +491,10 @@ class LlvmMirBodyLexer(RegexLexer):
486
491
  """
487
492
  For LLVM MIR examples without the YAML wrapper.
488
493
 
489
- For more information on LLVM MIR see https://llvm.org/docs/MIRLangRef.html.
490
-
491
494
  .. versionadded:: 2.6
492
495
  """
493
496
  name = 'LLVM-MIR Body'
497
+ url = 'https://llvm.org/docs/MIRLangRef.html'
494
498
  aliases = ['llvm-mir-body']
495
499
  filenames = []
496
500
  mimetypes = []
@@ -555,13 +559,13 @@ class LlvmMirBodyLexer(RegexLexer):
555
559
  # Flags
556
560
  (words(('killed', 'implicit')), Keyword),
557
561
  # ConstantInt values
558
- (r'i[0-9]+ +', Keyword.Type, 'constantint'),
562
+ (r'(i[0-9]+)( +)', bygroups(Keyword.Type, Whitespace), 'constantint'),
559
563
  # ConstantFloat values
560
564
  (r'(half|float|double) +', Keyword.Type, 'constantfloat'),
561
565
  # Bare immediates
562
566
  include('integer'),
563
567
  # MMO's
564
- (r':: *', Operator, 'mmo'),
568
+ (r'(::)( *)', bygroups(Operator, Whitespace), 'mmo'),
565
569
  # MIR Comments
566
570
  (r';.*', Comment),
567
571
  # If we get here, assume it's a target instruction
@@ -581,29 +585,29 @@ class LlvmMirBodyLexer(RegexLexer):
581
585
  ],
582
586
  'vreg': [
583
587
  # The bank or class if there is one
584
- (r' *:(?!:)', Keyword, ('#pop', 'vreg_bank_or_class')),
588
+ (r'( *)(:(?!:))', bygroups(Whitespace, Keyword), ('#pop', 'vreg_bank_or_class')),
585
589
  # The LLT if there is one
586
- (r' *\(', Text, 'vreg_type'),
590
+ (r'( *)(\()', bygroups(Whitespace, Text), 'vreg_type'),
587
591
  (r'(?=.)', Text, '#pop'),
588
592
  ],
589
593
  'vreg_bank_or_class': [
590
594
  # The unassigned bank/class
591
- (r' *_', Name.Variable.Magic),
592
- (r' *[a-zA-Z0-9_]+', Name.Variable),
595
+ (r'( *)(_)', bygroups(Whitespace, Name.Variable.Magic)),
596
+ (r'( *)([a-zA-Z0-9_]+)', bygroups(Whitespace, Name.Variable)),
593
597
  # The LLT if there is one
594
- (r' *\(', Text, 'vreg_type'),
598
+ (r'( *)(\()', bygroups(Whitespace, Text), 'vreg_type'),
595
599
  (r'(?=.)', Text, '#pop'),
596
600
  ],
597
601
  'vreg_type': [
598
602
  # Scalar and pointer types
599
- (r' *[sp][0-9]+', Keyword.Type),
600
- (r' *<[0-9]+ *x *[sp][0-9]+>', Keyword.Type),
603
+ (r'( *)([sp][0-9]+)', bygroups(Whitespace, Keyword.Type)),
604
+ (r'( *)(<[0-9]+ *x *[sp][0-9]+>)', bygroups(Whitespace, Keyword.Type)),
601
605
  (r'\)', Text, '#pop'),
602
606
  (r'(?=.)', Text, '#pop'),
603
607
  ],
604
608
  'mmo': [
605
609
  (r'\(', Text),
606
- (r' +', Text),
610
+ (r' +', Whitespace),
607
611
  (words(('load', 'store', 'on', 'into', 'from', 'align', 'monotonic',
608
612
  'acquire', 'release', 'acq_rel', 'seq_cst')),
609
613
  Keyword),
@@ -632,11 +636,10 @@ class LlvmMirLexer(RegexLexer):
632
636
  see the state of the compilation process at various points, as well as test
633
637
  individual pieces of the compiler.
634
638
 
635
- For more information on LLVM MIR see https://llvm.org/docs/MIRLangRef.html.
636
-
637
639
  .. versionadded:: 2.6
638
640
  """
639
641
  name = 'LLVM-MIR'
642
+ url = 'https://llvm.org/docs/MIRLangRef.html'
640
643
  aliases = ['llvm-mir']
641
644
  filenames = ['*.mir']
642
645
 
@@ -677,7 +680,7 @@ class LlvmMirLexer(RegexLexer):
677
680
  (r'body: *\|', Keyword, 'llvm_mir_body'),
678
681
  # Consume everything else
679
682
  (r'.+', Text),
680
- (r'\n', Text),
683
+ (r'\n', Whitespace),
681
684
  ],
682
685
  'name': [
683
686
  (r'[^\n]+', Name),
@@ -710,7 +713,7 @@ class NasmLexer(RegexLexer):
710
713
  """
711
714
  name = 'NASM'
712
715
  aliases = ['nasm']
713
- filenames = ['*.asm', '*.ASM']
716
+ filenames = ['*.asm', '*.ASM', '*.nasm']
714
717
  mimetypes = ['text/x-nasm']
715
718
 
716
719
  # Tasm uses the same file endings, but TASM is not as common as NASM, so
@@ -725,16 +728,17 @@ class NasmLexer(RegexLexer):
725
728
  floatn = decn + r'\.e?' + decn
726
729
  string = r'"(\\"|[^"\n])*"|' + r"'(\\'|[^'\n])*'|" + r"`(\\`|[^`\n])*`"
727
730
  declkw = r'(?:res|d)[bwdqt]|times'
728
- register = (r'r[0-9][0-5]?[bwd]?|'
731
+ register = (r'(r[0-9][0-5]?[bwd]?|'
729
732
  r'[a-d][lh]|[er]?[a-d]x|[er]?[sb]p|[er]?[sd]i|[c-gs]s|st[0-7]|'
730
- r'mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7]')
731
- wordop = r'seg|wrt|strict'
733
+ r'mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7]|k[0-7]|'
734
+ r'[xyz]mm(?:[12][0-9]?|3[01]?|[04-9]))\b')
735
+ wordop = r'seg|wrt|strict|rel|abs'
732
736
  type = r'byte|[dq]?word'
733
737
  # Directives must be followed by whitespace, otherwise CPU will match
734
738
  # cpuid for instance.
735
739
  directives = (r'(?:BITS|USE16|USE32|SECTION|SEGMENT|ABSOLUTE|EXTERN|GLOBAL|'
736
740
  r'ORG|ALIGN|STRUC|ENDSTRUC|COMMON|CPU|GROUP|UPPERCASE|IMPORT|'
737
- r'EXPORT|LIBRARY|MODULE)\s+')
741
+ r'EXPORT|LIBRARY|MODULE)(?=\s)')
738
742
 
739
743
  flags = re.IGNORECASE | re.MULTILINE
740
744
  tokens = {
@@ -743,12 +747,12 @@ class NasmLexer(RegexLexer):
743
747
  include('whitespace'),
744
748
  (identifier + ':', Name.Label),
745
749
  (r'(%s)(\s+)(equ)' % identifier,
746
- bygroups(Name.Constant, Keyword.Declaration, Keyword.Declaration),
750
+ bygroups(Name.Constant, Whitespace, Keyword.Declaration),
747
751
  'instruction-args'),
748
752
  (directives, Keyword, 'instruction-args'),
749
753
  (declkw, Keyword.Declaration, 'instruction-args'),
750
754
  (identifier, Name.Function, 'instruction-args'),
751
- (r'[\r\n]+', Text)
755
+ (r'[\r\n]+', Whitespace)
752
756
  ],
753
757
  'instruction-args': [
754
758
  (string, String),
@@ -760,7 +764,7 @@ class NasmLexer(RegexLexer):
760
764
  include('punctuation'),
761
765
  (register, Name.Builtin),
762
766
  (identifier, Name.Variable),
763
- (r'[\r\n]+', Text, '#pop'),
767
+ (r'[\r\n]+', Whitespace, '#pop'),
764
768
  include('whitespace')
765
769
  ],
766
770
  'preproc': [
@@ -769,12 +773,13 @@ class NasmLexer(RegexLexer):
769
773
  (r'\n', Comment.Preproc, '#pop'),
770
774
  ],
771
775
  'whitespace': [
772
- (r'\n', Text),
773
- (r'[ \t]+', Text),
774
- (r';.*', Comment.Single)
776
+ (r'\n', Whitespace),
777
+ (r'[ \t]+', Whitespace),
778
+ (r';.*', Comment.Single),
779
+ (r'#.*', Comment.Single)
775
780
  ],
776
781
  'punctuation': [
777
- (r'[,():\[\]]+', Punctuation),
782
+ (r'[,{}():\[\]]+', Punctuation),
778
783
  (r'[&|^<>+*/%~-]+', Operator),
779
784
  (r'[$]+', Keyword.Constant),
780
785
  (wordop, Operator.Word),
@@ -819,9 +824,9 @@ class TasmLexer(RegexLexer):
819
824
  floatn = decn + r'\.e?' + decn
820
825
  string = r'"(\\"|[^"\n])*"|' + r"'(\\'|[^'\n])*'|" + r"`(\\`|[^`\n])*`"
821
826
  declkw = r'(?:res|d)[bwdqt]|times'
822
- register = (r'r[0-9][0-5]?[bwd]|'
827
+ register = (r'(r[0-9][0-5]?[bwd]|'
823
828
  r'[a-d][lh]|[er]?[a-d]x|[er]?[sb]p|[er]?[sd]i|[c-gs]s|st[0-7]|'
824
- r'mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7]')
829
+ r'mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7])\b')
825
830
  wordop = r'seg|wrt|strict'
826
831
  type = r'byte|[dq]?word'
827
832
  directives = (r'BITS|USE16|USE32|SECTION|SEGMENT|ABSOLUTE|EXTERN|GLOBAL|'
@@ -840,11 +845,11 @@ class TasmLexer(RegexLexer):
840
845
  (identifier + ':', Name.Label),
841
846
  (directives, Keyword, 'instruction-args'),
842
847
  (r'(%s)(\s+)(%s)' % (identifier, datatype),
843
- bygroups(Name.Constant, Keyword.Declaration, Keyword.Declaration),
848
+ bygroups(Name.Constant, Whitespace, Keyword.Declaration),
844
849
  'instruction-args'),
845
850
  (declkw, Keyword.Declaration, 'instruction-args'),
846
851
  (identifier, Name.Function, 'instruction-args'),
847
- (r'[\r\n]+', Text)
852
+ (r'[\r\n]+', Whitespace)
848
853
  ],
849
854
  'instruction-args': [
850
855
  (string, String),
@@ -856,9 +861,10 @@ class TasmLexer(RegexLexer):
856
861
  include('punctuation'),
857
862
  (register, Name.Builtin),
858
863
  (identifier, Name.Variable),
859
- # Do not match newline when it's preceeded by a backslash
860
- (r'(\\\s*)(;.*)([\r\n])', bygroups(Text, Comment.Single, Text)),
861
- (r'[\r\n]+', Text, '#pop'),
864
+ # Do not match newline when it's preceded by a backslash
865
+ (r'(\\)(\s*)(;.*)([\r\n])',
866
+ bygroups(Text, Whitespace, Comment.Single, Whitespace)),
867
+ (r'[\r\n]+', Whitespace, '#pop'),
862
868
  include('whitespace')
863
869
  ],
864
870
  'preproc': [
@@ -867,9 +873,9 @@ class TasmLexer(RegexLexer):
867
873
  (r'\n', Comment.Preproc, '#pop'),
868
874
  ],
869
875
  'whitespace': [
870
- (r'[\n\r]', Text),
871
- (r'\\[\n\r]', Text),
872
- (r'[ \t]+', Text),
876
+ (r'[\n\r]', Whitespace),
877
+ (r'(\\)([\n\r])', bygroups(Text, Whitespace)),
878
+ (r'[ \t]+', Whitespace),
873
879
  (r';.*', Comment.Single)
874
880
  ],
875
881
  'punctuation': [
@@ -902,7 +908,7 @@ class Ca65Lexer(RegexLexer):
902
908
  tokens = {
903
909
  'root': [
904
910
  (r';.*', Comment.Single),
905
- (r'\s+', Text),
911
+ (r'\s+', Whitespace),
906
912
  (r'[a-z_.@$][\w.@$]*:', Name.Label),
907
913
  (r'((ld|st)[axy]|(in|de)[cxy]|asl|lsr|ro[lr]|adc|sbc|cmp|cp[xy]'
908
914
  r'|cl[cvdi]|se[cdi]|jmp|jsr|bne|beq|bpl|bmi|bvc|bvs|bcc|bcs'
@@ -930,11 +936,10 @@ class Dasm16Lexer(RegexLexer):
930
936
  """
931
937
  For DCPU-16 Assembly.
932
938
 
933
- Check http://0x10c.com/doc/dcpu-16.txt
934
-
935
939
  .. versionadded:: 2.4
936
940
  """
937
941
  name = 'DASM16'
942
+ url = 'http://0x10c.com/doc/dcpu-16.txt'
938
943
  aliases = ['dasm16']
939
944
  filenames = ['*.dasm16', '*.dasm']
940
945
  mimetypes = ['text/x-dasm16']
@@ -983,7 +988,7 @@ class Dasm16Lexer(RegexLexer):
983
988
  (identifier + ':', Name.Label),
984
989
  (instruction, Name.Function, 'instruction-args'),
985
990
  (r'\.' + identifier, Name.Function, 'data-args'),
986
- (r'[\r\n]+', Text)
991
+ (r'[\r\n]+', Whitespace)
987
992
  ],
988
993
 
989
994
  'numeric' : [
@@ -1005,7 +1010,7 @@ class Dasm16Lexer(RegexLexer):
1005
1010
  ],
1006
1011
 
1007
1012
  'instruction-line' : [
1008
- (r'[\r\n]+', Text, '#pop'),
1013
+ (r'[\r\n]+', Whitespace, '#pop'),
1009
1014
  (r';.*?$', Comment, '#pop'),
1010
1015
  include('whitespace')
1011
1016
  ],
@@ -1025,8 +1030,8 @@ class Dasm16Lexer(RegexLexer):
1025
1030
  ],
1026
1031
 
1027
1032
  'whitespace': [
1028
- (r'\n', Text),
1029
- (r'\s+', Text),
1033
+ (r'\n', Whitespace),
1034
+ (r'\s+', Whitespace),
1030
1035
  (r';.*?\n', Comment)
1031
1036
  ],
1032
1037
  }
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for automation scripting languages.
6
6
 
7
- :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -17,11 +17,12 @@ __all__ = ['AutohotkeyLexer', 'AutoItLexer']
17
17
 
18
18
  class AutohotkeyLexer(RegexLexer):
19
19
  """
20
- For `autohotkey <http://www.autohotkey.com/>`_ source code.
20
+ For autohotkey source code.
21
21
 
22
22
  .. versionadded:: 1.4
23
23
  """
24
24
  name = 'autohotkey'
25
+ url = 'http://www.autohotkey.com/'
25
26
  aliases = ['autohotkey', 'ahk']
26
27
  filenames = ['*.ahk', '*.ahkl']
27
28
  mimetypes = ['text/x-autohotkey']
@@ -49,8 +50,8 @@ class AutohotkeyLexer(RegexLexer):
49
50
  ],
50
51
  'incomment': [
51
52
  (r'^\s*\*/', Comment.Multiline, '#pop'),
52
- (r'[^*/]', Comment.Multiline),
53
- (r'[*/]', Comment.Multiline)
53
+ (r'[^*]+', Comment.Multiline),
54
+ (r'\*', Comment.Multiline)
54
55
  ],
55
56
  'incontinuation': [
56
57
  (r'^\s*\)', Generic, '#pop'),
@@ -194,7 +195,7 @@ class AutohotkeyLexer(RegexLexer):
194
195
 
195
196
  class AutoItLexer(RegexLexer):
196
197
  """
197
- For `AutoIt <http://www.autoitscript.com/site/autoit/>`_ files.
198
+ For AutoIt files.
198
199
 
199
200
  AutoIt is a freeware BASIC-like scripting language
200
201
  designed for automating the Windows GUI and general scripting
@@ -202,6 +203,7 @@ class AutoItLexer(RegexLexer):
202
203
  .. versionadded:: 1.6
203
204
  """
204
205
  name = 'AutoIt'
206
+ url = 'http://www.autoitscript.com/site/autoit/'
205
207
  aliases = ['autoit']
206
208
  filenames = ['*.au3']
207
209
  mimetypes = ['text/x-autoit']
@@ -4,30 +4,27 @@
4
4
 
5
5
  Lexer for the BARE schema.
6
6
 
7
- :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
11
- import re
12
-
13
11
  from pygments.lexer import RegexLexer, words, bygroups
14
- from pygments.token import Text, Comment, Keyword, Name, Literal
12
+ from pygments.token import Text, Comment, Keyword, Name, Literal, Whitespace
15
13
 
16
14
  __all__ = ['BareLexer']
17
15
 
18
16
 
19
17
  class BareLexer(RegexLexer):
20
18
  """
21
- For `BARE schema <https://baremessages.org>`_ schema source.
19
+ For BARE schema source.
22
20
 
23
21
  .. versionadded:: 2.7
24
22
  """
25
23
  name = 'BARE'
24
+ url = 'https://baremessages.org'
26
25
  filenames = ['*.bare']
27
26
  aliases = ['bare']
28
27
 
29
- flags = re.MULTILINE | re.UNICODE
30
-
31
28
  keywords = [
32
29
  'type',
33
30
  'enum',
@@ -53,29 +50,30 @@ class BareLexer(RegexLexer):
53
50
 
54
51
  tokens = {
55
52
  'root': [
56
- (r'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+\{)',
57
- bygroups(Keyword, Text, Name.Class, Text), 'struct'),
58
- (r'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+\()',
59
- bygroups(Keyword, Text, Name.Class, Text), 'union'),
53
+ (r'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)(\{)',
54
+ bygroups(Keyword, Whitespace, Name.Class, Whitespace, Text), 'struct'),
55
+ (r'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)(\()',
56
+ bygroups(Keyword, Whitespace, Name.Class, Whitespace, Text), 'union'),
60
57
  (r'(type)(\s+)([A-Z][a-zA-Z0-9]+)(\s+)',
61
- bygroups(Keyword, Text, Name, Text), 'typedef'),
58
+ bygroups(Keyword, Whitespace, Name, Whitespace), 'typedef'),
62
59
  (r'(enum)(\s+)([A-Z][a-zA-Z0-9]+)(\s+\{)',
63
- bygroups(Keyword, Text, Name.Class, Text), 'enum'),
60
+ bygroups(Keyword, Whitespace, Name.Class, Whitespace), 'enum'),
64
61
  (r'#.*?$', Comment),
65
- (r'\s+', Text),
62
+ (r'\s+', Whitespace),
66
63
  ],
67
64
  'struct': [
68
65
  (r'\{', Text, '#push'),
69
66
  (r'\}', Text, '#pop'),
70
- (r'([a-zA-Z0-9]+)(:\s*)', bygroups(Name.Attribute, Text), 'typedef'),
71
- (r'\s+', Text),
67
+ (r'([a-zA-Z0-9]+)(:)(\s*)',
68
+ bygroups(Name.Attribute, Text, Whitespace), 'typedef'),
69
+ (r'\s+', Whitespace),
72
70
  ],
73
71
  'union': [
74
72
  (r'\)', Text, '#pop'),
75
- (r'\s*\|\s*', Text),
73
+ (r'(\s*)(\|)(\s*)', bygroups(Whitespace, Text, Whitespace)),
76
74
  (r'[A-Z][a-zA-Z0-9]+', Name.Class),
77
75
  (words(keywords), Keyword),
78
- (r'\s+', Text),
76
+ (r'\s+', Whitespace),
79
77
  ],
80
78
  'typedef': [
81
79
  (r'\[\]', Text),
@@ -89,15 +87,16 @@ class BareLexer(RegexLexer):
89
87
  (words(keywords), Keyword),
90
88
  (r'\n', Text, '#pop'),
91
89
  (r'\{', Text, 'struct'),
92
- (r'\s+', Text),
90
+ (r'\s+', Whitespace),
93
91
  (r'\d+', Literal),
94
92
  ],
95
93
  'enum': [
96
94
  (r'\{', Text, '#push'),
97
95
  (r'\}', Text, '#pop'),
98
- (r'([A-Z][A-Z0-9_]*)(\s*=\s*)(\d+)', bygroups(Name.Attribute, Text, Literal)),
96
+ (r'([A-Z][A-Z0-9_]*)(\s*=\s*)(\d+)',
97
+ bygroups(Name.Attribute, Text, Literal)),
99
98
  (r'([A-Z][A-Z0-9_]*)', bygroups(Name.Attribute)),
100
99
  (r'#.*?$', Comment),
101
- (r'\s+', Text),
100
+ (r'\s+', Whitespace),
102
101
  ],
103
102
  }