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,22 +4,20 @@
4
4
 
5
5
  Lexers for Ruby and related 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
 
11
11
  import re
12
12
 
13
13
  from pygments.lexer import Lexer, RegexLexer, ExtendedRegexLexer, include, \
14
- bygroups, default, LexerContext, do_insertions, words
14
+ bygroups, default, LexerContext, do_insertions, words, line_re
15
15
  from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
16
- Number, Punctuation, Error, Generic
16
+ Number, Punctuation, Error, Generic, Whitespace
17
17
  from pygments.util import shebang_matches
18
18
 
19
19
  __all__ = ['RubyLexer', 'RubyConsoleLexer', 'FancyLexer']
20
20
 
21
- line_re = re.compile('.*?\n')
22
-
23
21
 
24
22
  RUBY_OPERATORS = (
25
23
  '*', '**', '-', '+', '-@', '+@', '/', '%', '&', '|', '^', '`', '~',
@@ -29,13 +27,14 @@ RUBY_OPERATORS = (
29
27
 
30
28
  class RubyLexer(ExtendedRegexLexer):
31
29
  """
32
- For `Ruby <http://www.ruby-lang.org>`_ source code.
30
+ For Ruby source code.
33
31
  """
34
32
 
35
33
  name = 'Ruby'
34
+ url = 'http://www.ruby-lang.org'
36
35
  aliases = ['ruby', 'rb', 'duby']
37
36
  filenames = ['*.rb', '*.rbw', 'Rakefile', '*.rake', '*.gemspec',
38
- '*.rbx', '*.duby', 'Gemfile']
37
+ '*.rbx', '*.duby', 'Gemfile', 'Vagrantfile']
39
38
  mimetypes = ['text/x-ruby', 'application/x-ruby']
40
39
 
41
40
  flags = re.DOTALL | re.MULTILINE
@@ -178,11 +177,11 @@ class RubyLexer(ExtendedRegexLexer):
178
177
  # special forms of fancy strings after operators or
179
178
  # in method calls with braces
180
179
  (r'(?<=[-+/*%=<>&!^|~,(])(\s*)(%([\t ])(?:(?:\\\3|(?!\3).)*)\3)',
181
- bygroups(Text, String.Other, None)),
180
+ bygroups(Whitespace, String.Other, None)),
182
181
  # and because of fixed width lookbehinds the whole thing a
183
182
  # second time for line startings...
184
183
  (r'^(\s*)(%([\t ])(?:(?:\\\3|(?!\3).)*)\3)',
185
- bygroups(Text, String.Other, None)),
184
+ bygroups(Whitespace, String.Other, None)),
186
185
  # all regular fancy strings without qsw
187
186
  (r'(%([^a-zA-Z0-9\s]))((?:\\\2|(?!\2).)*)(\2)',
188
187
  intp_string_callback),
@@ -205,10 +204,10 @@ class RubyLexer(ExtendedRegexLexer):
205
204
  # start of function, class and module names
206
205
  (r'(module)(\s+)([a-zA-Z_]\w*'
207
206
  r'(?:::[a-zA-Z_]\w*)*)',
208
- bygroups(Keyword, Text, Name.Namespace)),
209
- (r'(def)(\s+)', bygroups(Keyword, Text), 'funcname'),
207
+ bygroups(Keyword, Whitespace, Name.Namespace)),
208
+ (r'(def)(\s+)', bygroups(Keyword, Whitespace), 'funcname'),
210
209
  (r'def(?=[*%&^`~+-/\[<>=])', Keyword, 'funcname'),
211
- (r'(class)(\s+)', bygroups(Keyword, Text), 'classname'),
210
+ (r'(class)(\s+)', bygroups(Keyword, Whitespace), 'classname'),
212
211
  # special methods
