pygments.rb 2.4.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (349) 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 +12 -0
  7. data/README.adoc +2 -2
  8. data/lib/pygments/popen.rb +2 -2
  9. data/lib/pygments/version.rb +1 -1
  10. data/pygments.rb.gemspec +3 -3
  11. data/vendor/pygments-main/bin/pygmentize +1 -1
  12. data/vendor/pygments-main/pygments/__init__.py +2 -2
  13. data/vendor/pygments-main/pygments/__main__.py +1 -1
  14. data/vendor/pygments-main/pygments/cmdline.py +12 -12
  15. data/vendor/pygments-main/pygments/console.py +5 -5
  16. data/vendor/pygments-main/pygments/filter.py +2 -3
  17. data/vendor/pygments-main/pygments/filters/__init__.py +4 -4
  18. data/vendor/pygments-main/pygments/formatter.py +6 -1
  19. data/vendor/pygments-main/pygments/formatters/__init__.py +7 -8
  20. data/vendor/pygments-main/pygments/formatters/_mapping.py +0 -0
  21. data/vendor/pygments-main/pygments/formatters/bbcode.py +2 -2
  22. data/vendor/pygments-main/pygments/formatters/groff.py +3 -3
  23. data/vendor/pygments-main/pygments/formatters/html.py +38 -40
  24. data/vendor/pygments-main/pygments/formatters/img.py +51 -11
  25. data/vendor/pygments-main/pygments/formatters/irc.py +1 -1
  26. data/vendor/pygments-main/pygments/formatters/latex.py +24 -27
  27. data/vendor/pygments-main/pygments/formatters/other.py +3 -4
  28. data/vendor/pygments-main/pygments/formatters/pangomarkup.py +2 -2
  29. data/vendor/pygments-main/pygments/formatters/rtf.py +228 -25
  30. data/vendor/pygments-main/pygments/formatters/svg.py +17 -20
  31. data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
  32. data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
  33. data/vendor/pygments-main/pygments/lexer.py +51 -33
  34. data/vendor/pygments-main/pygments/lexers/__init__.py +12 -12
  35. data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +1 -1
  36. data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
  37. data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
  38. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +2 -2
  39. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1 -1
  40. data/vendor/pygments-main/pygments/lexers/_css_builtins.py +1 -1
  41. data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +1 -1
  42. data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
  43. data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +1 -1
  44. data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +5 -5
  45. data/vendor/pygments-main/pygments/lexers/_luau_builtins.py +62 -0
  46. data/vendor/pygments-main/pygments/lexers/_mapping.py +41 -11
  47. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
  48. data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +3 -3
  49. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
  50. data/vendor/pygments-main/pygments/lexers/_php_builtins.py +3 -3
  51. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +5 -5
  52. data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +1 -1
  53. data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1 -1
  54. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +4 -4
  55. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +3 -3
  56. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -1
  57. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
  58. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
  59. data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -1
  60. data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -1
  61. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
  62. data/vendor/pygments-main/pygments/lexers/actionscript.py +6 -8
  63. data/vendor/pygments-main/pygments/lexers/ada.py +3 -3
  64. data/vendor/pygments-main/pygments/lexers/agile.py +3 -1
  65. data/vendor/pygments-main/pygments/lexers/algebra.py +9 -13
  66. data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
  67. data/vendor/pygments-main/pygments/lexers/amdgpu.py +3 -3
  68. data/vendor/pygments-main/pygments/lexers/ampl.py +2 -3
  69. data/vendor/pygments-main/pygments/lexers/apdlexer.py +4 -3
  70. data/vendor/pygments-main/pygments/lexers/apl.py +2 -3
  71. data/vendor/pygments-main/pygments/lexers/archetype.py +8 -12
  72. data/vendor/pygments-main/pygments/lexers/arrow.py +2 -3
  73. data/vendor/pygments-main/pygments/lexers/arturo.py +2 -3
  74. data/vendor/pygments-main/pygments/lexers/asc.py +4 -4
  75. data/vendor/pygments-main/pygments/lexers/asm.py +28 -15
  76. data/vendor/pygments-main/pygments/lexers/asn1.py +178 -0
  77. data/vendor/pygments-main/pygments/lexers/automation.py +6 -8
  78. data/vendor/pygments-main/pygments/lexers/bare.py +2 -3
  79. data/vendor/pygments-main/pygments/lexers/basic.py +48 -57
  80. data/vendor/pygments-main/pygments/lexers/bdd.py +3 -4
  81. data/vendor/pygments-main/pygments/lexers/berry.py +4 -4
  82. data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -5
  83. data/vendor/pygments-main/pygments/lexers/blueprint.py +173 -0
  84. data/vendor/pygments-main/pygments/lexers/boa.py +4 -4
  85. data/vendor/pygments-main/pygments/lexers/bqn.py +109 -0
  86. data/vendor/pygments-main/pygments/lexers/business.py +21 -22
  87. data/vendor/pygments-main/pygments/lexers/c_cpp.py +9 -4
  88. data/vendor/pygments-main/pygments/lexers/c_like.py +99 -27
  89. data/vendor/pygments-main/pygments/lexers/capnproto.py +2 -3
  90. data/vendor/pygments-main/pygments/lexers/carbon.py +10 -11
  91. data/vendor/pygments-main/pygments/lexers/cddl.py +8 -9
  92. data/vendor/pygments-main/pygments/lexers/chapel.py +2 -3
  93. data/vendor/pygments-main/pygments/lexers/clean.py +2 -1
  94. data/vendor/pygments-main/pygments/lexers/comal.py +2 -1
  95. data/vendor/pygments-main/pygments/lexers/compiled.py +2 -1
  96. data/vendor/pygments-main/pygments/lexers/configs.py +342 -108
  97. data/vendor/pygments-main/pygments/lexers/console.py +5 -5
  98. data/vendor/pygments-main/pygments/lexers/cplint.py +2 -3
  99. data/vendor/pygments-main/pygments/lexers/crystal.py +4 -5
  100. data/vendor/pygments-main/pygments/lexers/csound.py +6 -8
  101. data/vendor/pygments-main/pygments/lexers/css.py +5 -5
  102. data/vendor/pygments-main/pygments/lexers/d.py +4 -3
  103. data/vendor/pygments-main/pygments/lexers/dalvik.py +2 -3
  104. data/vendor/pygments-main/pygments/lexers/data.py +8 -12
  105. data/vendor/pygments-main/pygments/lexers/dax.py +2 -3
  106. data/vendor/pygments-main/pygments/lexers/devicetree.py +2 -3
  107. data/vendor/pygments-main/pygments/lexers/diff.py +7 -6
  108. data/vendor/pygments-main/pygments/lexers/dns.py +109 -0
  109. data/vendor/pygments-main/pygments/lexers/dotnet.py +19 -14
  110. data/vendor/pygments-main/pygments/lexers/dsls.py +24 -35
  111. data/vendor/pygments-main/pygments/lexers/dylan.py +8 -16
  112. data/vendor/pygments-main/pygments/lexers/ecl.py +2 -3
  113. data/vendor/pygments-main/pygments/lexers/eiffel.py +3 -4
  114. data/vendor/pygments-main/pygments/lexers/elm.py +3 -4
  115. data/vendor/pygments-main/pygments/lexers/elpi.py +28 -21
  116. data/vendor/pygments-main/pygments/lexers/email.py +3 -3
  117. data/vendor/pygments-main/pygments/lexers/erlang.py +22 -24
  118. data/vendor/pygments-main/pygments/lexers/esoteric.py +11 -12
  119. data/vendor/pygments-main/pygments/lexers/ezhil.py +2 -3
  120. data/vendor/pygments-main/pygments/lexers/factor.py +2 -3
  121. data/vendor/pygments-main/pygments/lexers/fantom.py +3 -3
  122. data/vendor/pygments-main/pygments/lexers/felix.py +9 -10
  123. data/vendor/pygments-main/pygments/lexers/fift.py +2 -1
  124. data/vendor/pygments-main/pygments/lexers/floscript.py +2 -3
  125. data/vendor/pygments-main/pygments/lexers/forth.py +2 -3
  126. data/vendor/pygments-main/pygments/lexers/fortran.py +6 -7
  127. data/vendor/pygments-main/pygments/lexers/foxpro.py +3 -3
  128. data/vendor/pygments-main/pygments/lexers/freefem.py +2 -3
  129. data/vendor/pygments-main/pygments/lexers/func.py +3 -1
  130. data/vendor/pygments-main/pygments/lexers/functional.py +2 -1
  131. data/vendor/pygments-main/pygments/lexers/futhark.py +6 -7
  132. data/vendor/pygments-main/pygments/lexers/gcodelexer.py +3 -3
  133. data/vendor/pygments-main/pygments/lexers/gdscript.py +2 -1
  134. data/vendor/pygments-main/pygments/lexers/go.py +3 -4
  135. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +6 -9
  136. data/vendor/pygments-main/pygments/lexers/graph.py +12 -9
  137. data/vendor/pygments-main/pygments/lexers/graphics.py +13 -17
  138. data/vendor/pygments-main/pygments/lexers/graphql.py +176 -0
  139. data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -3
  140. data/vendor/pygments-main/pygments/lexers/gsql.py +2 -3
  141. data/vendor/pygments-main/pygments/lexers/haskell.py +27 -32
  142. data/vendor/pygments-main/pygments/lexers/haxe.py +3 -5
  143. data/vendor/pygments-main/pygments/lexers/hdl.py +8 -7
  144. data/vendor/pygments-main/pygments/lexers/hexdump.py +3 -3
  145. data/vendor/pygments-main/pygments/lexers/html.py +34 -13
  146. data/vendor/pygments-main/pygments/lexers/idl.py +2 -3
  147. data/vendor/pygments-main/pygments/lexers/igor.py +305 -290
  148. data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
  149. data/vendor/pygments-main/pygments/lexers/installers.py +7 -9
  150. data/vendor/pygments-main/pygments/lexers/int_fiction.py +150 -162
  151. data/vendor/pygments-main/pygments/lexers/iolang.py +2 -3
  152. data/vendor/pygments-main/pygments/lexers/j.py +2 -3
  153. data/vendor/pygments-main/pygments/lexers/javascript.py +18 -19
  154. data/vendor/pygments-main/pygments/lexers/jmespath.py +2 -1
  155. data/vendor/pygments-main/pygments/lexers/jslt.py +2 -3
  156. data/vendor/pygments-main/pygments/lexers/jsonnet.py +4 -3
  157. data/vendor/pygments-main/pygments/lexers/jsx.py +75 -0
  158. data/vendor/pygments-main/pygments/lexers/julia.py +4 -5
  159. data/vendor/pygments-main/pygments/lexers/jvm.py +98 -116
  160. data/vendor/pygments-main/pygments/lexers/kuin.py +2 -3
  161. data/vendor/pygments-main/pygments/lexers/kusto.py +93 -0
  162. data/vendor/pygments-main/pygments/lexers/ldap.py +155 -0
  163. data/vendor/pygments-main/pygments/lexers/lean.py +241 -0
  164. data/vendor/pygments-main/pygments/lexers/lilypond.py +2 -3
  165. data/vendor/pygments-main/pygments/lexers/lisp.py +373 -65
  166. data/vendor/pygments-main/pygments/lexers/macaulay2.py +53 -4
  167. data/vendor/pygments-main/pygments/lexers/make.py +7 -5
  168. data/vendor/pygments-main/pygments/lexers/markup.py +242 -91
  169. data/vendor/pygments-main/pygments/lexers/math.py +2 -1
  170. data/vendor/pygments-main/pygments/lexers/matlab.py +10 -12
  171. data/vendor/pygments-main/pygments/lexers/maxima.py +2 -3
  172. data/vendor/pygments-main/pygments/lexers/meson.py +2 -3
  173. data/vendor/pygments-main/pygments/lexers/mime.py +4 -4
  174. data/vendor/pygments-main/pygments/lexers/minecraft.py +24 -27
  175. data/vendor/pygments-main/pygments/lexers/mips.py +3 -1
  176. data/vendor/pygments-main/pygments/lexers/ml.py +59 -61
  177. data/vendor/pygments-main/pygments/lexers/modeling.py +19 -22
  178. data/vendor/pygments-main/pygments/lexers/modula2.py +2 -3
  179. data/vendor/pygments-main/pygments/lexers/mojo.py +704 -0
  180. data/vendor/pygments-main/pygments/lexers/monte.py +2 -3
  181. data/vendor/pygments-main/pygments/lexers/mosel.py +3 -3
  182. data/vendor/pygments-main/pygments/lexers/ncl.py +4 -3
  183. data/vendor/pygments-main/pygments/lexers/nimrod.py +7 -8
  184. data/vendor/pygments-main/pygments/lexers/nit.py +2 -3
  185. data/vendor/pygments-main/pygments/lexers/nix.py +40 -31
  186. data/vendor/pygments-main/pygments/lexers/oberon.py +3 -3
  187. data/vendor/pygments-main/pygments/lexers/objective.py +14 -6
  188. data/vendor/pygments-main/pygments/lexers/ooc.py +2 -3
  189. data/vendor/pygments-main/pygments/lexers/openscad.py +96 -0
  190. data/vendor/pygments-main/pygments/lexers/other.py +2 -1
  191. data/vendor/pygments-main/pygments/lexers/parasail.py +2 -3
  192. data/vendor/pygments-main/pygments/lexers/parsers.py +41 -44
  193. data/vendor/pygments-main/pygments/lexers/pascal.py +6 -3
  194. data/vendor/pygments-main/pygments/lexers/pawn.py +5 -5
  195. data/vendor/pygments-main/pygments/lexers/perl.py +3 -3
  196. data/vendor/pygments-main/pygments/lexers/phix.py +2 -3
  197. data/vendor/pygments-main/pygments/lexers/php.py +4 -5
  198. data/vendor/pygments-main/pygments/lexers/pointless.py +2 -3
  199. data/vendor/pygments-main/pygments/lexers/pony.py +3 -3
  200. data/vendor/pygments-main/pygments/lexers/praat.py +2 -3
  201. data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
  202. data/vendor/pygments-main/pygments/lexers/prolog.py +23 -9
  203. data/vendor/pygments-main/pygments/lexers/promql.py +2 -1
  204. data/vendor/pygments-main/pygments/lexers/prql.py +251 -0
  205. data/vendor/pygments-main/pygments/lexers/ptx.py +119 -0
  206. data/vendor/pygments-main/pygments/lexers/python.py +24 -24
  207. data/vendor/pygments-main/pygments/lexers/q.py +5 -6
  208. data/vendor/pygments-main/pygments/lexers/qlik.py +3 -3
  209. data/vendor/pygments-main/pygments/lexers/qvt.py +5 -3
  210. data/vendor/pygments-main/pygments/lexers/r.py +8 -6
  211. data/vendor/pygments-main/pygments/lexers/rdf.py +19 -13
  212. data/vendor/pygments-main/pygments/lexers/rebol.py +7 -7
  213. data/vendor/pygments-main/pygments/lexers/resource.py +5 -6
  214. data/vendor/pygments-main/pygments/lexers/ride.py +4 -5
  215. data/vendor/pygments-main/pygments/lexers/rita.py +2 -3
  216. data/vendor/pygments-main/pygments/lexers/rnc.py +2 -3
  217. data/vendor/pygments-main/pygments/lexers/roboconf.py +5 -5
  218. data/vendor/pygments-main/pygments/lexers/robotframework.py +2 -3
  219. data/vendor/pygments-main/pygments/lexers/ruby.py +8 -13
  220. data/vendor/pygments-main/pygments/lexers/rust.py +9 -10
  221. data/vendor/pygments-main/pygments/lexers/sas.py +3 -3
  222. data/vendor/pygments-main/pygments/lexers/savi.py +131 -130
  223. data/vendor/pygments-main/pygments/lexers/scdoc.py +13 -7
  224. data/vendor/pygments-main/pygments/lexers/scripting.py +354 -42
  225. data/vendor/pygments-main/pygments/lexers/sgf.py +2 -3
  226. data/vendor/pygments-main/pygments/lexers/shell.py +107 -129
  227. data/vendor/pygments-main/pygments/lexers/sieve.py +3 -3
  228. data/vendor/pygments-main/pygments/lexers/slash.py +4 -5
  229. data/vendor/pygments-main/pygments/lexers/smalltalk.py +3 -5
  230. data/vendor/pygments-main/pygments/lexers/smithy.py +2 -3
  231. data/vendor/pygments-main/pygments/lexers/smv.py +3 -3
  232. data/vendor/pygments-main/pygments/lexers/snobol.py +3 -3
  233. data/vendor/pygments-main/pygments/lexers/solidity.py +3 -3
  234. data/vendor/pygments-main/pygments/lexers/soong.py +78 -0
  235. data/vendor/pygments-main/pygments/lexers/sophia.py +3 -4
  236. data/vendor/pygments-main/pygments/lexers/special.py +8 -3
  237. data/vendor/pygments-main/pygments/lexers/spice.py +15 -16
  238. data/vendor/pygments-main/pygments/lexers/sql.py +24 -18
  239. data/vendor/pygments-main/pygments/lexers/srcinfo.py +3 -3
  240. data/vendor/pygments-main/pygments/lexers/stata.py +2 -3
  241. data/vendor/pygments-main/pygments/lexers/supercollider.py +2 -3
  242. data/vendor/pygments-main/pygments/lexers/tact.py +303 -0
  243. data/vendor/pygments-main/pygments/lexers/tal.py +13 -10
  244. data/vendor/pygments-main/pygments/lexers/tcl.py +2 -3
  245. data/vendor/pygments-main/pygments/lexers/teal.py +2 -3
  246. data/vendor/pygments-main/pygments/lexers/templates.py +131 -72
  247. data/vendor/pygments-main/pygments/lexers/teraterm.py +2 -3
  248. data/vendor/pygments-main/pygments/lexers/testing.py +4 -5
  249. data/vendor/pygments-main/pygments/lexers/text.py +2 -1
  250. data/vendor/pygments-main/pygments/lexers/textedit.py +9 -6
  251. data/vendor/pygments-main/pygments/lexers/textfmts.py +20 -15
  252. data/vendor/pygments-main/pygments/lexers/theorem.py +41 -115
  253. data/vendor/pygments-main/pygments/lexers/thingsdb.py +50 -26
  254. data/vendor/pygments-main/pygments/lexers/tlb.py +3 -1
  255. data/vendor/pygments-main/pygments/lexers/tls.py +54 -0
  256. data/vendor/pygments-main/pygments/lexers/tnt.py +2 -3
  257. data/vendor/pygments-main/pygments/lexers/trafficscript.py +3 -3
  258. data/vendor/pygments-main/pygments/lexers/typoscript.py +6 -7
  259. data/vendor/pygments-main/pygments/lexers/typst.py +104 -0
  260. data/vendor/pygments-main/pygments/lexers/ul4.py +47 -5
  261. data/vendor/pygments-main/pygments/lexers/unicon.py +9 -7
  262. data/vendor/pygments-main/pygments/lexers/urbi.py +3 -3
  263. data/vendor/pygments-main/pygments/lexers/usd.py +6 -11
  264. data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
  265. data/vendor/pygments-main/pygments/lexers/verification.py +4 -5
  266. data/vendor/pygments-main/pygments/lexers/verifpal.py +65 -0
  267. data/vendor/pygments-main/pygments/lexers/vip.py +150 -0
  268. data/vendor/pygments-main/pygments/lexers/vyper.py +140 -0
  269. data/vendor/pygments-main/pygments/lexers/web.py +2 -1
  270. data/vendor/pygments-main/pygments/lexers/webassembly.py +2 -3
  271. data/vendor/pygments-main/pygments/lexers/webidl.py +2 -3
  272. data/vendor/pygments-main/pygments/lexers/webmisc.py +11 -15
  273. data/vendor/pygments-main/pygments/lexers/wgsl.py +6 -7
  274. data/vendor/pygments-main/pygments/lexers/whiley.py +2 -3
  275. data/vendor/pygments-main/pygments/lexers/wowtoc.py +3 -3
  276. data/vendor/pygments-main/pygments/lexers/wren.py +3 -4
  277. data/vendor/pygments-main/pygments/lexers/x10.py +6 -7
  278. data/vendor/pygments-main/pygments/lexers/xorg.py +2 -1
  279. data/vendor/pygments-main/pygments/lexers/yang.py +2 -3
  280. data/vendor/pygments-main/pygments/lexers/yara.py +69 -0
  281. data/vendor/pygments-main/pygments/lexers/zig.py +2 -1
  282. data/vendor/pygments-main/pygments/modeline.py +4 -4
  283. data/vendor/pygments-main/pygments/plugin.py +3 -19
  284. data/vendor/pygments-main/pygments/regexopt.py +1 -1
  285. data/vendor/pygments-main/pygments/scanner.py +1 -1
  286. data/vendor/pygments-main/pygments/sphinxext.py +38 -8
  287. data/vendor/pygments-main/pygments/style.py +8 -2
  288. data/vendor/pygments-main/pygments/styles/__init__.py +17 -59
  289. data/vendor/pygments-main/pygments/styles/_mapping.py +54 -0
  290. data/vendor/pygments-main/pygments/styles/abap.py +5 -1
  291. data/vendor/pygments-main/pygments/styles/algol.py +5 -1
  292. data/vendor/pygments-main/pygments/styles/algol_nu.py +5 -1
  293. data/vendor/pygments-main/pygments/styles/arduino.py +76 -72
  294. data/vendor/pygments-main/pygments/styles/autumn.py +6 -1
  295. data/vendor/pygments-main/pygments/styles/borland.py +6 -1
  296. data/vendor/pygments-main/pygments/styles/bw.py +6 -1
  297. data/vendor/pygments-main/pygments/styles/coffee.py +80 -0
  298. data/vendor/pygments-main/pygments/styles/colorful.py +6 -1
  299. data/vendor/pygments-main/pygments/styles/default.py +6 -1
  300. data/vendor/pygments-main/pygments/styles/dracula.py +68 -80
  301. data/vendor/pygments-main/pygments/styles/emacs.py +6 -1
  302. data/vendor/pygments-main/pygments/styles/friendly.py +6 -1
  303. data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +6 -1
  304. data/vendor/pygments-main/pygments/styles/fruity.py +7 -1
  305. data/vendor/pygments-main/pygments/styles/gh_dark.py +7 -1
  306. data/vendor/pygments-main/pygments/styles/gruvbox.py +10 -1
  307. data/vendor/pygments-main/pygments/styles/igor.py +6 -1
  308. data/vendor/pygments-main/pygments/styles/inkpot.py +7 -2
  309. data/vendor/pygments-main/pygments/styles/lightbulb.py +110 -0
  310. data/vendor/pygments-main/pygments/styles/lilypond.py +8 -2
  311. data/vendor/pygments-main/pygments/styles/lovelace.py +16 -10
  312. data/vendor/pygments-main/pygments/styles/manni.py +7 -2
  313. data/vendor/pygments-main/pygments/styles/material.py +21 -14
  314. data/vendor/pygments-main/pygments/styles/monokai.py +16 -10
  315. data/vendor/pygments-main/pygments/styles/murphy.py +7 -2
  316. data/vendor/pygments-main/pygments/styles/native.py +10 -5
  317. data/vendor/pygments-main/pygments/styles/nord.py +9 -3
  318. data/vendor/pygments-main/pygments/styles/onedark.py +6 -2
  319. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +7 -2
  320. data/vendor/pygments-main/pygments/styles/paraiso_light.py +7 -2
  321. data/vendor/pygments-main/pygments/styles/pastie.py +7 -1
  322. data/vendor/pygments-main/pygments/styles/perldoc.py +7 -1
  323. data/vendor/pygments-main/pygments/styles/rainbow_dash.py +26 -19
  324. data/vendor/pygments-main/pygments/styles/rrt.py +8 -2
  325. data/vendor/pygments-main/pygments/styles/sas.py +6 -1
  326. data/vendor/pygments-main/pygments/styles/solarized.py +9 -1
  327. data/vendor/pygments-main/pygments/styles/staroffice.py +6 -1
  328. data/vendor/pygments-main/pygments/styles/stata_dark.py +6 -2
  329. data/vendor/pygments-main/pygments/styles/stata_light.py +6 -1
  330. data/vendor/pygments-main/pygments/styles/tango.py +7 -3
  331. data/vendor/pygments-main/pygments/styles/trac.py +7 -1
  332. data/vendor/pygments-main/pygments/styles/vim.py +7 -1
  333. data/vendor/pygments-main/pygments/styles/vs.py +7 -2
  334. data/vendor/pygments-main/pygments/styles/xcode.py +6 -1
  335. data/vendor/pygments-main/pygments/styles/zenburn.py +6 -1
  336. data/vendor/pygments-main/pygments/token.py +2 -1
  337. data/vendor/pygments-main/pygments/unistring.py +5 -5
  338. data/vendor/pygments-main/pygments/util.py +13 -19
  339. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/METADATA +14 -13
  340. data/vendor/pygments-main/pygments-2.18.0.dist-info/RECORD +663 -0
  341. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/WHEEL +1 -2
  342. data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/AUTHORS +13 -0
  343. metadata +41 -17
  344. data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +0 -614
  345. data/vendor/pygments-main/Pygments-2.15.1.dist-info/top_level.txt +0 -1
  346. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/INSTALLER +0 -0
  347. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/REQUESTED +0 -0
  348. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/entry_points.txt +0 -0
  349. /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/LICENSE +0 -0
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for the Io language.
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
 
