pygments.rb 2.4.1 → 3.0.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 (348) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +8 -8
  3. data/.github/workflows/release.yml +5 -5
  4. data/.gitignore +2 -0
  5. data/.rubocop.yml +1 -1
  6. data/CHANGELOG.adoc +9 -1
  7. data/README.adoc +2 -2
  8. data/lib/pygments/version.rb +1 -1
  9. data/pygments.rb.gemspec +2 -2
  10. data/vendor/pygments-main/bin/pygmentize +1 -1
  11. data/vendor/pygments-main/pygments/__init__.py +2 -2
  12. data/vendor/pygments-main/pygments/__main__.py +1 -1
  13. data/vendor/pygments-main/pygments/cmdline.py +12 -12
  14. data/vendor/pygments-main/pygments/console.py +5 -5
  15. data/vendor/pygments-main/pygments/filter.py +2 -3
  16. data/vendor/pygments-main/pygments/filters/__init__.py +4 -4
  17. data/vendor/pygments-main/pygments/formatter.py +6 -1
  18. data/vendor/pygments-main/pygments/formatters/__init__.py +7 -8
  19. data/vendor/pygments-main/pygments/formatters/_mapping.py +0 -0
  20. data/vendor/pygments-main/pygments/formatters/bbcode.py +2 -2
  21. data/vendor/pygments-main/pygments/formatters/groff.py +3 -3
  22. data/vendor/pygments-main/pygments/formatters/html.py +38 -40
  23. data/vendor/pygments-main/pygments/formatters/img.py +51 -11
  24. data/vendor/pygments-main/pygments/formatters/irc.py +1 -1
  25. data/vendor/pygments-main/pygments/formatters/latex.py +24 -27
  26. data/vendor/pygments-main/pygments/formatters/other.py +3 -4
  27. data/vendor/pygments-main/pygments/formatters/pangomarkup.py +2 -2
  28. data/vendor/pygments-main/pygments/formatters/rtf.py +228 -25
  29. data/vendor/pygments-main/pygments/formatters/svg.py +17 -20
  30. data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
  31. data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
  32. data/vendor/pygments-main/pygments/lexer.py +51 -33
  33. data/vendor/pygments-main/pygments/lexers/__init__.py +12 -12
  34. data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +1 -1
  35. data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
  36. data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
  37. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +2 -2
  38. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1 -1
  39. data/vendor/pygments-main/pygments/lexers/_css_builtins.py +1 -1
  40. data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +1 -1
  41. data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
  42. data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +1 -1
  43. data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +5 -5
  44. data/vendor/pygments-main/pygments/lexers/_luau_builtins.py +62 -0
  45. data/vendor/pygments-main/pygments/lexers/_mapping.py +41 -11
  46. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
  47. data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +3 -3
  48. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
  49. data/vendor/pygments-main/pygments/lexers/_php_builtins.py +3 -3
  50. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +5 -5
  51. data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +1 -1
  52. data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1 -1
  53. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +4 -4
  54. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +3 -3
  55. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -1
  56. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
  57. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
  58. data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -1
  59. data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -1
  60. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
  61. data/vendor/pygments-main/pygments/lexers/actionscript.py +6 -8
  62. data/vendor/pygments-main/pygments/lexers/ada.py +3 -3
  63. data/vendor/pygments-main/pygments/lexers/agile.py +3 -1
  64. data/vendor/pygments-main/pygments/lexers/algebra.py +9 -13
  65. data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
  66. data/vendor/pygments-main/pygments/lexers/amdgpu.py +3 -3
  67. data/vendor/pygments-main/pygments/lexers/ampl.py +2 -3
  68. data/vendor/pygments-main/pygments/lexers/apdlexer.py +4 -3
  69. data/vendor/pygments-main/pygments/lexers/apl.py +2 -3
  70. data/vendor/pygments-main/pygments/lexers/archetype.py +8 -12
  71. data/vendor/pygments-main/pygments/lexers/arrow.py +2 -3
  72. data/vendor/pygments-main/pygments/lexers/arturo.py +2 -3
  73. data/vendor/pygments-main/pygments/lexers/asc.py +4 -4
  74. data/vendor/pygments-main/pygments/lexers/asm.py +28 -15
  75. data/vendor/pygments-main/pygments/lexers/asn1.py +178 -0
  76. data/vendor/pygments-main/pygments/lexers/automation.py +6 -8
  77. data/vendor/pygments-main/pygments/lexers/bare.py +2 -3
  78. data/vendor/pygments-main/pygments/lexers/basic.py +48 -57
  79. data/vendor/pygments-main/pygments/lexers/bdd.py +3 -4
  80. data/vendor/pygments-main/pygments/lexers/berry.py +4 -4
  81. data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -5
  82. data/vendor/pygments-main/pygments/lexers/blueprint.py +173 -0
  83. data/vendor/pygments-main/pygments/lexers/boa.py +4 -4
  84. data/vendor/pygments-main/pygments/lexers/bqn.py +109 -0
  85. data/vendor/pygments-main/pygments/lexers/business.py +21 -22
  86. data/vendor/pygments-main/pygments/lexers/c_cpp.py +9 -4
  87. data/vendor/pygments-main/pygments/lexers/c_like.py +99 -27
  88. data/vendor/pygments-main/pygments/lexers/capnproto.py +2 -3
  89. data/vendor/pygments-main/pygments/lexers/carbon.py +10 -11
  90. data/vendor/pygments-main/pygments/lexers/cddl.py +8 -9
  91. data/vendor/pygments-main/pygments/lexers/chapel.py +2 -3
  92. data/vendor/pygments-main/pygments/lexers/clean.py +2 -1
  93. data/vendor/pygments-main/pygments/lexers/comal.py +2 -1
  94. data/vendor/pygments-main/pygments/lexers/compiled.py +2 -1
  95. data/vendor/pygments-main/pygments/lexers/configs.py +342 -108
  96. data/vendor/pygments-main/pygments/lexers/console.py +5 -5
  97. data/vendor/pygments-main/pygments/lexers/cplint.py +2 -3
  98. data/vendor/pygments-main/pygments/lexers/crystal.py +4 -5
  99. data/vendor/pygments-main/pygments/lexers/csound.py +6 -8
  100. data/vendor/pygments-main/pygments/lexers/css.py +5 -5
  101. data/vendor/pygments-main/pygments/lexers/d.py +4 -3
  102. data/vendor/pygments-main/pygments/lexers/dalvik.py +2 -3
  103. data/vendor/pygments-main/pygments/lexers/data.py +8 -12
  104. data/vendor/pygments-main/pygments/lexers/dax.py +2 -3
  105. data/vendor/pygments-main/pygments/lexers/devicetree.py +2 -3
  106. data/vendor/pygments-main/pygments/lexers/diff.py +7 -6
  107. data/vendor/pygments-main/pygments/lexers/dns.py +109 -0
  108. data/vendor/pygments-main/pygments/lexers/dotnet.py +19 -14
  109. data/vendor/pygments-main/pygments/lexers/dsls.py +24 -35
  110. data/vendor/pygments-main/pygments/lexers/dylan.py +8 -16
  111. data/vendor/pygments-main/pygments/lexers/ecl.py +2 -3
  112. data/vendor/pygments-main/pygments/lexers/eiffel.py +3 -4
  113. data/vendor/pygments-main/pygments/lexers/elm.py +3 -4
  114. data/vendor/pygments-main/pygments/lexers/elpi.py +28 -21
  115. data/vendor/pygments-main/pygments/lexers/email.py +3 -3
  116. data/vendor/pygments-main/pygments/lexers/erlang.py +22 -24
  117. data/vendor/pygments-main/pygments/lexers/esoteric.py +11 -12
  118. data/vendor/pygments-main/pygments/lexers/ezhil.py +2 -3
  119. data/vendor/pygments-main/pygments/lexers/factor.py +2 -3
  120. data/vendor/pygments-main/pygments/lexers/fantom.py +3 -3
  121. data/vendor/pygments-main/pygments/lexers/felix.py +9 -10
  122. data/vendor/pygments-main/pygments/lexers/fift.py +2 -1
  123. data/vendor/pygments-main/pygments/lexers/floscript.py +2 -3
  124. data/vendor/pygments-main/pygments/lexers/forth.py +2 -3
  125. data/vendor/pygments-main/pygments/lexers/fortran.py +6 -7
  126. data/vendor/pygments-main/pygments/lexers/foxpro.py +3 -3
  127. data/vendor/pygments-main/pygments/lexers/freefem.py +2 -3
  128. data/vendor/pygments-main/pygments/lexers/func.py +3 -1
  129. data/vendor/pygments-main/pygments/lexers/functional.py +2 -1
  130. data/vendor/pygments-main/pygments/lexers/futhark.py +6 -7
  131. data/vendor/pygments-main/pygments/lexers/gcodelexer.py +3 -3
  132. data/vendor/pygments-main/pygments/lexers/gdscript.py +2 -1
  133. data/vendor/pygments-main/pygments/lexers/go.py +3 -4
  134. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +6 -9
  135. data/vendor/pygments-main/pygments/lexers/graph.py +12 -9
  136. data/vendor/pygments-main/pygments/lexers/graphics.py +13 -17
  137. data/vendor/pygments-main/pygments/lexers/graphql.py +176 -0
  138. data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -3
  139. data/vendor/pygments-main/pygments/lexers/gsql.py +2 -3
  140. data/vendor/pygments-main/pygments/lexers/haskell.py +27 -32
  141. data/vendor/pygments-main/pygments/lexers/haxe.py +3 -5
  142. data/vendor/pygments-main/pygments/lexers/hdl.py +8 -7
  143. data/vendor/pygments-main/pygments/lexers/hexdump.py +3 -3
  144. data/vendor/pygments-main/pygments/lexers/html.py +34 -13
  145. data/vendor/pygments-main/pygments/lexers/idl.py +2 -3
  146. data/vendor/pygments-main/pygments/lexers/igor.py +305 -290
  147. data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
  148. data/vendor/pygments-main/pygments/lexers/installers.py +7 -9
  149. data/vendor/pygments-main/pygments/lexers/int_fiction.py +150 -162
  150. data/vendor/pygments-main/pygments/lexers/iolang.py +2 -3
  151. data/vendor/pygments-main/pygments/lexers/j.py +2 -3
  152. data/vendor/pygments-main/pygments/lexers/javascript.py +18 -19
  153. data/vendor/pygments-main/pygments/lexers/jmespath.py +2 -1
  154. data/vendor/pygments-main/pygments/lexers/jslt.py +2 -3
  155. data/vendor/pygments-main/pygments/lexers/jsonnet.py +4 -3
  156. data/vendor/pygments-main/pygments/lexers/jsx.py +75 -0
  157. data/vendor/pygments-main/pygments/lexers/julia.py +4 -5
  158. data/vendor/pygments-main/pygments/lexers/jvm.py +98 -116
  159. data/vendor/pygments-main/pygments/lexers/kuin.py +2 -3
  160. data/vendor/pygments-main/pygments/lexers/kusto.py +93 -0
  161. data/vendor/pygments-main/pygments/lexers/ldap.py +155 -0
  162. data/vendor/pygments-main/pygments/lexers/lean.py +241 -0
  163. data/vendor/pygments-main/pygments/lexers/lilypond.py +2 -3
  164. data/vendor/pygments-main/pygments/lexers/lisp.py +373 -65
  165. data/vendor/pygments-main/pygments/lexers/macaulay2.py +53 -4
  166. data/vendor/pygments-main/pygments/lexers/make.py +7 -5
  167. data/vendor/pygments-main/pygments/lexers/markup.py +242 -91
  168. data/vendor/pygments-main/pygments/lexers/math.py +2 -1
  169. data/vendor/pygments-main/pygments/lexers/matlab.py +10 -12
  170. data/vendor/pygments-main/pygments/lexers/maxima.py +2 -3
  171. data/vendor/pygments-main/pygments/lexers/meson.py +2 -3
  172. data/vendor/pygments-main/pygments/lexers/mime.py +4 -4
  173. data/vendor/pygments-main/pygments/lexers/minecraft.py +24 -27
  174. data/vendor/pygments-main/pygments/lexers/mips.py +3 -1
  175. data/vendor/pygments-main/pygments/lexers/ml.py +59 -61
  176. data/vendor/pygments-main/pygments/lexers/modeling.py +19 -22
  177. data/vendor/pygments-main/pygments/lexers/modula2.py +2 -3
  178. data/vendor/pygments-main/pygments/lexers/mojo.py +704 -0
  179. data/vendor/pygments-main/pygments/lexers/monte.py +2 -3
  180. data/vendor/pygments-main/pygments/lexers/mosel.py +3 -3
  181. data/vendor/pygments-main/pygments/lexers/ncl.py +4 -3
  182. data/vendor/pygments-main/pygments/lexers/nimrod.py +7 -8
  183. data/vendor/pygments-main/pygments/lexers/nit.py +2 -3
  184. data/vendor/pygments-main/pygments/lexers/nix.py +40 -31
  185. data/vendor/pygments-main/pygments/lexers/oberon.py +3 -3
  186. data/vendor/pygments-main/pygments/lexers/objective.py +14 -6
  187. data/vendor/pygments-main/pygments/lexers/ooc.py +2 -3
  188. data/vendor/pygments-main/pygments/lexers/openscad.py +96 -0
  189. data/vendor/pygments-main/pygments/lexers/other.py +2 -1
  190. data/vendor/pygments-main/pygments/lexers/parasail.py +2 -3
  191. data/vendor/pygments-main/pygments/lexers/parsers.py +41 -44
  192. data/vendor/pygments-main/pygments/lexers/pascal.py +6 -3
  193. data/vendor/pygments-main/pygments/lexers/pawn.py +5 -5
  194. data/vendor/pygments-main/pygments/lexers/perl.py +3 -3
  195. data/vendor/pygments-main/pygments/lexers/phix.py +2 -3
  196. data/vendor/pygments-main/pygments/lexers/php.py +4 -5
  197. data/vendor/pygments-main/pygments/lexers/pointless.py +2 -3
  198. data/vendor/pygments-main/pygments/lexers/pony.py +3 -3
  199. data/vendor/pygments-main/pygments/lexers/praat.py +2 -3
  200. data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
  201. data/vendor/pygments-main/pygments/lexers/prolog.py +23 -9
  202. data/vendor/pygments-main/pygments/lexers/promql.py +2 -1
  203. data/vendor/pygments-main/pygments/lexers/prql.py +251 -0
  204. data/vendor/pygments-main/pygments/lexers/ptx.py +119 -0
  205. data/vendor/pygments-main/pygments/lexers/python.py +24 -24
  206. data/vendor/pygments-main/pygments/lexers/q.py +5 -6
  207. data/vendor/pygments-main/pygments/lexers/qlik.py +3 -3
  208. data/vendor/pygments-main/pygments/lexers/qvt.py +5 -3
  209. data/vendor/pygments-main/pygments/lexers/r.py +8 -6
  210. data/vendor/pygments-main/pygments/lexers/rdf.py +19 -13
  211. data/vendor/pygments-main/pygments/lexers/rebol.py +7 -7
  212. data/vendor/pygments-main/pygments/lexers/resource.py +5 -6
  213. data/vendor/pygments-main/pygments/lexers/ride.py +4 -5
  214. data/vendor/pygments-main/pygments/lexers/rita.py +2 -3
  215. data/vendor/pygments-main/pygments/lexers/rnc.py +2 -3
  216. data/vendor/pygments-main/pygments/lexers/roboconf.py +5 -5
  217. data/vendor/pygments-main/pygments/lexers/robotframework.py +2 -3
  218. data/vendor/pygments-main/pygments/lexers/ruby.py +8 -13
  219. data/vendor/pygments-main/pygments/lexers/rust.py +9 -10
  220. data/vendor/pygments-main/pygments/lexers/sas.py +3 -3
  221. data/vendor/pygments-main/pygments/lexers/savi.py +131 -130
  222. data/vendor/pygments-main/pygments/lexers/scdoc.py +13 -7
  223. data/vendor/pygments-main/pygments/lexers/scripting.py +354 -42
  224. data/vendor/pygments-main/pygments/lexers/sgf.py +2 -3
  225. data/vendor/pygments-main/pygments/lexers/shell.py +107 -129
  226. data/vendor/pygments-main/pygments/lexers/sieve.py +3 -3
  227. data/vendor/pygments-main/pygments/lexers/slash.py +4 -5
  228. data/vendor/pygments-main/pygments/lexers/smalltalk.py +3 -5
  229. data/vendor/pygments-main/pygments/lexers/smithy.py +2 -3
  230. data/vendor/pygments-main/pygments/lexers/smv.py +3 -3
  231. data/vendor/pygments-main/pygments/lexers/snobol.py +3 -3
  232. data/vendor/pygments-main/pygments/lexers/solidity.py +3 -3
  233. data/vendor/pygments-main/pygments/lexers/soong.py +78 -0
  234. data/vendor/pygments-main/pygments/lexers/sophia.py +3 -4
  235. data/vendor/pygments-main/pygments/lexers/special.py +8 -3
  236. data/vendor/pygments-main/pygments/lexers/spice.py +15 -16
  237. data/vendor/pygments-main/pygments/lexers/sql.py +24 -18
  238. data/vendor/pygments-main/pygments/lexers/srcinfo.py +3 -3
  239. data/vendor/pygments-main/pygments/lexers/stata.py +2 -3
  240. data/vendor/pygments-main/pygments/lexers/supercollider.py +2 -3
  241. data/vendor/pygments-main/pygments/lexers/tact.py +303 -0
  242. data/vendor/pygments-main/pygments/lexers/tal.py +13 -10
  243. data/vendor/pygments-main/pygments/lexers/tcl.py +2 -3
  244. data/vendor/pygments-main/pygments/lexers/teal.py +2 -3
  245. data/vendor/pygments-main/pygments/lexers/templates.py +131 -72
  246. data/vendor/pygments-main/pygments/lexers/teraterm.py +2 -3
  247. data/vendor/pygments-main/pygments/lexers/testing.py +4 -5
  248. data/vendor/pygments-main/pygments/lexers/text.py +2 -1
  249. data/vendor/pygments-main/pygments/lexers/textedit.py +9 -6
  250. data/vendor/pygments-main/pygments/lexers/textfmts.py +20 -15
  251. data/vendor/pygments-main/pygments/lexers/theorem.py +41 -115
  252. data/vendor/pygments-main/pygments/lexers/thingsdb.py +50 -26
  253. data/vendor/pygments-main/pygments/lexers/tlb.py +3 -1
  254. data/vendor/pygments-main/pygments/lexers/tls.py +54 -0
  255. data/vendor/pygments-main/pygments/lexers/tnt.py +2 -3
  256. data/vendor/pygments-main/pygments/lexers/trafficscript.py +3 -3
  257. data/vendor/pygments-main/pygments/lexers/typoscript.py +6 -7
  258. data/vendor/pygments-main/pygments/lexers/typst.py +104 -0
  259. data/vendor/pygments-main/pygments/lexers/ul4.py +47 -5
  260. data/vendor/pygments-main/pygments/lexers/unicon.py +9 -7
  261. data/vendor/pygments-main/pygments/lexers/urbi.py +3 -3
  262. data/vendor/pygments-main/pygments/lexers/usd.py +6 -11
  263. data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
  264. data/vendor/pygments-main/pygments/lexers/verification.py +4 -5
  265. data/vendor/pygments-main/pygments/lexers/verifpal.py +65 -0
  266. data/vendor/pygments-main/pygments/lexers/vip.py +150 -0
  267. data/vendor/pygments-main/pygments/lexers/vyper.py +140 -0
  268. data/vendor/pygments-main/pygments/lexers/web.py +2 -1
  269. data/vendor/pygments-main/pygments/lexers/webassembly.py +2 -3
  270. data/vendor/pygments-main/pygments/lexers/webidl.py +2 -3
  271. data/vendor/pygments-main/pygments/lexers/webmisc.py +11 -15
  272. data/vendor/pygments-main/pygments/lexers/wgsl.py +6 -7
  273. data/vendor/pygments-main/pygments/lexers/whiley.py +2 -3
  274. data/vendor/pygments-main/pygments/lexers/wowtoc.py +3 -3
  275. data/vendor/pygments-main/pygments/lexers/wren.py +3 -4
  276. data/vendor/pygments-main/pygments/lexers/x10.py +6 -7
  277. data/vendor/pygments-main/pygments/lexers/xorg.py +2 -1
  278. data/vendor/pygments-main/pygments/lexers/yang.py +2 -3
  279. data/vendor/pygments-main/pygments/lexers/yara.py +69 -0
  280. data/vendor/pygments-main/pygments/lexers/zig.py +2 -1
  281. data/vendor/pygments-main/pygments/modeline.py +4 -4
  282. data/vendor/pygments-main/pygments/plugin.py +3 -19
  283. data/vendor/pygments-main/pygments/regexopt.py +1 -1
  284. data/vendor/pygments-main/pygments/scanner.py +1 -1
  285. data/vendor/pygments-main/pygments/sphinxext.py +38 -8
  286. data/vendor/pygments-main/pygments/style.py +8 -2
  287. data/vendor/pygments-main/pygments/styles/__init__.py +17 -59
  288. data/vendor/pygments-main/pygments/styles/_mapping.py +54 -0
  289. data/vendor/pygments-main/pygments/styles/abap.py +5 -1
  290. data/vendor/pygments-main/pygments/styles/algol.py +5 -1
  291. data/vendor/pygments-main/pygments/styles/algol_nu.py +5 -1
  292. data/vendor/pygments-main/pygments/styles/arduino.py +76 -72
  293. data/vendor/pygments-main/pygments/styles/autumn.py +6 -1
  294. data/vendor/pygments-main/pygments/styles/borland.py +6 -1
  295. data/vendor/pygments-main/pygments/styles/bw.py +6 -1
  296. data/vendor/pygments-main/pygments/styles/coffee.py +80 -0
  297. data/vendor/pygments-main/pygments/styles/colorful.py +6 -1
  298. data/vendor/pygments-main/pygments/styles/default.py +6 -1
  299. data/vendor/pygments-main/pygments/styles/dracula.py +68 -80
  300. data/vendor/pygments-main/pygments/styles/emacs.py +6 -1
  301. data/vendor/pygments-main/pygments/styles/friendly.py +6 -1
  302. data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +6 -1
  303. data/vendor/pygments-main/pygments/styles/fruity.py +7 -1
  304. data/vendor/pygments-main/pygments/styles/gh_dark.py +7 -1
  305. data/vendor/pygments-main/pygments/styles/gruvbox.py +10 -1
  306. data/vendor/pygments-main/pygments/styles/igor.py +6 -1
  307. data/vendor/pygments-main/pygments/styles/inkpot.py +7 -2
  308. data/vendor/pygments-main/pygments/styles/lightbulb.py +110 -0
  309. data/vendor/pygments-main/pygments/styles/lilypond.py +8 -2
  310. data/vendor/pygments-main/pygments/styles/lovelace.py +16 -10
  311. data/vendor/pygments-main/pygments/styles/manni.py +7 -2
  312. data/vendor/pygments-main/pygments/styles/material.py +21 -14
  313. data/vendor/pygments-main/pygments/styles/monokai.py +16 -10
  314. data/vendor/pygments-main/pygments/styles/murphy.py +7 -2
  315. data/vendor/pygments-main/pygments/styles/native.py +10 -5
  316. data/vendor/pygments-main/pygments/styles/nord.py +9 -3
  317. data/vendor/pygments-main/pygments/styles/onedark.py +6 -2
  318. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +7 -2
  319. data/vendor/pygments-main/pygments/styles/paraiso_light.py +7 -2
  320. data/vendor/pygments-main/pygments/styles/pastie.py +7 -1
  321. data/vendor/pygments-main/pygments/styles/perldoc.py +7 -1
  322. data/vendor/pygments-main/pygments/styles/rainbow_dash.py +26 -19
  323. data/vendor/pygments-main/pygments/styles/rrt.py +8 -2
  324. data/vendor/pygments-main/pygments/styles/sas.py +6 -1
  325. data/vendor/pygments-main/pygments/styles/solarized.py +9 -1
  326. data/vendor/pygments-main/pygments/styles/staroffice.py +6 -1
  327. data/vendor/pygments-main/pygments/styles/stata_dark.py +6 -2
  328. data/vendor/pygments-main/pygments/styles/stata_light.py +6 -1
  329. data/vendor/pygments-main/pygments/styles/tango.py +7 -3
  330. data/vendor/pygments-main/pygments/styles/trac.py +7 -1
  331. data/vendor/pygments-main/pygments/styles/vim.py +7 -1
  332. data/vendor/pygments-main/pygments/styles/vs.py +7 -2
  333. data/vendor/pygments-main/pygments/styles/xcode.py +6 -1
  334. data/vendor/pygments-main/pygments/styles/zenburn.py +6 -1
  335. data/vendor/pygments-main/pygments/token.py +2 -1
  336. data/vendor/pygments-main/pygments/unistring.py +5 -5
  337. data/vendor/pygments-main/pygments/util.py +13 -19
  338. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/METADATA +14 -13
  339. data/vendor/pygments-main/pygments-2.18.0.dist-info/RECORD +663 -0
  340. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/WHEEL +1 -2
  341. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/AUTHORS +13 -0
  342. metadata +39 -15
  343. data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +0 -614
  344. data/vendor/pygments-main/Pygments-2.15.1.dist-info/top_level.txt +0 -1
  345. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/INSTALLER +0 -0
  346. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/REQUESTED +0 -0
  347. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/entry_points.txt +0 -0
  348. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/LICENSE +0 -0