213
212
  (words((
214
213
  'initialize', 'new', 'loop', 'include', 'extend', 'raise', 'attr_reader',
@@ -282,7 +281,7 @@ class RubyLexer(ExtendedRegexLexer):
282
281
  # multiline regex (in method calls or subscripts)
283
282
  (r'(?<=\(|,|\[)/', String.Regex, 'multiline-regex'),
284
283
  # multiline regex (this time the funny no whitespace rule)
285
- (r'(\s+)(/)(?![\s=])', bygroups(Text, String.Regex),
284
+ (r'(\s+)(/)(?![\s=])', bygroups(Whitespace, String.Regex),
286
285
  'multiline-regex'),
287
286
  # lex numbers and ignore following regular expressions which
288
287
  # are division operators in fact (grrrr. i hate that. any
@@ -293,13 +292,13 @@ class RubyLexer(ExtendedRegexLexer):
293
292
  # stupid example:
294
293
  # x>=0?n[x]:""
295
294
  (r'(0_?[0-7]+(?:_[0-7]+)*)(\s*)([/?])?',
296
- bygroups(Number.Oct, Text, Operator)),
295
+ bygroups(Number.Oct, Whitespace, Operator)),
297
296
  (r'(0x[0-9A-Fa-f]+(?:_[0-9A-Fa-f]+)*)(\s*)([/?])?',
298
- bygroups(Number.Hex, Text, Operator)),
297
+ bygroups(Number.Hex, Whitespace, Operator)),
299
298
  (r'(0b[01]+(?:_[01]+)*)(\s*)([/?])?',
300
- bygroups(Number.Bin, Text, Operator)),
299
+ bygroups(Number.Bin, Whitespace, Operator)),
301
300
  (r'([\d]+(?:_\d+)*)(\s*)([/?])?',
302
- bygroups(Number.Integer, Text, Operator)),
301
+ bygroups(Number.Integer, Whitespace, Operator)),
303
302
  # Names
304
303
  (r'@@[a-zA-Z_]\w*', Name.Variable.Class),
305
304
  (r'@[a-zA-Z_]\w*', Name.Variable.Instance),
@@ -325,7 +324,7 @@ class RubyLexer(ExtendedRegexLexer):
325
324
  r'!~|&&?|\|\||\.{1,3})', Operator),
326
325
  (r'[-+/*%=<>&!^|~]=?', Operator),
327
326
  (r'[(){};,/?:\\]', Punctuation),
328
- (r'\s+', Text)
327
+ (r'\s+', Whitespace)
329
328
  ],
330
329
  'funcname': [
331
330
  (r'\(', Punctuation, 'defexpr'),
@@ -439,7 +438,7 @@ class RubyConsoleLexer(Lexer):
439
438
 
440
439
  class FancyLexer(RegexLexer):
441
440
  """
442
- Pygments Lexer For `Fancy <http://www.fancy-lang.org/>`_.
441
+ Pygments Lexer For Fancy.
443
442
 
444
443
  Fancy is a self-hosted, pure object-oriented, dynamic,
445
444
  class-based, concurrent general-purpose programming language
@@ -448,6 +447,7 @@ class FancyLexer(RegexLexer):
448
447
  .. versionadded:: 1.5
449
448
  """
450
449
  name = 'Fancy'
450
+ url = 'https://github.com/bakkdoor/fancy'
451
451
  filenames = ['*.fy', '*.fancypack']
452
452
  aliases = ['fancy', 'fy']
453
453
  mimetypes = ['text/x-fancysrc']
@@ -467,7 +467,7 @@ class FancyLexer(RegexLexer):
467
467
  (r'\$(\\\\|\\[^\\]|[^$\\])*\$[egimosx]*', String.Regex, '#pop'),
468
468
  ],
469
469
  'root': [
470
- (r'\s+', Text),
470
+ (r'\s+', Whitespace),
471
471
 
472
472
  # balanced delimiters (copied from PerlLexer):
473
473
  (r's\{(\\\\|\\[^\\]|[^}\\])*\}\s*', String.Regex, 'balanced-regex'),
@@ -510,13 +510,13 @@ class FancyLexer(RegexLexer):
510
510
  # numbers - / checks are necessary to avoid mismarking regexes,
511
511
  # see comment in RubyLexer
512
512
  (r'(0[oO]?[0-7]+(?:_[0-7]+)*)(\s*)([/?])?',
513
- bygroups(Number.Oct, Text, Operator)),
513
+ bygroups(Number.Oct, Whitespace, Operator)),
514
514
  (r'(0[xX][0-9A-Fa-f]+(?:_[0-9A-Fa-f]+)*)(\s*)([/?])?',
515
- bygroups(Number.Hex, Text, Operator)),
515
+ bygroups(Number.Hex, Whitespace, Operator)),
516
516
  (r'(0[bB][01]+(?:_[01]+)*)(\s*)([/?])?',
517
- bygroups(Number.Bin, Text, Operator)),
517
+ bygroups(Number.Bin, Whitespace, Operator)),
518
518
  (r'([\d]+(?:_\d+)*)(\s*)([/?])?',
519
- bygroups(Number.Integer, Text, Operator)),
519
+ bygroups(Number.Integer, Whitespace, Operator)),
520
520
  (r'\d+([eE][+-]?[0-9]+)|\d+\.\d+([eE][+-]?[0-9]+)?', Number.Float),