@@ -18,14 +18,13 @@ __all__ = ['IoLexer']
18
18
  class IoLexer(RegexLexer):
19
19
  """
20
20
  For Io (a small, prototype-based programming language) source.
21
-
22
- .. versionadded:: 0.10
23
21
  """
24
22
  name = 'Io'
25
23
  url = 'http://iolanguage.com/'
26
24
  filenames = ['*.io']
27
25
  aliases = ['io']
28
26
  mimetypes = ['text/x-iosrc']
27
+ version_added = '0.10'
29
28
  tokens = {
30
29
  'root': [
31
30
  (r'\n', Whitespace),
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexer for the J programming language.
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
 
@@ -18,8 +18,6 @@ __all__ = ['JLexer']
18
18
  class JLexer(RegexLexer):
19
19
  """
20
20
  For J source code.
21
-
22
- .. versionadded:: 2.1
23
21
  """
24
22
 
25
23
  name = 'J'
@@ -27,6 +25,7 @@ class JLexer(RegexLexer):
27
25
  aliases = ['j']
28
26
  filenames = ['*.ijs']
29
27
  mimetypes = ['text/x-j']
28
+ version_added = '2.1'
30
29
 
31
30
  validName = r'\b[a-zA-Z]\w*'
32
31
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for JavaScript 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
 
@@ -41,6 +41,7 @@ class JavascriptLexer(RegexLexer):
41
41
  filenames = ['*.js', '*.jsm', '*.mjs', '*.cjs']
42
42
  mimetypes = ['application/javascript', 'application/x-javascript',
43
43
  'text/x-javascript', 'text/javascript']
44
+ version_added = ''
44
45
 
45
46
  flags = re.DOTALL | re.MULTILINE
46
47
 
@@ -137,8 +138,6 @@ class JavascriptLexer(RegexLexer):
137
138
  class TypeScriptLexer(JavascriptLexer):
138
139
  """
139
140
  For TypeScript source code.
140
-
141
- .. versionadded:: 1.6
142
141
  """
143
142
 
144
143
  name = 'TypeScript'
@@ -146,6 +145,7 @@ class TypeScriptLexer(JavascriptLexer):
146
145
  aliases = ['typescript', 'ts']
147
146
  filenames = ['*.ts']
148
147
  mimetypes = ['application/x-typescript', 'text/x-typescript']
148
+ version_added = '1.6'
149
149
 
150
150
  # Higher priority than the TypoScriptLexer, as TypeScript is far more
151
151
  # common these days
@@ -175,8 +175,6 @@ class TypeScriptLexer(JavascriptLexer):
175
175
  class KalLexer(RegexLexer):
176
176
  """
177
177
  For Kal source code.
178
-
179
- .. versionadded:: 2.0
180
178
  """
181
179
 
182
180
  name = 'Kal'
@@ -184,6 +182,7 @@ class KalLexer(RegexLexer):
184
182
  aliases = ['kal']
185
183
  filenames = ['*.kal']
186
184
  mimetypes = ['text/kal', 'application/kal']
185
+ version_added = '2.0'
187
186
 
188
187
  flags = re.DOTALL
189
188
  tokens = {
@@ -309,8 +308,6 @@ class KalLexer(RegexLexer):
309
308
  class LiveScriptLexer(RegexLexer):
310
309
  """
311
310
  For LiveScript source code.
312
-
313
- .. versionadded:: 1.6
314
311
  """
315
312
 
316
313
  name = 'LiveScript'
@@ -318,6 +315,7 @@ class LiveScriptLexer(RegexLexer):
318
315
  aliases = ['livescript', 'live-script']
319
316
  filenames = ['*.ls']
320
317
  mimetypes = ['text/livescript']
318
+ version_added = '1.6'
321
319
 
322
320
  flags = re.DOTALL
323
321
  tokens = {
@@ -422,8 +420,6 @@ class LiveScriptLexer(RegexLexer):
422
420
  class DartLexer(RegexLexer):
423
421
  """
424
422
  For Dart source code.
425
-
426
- .. versionadded:: 1.5
427
423
  """
428
424
 
429
425
  name = 'Dart'
@@ -431,6 +427,7 @@ class DartLexer(RegexLexer):
431
427
  aliases = ['dart']
432
428
  filenames = ['*.dart']
433
429
  mimetypes = ['text/x-dart']
430
+ version_added = '1.5'
434
431
 
435
432
  flags = re.MULTILINE | re.DOTALL
436
433
 
@@ -537,15 +534,16 @@ class LassoLexer(RegexLexer):
537
534
  `requiredelimiters`
538
535
  If given and ``True``, only highlight code between delimiters as Lasso
539
536
  (default: ``False``).
540
-
541
- .. versionadded:: 1.6
542
537
  """
543
538
 
544
539
  name = 'Lasso'
545
540
  aliases = ['lasso', 'lassoscript']
546
541
  filenames = ['*.lasso', '*.lasso[89]']
542
+ version_added = '1.6'
547
543
  alias_filenames = ['*.incl', '*.inc', '*.las']
548
544
  mimetypes = ['text/x-lasso']
545
+ url = 'https://www.lassosoft.com'
546
+
549
547
  flags = re.IGNORECASE | re.DOTALL | re.MULTILINE
550
548
 
551
549
  tokens = {
@@ -790,14 +788,14 @@ class LassoLexer(RegexLexer):
790
788
  class ObjectiveJLexer(RegexLexer):
791
789
  """
792
790
  For Objective-J source code with preprocessor directives.
793
-
794
- .. versionadded:: 1.3
795
791
  """
796
792
 
797
793
  name = 'Objective-J'
798
794
  aliases = ['objective-j', 'objectivej', 'obj-j', 'objj']
799
795
  filenames = ['*.j']
800
796
  mimetypes = ['text/x-objective-j']
797
+ url = 'https://www.cappuccino.dev/learn/objective-j.html'
798
+ version_added = '1.3'
801
799
 
802
800
  #: optional Comment or Whitespace
803
801
  _ws = r'(?:\s|//[^\n]*\n|/[*](?:[^*]|[*][^/])*[*]/)*'
@@ -1013,8 +1011,6 @@ class ObjectiveJLexer(RegexLexer):
1013
1011
  class CoffeeScriptLexer(RegexLexer):
1014
1012
  """
1015
1013
  For CoffeeScript source code.
1016
-
1017
- .. versionadded:: 1.3
1018
1014
  """
1019
1015
 
1020
1016
  name = 'CoffeeScript'
@@ -1022,6 +1018,7 @@ class CoffeeScriptLexer(RegexLexer):
1022
1018
  aliases = ['coffeescript', 'coffee-script', 'coffee']
1023
1019
  filenames = ['*.coffee']
1024
1020
  mimetypes = ['text/coffeescript']
1021
+ version_added = '1.3'
1025
1022
 
1026
1023
  _operator_re = (
1027
1024
  r'\+\+|~|&&|\band\b|\bor\b|\bis\b|\bisnt\b|\bnot\b|\?|:|'
@@ -1127,14 +1124,13 @@ class CoffeeScriptLexer(RegexLexer):
1127
1124
  class MaskLexer(RegexLexer):
1128
1125
  """
1129
1126
  For Mask markup.
1130
-
1131
- .. versionadded:: 2.0
1132
1127
  """
1133
1128
  name = 'Mask'
1134
1129
  url = 'https://github.com/atmajs/MaskJS'
1135
1130
  aliases = ['mask']
1136
1131
  filenames = ['*.mask']
1137
1132
  mimetypes = ['text/x-mask']
1133
+ version_added = '2.0'
1138
1134
 
1139
1135
  flags = re.MULTILINE | re.IGNORECASE | re.DOTALL
1140
1136
  tokens = {
@@ -1255,6 +1251,8 @@ class EarlGreyLexer(RegexLexer):
1255
1251
  aliases = ['earl-grey', 'earlgrey', 'eg']
1256
1252
  filenames = ['*.eg']
1257
1253
  mimetypes = ['text/x-earl-grey']
1254
+ url = 'https://github.com/breuleux/earl-grey'
1255
+ version_added = ''
1258
1256
 
1259
1257
  tokens = {
1260
1258
  'root': [
@@ -1461,8 +1459,6 @@ class EarlGreyLexer(RegexLexer):
1461
1459
  class JuttleLexer(RegexLexer):
1462
1460
  """
1463
1461
  For Juttle source code.
1464
-
1465
- .. versionadded:: 2.2
1466
1462
  """
1467
1463
 
1468
1464
  name = 'Juttle'
@@ -1471,6 +1467,7 @@ class JuttleLexer(RegexLexer):
1471
1467
  filenames = ['*.juttle']
1472
1468
  mimetypes = ['application/juttle', 'application/x-juttle',
1473
1469
  'text/x-juttle', 'text/juttle']
1470
+ version_added = '2.2'
1474
1471
 
1475
1472
  flags = re.DOTALL | re.MULTILINE
1476
1473
 
@@ -1548,6 +1545,8 @@ class NodeConsoleLexer(Lexer):
1548
1545
  name = 'Node.js REPL console session'
1549
1546
  aliases = ['nodejsrepl', ]
1550
1547
  mimetypes = ['text/x-nodejsrepl', ]
1548
+ url = 'https://nodejs.org'
1549
+ version_added = ''
1551
1550
 
1552
1551
  def get_tokens_unprocessed(self, text):
1553
1552
  jslexer = JavascriptLexer(**self.options)
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for the JMESPath language
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,6 +23,7 @@ class JMESPathLexer(RegexLexer):
23
23
  url = 'https://jmespath.org'
24
24
  filenames = ['*.jp']
25
25
  aliases = ['jmespath', 'jp']
26
+ version_added = ''
26
27
 
27
28
  tokens = {
28
29
  'string': [
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for the JSLT language
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,14 +22,13 @@ _WORD_END = r'(?=[^0-9A-Z_a-z-])'
22
22
  class JSLTLexer(RegexLexer):
23
23
  """
24
24
  For JSLT source.
25
-
26
- .. versionadded:: 2.10
27
25
  """
28
26
  name = 'JSLT'
29
27
  url = 'https://github.com/schibsted/jslt'
30
28
  filenames = ['*.jslt']
31
29
  aliases = ['jslt']
32
30
  mimetypes = ['text/x-jslt']
31
+ version_added = '2.10'
33
32
 
34
33
  tokens = {
35
34
  'root': [
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexer for Jsonnet data templating language.
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
 
@@ -20,7 +20,7 @@ jsonnet_function_token = jsonnet_token + r'(?=\()'
20
20
 
21
21
  def string_rules(quote_mark):
22
22
  return [
23
- (r"[^{}\\]".format(quote_mark), String),
23
+ (rf"[^{quote_mark}\\]", String),
24
24
  (r"\\.", String.Escape),
25
25
  (quote_mark, String, '#pop'),
26
26
  ]
@@ -28,7 +28,7 @@ def string_rules(quote_mark):
28
28
 
29
29
  def quoted_field_name(quote_mark):
30
30
  return [
31
- (r'([^{quote}\\]|\\.)*{quote}'.format(quote=quote_mark),
31
+ (rf'([^{quote_mark}\\]|\\.)*{quote_mark}',
32
32
  Name.Variable, 'field_separator')
33
33
  ]
34
34
 
@@ -40,6 +40,7 @@ class JsonnetLexer(RegexLexer):
40
40
  aliases = ['jsonnet']
41
41
  filenames = ['*.jsonnet', '*.libsonnet']
42
42
  url = "https://jsonnet.org"
43
+ version_added = ''
43
44
  tokens = {
44
45
  # Not used by itself
45
46
  '_comments': [
@@ -0,0 +1,75 @@
1
+ """
2
+ pygments.lexers.jsx
3
+ ~~~~~~~~~~~~~~~~~~~
4
+
5
+ Lexers for JSX (React).
6
+
7
+ :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
8
+ :license: BSD, see LICENSE for details.
9
+ """
10
+
11
+ import re
12
+
13
+ from pygments.lexer import bygroups, default, include, inherit
14
+ from pygments.lexers.javascript import JavascriptLexer
15
+ from pygments.token import Name, Operator, Punctuation, String, Text, \
16
+ Whitespace
17
+
18
+ __all__ = ['JsxLexer']
19
+
20
+
21
+ class JsxLexer(JavascriptLexer):
22
+ """For JavaScript Syntax Extension (JSX).
23
+ """
24
+
25
+ name = "JSX"
26
+ aliases = ["jsx", "react"]
27
+ filenames = ["*.jsx", "*.react"]
28
+ mimetypes = ["text/jsx", "text/typescript-jsx"]
29
+ url = "https://facebook.github.io/jsx/"
30
+ version_added = '2.17'
31
+
32
+ flags = re.MULTILINE | re.DOTALL
33
+
34
+ # Use same tokens as `JavascriptLexer`, but with tags and attributes support
35
+ tokens = {
36
+ "root": [
37
+ include("jsx"),
38
+ inherit,
39
+ ],
40
+ "jsx": [
41
+ (r"</?>", Punctuation), # JSXFragment <>|</>
42
+ (r"(<)(\w+)(\.?)", bygroups(Punctuation, Name.Tag, Punctuation), "tag"),
43
+ (
44
+ r"(</)(\w+)(>)",
45
+ bygroups(Punctuation, Name.Tag, Punctuation),
46
+ ),
47
+ (
48
+ r"(</)(\w+)",
49
+ bygroups(Punctuation, Name.Tag),
50
+ "fragment",
51
+ ), # Same for React.Context
52
+ ],
53
+ "tag": [
54
+ (r"\s+", Whitespace),
55
+ (r"([\w-]+)(\s*)(=)(\s*)", bygroups(Name.Attribute, Whitespace, Operator, Whitespace), "attr"),
56
+ (r"[{}]+", Punctuation),
57
+ (r"[\w\.]+", Name.Attribute),
58
+ (r"(/?)(\s*)(>)", bygroups(Punctuation, Text, Punctuation), "#pop"),
59
+ ],
60
+ "fragment": [
61
+ (r"(.)(\w+)", bygroups(Punctuation, Name.Attribute)),
62
+ (r"(>)", bygroups(Punctuation), "#pop"),
63
+ ],
64
+ "attr": [
65
+ (r"\{", Punctuation, "expression"),
66
+ (r'".*?"', String, "#pop"),
67
+ (r"'.*?'", String, "#pop"),
68
+ default("#pop"),
69
+ ],
70
+ "expression": [
71
+ (r"\{", Punctuation, "#push"),
72
+ (r"\}", Punctuation, "#pop"),
73
+ include("root"),
74
+ ],
75
+ }
@@ -4,7 +4,7 @@
4
4
 
5
5
  Lexers for the Julia language.
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
 
@@ -27,8 +27,6 @@ operator_suffixes = r'[²³¹ʰʲʳʷʸˡˢˣᴬᴮᴰᴱᴳᴴᴵᴶᴷᴸᴹ
27
27
  class JuliaLexer(RegexLexer):
28
28
  """
29
29
  For Julia source code.
30
-
31
- .. versionadded:: 1.6
32
30
  """
33
31
 
34
32
  name = 'Julia'
@@ -36,6 +34,7 @@ class JuliaLexer(RegexLexer):
36
34
  aliases = ['julia', 'jl']
37
35
  filenames = ['*.jl']
38
36
  mimetypes = ['text/x-julia', 'application/x-julia']
37
+ version_added = '1.6'
39
38
 
40
39
  tokens = {
41
40
  'root': [
@@ -247,11 +246,11 @@ class JuliaLexer(RegexLexer):
247
246
  class JuliaConsoleLexer(Lexer):
248
247
  """
249
248
  For Julia console sessions. Modeled after MatlabSessionLexer.
250
-
251
- .. versionadded:: 1.6
252
249
  """
253
250
  name = 'Julia console'
254
251
  aliases = ['jlcon', 'julia-repl']
252
+ url = 'https://julialang.org/'
253
+ version_added = '1.6'
255
254
 
256
255
  def get_tokens_unprocessed(self, text):
257
256
  jllexer = JuliaLexer(**self.options)