@@ -4,10 +4,11 @@
4
4
 
5
5
  Just export lexers that were contained in this module.
6
6
 
7
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
11
+ # ruff: noqa: F401
11
12
  from pygments.lexers.python import NumPyLexer
12
13
  from pygments.lexers.matlab import MatlabLexer, MatlabSessionLexer, \
13
14
  OctaveLexer, ScilabLexer
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for Matlab and related languages.
6
6
 
7
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -23,13 +23,13 @@ __all__ = ['MatlabLexer', 'MatlabSessionLexer', 'OctaveLexer', 'ScilabLexer']
23
23
  class MatlabLexer(RegexLexer):
24
24
  """
25
25
  For Matlab source code.
26
-
27
- .. versionadded:: 0.10
28
26
  """
29
27
  name = 'Matlab'
30
28
  aliases = ['matlab']
31
29
  filenames = ['*.m']
32
30
  mimetypes = ['text/matlab']
31
+ url = 'https://www.mathworks.com/products/matlab.html'
32
+ version_added = '0.10'
33
33
 
34
34
  _operators = r'-|==|~=|<=|>=|<|>|&&|&|~|\|\|?|\.\*|\*|\+|\.\^|\.\\|\./|/|\\'
35
35
 
@@ -41,8 +41,8 @@ class MatlabLexer(RegexLexer):
41
41
  # numbers (must come before punctuation to handle `.5`; cannot use