521
521
  (r'\d+', Number.Integer)
522
522
  ]
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for the Rust language.
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
 
@@ -22,6 +22,7 @@ class RustLexer(RegexLexer):
22
22
  .. versionadded:: 1.6
23
23
  """
24
24
  name = 'Rust'
25
+ url = 'https://www.rust-lang.org/'
25
26
  filenames = ['*.rs', '*.rs.in']
26
27
  aliases = ['rust', 'rs']
27
28
  mimetypes = ['text/rust', 'text/x-rust']
@@ -104,7 +105,7 @@ class RustLexer(RegexLexer):
104
105
  # Prelude (taken from Rust's src/libstd/prelude.rs)
105
106
  builtin_funcs_types,
106
107
  builtin_macros,
107
- # Path seperators, so types don't catch them.
108
+ # Path separators, so types don't catch them.
108
109
  (r'::\b', Text),
109
110
  # Types in positions.
110
111
  (r'(?::|->)', Text, 'typename'),
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexer for SAS.
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
 
@@ -18,7 +18,7 @@ __all__ = ['SASLexer']
18
18
 
19
19
  class SASLexer(RegexLexer):
20
20
  """
21
- For `SAS <http://www.sas.com/>`_ files.
21
+ For SAS files.
22
22
 
23
23
  .. versionadded:: 2.2
24
24
  """
@@ -0,0 +1,170 @@
1
+ """
2
+ pygments.lexers.savi
3
+ ~~~~~~~~~~~~~~~~~~~~
4
+
5
+ Lexer for Savi.
6
+
7
+ :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
8
+ :license: BSD, see LICENSE for details.
9
+ """
10
+
11
+ from pygments.lexer import RegexLexer, bygroups, include
12
+ from pygments.token import Whitespace, Keyword, Name, String, Number, \
13
+ Operator, Punctuation, Comment, Generic, Error
14
+
15
+ __all__ = ['SaviLexer']
16
+
17
+
18
+ # The canonical version of this file can be found in the following repository,
19
+ # where it is kept in sync with any language changes, as well as the other
20
+ # pygments-like lexers that are maintained for use with other tools:
21
+ # - https://github.com/savi-lang/savi/blob/main/tooling/pygments/lexers/savi.py
22
+ #
23
+ # If you're changing this file in the pygments repository, please ensure that
24
+ # any changes you make are also propagated to the official Savi repository,
25
+ # in order to avoid accidental clobbering of your changes later when an update
26
+ # from the Savi repository flows forward into the pygments repository.
27
+ #
28
+ # If you're changing this file in the Savi repository, please ensure that
29
+ # any changes you make are also reflected in the other pygments-like lexers
30
+ # (rouge, vscode, etc) so that all of the lexers can be kept cleanly in sync.
31
+
32
+ class SaviLexer(RegexLexer):
33
+ """
34
+ For Savi source code.
35
+
36
+ .. versionadded: 2.10
37
+ """
38
+
39
+ name = 'Savi'
40
+ url = 'https://github.com/savi-lang/savi'
41
+ aliases = ['savi']
42
+ filenames = ['*.savi']
43
+
44
+ tokens = {
45
+ "root": [
46
+ # Line Comment
47
+ (r'//.*?$', Comment.Single),
48
+
49
+ # Doc Comment
50
+ (r'::.*?$', Comment.Single),
51
+
52
+ # Capability Operator
53
+ (r'(\')(\w+)(?=[^\'])', bygroups(Operator, Name)),
54
+
55
+ # Double-Quote String
56
+ (r'\w?"', String.Double, "string.double"),
57
+
58
+ # Single-Char String
59
+ (r"'", String.Char, "string.char"),
60
+
61
+ # Type Name
62
+ (r'(_?[A-Z]\w*)', Name.Class),
63
+
64
+ # Nested Type Name
65
+ (r'(\.)(\s*)(_?[A-Z]\w*)', bygroups(Punctuation, Whitespace, Name.Class)),
66
+
67
+ # Declare
68
+ (r'^([ \t]*)(:\w+)',
69
+ bygroups(Whitespace, Name.Tag),
70
+ "decl"),
71
+
72
+ # Error-Raising Calls/Names
73
+ (r'((\w+|\+|\-|\*)\!)', Generic.Deleted),
74
+
75
+ # Numeric Values
76
+ (r'\b\d([\d_]*(\.[\d_]+)?)\b', Number),
77
+
78
+ # Hex Numeric Values
79
+ (r'\b0x([0-9a-fA-F_]+)\b', Number.Hex),
80
+
81
+ # Binary Numeric Values
82
+ (r'\b0b([01_]+)\b', Number.Bin),
83
+
84
+ # Function Call (with braces)
85
+ (r'\w+(?=\()', Name.Function),
86
+
87
+ # Function Call (with receiver)
88
+ (r'(\.)(\s*)(\w+)', bygroups(Punctuation, Whitespace, Name.Function)),
89
+
90
+ # Function Call (with self receiver)
91
+ (r'(@)(\w+)', bygroups(Punctuation, Name.Function)),
92
+
93
+ # Parenthesis
94
+ (r'\(', Punctuation, "root"),
95
+ (r'\)', Punctuation, "#pop"),
96
+
97
+ # Brace
98
+ (r'\{', Punctuation, "root"),
99
+ (r'\}', Punctuation, "#pop"),
100
+
101
+ # Bracket
102
+ (r'\[', Punctuation, "root"),
103
+ (r'(\])(\!)', bygroups(Punctuation, Generic.Deleted), "#pop"),
104
+ (r'\]', Punctuation, "#pop"),
105
+
106
+ # Punctuation
107
+ (r'[,;:\.@]', Punctuation),
108
+
109
+ # Piping Operators
110
+ (r'(\|\>)', Operator),
111
+
112
+ # Branching Operators
113
+ (r'(\&\&|\|\||\?\?|\&\?|\|\?|\.\?)', Operator),
114
+
115
+ # Comparison Operators
116
+ (r'(\<\=\>|\=\~|\=\=|\<\=|\>\=|\<|\>)', Operator),
117
+
118
+ # Arithmetic Operators
119
+ (r'(\+|\-|\/|\*|\%)', Operator),
120
+
121
+ # Assignment Operators
122
+ (r'(\=)', Operator),
123
+
124
+ # Other Operators
125
+ (r'(\!|\<\<|\<|\&|\|)', Operator),
126
+
127
+ # Identifiers
128
+ (r'\b\w+\b', Name),
129
+
130
+ # Whitespace
131
+ (r'[ \t\r]+\n*|\n+', Whitespace),
132
+ ],
133
+
134
+ # Declare (nested rules)
135
+ "decl": [
136
+ (r'\b[a-z_]\w*\b(?!\!)', Keyword.Declaration),
137
+ (r':', Punctuation, "#pop"),
138
+ (r'\n', Whitespace, "#pop"),
139
+ include("root"),
140
+ ],
141
+
142
+ # Double-Quote String (nested rules)
143
+ "string.double": [
144
+ (r'\\\(', String.Interpol, "string.interpolation"),
145
+ (r'\\u[0-9a-fA-F]{4}', String.Escape),
146
+ (r'\\x[0-9a-fA-F]{2}', String.Escape),
147
+ (r'\\[bfnrt\\\']', String.Escape),
148
+ (r'\\"', String.Escape),
149
+ (r'"', String.Double, "#pop"),
150
+ (r'[^\\"]+', String.Double),
151
+ (r'.', Error),
152
+ ],
153
+
154
+ # Single-Char String (nested rules)
155
+ "string.char": [
156
+ (r'\\u[0-9a-fA-F]{4}', String.Escape),
157
+ (r'\\x[0-9a-fA-F]{2}', String.Escape),
158
+ (r'\\[bfnrt\\\']', String.Escape),
159
+ (r"\\'", String.Escape),
160
+ (r"'", String.Char, "#pop"),
161
+ (r"[^\\']+", String.Char),
162
+ (r'.', Error),
163
+ ],
164
+
165
+ # Interpolation inside String (nested rules)
166
+ "string.interpolation": [
167
+ (r"\)", String.Interpol, "#pop"),
168
+ include("root"),
169
+ ]
170
+ }
@@ -4,17 +4,14 @@
4
4
 
5
5
  Lexer for scdoc, a simple man page generator.
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
11
  import re
12
12
 
13
- from pygments.lexer import RegexLexer, include, bygroups, \
14
- using, this
15
- from pygments.token import Text, Comment, Keyword, String, \
16
- Generic
17
-
13
+ from pygments.lexer import RegexLexer, include, bygroups, using, this
14
+ from pygments.token import Text, Comment, Keyword, String, Generic
18
15
 
19
16
  __all__ = ['ScdocLexer']
20
17
 
@@ -22,11 +19,11 @@ __all__ = ['ScdocLexer']
22
19
  class ScdocLexer(RegexLexer):
23
20
  """