42
42
  # `\b` due to e.g. `5. + .5`). The negative lookahead on operators
43
43
  # avoids including the dot in `1./x` (the dot is part of `./`).
44
- (r'(?<!\w)((\d+\.\d+)|(\d*\.\d+)|(\d+\.(?!%s)))'
45
- r'([eEf][+-]?\d+)?(?!\w)' % _operators, Number.Float),
44
+ (rf'(?<!\w)((\d+\.\d+)|(\d*\.\d+)|(\d+\.(?!{_operators})))'
45
+ r'([eEf][+-]?\d+)?(?!\w)', Number.Float),
46
46
  (r'\b\d+[eEf][+-]?[0-9]+\b', Number.Float),
47
47
  (r'\b\d+\b', Number.Integer),
48
48
 
@@ -2665,7 +2665,7 @@ class MatlabLexer(RegexLexer):
2665
2665
  # `cd ./ foo`.). Here, the regex checks that the first word in the
2666
2666
  # line is not followed by <spaces> and then
2667
2667
  # (equal | open-parenthesis | <operator><space> | <space>).
2668
- (r'(?:^|(?<=;))(\s*)(\w+)(\s+)(?!=|\(|%s\s|\s)' % _operators,
2668
+ (rf'(?:^|(?<=;))(\s*)(\w+)(\s+)(?!=|\(|{_operators}\s|\s)',
2669
2669
  bygroups(Whitespace, Name, Whitespace), 'commandargs'),
2670
2670
 
2671
2671
  include('expressions')
@@ -2742,11 +2742,11 @@ class MatlabSessionLexer(Lexer):
2742
2742
  """
2743
2743
  For Matlab sessions. Modeled after PythonConsoleLexer.
2744
2744
  Contributed by Ken Schutte <kschutte@csail.mit.edu>.
2745
-
2746
- .. versionadded:: 0.10
2747
2745
  """
2748
2746
  name = 'Matlab session'
2749
2747
  aliases = ['matlabsession']
2748
+ url = 'https://www.mathworks.com/products/matlab.html'
2749
+ version_added = '0.10'
2750
2750
 
2751
2751
  def get_tokens_unprocessed(self, text):
2752
2752
  mlexer = MatlabLexer(**self.options)
@@ -2811,14 +2811,13 @@ class MatlabSessionLexer(Lexer):
2811
2811
  class OctaveLexer(RegexLexer):
2812
2812
  """
2813
2813
  For GNU Octave source code.
2814
-
2815
- .. versionadded:: 1.5
2816
2814
  """
2817
2815
  name = 'Octave'
2818
2816
  url = 'https://www.gnu.org/software/octave/index'
2819
2817
  aliases = ['octave']
2820
2818
  filenames = ['*.m']
2821
2819
  mimetypes = ['text/octave']
2820
+ version_added = '1.5'
2822
2821
 
2823
2822
  # These lists are generated automatically.
2824
2823
  # Run the following in bash shell:
@@ -3229,14 +3228,13 @@ class OctaveLexer(RegexLexer):
3229
3228
  class ScilabLexer(RegexLexer):
3230
3229
  """
3231
3230
  For Scilab source code.
3232
-
3233
- .. versionadded:: 1.5
3234
3231
  """
3235
3232
  name = 'Scilab'
3236
3233
  url = 'https://www.scilab.org/'
3237
3234
  aliases = ['scilab']
3238
3235
  filenames = ['*.sci', '*.sce', '*.tst']
3239
3236
  mimetypes = ['text/scilab']
3237
+ version_added = '1.5'
3240
3238
 
3241
3239
  tokens = {
3242
3240
  'root': [
@@ -6,7 +6,7 @@
6
6
 
7
7
  Derived from pygments/lexers/algebra.py.
8
8
 
9
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
9
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
10
10
  :license: BSD, see LICENSE for details.
11
11
  """
12
12
 
@@ -22,13 +22,12 @@ class MaximaLexer(RegexLexer):
22
22
  """
23
23
  A Maxima lexer.
24
24
  Derived from pygments.lexers.MuPADLexer.
25
-
26
- .. versionadded:: 2.11
27
25
  """
28
26
  name = 'Maxima'
29
27
  url = 'http://maxima.sourceforge.net'
30
28
  aliases = ['maxima', 'macsyma']
31
29
  filenames = ['*.mac', '*.max']
30
+ version_added = '2.11'
32
31
 
33
32
  keywords = ('if', 'then', 'else', 'elseif',
34
33
  'do', 'while', 'repeat', 'until',
@@ -4,7 +4,7 @@
4
4
 
5
5
  Pygments lexer for the Meson build system
6
6
 
7
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -22,8 +22,6 @@ class MesonLexer(RegexLexer):
22
22
  https://mesonbuild.com/Syntax.html#grammar for version 0.58.
23
23
  Some of those definitions are improperly transcribed, so the Meson++
24
24
  implementation was also checked: https://github.com/dcbaker/meson-plus-plus.
25
-
26
- .. versionadded:: 2.10
27
25
  """
28
26
 
29
27
  # TODO String interpolation @VARNAME@ inner matches
@@ -34,6 +32,7 @@ class MesonLexer(RegexLexer):
34
32
  aliases = ['meson', 'meson.build']
35
33
  filenames = ['meson.build', 'meson_options.txt']
36
34
  mimetypes = ['text/x-meson']
35
+ version_added = '2.10'
37
36
 
38
37
  tokens = {
39
38
  'root': [
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexer for Multipurpose Internet Mail Extensions (MIME) data.
6
6
 
7
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -46,8 +46,6 @@ class MIMELexer(RegexLexer):
46
46
  `Content-Transfer-Encoding`
47
47
  Treat the data as a specific encoding. Or this lexer would try to parse
48
48
  from header by default. (default: None)
49
-
50
- .. versionadded:: 2.5
51
49
  """
52
50
 
53
51
  name = "MIME"
@@ -55,6 +53,8 @@ class MIMELexer(RegexLexer):
55
53
  mimetypes = ["multipart/mixed",
56
54
  "multipart/related",
57
55
  "multipart/alternative"]
56
+ url = 'https://en.wikipedia.org/wiki/MIME'
57
+ version_added = '2.5'
58
58
 
59
59
  def __init__(self, **options):
60
60
  super().__init__(**options)
@@ -95,7 +95,7 @@ class MIMELexer(RegexLexer):
95
95
  return
96
96
 
97
97
  # find boundary
98
- bdry_pattern = r"^--%s(--)?\n" % re.escape(self.boundary)
98
+ bdry_pattern = rf"^--{re.escape(self.boundary)}(--)?\n"
99
99
  bdry_matcher = re.compile(bdry_pattern, re.MULTILINE)
100
100
 
101
101
  # some data has prefix text before first boundary
@@ -3,19 +3,19 @@
3
3
  ~~~~~~~~~~~~~~~~~~~~~~~~~
4
4
 
5
5
  Lexers for Minecraft related languages.
6
-
6
+
7
7
  SNBT. A data communication format used in Minecraft.
8
- wiki: https://minecraft.fandom.com/wiki/NBT_format
9
-
8
+ wiki: https://minecraft.wiki/w/NBT_format
9
+
10
10
  MCFunction. The Function file for Minecraft Data packs and Add-ons.
11
11
  official: https://learn.microsoft.com/en-us/minecraft/creator/documents/functionsintroduction
12
- wiki: https://minecraft.fandom.com/wiki/Function
13
-
12
+ wiki: https://minecraft.wiki/w/Function
13
+
14
14
  MCSchema. A kind of data Schema for Minecraft Add-on Development.
15
15
  official: https://learn.microsoft.com/en-us/minecraft/creator/reference/content/schemasreference/
16
16
  community example: https://www.mcbe-dev.net/addons/data-driven/manifest.html
17
17
 
18
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
18
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
19
19
  :license: BSD, see LICENSE for details.
20
20
  """
21
21
 
@@ -28,15 +28,14 @@ __all__ = ['SNBTLexer', 'MCFunctionLexer', 'MCSchemaLexer']
28
28
 
29
29
  class SNBTLexer(RegexLexer):
30
30
  """Lexer for stringified NBT, a data format used in Minecraft
31
-
32
- .. versionadded:: 2.12.0
33
31
  """
34
32
 
35
33
  name = "SNBT"
36
- url = "https://minecraft.fandom.com/wiki/NBT_format"
34
+ url = "https://minecraft.wiki/w/NBT_format"
37
35
  aliases = ["snbt"]
38
36
  filenames = ["*.snbt"]
39
37
  mimetypes = ["text/snbt"]
38
+ version_added = '2.12'
40
39
 
41
40
  tokens = {
42
41
  "root": [
@@ -102,15 +101,14 @@ class SNBTLexer(RegexLexer):
102
101
  class MCFunctionLexer(RegexLexer):
103
102
  """Lexer for the mcfunction scripting language used in Minecraft
104
103
  Modelled somewhat after the `GitHub mcfunction grammar <https://github.com/Arcensoth/language-mcfunction>`_.
105
-
106
- .. versionadded:: 2.12.0
107
104
  """
108
105
 
109
106
  name = "MCFunction"
110
- url = "https://minecraft.fandom.com/wiki/Commands"
107
+ url = "https://minecraft.wiki/w/Commands"
111
108
  aliases = ["mcfunction", "mcf"]
112
109
  filenames = ["*.mcfunction"]
113
110
  mimetypes = ["text/mcfunction"]
111
+ version_added = '2.12'
114
112
 
115
113
  # Used to denotate the start of a block comment, borrowed from Github's mcfunction
116
114
  _block_comment_prefix = "[>!]"
@@ -218,26 +216,26 @@ class MCFunctionLexer(RegexLexer):
218
216
  "selectors": [
219
217
  (r"@[a-z]", Name.Variable),
220
218
  ],
221
-
219
+
222
220
 
223
221
  ## Generic Property Container
224
222
  # There are several, differing instances where the language accepts
225
223
  # specific contained keys or contained key, value pairings.
226
- #
224
+ #
227
225
  # Property Maps:
228
226
  # - Starts with either `[` or `{`
229
227
  # - Key separated by `:` or `=`
230
228
  # - Deliminated by `,`
231
- #
229
+ #
232
230
  # Property Lists:
233
231
  # - Starts with `[`
234
232
  # - Deliminated by `,`
235
- #
233
+ #
236
234
  # For simplicity, these patterns match a generic, nestable structure
237
235
  # which follow a key, value pattern. For normal lists, there's only keys.
238
236
  # This allow some "illegal" structures, but we'll accept those for
239
237
  # sake of simplicity
240
- #
238
+ #
241
239
  # Examples:
242
240
  # - `[facing=up, powered=true]` (blockstate)
243
241
  # - `[name="hello world", nbt={key: 1b}]` (selector + nbt)
@@ -298,7 +296,7 @@ class MCFunctionLexer(RegexLexer):
298
296
  ],
299
297
  "property.delimiter": [
300
298
  include("whitespace"),
301
-
299
+
302
300
  (r"[:=]!?", Punctuation, "property.value"),
303
301
  (r",", Punctuation),
304
302
 
@@ -321,15 +319,14 @@ class MCFunctionLexer(RegexLexer):
321
319
 
322
320
  class MCSchemaLexer(RegexLexer):
323
321
  """Lexer for Minecraft Add-ons data Schemas, an interface structure standard used in Minecraft
324
-
325
- .. versionadded:: 2.14.0
326
322
  """
327
-
323
+
328
324
  name = 'MCSchema'
329
325
  url = 'https://learn.microsoft.com/en-us/minecraft/creator/reference/content/schemasreference/'
330
326
  aliases = ['mcschema']
331
327
  filenames = ['*.mcschema']
332
328
  mimetypes = ['text/mcschema']
329
+ version_added = '2.14'
333
330
 
334
331
  tokens = {
335
332
  'commentsandwhitespace': [
@@ -360,35 +357,35 @@ class MCSchemaLexer(RegexLexer):
360
357
  'root': [
361
358
  (r'^(?=\s|/|<!--)', Text, 'slashstartsregex'),
362
359
  include('commentsandwhitespace'),
363
-
360
+
364
361
  # keywords for optional word and field types
365
362
  (r'(?<=: )opt', Operator.Word),
366
363
  (r'(?<=\s)[\w-]*(?=(\s+"|\n))', Keyword.Declaration),
367
-
364
+
368
365
  # numeric literals
369
366
  (r'0[bB][01]+', Number.Bin),
370
367
  (r'0[oO]?[0-7]+', Number.Oct),
371
368
  (r'0[xX][0-9a-fA-F]+', Number.Hex),
372
369
  (r'\d+', Number.Integer),
373
370
  (r'(\.\d+|\d+\.\d*|\d+)([eE][-+]?\d+)?', Number.Float),
374
-
371
+
375
372
  # possible punctuations
376
373
  (r'\.\.\.|=>', Punctuation),
377
374
  (r'\+\+|--|~|\?\?=?|\?|:|\\(?=\n)|'
378
375
  r'(<<|>>>?|==?|!=?|(?:\*\*|\|\||&&|[-<>+*%&|^/]))=?', Operator, 'slashstartsregex'),
379
376
  (r'[{(\[;,]', Punctuation, 'slashstartsregex'),
380
377
  (r'[})\].]', Punctuation),
381
-
378
+
382
379
  # strings
383
380
  (r"'", String.Single, 'singlestring'),
384
381
  (r'"', String.Double, 'doublestring'),
385
-
382
+
386
383
  # title line
387
384
  (r'[\w-]*?(?=:\{?\n)', String.Symbol),
388
385
  # title line with a version code, formatted
389
386
  # `major.minor.patch-prerelease+buildmeta`
390
387
  (r'([\w-]*?)(:)(\d+)(?:(\.)(\d+)(?:(\.)(\d+)(?:(\-)((?:[^\W_]|-)*(?:\.(?:[^\W_]|-)*)*))?(?:(\+)((?:[^\W_]|-)+(?:\.(?:[^\W_]|-)+)*))?)?)?(?=:\{?\n)', bygroups(String.Symbol, Operator, Number.Integer, Operator, Number.Integer, Operator, Number.Integer, Operator, String, Operator, String)),
391
-
388
+
392
389
  (r'.*\n', Text),
393
390
  ]
394
391
  }
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for MIPS assembly.
6
6
 
7
- :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
8
  :license: BSD, see LICENSE for details.
9
9
  """
10
10
 
@@ -24,10 +24,12 @@ class MIPSLexer(RegexLexer):
24
24
 
25
25
  name = 'MIPS'
26
26
  aliases = ['mips']
27
+ version_added = ''
27
28
  # TODO: add '*.s' and '*.asm', which will require designing an analyse_text
28
29
  # method for this lexer and refactoring those from Gas and Nasm in order to
29
30
  # have relatively reliable detection
30
31
  filenames = ['*.mips', '*.MIPS']
32
+ url = 'https://mips.com'
31
33
 
32
34
  keywords = [
33
35
  # Arithmetic insturctions