24
21
  `scdoc` is a simple man page generator for POSIX systems written in C99.
25
- https://git.sr.ht/~sircmpwn/scdoc
26
22
 
27
23
  .. versionadded:: 2.5
28
24
  """
29
25
  name = 'scdoc'
26
+ url = 'https://git.sr.ht/~sircmpwn/scdoc'
30
27
  aliases = ['scdoc', 'scd']
31
28
  filenames = ['*.scd', '*.scdoc']
32
29
  flags = re.MULTILINE
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexer for scripting and embedded 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
 
@@ -23,7 +23,7 @@ __all__ = ['LuaLexer', 'MoonScriptLexer', 'ChaiscriptLexer', 'LSLLexer',
23
23
 
24
24
  class LuaLexer(RegexLexer):
25
25
  """
26
- For `Lua <http://www.lua.org>`_ source code.
26
+ For Lua source code.
27
27
 
28
28
  Additional options accepted:
29
29
 
@@ -45,6 +45,7 @@ class LuaLexer(RegexLexer):
45
45
  """
46
46
 
47
47
  name = 'Lua'
48
+ url = 'https://www.lua.org/'
48
49
  aliases = ['lua']
49
50
  filenames = ['*.lua', '*.wlua']
50
51
  mimetypes = ['text/x-lua', 'application/x-lua']
@@ -163,12 +164,13 @@ class LuaLexer(RegexLexer):
163
164
 
164
165
  class MoonScriptLexer(LuaLexer):
165
166
  """
166
- For `MoonScript <http://moonscript.org>`_ source code.
167
+ For MoonScript source code.
167
168
 
168
169
  .. versionadded:: 1.5
169
170
  """
170
171
 
171
172
  name = 'MoonScript'
173
+ url = 'http://moonscript.org'
172
174
  aliases = ['moonscript', 'moon']
173
175
  filenames = ['*.moon']
174
176
  mimetypes = ['text/x-moonscript', 'application/x-moonscript']
@@ -184,7 +186,7 @@ class MoonScriptLexer(LuaLexer):
184
186
  (r'(?i)\d+e[+-]?\d+', Number.Float),
185
187
  (r'(?i)0x[0-9a-f]*', Number.Hex),
186
188
  (r'\d+', Number.Integer),
187
- (r'\n', Text),
189
+ (r'\n', Whitespace),
188
190
  (r'[^\S\n]+', Text),
189
191
  (r'(?s)\[(=*)\[.*?\]\1\]', String),
190
192
  (r'(->|=>)', Name.Function),
@@ -213,11 +215,11 @@ class MoonScriptLexer(LuaLexer):
213
215
  ],
214
216
  'sqs': [
215
217
  ("'", String.Single, '#pop'),
216
- (".", String)
218
+ ("[^']+", String)
217
219
  ],
218
220
  'dqs': [
219
221
  ('"', String.Double, '#pop'),
220
- (".", String)
222
+ ('[^"]+', String)
221
223
  ]
222
224
  }
223
225
 
@@ -231,12 +233,13 @@ class MoonScriptLexer(LuaLexer):
231
233
 
232
234
  class ChaiscriptLexer(RegexLexer):
233
235
  """
234
- For `ChaiScript <http://chaiscript.com/>`_ source code.
236
+ For ChaiScript source code.
235
237
 
236
238
  .. versionadded:: 2.0
237
239
  """
238
240
 
239
241
  name = 'ChaiScript'
242
+ url = 'http://chaiscript.com/'
240
243
  aliases = ['chaiscript', 'chai']
241
244
  filenames = ['*.chai']
242
245
  mimetypes = ['text/x-chaiscript', 'application/x-chaiscript']
@@ -381,9 +384,7 @@ class LSLLexer(RegexLexer):
381
384
 
382
385
  class AppleScriptLexer(RegexLexer):
383
386
  """
384
- For `AppleScript source code
385
- <http://developer.apple.com/documentation/AppleScript/
386
- Conceptual/AppleScriptLangGuide>`_,
387
+ For AppleScript source code,
387
388
  including `AppleScript Studio
388
389
  <http://developer.apple.com/documentation/AppleScript/
389
390
  Reference/StudioReference>`_.
@@ -393,6 +394,7 @@ class AppleScriptLexer(RegexLexer):
393
394
  """
394
395
 
395
396
  name = 'AppleScript'
397
+ url = 'https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/introduction/ASLR_intro.html'
396
398
  aliases = ['applescript']
397
399
  filenames = ['*.applescript']
398
400
 
@@ -704,7 +706,7 @@ class AppleScriptLexer(RegexLexer):
704
706
 
705
707
  class RexxLexer(RegexLexer):
706
708
  """
707
- `Rexx <http://www.rexxinfo.org/>`_ is a scripting language available for
709
+ Rexx is a scripting language available for
708
710
  a wide range of different platforms with its roots found on mainframe
709
711
  systems. It is popular for I/O- and data based tasks and can act as glue
710
712
  language to bind different applications together.
@@ -712,6 +714,7 @@ class RexxLexer(RegexLexer):
712
714
  .. versionadded:: 2.0
713
715
  """
714
716
  name = 'Rexx'
717
+ url = 'http://www.rexxinfo.org/'
715
718
  aliases = ['rexx', 'arexx']
716
719
  filenames = ['*.rexx', '*.rex', '*.rx', '*.arexx']
717
720
  mimetypes = ['text/x-rexx']
@@ -719,7 +722,7 @@ class RexxLexer(RegexLexer):
719
722
 
720
723
  tokens = {
721
724
  'root': [
722
- (r'\s', Whitespace),
725
+ (r'\s+', Whitespace),
723
726
  (r'/\*', Comment.Multiline, 'comment'),
724
727
  (r'"', String, 'string_double'),
725
728
  (r"'", String, 'string_single'),
@@ -766,7 +769,7 @@ class RexxLexer(RegexLexer):
766
769
  (r'\n', Text, '#pop'), # Stray linefeed also terminates strings.
767
770
  ],
768
771
  'string_single': [
769
- (r'[^\'\n]', String),
772
+ (r'[^\'\n]+', String),
770
773
  (r'\'\'', String),
771
774
  (r'\'', String, '#pop'),
772
775
  (r'\n', Text, '#pop'), # Stray linefeed also terminates strings.
@@ -798,7 +801,7 @@ class RexxLexer(RegexLexer):
798
801
 
799
802
  def analyse_text(text):
800
803
  """
801
- Check for inital comment and patterns that distinguish Rexx from other
804
+ Check for initial comment and patterns that distinguish Rexx from other
802
805
  C-like languages.
803
806
  """
804
807
  if re.search(r'/\*\**\s*rexx', text, re.IGNORECASE):
@@ -817,12 +820,12 @@ class RexxLexer(RegexLexer):
817
820
 
818
821
  class MOOCodeLexer(RegexLexer):
819
822
  """
820
- For `MOOCode <http://www.moo.mud.org/>`_ (the MOO scripting
821
- language).
823
+ For MOOCode (the MOO scripting language).
822
824
 
823
825
  .. versionadded:: 0.9
824
826
  """
825
827
  name = 'MOOCode'
828
+ url = 'http://www.moo.mud.org/'
826
829
  filenames = ['*.moo']
827
830
  aliases = ['moocode', 'moo']
828
831
  mimetypes = ['text/x-moocode']
@@ -860,7 +863,7 @@ class MOOCodeLexer(RegexLexer):
860
863
 
861
864
  class HybrisLexer(RegexLexer):
862
865
  """
863
- For `Hybris <http://www.hybris-lang.org>`_ source code.
866
+ For Hybris source code.
864
867
 
865
868
  .. versionadded:: 1.4
866
869
  """
@@ -975,7 +978,7 @@ class EasytrieveLexer(RegexLexer):
975
978
  # * apostrophe (')
976
979
  # * period (.)
977
980
  # * comma (,)
978
- # * paranthesis ( and )
981
+ # * parenthesis ( and )
979
982
  # * colon (:)
980
983
  #
981
984
  # Additionally words end once a '*' appears, indicatins a comment.
@@ -1147,8 +1150,7 @@ class EasytrieveLexer(RegexLexer):
1147
1150
 
1148
1151
  class JclLexer(RegexLexer):
1149
1152
  """
1150
- `Job Control Language (JCL)
1151
- <http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2B570/CCONTENTS>`_
1153
+ Job Control Language (JCL)
1152
1154
  is a scripting language used on mainframe platforms to instruct the system
1153
1155
  on how to run a batch job or start a subsystem. It is somewhat
1154
1156
  comparable to MS DOS batch and Unix shell scripts.
@@ -1231,12 +1233,13 @@ class JclLexer(RegexLexer):
1231
1233
 
1232
1234
  class MiniScriptLexer(RegexLexer):
1233
1235
  """
1234
- For `MiniScript <https://miniscript.org>`_ source code.
1236
+ For MiniScript source code.
1235
1237
 
1236
1238
  .. versionadded:: 2.6
1237
1239
  """
1238
1240
 
1239
1241
  name = 'MiniScript'
1242
+ url = 'https://miniscript.org'
1240
1243
  aliases = ['miniscript', 'ms']
1241
1244
  filenames = ['*.ms']
1242
1245
  mimetypes = ['text/x-minicript', 'application/x-miniscript']
@@ -4,12 +4,12 @@
4
4
 
5
5
  Lexer for Smart Game Format (sgf) file format.
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
11
  from pygments.lexer import RegexLexer, bygroups
12
- from pygments.token import Name, Literal, String, Text, Punctuation
12
+ from pygments.token import Name, Literal, String, Punctuation, Whitespace
13
13
 
14
14
  __all__ = ["SmartGameFormatLexer"]
15
15
 
@@ -20,18 +20,17 @@ class SmartGameFormatLexer(RegexLexer):
20
20
 
21
21
  The format is used to store game records of board games for two players
22
22
  (mainly Go game).
23
- For more information about the definition of the format, see:
24
- https://www.red-bean.com/sgf/
25
23
 
26
24
  .. versionadded:: 2.4
27
25
  """
28
26
  name = 'SmartGameFormat'
27
+ url = 'https://www.red-bean.com/sgf/'
29
28
  aliases = ['sgf']
30
29
  filenames = ['*.sgf']
31
30
 
32
31
  tokens = {
33
32
  'root': [
34
- (r'[\s():;]', Punctuation),
33
+ (r'[():;]+', Punctuation),
35
34
  # tokens:
36
35
  (r'(A[BW]|AE|AN|AP|AR|AS|[BW]L|BM|[BW]R|[BW]S|[BW]T|CA|CH|CP|CR|'
37
36
  r'DD|DM|DO|DT|EL|EV|EX|FF|FG|G[BW]|GC|GM|GN|HA|HO|ID|IP|IT|IY|KM|'
@@ -55,6 +54,7 @@ class SmartGameFormatLexer(RegexLexer):
55
54
  (r'(\[)([\w\s#()+,\-.:?]+)(\])',
56
55
  bygroups(Punctuation, String, Punctuation)),
57
56
  (r'(\[)(\s.*)(\])',
58
- bygroups(Punctuation, Text, Punctuation)),
57
+ bygroups(Punctuation, Whitespace, Punctuation)),
58
+ (r'\s+', Whitespace)
59
59
  ],
60
60
  }