pygments.rb 1.2.0 → 2.1.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 (388) hide show
  1. checksums.yaml +5 -5
  2. data/.github/dependabot.yml +13 -0
  3. data/.github/workflows/ci.yml +40 -0
  4. data/.github/workflows/release.yml +24 -0
  5. data/.gitignore +5 -5
  6. data/.rubocop.yml +18 -0
  7. data/CHANGELOG.adoc +132 -0
  8. data/Gemfile +3 -1
  9. data/LICENSE +1 -1
  10. data/README.adoc +160 -0
  11. data/Rakefile +12 -21
  12. data/bench.rb +14 -8
  13. data/{cache-lexers.rb → cache_lexers.rb} +3 -2
  14. data/lexers +0 -0
  15. data/lib/pygments.rb +10 -11
  16. data/lib/pygments/lexer.rb +6 -6
  17. data/lib/pygments/mentos.py +23 -110
  18. data/lib/pygments/popen.rb +196 -275
  19. data/lib/pygments/version.rb +2 -2
  20. data/pygments.rb.gemspec +12 -10
  21. data/test/test_pygments.rb +50 -110
  22. data/vendor/pygments-main/{AUTHORS → Pygments-2.8.0.dist-info/AUTHORS} +26 -3
  23. data/vendor/pygments-main/Pygments-2.8.0.dist-info/INSTALLER +1 -0
  24. data/vendor/pygments-main/{LICENSE → Pygments-2.8.0.dist-info/LICENSE} +1 -1
  25. data/vendor/pygments-main/Pygments-2.8.0.dist-info/METADATA +48 -0
  26. data/vendor/pygments-main/Pygments-2.8.0.dist-info/RECORD +494 -0
  27. data/vendor/pygments-main/Pygments-2.8.0.dist-info/REQUESTED +0 -0
  28. data/vendor/pygments-main/Pygments-2.8.0.dist-info/WHEEL +5 -0
  29. data/vendor/pygments-main/Pygments-2.8.0.dist-info/entry_points.txt +3 -0
  30. data/vendor/pygments-main/Pygments-2.8.0.dist-info/top_level.txt +1 -0
  31. data/vendor/pygments-main/bin/pygmentize +8 -0
  32. data/vendor/pygments-main/pygments/__init__.py +6 -12
  33. data/vendor/pygments-main/pygments/__main__.py +17 -0
  34. data/vendor/pygments-main/pygments/cmdline.py +213 -184
  35. data/vendor/pygments-main/pygments/console.py +6 -10
  36. data/vendor/pygments-main/pygments/filter.py +4 -7
  37. data/vendor/pygments-main/pygments/filters/__init__.py +609 -22
  38. data/vendor/pygments-main/pygments/formatter.py +4 -5
  39. data/vendor/pygments-main/pygments/formatters/__init__.py +10 -10
  40. data/vendor/pygments-main/pygments/formatters/_mapping.py +1 -4
  41. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -2
  42. data/vendor/pygments-main/pygments/formatters/html.py +242 -139
  43. data/vendor/pygments-main/pygments/formatters/img.py +91 -50
  44. data/vendor/pygments-main/pygments/formatters/irc.py +39 -40
  45. data/vendor/pygments-main/pygments/formatters/latex.py +62 -33
  46. data/vendor/pygments-main/pygments/formatters/other.py +18 -17
  47. data/vendor/pygments-main/pygments/formatters/rtf.py +29 -30
  48. data/vendor/pygments-main/pygments/formatters/svg.py +40 -5
  49. data/vendor/pygments-main/pygments/formatters/terminal.py +25 -32
  50. data/vendor/pygments-main/pygments/formatters/terminal256.py +45 -14
  51. data/vendor/pygments-main/pygments/lexer.py +47 -44
  52. data/vendor/pygments-main/pygments/lexers/__init__.py +29 -17
  53. data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +5 -6
  54. data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +15 -16
  55. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +21 -18
  56. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1717 -1339
  57. data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -2
  58. data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +2 -5
  59. data/vendor/pygments-main/pygments/lexers/_mapping.py +79 -31
  60. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +2 -3
  61. data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +1281 -0
  62. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +439 -386
  63. data/vendor/pygments-main/pygments/lexers/_php_builtins.py +17 -21
  64. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +73 -17
  65. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +2 -3
  66. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -4
  67. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +151 -126
  68. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +96 -58
  69. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -2
  70. data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +112 -0
  71. data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +279 -0
  72. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -2
  73. data/vendor/pygments-main/pygments/lexers/actionscript.py +14 -10
  74. data/vendor/pygments-main/pygments/lexers/agile.py +1 -2
  75. data/vendor/pygments-main/pygments/lexers/algebra.py +20 -2
  76. data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
  77. data/vendor/pygments-main/pygments/lexers/amdgpu.py +48 -0
  78. data/vendor/pygments-main/pygments/lexers/ampl.py +3 -4
  79. data/vendor/pygments-main/pygments/lexers/apl.py +15 -16
  80. data/vendor/pygments-main/pygments/lexers/archetype.py +4 -5
  81. data/vendor/pygments-main/pygments/lexers/arrow.py +116 -0
  82. data/vendor/pygments-main/pygments/lexers/asm.py +440 -77
  83. data/vendor/pygments-main/pygments/lexers/automation.py +7 -2
  84. data/vendor/pygments-main/pygments/lexers/bare.py +103 -0
  85. data/vendor/pygments-main/pygments/lexers/basic.py +168 -7
  86. data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -6
  87. data/vendor/pygments-main/pygments/lexers/boa.py +101 -0
  88. data/vendor/pygments-main/pygments/lexers/business.py +19 -5
  89. data/vendor/pygments-main/pygments/lexers/c_cpp.py +138 -48
  90. data/vendor/pygments-main/pygments/lexers/c_like.py +67 -43
  91. data/vendor/pygments-main/pygments/lexers/capnproto.py +7 -8
  92. data/vendor/pygments-main/pygments/lexers/cddl.py +190 -0
  93. data/vendor/pygments-main/pygments/lexers/chapel.py +25 -16
  94. data/vendor/pygments-main/pygments/lexers/clean.py +135 -245
  95. data/vendor/pygments-main/pygments/lexers/compiled.py +1 -2
  96. data/vendor/pygments-main/pygments/lexers/configs.py +190 -38
  97. data/vendor/pygments-main/pygments/lexers/console.py +1 -2
  98. data/vendor/pygments-main/pygments/lexers/crystal.py +54 -81
  99. data/vendor/pygments-main/pygments/lexers/csound.py +288 -188
  100. data/vendor/pygments-main/pygments/lexers/css.py +28 -23
  101. data/vendor/pygments-main/pygments/lexers/d.py +12 -8
  102. data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -2
  103. data/vendor/pygments-main/pygments/lexers/data.py +240 -98
  104. data/vendor/pygments-main/pygments/lexers/devicetree.py +108 -0
  105. data/vendor/pygments-main/pygments/lexers/diff.py +4 -5
  106. data/vendor/pygments-main/pygments/lexers/dotnet.py +46 -31
  107. data/vendor/pygments-main/pygments/lexers/dsls.py +146 -65
  108. data/vendor/pygments-main/pygments/lexers/dylan.py +16 -19
  109. data/vendor/pygments-main/pygments/lexers/ecl.py +17 -5
  110. data/vendor/pygments-main/pygments/lexers/eiffel.py +2 -3
  111. data/vendor/pygments-main/pygments/lexers/elm.py +5 -6
  112. data/vendor/pygments-main/pygments/lexers/email.py +150 -0
  113. data/vendor/pygments-main/pygments/lexers/erlang.py +29 -33
  114. data/vendor/pygments-main/pygments/lexers/esoteric.py +46 -20
  115. data/vendor/pygments-main/pygments/lexers/ezhil.py +21 -14
  116. data/vendor/pygments-main/pygments/lexers/factor.py +3 -4
  117. data/vendor/pygments-main/pygments/lexers/fantom.py +1 -2
  118. data/vendor/pygments-main/pygments/lexers/felix.py +1 -2
  119. data/vendor/pygments-main/pygments/lexers/floscript.py +82 -0
  120. data/vendor/pygments-main/pygments/lexers/forth.py +41 -41
  121. data/vendor/pygments-main/pygments/lexers/fortran.py +13 -10
  122. data/vendor/pygments-main/pygments/lexers/foxpro.py +2 -3
  123. data/vendor/pygments-main/pygments/lexers/freefem.py +897 -0
  124. data/vendor/pygments-main/pygments/lexers/functional.py +1 -2
  125. data/vendor/pygments-main/pygments/lexers/futhark.py +110 -0
  126. data/vendor/pygments-main/pygments/lexers/gdscript.py +345 -0
  127. data/vendor/pygments-main/pygments/lexers/go.py +2 -3
  128. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +62 -6
  129. data/vendor/pygments-main/pygments/lexers/graph.py +14 -10
  130. data/vendor/pygments-main/pygments/lexers/graphics.py +274 -28
  131. data/vendor/pygments-main/pygments/lexers/graphviz.py +57 -0
  132. data/vendor/pygments-main/pygments/lexers/haskell.py +48 -22
  133. data/vendor/pygments-main/pygments/lexers/haxe.py +8 -9
  134. data/vendor/pygments-main/pygments/lexers/hdl.py +176 -90
  135. data/vendor/pygments-main/pygments/lexers/hexdump.py +1 -2
  136. data/vendor/pygments-main/pygments/lexers/html.py +37 -26
  137. data/vendor/pygments-main/pygments/lexers/idl.py +19 -9
  138. data/vendor/pygments-main/pygments/lexers/igor.py +244 -113
  139. data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
  140. data/vendor/pygments-main/pygments/lexers/installers.py +1 -2
  141. data/vendor/pygments-main/pygments/lexers/int_fiction.py +40 -16
  142. data/vendor/pygments-main/pygments/lexers/iolang.py +3 -4
  143. data/vendor/pygments-main/pygments/lexers/j.py +4 -5
  144. data/vendor/pygments-main/pygments/lexers/javascript.py +115 -104
  145. data/vendor/pygments-main/pygments/lexers/julia.py +44 -47
  146. data/vendor/pygments-main/pygments/lexers/jvm.py +368 -202
  147. data/vendor/pygments-main/pygments/lexers/lisp.py +887 -810
  148. data/vendor/pygments-main/pygments/lexers/make.py +12 -9
  149. data/vendor/pygments-main/pygments/lexers/markup.py +212 -45
  150. data/vendor/pygments-main/pygments/lexers/math.py +1 -2
  151. data/vendor/pygments-main/pygments/lexers/matlab.py +2705 -88
  152. data/vendor/pygments-main/pygments/lexers/mime.py +225 -0
  153. data/vendor/pygments-main/pygments/lexers/ml.py +203 -15
  154. data/vendor/pygments-main/pygments/lexers/modeling.py +26 -19
  155. data/vendor/pygments-main/pygments/lexers/modula2.py +27 -9
  156. data/vendor/pygments-main/pygments/lexers/monte.py +1 -2
  157. data/vendor/pygments-main/pygments/lexers/mosel.py +447 -0
  158. data/vendor/pygments-main/pygments/lexers/ncl.py +1 -2
  159. data/vendor/pygments-main/pygments/lexers/nimrod.py +4 -5
  160. data/vendor/pygments-main/pygments/lexers/nit.py +1 -2
  161. data/vendor/pygments-main/pygments/lexers/nix.py +1 -2
  162. data/vendor/pygments-main/pygments/lexers/oberon.py +17 -2
  163. data/vendor/pygments-main/pygments/lexers/objective.py +18 -19
  164. data/vendor/pygments-main/pygments/lexers/ooc.py +1 -2
  165. data/vendor/pygments-main/pygments/lexers/other.py +1 -2
  166. data/vendor/pygments-main/pygments/lexers/parasail.py +1 -2
  167. data/vendor/pygments-main/pygments/lexers/parsers.py +47 -83
  168. data/vendor/pygments-main/pygments/lexers/pascal.py +22 -23
  169. data/vendor/pygments-main/pygments/lexers/pawn.py +31 -28
  170. data/vendor/pygments-main/pygments/lexers/perl.py +260 -149
  171. data/vendor/pygments-main/pygments/lexers/php.py +66 -13
  172. data/vendor/pygments-main/pygments/lexers/pointless.py +70 -0
  173. data/vendor/pygments-main/pygments/lexers/pony.py +93 -0
  174. data/vendor/pygments-main/pygments/lexers/praat.py +38 -31
  175. data/vendor/pygments-main/pygments/lexers/prolog.py +38 -39
  176. data/vendor/pygments-main/pygments/lexers/promql.py +182 -0
  177. data/vendor/pygments-main/pygments/lexers/python.py +450 -231
  178. data/vendor/pygments-main/pygments/lexers/qvt.py +6 -7
  179. data/vendor/pygments-main/pygments/lexers/r.py +13 -276
  180. data/vendor/pygments-main/pygments/lexers/rdf.py +232 -40
  181. data/vendor/pygments-main/pygments/lexers/rebol.py +8 -9
  182. data/vendor/pygments-main/pygments/lexers/resource.py +2 -3
  183. data/vendor/pygments-main/pygments/lexers/ride.py +138 -0
  184. data/vendor/pygments-main/pygments/lexers/rnc.py +1 -2
  185. data/vendor/pygments-main/pygments/lexers/roboconf.py +1 -2
  186. data/vendor/pygments-main/pygments/lexers/robotframework.py +23 -32
  187. data/vendor/pygments-main/pygments/lexers/ruby.py +50 -46
  188. data/vendor/pygments-main/pygments/lexers/rust.py +76 -73
  189. data/vendor/pygments-main/pygments/lexers/sas.py +1 -2
  190. data/vendor/pygments-main/pygments/lexers/scdoc.py +82 -0
  191. data/vendor/pygments-main/pygments/lexers/scripting.py +79 -18
  192. data/vendor/pygments-main/pygments/lexers/sgf.py +60 -0
  193. data/vendor/pygments-main/pygments/lexers/shell.py +164 -49
  194. data/vendor/pygments-main/pygments/lexers/sieve.py +68 -0
  195. data/vendor/pygments-main/pygments/lexers/slash.py +184 -0
  196. data/vendor/pygments-main/pygments/lexers/smalltalk.py +2 -3
  197. data/vendor/pygments-main/pygments/lexers/smv.py +3 -4
  198. data/vendor/pygments-main/pygments/lexers/snobol.py +1 -2
  199. data/vendor/pygments-main/pygments/lexers/solidity.py +91 -0
  200. data/vendor/pygments-main/pygments/lexers/special.py +31 -28
  201. data/vendor/pygments-main/pygments/lexers/sql.py +330 -179
  202. data/vendor/pygments-main/pygments/lexers/stata.py +107 -45
  203. data/vendor/pygments-main/pygments/lexers/supercollider.py +8 -4
  204. data/vendor/pygments-main/pygments/lexers/tcl.py +1 -2
  205. data/vendor/pygments-main/pygments/lexers/templates.py +116 -136
  206. data/vendor/pygments-main/pygments/lexers/teraterm.py +334 -0
  207. data/vendor/pygments-main/pygments/lexers/testing.py +6 -7
  208. data/vendor/pygments-main/pygments/lexers/text.py +2 -2
  209. data/vendor/pygments-main/pygments/lexers/textedit.py +6 -7
  210. data/vendor/pygments-main/pygments/lexers/textfmts.py +146 -14
  211. data/vendor/pygments-main/pygments/lexers/theorem.py +74 -56
  212. data/vendor/pygments-main/pygments/lexers/tnt.py +262 -0
  213. data/vendor/pygments-main/pygments/lexers/trafficscript.py +1 -2
  214. data/vendor/pygments-main/pygments/lexers/typoscript.py +4 -12
  215. data/vendor/pygments-main/pygments/lexers/unicon.py +411 -0
  216. data/vendor/pygments-main/pygments/lexers/urbi.py +16 -4
  217. data/vendor/pygments-main/pygments/lexers/usd.py +89 -0
  218. data/vendor/pygments-main/pygments/lexers/varnish.py +4 -5
  219. data/vendor/pygments-main/pygments/lexers/verification.py +13 -11
  220. data/vendor/pygments-main/pygments/lexers/web.py +1 -2
  221. data/vendor/pygments-main/pygments/lexers/webidl.py +298 -0
  222. data/vendor/pygments-main/pygments/lexers/webmisc.py +35 -32
  223. data/vendor/pygments-main/pygments/lexers/whiley.py +5 -6
  224. data/vendor/pygments-main/pygments/lexers/x10.py +2 -3
  225. data/vendor/pygments-main/pygments/lexers/xorg.py +5 -5
  226. data/vendor/pygments-main/pygments/lexers/yang.py +103 -0
  227. data/vendor/pygments-main/pygments/lexers/zig.py +123 -0
  228. data/vendor/pygments-main/pygments/modeline.py +1 -2
  229. data/vendor/pygments-main/pygments/plugin.py +4 -3
  230. data/vendor/pygments-main/pygments/regexopt.py +1 -2
  231. data/vendor/pygments-main/pygments/scanner.py +2 -3
  232. data/vendor/pygments-main/pygments/sphinxext.py +2 -5
  233. data/vendor/pygments-main/pygments/style.py +61 -25
  234. data/vendor/pygments-main/pygments/styles/__init__.py +12 -5
  235. data/vendor/pygments-main/pygments/styles/abap.py +1 -2
  236. data/vendor/pygments-main/pygments/styles/algol.py +1 -2
  237. data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -2
  238. data/vendor/pygments-main/pygments/styles/arduino.py +2 -3
  239. data/vendor/pygments-main/pygments/styles/autumn.py +1 -2
  240. data/vendor/pygments-main/pygments/styles/borland.py +1 -2
  241. data/vendor/pygments-main/pygments/styles/bw.py +1 -2
  242. data/vendor/pygments-main/pygments/styles/colorful.py +1 -2
  243. data/vendor/pygments-main/pygments/styles/default.py +1 -2
  244. data/vendor/pygments-main/pygments/styles/emacs.py +1 -2
  245. data/vendor/pygments-main/pygments/styles/friendly.py +1 -2
  246. data/vendor/pygments-main/pygments/styles/fruity.py +1 -2
  247. data/vendor/pygments-main/pygments/styles/igor.py +1 -2
  248. data/vendor/pygments-main/pygments/styles/inkpot.py +66 -0
  249. data/vendor/pygments-main/pygments/styles/lovelace.py +1 -2
  250. data/vendor/pygments-main/pygments/styles/manni.py +1 -2
  251. data/vendor/pygments-main/pygments/styles/material.py +118 -0
  252. data/vendor/pygments-main/pygments/styles/monokai.py +4 -4
  253. data/vendor/pygments-main/pygments/styles/murphy.py +1 -2
  254. data/vendor/pygments-main/pygments/styles/native.py +1 -2
  255. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -2
  256. data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -2
  257. data/vendor/pygments-main/pygments/styles/pastie.py +1 -2
  258. data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
  259. data/vendor/pygments-main/pygments/styles/rainbow_dash.py +1 -2
  260. data/vendor/pygments-main/pygments/styles/rrt.py +1 -2
  261. data/vendor/pygments-main/pygments/styles/sas.py +1 -2
  262. data/vendor/pygments-main/pygments/styles/solarized.py +136 -0
  263. data/vendor/pygments-main/pygments/styles/stata_dark.py +40 -0
  264. data/vendor/pygments-main/pygments/styles/{stata.py → stata_light.py} +14 -16
  265. data/vendor/pygments-main/pygments/styles/tango.py +1 -2
  266. data/vendor/pygments-main/pygments/styles/trac.py +1 -2
  267. data/vendor/pygments-main/pygments/styles/vim.py +1 -2
  268. data/vendor/pygments-main/pygments/styles/vs.py +1 -2
  269. data/vendor/pygments-main/pygments/styles/xcode.py +1 -2
  270. data/vendor/pygments-main/pygments/styles/zenburn.py +80 -0
  271. data/vendor/pygments-main/pygments/token.py +1 -2
  272. data/vendor/pygments-main/pygments/unistring.py +47 -109
  273. data/vendor/pygments-main/pygments/util.py +16 -96
  274. metadata +76 -137
  275. data/CHANGELOG.md +0 -105
  276. data/README.md +0 -121
  277. data/circle.yml +0 -20
  278. data/test/test_data.c +0 -2581
  279. data/test/test_data.py +0 -514
  280. data/test/test_data_generated +0 -2582
  281. data/vendor/custom_lexers/github.py +0 -565
  282. data/vendor/pygments-main/CHANGES +0 -1186
  283. data/vendor/pygments-main/MANIFEST.in +0 -6
  284. data/vendor/pygments-main/Makefile +0 -65
  285. data/vendor/pygments-main/README.rst +0 -39
  286. data/vendor/pygments-main/REVISION +0 -1
  287. data/vendor/pygments-main/TODO +0 -12
  288. data/vendor/pygments-main/doc/Makefile +0 -153
  289. data/vendor/pygments-main/doc/_static/favicon.ico +0 -0
  290. data/vendor/pygments-main/doc/_static/logo_new.png +0 -0
  291. data/vendor/pygments-main/doc/_static/logo_only.png +0 -0
  292. data/vendor/pygments-main/doc/_templates/docssidebar.html +0 -3
  293. data/vendor/pygments-main/doc/_templates/indexsidebar.html +0 -25
  294. data/vendor/pygments-main/doc/_themes/pygments14/layout.html +0 -98
  295. data/vendor/pygments-main/doc/_themes/pygments14/static/bodybg.png +0 -0
  296. data/vendor/pygments-main/doc/_themes/pygments14/static/docbg.png +0 -0
  297. data/vendor/pygments-main/doc/_themes/pygments14/static/listitem.png +0 -0
  298. data/vendor/pygments-main/doc/_themes/pygments14/static/logo.png +0 -0
  299. data/vendor/pygments-main/doc/_themes/pygments14/static/pocoo.png +0 -0
  300. data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +0 -401
  301. data/vendor/pygments-main/doc/_themes/pygments14/theme.conf +0 -15
  302. data/vendor/pygments-main/doc/conf.py +0 -241
  303. data/vendor/pygments-main/doc/docs/api.rst +0 -354
  304. data/vendor/pygments-main/doc/docs/authors.rst +0 -4
  305. data/vendor/pygments-main/doc/docs/changelog.rst +0 -1
  306. data/vendor/pygments-main/doc/docs/cmdline.rst +0 -166
  307. data/vendor/pygments-main/doc/docs/filterdevelopment.rst +0 -71
  308. data/vendor/pygments-main/doc/docs/filters.rst +0 -41
  309. data/vendor/pygments-main/doc/docs/formatterdevelopment.rst +0 -169
  310. data/vendor/pygments-main/doc/docs/formatters.rst +0 -48
  311. data/vendor/pygments-main/doc/docs/index.rst +0 -66
  312. data/vendor/pygments-main/doc/docs/integrate.rst +0 -40
  313. data/vendor/pygments-main/doc/docs/java.rst +0 -70
  314. data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +0 -728
  315. data/vendor/pygments-main/doc/docs/lexers.rst +0 -69
  316. data/vendor/pygments-main/doc/docs/moinmoin.rst +0 -39
  317. data/vendor/pygments-main/doc/docs/plugins.rst +0 -93
  318. data/vendor/pygments-main/doc/docs/quickstart.rst +0 -205
  319. data/vendor/pygments-main/doc/docs/rstdirective.rst +0 -22
  320. data/vendor/pygments-main/doc/docs/styles.rst +0 -201
  321. data/vendor/pygments-main/doc/docs/tokens.rst +0 -372
  322. data/vendor/pygments-main/doc/docs/unicode.rst +0 -58
  323. data/vendor/pygments-main/doc/download.rst +0 -41
  324. data/vendor/pygments-main/doc/faq.rst +0 -139
  325. data/vendor/pygments-main/doc/index.rst +0 -54
  326. data/vendor/pygments-main/doc/languages.rst +0 -154
  327. data/vendor/pygments-main/doc/make.bat +0 -190
  328. data/vendor/pygments-main/doc/pygmentize.1 +0 -94
  329. data/vendor/pygments-main/external/autopygmentize +0 -101
  330. data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +0 -162
  331. data/vendor/pygments-main/external/markdown-processor.py +0 -67
  332. data/vendor/pygments-main/external/moin-parser.py +0 -112
  333. data/vendor/pygments-main/external/pygments.bashcomp +0 -38
  334. data/vendor/pygments-main/external/rst-directive.py +0 -82
  335. data/vendor/pygments-main/pygmentize +0 -8
  336. data/vendor/pygments-main/pygments/lexers/github.py +0 -565
  337. data/vendor/pygments-main/requirements.txt +0 -5
  338. data/vendor/pygments-main/scripts/check_sources.py +0 -211
  339. data/vendor/pygments-main/scripts/debug_lexer.py +0 -246
  340. data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +0 -33
  341. data/vendor/pygments-main/scripts/epydoc.css +0 -280
  342. data/vendor/pygments-main/scripts/get_vimkw.py +0 -74
  343. data/vendor/pygments-main/scripts/pylintrc +0 -301
  344. data/vendor/pygments-main/scripts/vim2pygments.py +0 -935
  345. data/vendor/pygments-main/setup.cfg +0 -10
  346. data/vendor/pygments-main/setup.py +0 -77
  347. data/vendor/pygments-main/tox.ini +0 -7
  348. data/vendor/simplejson/.gitignore +0 -10
  349. data/vendor/simplejson/.travis.yml +0 -5
  350. data/vendor/simplejson/CHANGES.txt +0 -291
  351. data/vendor/simplejson/LICENSE.txt +0 -19
  352. data/vendor/simplejson/MANIFEST.in +0 -5
  353. data/vendor/simplejson/README.rst +0 -19
  354. data/vendor/simplejson/conf.py +0 -179
  355. data/vendor/simplejson/index.rst +0 -628
  356. data/vendor/simplejson/scripts/make_docs.py +0 -18
  357. data/vendor/simplejson/setup.py +0 -104
  358. data/vendor/simplejson/simplejson/__init__.py +0 -510
  359. data/vendor/simplejson/simplejson/_speedups.c +0 -2745
  360. data/vendor/simplejson/simplejson/decoder.py +0 -425
  361. data/vendor/simplejson/simplejson/encoder.py +0 -567
  362. data/vendor/simplejson/simplejson/ordered_dict.py +0 -119
  363. data/vendor/simplejson/simplejson/scanner.py +0 -77
  364. data/vendor/simplejson/simplejson/tests/__init__.py +0 -67
  365. data/vendor/simplejson/simplejson/tests/test_bigint_as_string.py +0 -55
  366. data/vendor/simplejson/simplejson/tests/test_check_circular.py +0 -30
  367. data/vendor/simplejson/simplejson/tests/test_decimal.py +0 -66
  368. data/vendor/simplejson/simplejson/tests/test_decode.py +0 -83
  369. data/vendor/simplejson/simplejson/tests/test_default.py +0 -9
  370. data/vendor/simplejson/simplejson/tests/test_dump.py +0 -67
  371. data/vendor/simplejson/simplejson/tests/test_encode_basestring_ascii.py +0 -46
  372. data/vendor/simplejson/simplejson/tests/test_encode_for_html.py +0 -32
  373. data/vendor/simplejson/simplejson/tests/test_errors.py +0 -34
  374. data/vendor/simplejson/simplejson/tests/test_fail.py +0 -91
  375. data/vendor/simplejson/simplejson/tests/test_float.py +0 -19
  376. data/vendor/simplejson/simplejson/tests/test_indent.py +0 -86
  377. data/vendor/simplejson/simplejson/tests/test_item_sort_key.py +0 -20
  378. data/vendor/simplejson/simplejson/tests/test_namedtuple.py +0 -121
  379. data/vendor/simplejson/simplejson/tests/test_pass1.py +0 -76
  380. data/vendor/simplejson/simplejson/tests/test_pass2.py +0 -14
  381. data/vendor/simplejson/simplejson/tests/test_pass3.py +0 -20
  382. data/vendor/simplejson/simplejson/tests/test_recursion.py +0 -67
  383. data/vendor/simplejson/simplejson/tests/test_scanstring.py +0 -117
  384. data/vendor/simplejson/simplejson/tests/test_separators.py +0 -42
  385. data/vendor/simplejson/simplejson/tests/test_speedups.py +0 -20
  386. data/vendor/simplejson/simplejson/tests/test_tuple.py +0 -49
  387. data/vendor/simplejson/simplejson/tests/test_unicode.py +0 -109
  388. data/vendor/simplejson/simplejson/tool.py +0 -39
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.ncl
4
3
  ~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for NCAR Command Language.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.nimrod
4
3
  ~~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexer for the Nim language (formerly known as Nimrod).
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -43,14 +42,14 @@ class NimrodLexer(RegexLexer):
43
42
  return "|".join(newWords)
44
43
 
45
44
  keywords = [
46
- 'addr', 'and', 'as', 'asm', 'atomic', 'bind', 'block', 'break', 'case',
45
+ 'addr', 'and', 'as', 'asm', 'bind', 'block', 'break', 'case',
47
46
  'cast', 'concept', 'const', 'continue', 'converter', 'defer', 'discard',
48
47
  'distinct', 'div', 'do', 'elif', 'else', 'end', 'enum', 'except',
49
48
  'export', 'finally', 'for', 'func', 'if', 'in', 'yield', 'interface',
50
49
  'is', 'isnot', 'iterator', 'let', 'macro', 'method', 'mixin', 'mod',
51
50
  'not', 'notin', 'object', 'of', 'or', 'out', 'proc', 'ptr', 'raise',
52
- 'ref', 'return', 'shared', 'shl', 'shr', 'static', 'template', 'try',
53
- 'tuple', 'type', 'when', 'while', 'with', 'without', 'xor'
51
+ 'ref', 'return', 'shl', 'shr', 'static', 'template', 'try',
52
+ 'tuple', 'type', 'using', 'when', 'while', 'xor'
54
53
  ]
55
54
 
56
55
  keywordsPseudo = [
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.nit
4
3
  ~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexer for the Nit language.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.nix
4
3
  ~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for the NixOS Nix language.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.oberon
4
3
  ~~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for Oberon family languages.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -103,3 +102,19 @@ class ComponentPascalLexer(RegexLexer):
103
102
  (r'(TRUE|FALSE|NIL|INF)\b', Keyword.Constant),
104
103
  ]
105
104
  }
105
+
106
+ def analyse_text(text):
107
+ """The only other lexer using .cp is the C++ one, so we check if for
108
+ a few common Pascal keywords here. Those are unfortunately quite
109
+ common across various business languages as well."""
110
+ result = 0
111
+ if 'BEGIN' in text:
112
+ result += 0.01
113
+ if 'END' in text:
114
+ result += 0.01
115
+ if 'PROCEDURE' in text:
116
+ result += 0.01
117
+ if 'END' in text:
118
+ result += 0.01
119
+
120
+ return result
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.objective
4
3
  ~~~~~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for Objective-C family languages.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -66,7 +65,7 @@ def objective(baselexer):
66
65
  'copy', 'retain', 'assign', 'unsafe_unretained', 'atomic', 'nonatomic',
67
66
  'readonly', 'readwrite', 'setter', 'getter', 'typeof', 'in',
68
67
  'out', 'inout', 'release', 'class', '@dynamic', '@optional',
69
- '@required', '@autoreleasepool'), suffix=r'\b'),
68
+ '@required', '@autoreleasepool', '@import'), suffix=r'\b'),
70
69
  Keyword),
71
70
  (words(('id', 'instancetype', 'Class', 'IMP', 'SEL', 'BOOL',
72
71
  'IBOutlet', 'IBAction', 'unichar'), suffix=r'\b'),
@@ -87,26 +86,26 @@ def objective(baselexer):
87
86
  ],
88
87
  'oc_classname': [
89
88
  # interface definition that inherits
90
- ('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{)',
89
+ (r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{)',
91
90
  bygroups(Name.Class, Text, Name.Class, Text, Punctuation),
92
91
  ('#pop', 'oc_ivars')),
93
- ('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
92
+ (r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
94
93
  bygroups(Name.Class, Text, Name.Class), '#pop'),
95
94
  # interface definition for a category
96
- ('([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))(\s*)(\{)',
95
+ (r'([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))(\s*)(\{)',
97
96
  bygroups(Name.Class, Text, Name.Label, Text, Punctuation),
98
97
  ('#pop', 'oc_ivars')),
99
- ('([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))',
98
+ (r'([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))',
100
99
  bygroups(Name.Class, Text, Name.Label), '#pop'),
101
100
  # simple interface / implementation
102
- ('([a-zA-Z$_][\w$]*)(\s*)(\{)',
101
+ (r'([a-zA-Z$_][\w$]*)(\s*)(\{)',
103
102
  bygroups(Name.Class, Text, Punctuation), ('#pop', 'oc_ivars')),
104
- ('([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
103
+ (r'([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
105
104
  ],
106
105
  'oc_forward_classname': [
107
- ('([a-zA-Z$_][\w$]*)(\s*,\s*)',
106
+ (r'([a-zA-Z$_][\w$]*)(\s*,\s*)',
108
107
  bygroups(Name.Class, Text), 'oc_forward_classname'),
109
- ('([a-zA-Z$_][\w$]*)(\s*;?)',
108
+ (r'([a-zA-Z$_][\w$]*)(\s*;?)',
110
109
  bygroups(Name.Class, Text), '#pop')
111
110
  ],
112
111
  'oc_ivars': [
@@ -244,28 +243,28 @@ class LogosLexer(ObjectiveCppLexer):
244
243
  inherit,
245
244
  ],
246
245
  'logos_init_directive': [
247
- ('\s+', Text),
246
+ (r'\s+', Text),
248
247
  (',', Punctuation, ('logos_init_directive', '#pop')),
249
- ('([a-zA-Z$_][\w$]*)(\s*)(=)(\s*)([^);]*)',
248
+ (r'([a-zA-Z$_][\w$]*)(\s*)(=)(\s*)([^);]*)',
250
249
  bygroups(Name.Class, Text, Punctuation, Text, Text)),
251
- ('([a-zA-Z$_][\w$]*)', Name.Class),
252
- ('\)', Punctuation, '#pop'),
250
+ (r'([a-zA-Z$_][\w$]*)', Name.Class),
251
+ (r'\)', Punctuation, '#pop'),
253
252
  ],
254
253
  'logos_classname': [
255
- ('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
254
+ (r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
256
255
  bygroups(Name.Class, Text, Name.Class), '#pop'),
257
- ('([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
256
+ (r'([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
258
257
  ],
259
258
  'root': [
260
259
  (r'(%subclass)(\s+)', bygroups(Keyword, Text),
261
260
  'logos_classname'),
262
261
  (r'(%hook|%group)(\s+)([a-zA-Z$_][\w$]+)',
263
262
  bygroups(Keyword, Text, Name.Class)),
264
- (r'(%config)(\s*\(\s*)(\w+)(\s*=\s*)(.*?)(\s*\)\s*)',
263
+ (r'(%config)(\s*\(\s*)(\w+)(\s*=)(.*?)(\)\s*)',
265
264
  bygroups(Keyword, Text, Name.Variable, Text, String, Text)),
266
265
  (r'(%ctor)(\s*)(\{)', bygroups(Keyword, Text, Punctuation),
267
266
  'function'),
268
- (r'(%new)(\s*)(\()(\s*.*?\s*)(\))',
267
+ (r'(%new)(\s*)(\()(.*?)(\))',
269
268
  bygroups(Keyword, Text, Keyword, String, Keyword)),
270
269
  (r'(\s*)(%end)(\s*)', bygroups(Text, Keyword, Text)),
271
270
  inherit,
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.ooc
4
3
  ~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for the Ooc language.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.other
4
3
  ~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Just export lexer classes previously contained in this module.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.parasail
4
3
  ~~~~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexer for ParaSail.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.lexers.parsers
4
3
  ~~~~~~~~~~~~~~~~~~~~~~~
5
4
 
6
5
  Lexers for parser generators.
7
6
 
8
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
7
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
9
8
  :license: BSD, see LICENSE for details.
10
9
  """
11
10
 
@@ -28,7 +27,6 @@ __all__ = ['RagelLexer', 'RagelEmbeddedLexer', 'RagelCLexer', 'RagelDLexer',
28
27
  'RagelCppLexer', 'RagelObjectiveCLexer', 'RagelRubyLexer',
29
28
  'RagelJavaLexer', 'AntlrLexer', 'AntlrPythonLexer',
30
29
  'AntlrPerlLexer', 'AntlrRubyLexer', 'AntlrCppLexer',
31
- # 'AntlrCLexer',
32
30
  'AntlrCSharpLexer', 'AntlrObjectiveCLexer',
33
31
  'AntlrJavaLexer', 'AntlrActionScriptLexer',
34
32
  'TreetopLexer', 'EbnfLexer']
@@ -65,10 +63,10 @@ class RagelLexer(RegexLexer):
65
63
  (r'[+-]?[0-9]+', Number.Integer),
66
64
  ],
67
65
  'literals': [
68
- (r'"(\\\\|\\"|[^"])*"', String), # double quote string
69
- (r"'(\\\\|\\'|[^'])*'", String), # single quote string
70
- (r'\[(\\\\|\\\]|[^\]])*\]', String), # square bracket literals
71
- (r'/(?!\*)(\\\\|\\/|[^/])*/', String.Regex), # regular expressions
66
+ (r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
67
+ (r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
68
+ (r'\[(\\\\|\\[^\\]|[^\\\]])*\]', String), # square bracket literals
69
+ (r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/', String.Regex), # regular expressions
72
70
  ],
73
71
  'identifiers': [
74
72
  (r'[a-zA-Z_]\w*', Name.Variable),
@@ -107,15 +105,15 @@ class RagelLexer(RegexLexer):
107
105
  r'[^\\]\\[{}]', # allow escaped { or }
108
106
 
109
107
  # strings and comments may safely contain unsafe characters
110
- r'"(\\\\|\\"|[^"])*"', # double quote string
111
- r"'(\\\\|\\'|[^'])*'", # single quote string
108
+ r'"(\\\\|\\[^\\]|[^"\\])*"',
109
+ r"'(\\\\|\\[^\\]|[^'\\])*'",
112
110
  r'//.*$\n?', # single line comment
113
111
  r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
114
112
  r'\#.*$\n?', # ruby comment
115
113
 
116
114
  # regular expression: There's no reason for it to start
117
115
  # with a * and this stops confusion with comments.
118
- r'/(?!\*)(\\\\|\\/|[^/])*/',
116
+ r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
119
117
 
120
118
  # / is safe now that we've handled regex and javadoc comments
121
119
  r'/',
@@ -148,12 +146,12 @@ class RagelEmbeddedLexer(RegexLexer):
148
146
  r'%(?=[^%]|$)', # a single % sign is okay, just not 2 of them
149
147
 
150
148
  # strings and comments may safely contain unsafe characters
151
- r'"(\\\\|\\"|[^"])*"', # double quote string
152
- r"'(\\\\|\\'|[^'])*'", # single quote string
149
+ r'"(\\\\|\\[^\\]|[^"\\])*"',
150
+ r"'(\\\\|\\[^\\]|[^'\\])*'",
153
151
  r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
154
152
  r'//.*$\n?', # single line comment
155
153
  r'\#.*$\n?', # ruby/ragel comment
156
- r'/(?!\*)(\\\\|\\/|[^/])*/', # regular expression
154
+ r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/', # regular expression
157
155
 
158
156
  # / is safe now that we've handled regex and javadoc comments
159
157
  r'/',
@@ -183,7 +181,7 @@ class RagelEmbeddedLexer(RegexLexer):
183
181
 
184
182
  # specifically allow regex followed immediately by *
185
183
  # so it doesn't get mistaken for a comment
186
- r'/(?!\*)(\\\\|\\/|[^/])*/\*',
184
+ r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/\*',
187
185
 
188
186
  # allow / as long as it's not followed by another / or by a *
189
187
  r'/(?=[^/*]|$)',
@@ -194,9 +192,9 @@ class RagelEmbeddedLexer(RegexLexer):
194
192
  )) + r')+',
195
193
 
196
194
  # strings and comments may safely contain unsafe characters
197
- r'"(\\\\|\\"|[^"])*"', # double quote string
198
- r"'(\\\\|\\'|[^'])*'", # single quote string
199
- r"\[(\\\\|\\\]|[^\]])*\]", # square bracket literal
195
+ r'"(\\\\|\\[^\\]|[^"\\])*"',
196
+ r"'(\\\\|\\[^\\]|[^'\\])*'",
197
+ r"\[(\\\\|\\[^\\]|[^\]\\])*\]", # square bracket literal
200
198
  r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
201
199
  r'//.*$\n?', # single line comment
202
200
  r'\#.*$\n?', # ruby/ragel comment
@@ -222,8 +220,7 @@ class RagelRubyLexer(DelegatingLexer):
222
220
  filenames = ['*.rl']
223
221
 
224
222
  def __init__(self, **options):
225
- super(RagelRubyLexer, self).__init__(RubyLexer, RagelEmbeddedLexer,
226
- **options)
223
+ super().__init__(RubyLexer, RagelEmbeddedLexer, **options)
227
224
 
228
225
  def analyse_text(text):
229
226
  return '@LANG: ruby' in text
@@ -241,8 +238,7 @@ class RagelCLexer(DelegatingLexer):
241
238
  filenames = ['*.rl']
242
239
 
243
240
  def __init__(self, **options):
244
- super(RagelCLexer, self).__init__(CLexer, RagelEmbeddedLexer,
245
- **options)
241
+ super().__init__(CLexer, RagelEmbeddedLexer, **options)
246
242
 
247
243
  def analyse_text(text):
248
244
  return '@LANG: c' in text
@@ -260,7 +256,7 @@ class RagelDLexer(DelegatingLexer):
260
256
  filenames = ['*.rl']
261
257
 
262
258
  def __init__(self, **options):
263
- super(RagelDLexer, self).__init__(DLexer, RagelEmbeddedLexer, **options)
259
+ super().__init__(DLexer, RagelEmbeddedLexer, **options)
264
260
 
265
261
  def analyse_text(text):
266
262
  return '@LANG: d' in text
@@ -278,7 +274,7 @@ class RagelCppLexer(DelegatingLexer):
278
274
  filenames = ['*.rl']
279
275
 
280
276
  def __init__(self, **options):
281
- super(RagelCppLexer, self).__init__(CppLexer, RagelEmbeddedLexer, **options)
277
+ super().__init__(CppLexer, RagelEmbeddedLexer, **options)
282
278
 
283
279
  def analyse_text(text):
284
280
  return '@LANG: c++' in text
@@ -296,9 +292,7 @@ class RagelObjectiveCLexer(DelegatingLexer):
296
292
  filenames = ['*.rl']
297
293
 
298
294
  def __init__(self, **options):
299
- super(RagelObjectiveCLexer, self).__init__(ObjectiveCLexer,
300
- RagelEmbeddedLexer,
301
- **options)
295
+ super().__init__(ObjectiveCLexer, RagelEmbeddedLexer, **options)
302
296
 
303
297
  def analyse_text(text):
304
298
  return '@LANG: objc' in text
@@ -316,8 +310,7 @@ class RagelJavaLexer(DelegatingLexer):
316
310
  filenames = ['*.rl']
317
311
 
318
312
  def __init__(self, **options):
319
- super(RagelJavaLexer, self).__init__(JavaLexer, RagelEmbeddedLexer,
320
- **options)
313
+ super().__init__(JavaLexer, RagelEmbeddedLexer, **options)
321
314
 
322
315
  def analyse_text(text):
323
316
  return '@LANG: java' in text
@@ -364,13 +357,13 @@ class AntlrLexer(RegexLexer):
364
357
  # tokensSpec
365
358
  (r'tokens\b', Keyword, 'tokens'),
366
359
  # attrScope
367
- (r'(scope)(\s*)(' + _id + ')(\s*)(\{)',
360
+ (r'(scope)(\s*)(' + _id + r')(\s*)(\{)',
368
361
  bygroups(Keyword, Whitespace, Name.Variable, Whitespace,
369
362
  Punctuation), 'action'),
370
363
  # exception
371
364
  (r'(catch|finally)\b', Keyword, 'exception'),
372
365
  # action
373
- (r'(@' + _id + ')(\s*)(::)?(\s*)(' + _id + ')(\s*)(\{)',
366
+ (r'(@' + _id + r')(\s*)(::)?(\s*)(' + _id + r')(\s*)(\{)',
374
367
  bygroups(Name.Label, Whitespace, Punctuation, Whitespace,
375
368
  Name.Label, Whitespace, Punctuation), 'action'),
376
369
  # rule
@@ -405,10 +398,10 @@ class AntlrLexer(RegexLexer):
405
398
  # L173 ANTLRv3.g from ANTLR book
406
399
  (r'(scope)(\s+)(\{)', bygroups(Keyword, Whitespace, Punctuation),
407
400
  'action'),
408
- (r'(scope)(\s+)(' + _id + ')(\s*)(;)',
401
+ (r'(scope)(\s+)(' + _id + r')(\s*)(;)',
409
402
  bygroups(Keyword, Whitespace, Name.Label, Whitespace, Punctuation)),
410
403
  # ruleAction
411
- (r'(@' + _id + ')(\s*)(\{)',
404
+ (r'(@' + _id + r')(\s*)(\{)',
412
405
  bygroups(Name.Label, Whitespace, Punctuation), 'action'),
413
406
  # finished prelims, go to rule alts!
414
407
  (r':', Punctuation, '#pop')
@@ -422,8 +415,8 @@ class AntlrLexer(RegexLexer):
422
415
  (r':', Punctuation),
423
416
 
424
417
  # literals
425
- (r"'(\\\\|\\'|[^'])*'", String),
426
- (r'"(\\\\|\\"|[^"])*"', String),
418
+ (r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
419
+ (r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
427
420
  (r'<<([^>]|>[^>])>>', String),
428
421
  # identifiers
429
422
  # Tokens start with capital letter.
@@ -442,7 +435,7 @@ class AntlrLexer(RegexLexer):
442
435
  include('comments'),
443
436
  (r'\{', Punctuation),
444
437
  (r'(' + _TOKEN_REF + r')(\s*)(=)?(\s*)(' + _STRING_LITERAL
445
- + ')?(\s*)(;)',
438
+ + r')?(\s*)(;)',
446
439
  bygroups(Name.Label, Whitespace, Punctuation, Whitespace,
447
440
  String, Whitespace, Punctuation)),
448
441
  (r'\}', Punctuation, '#pop'),
@@ -452,7 +445,7 @@ class AntlrLexer(RegexLexer):
452
445
  include('comments'),
453
446
  (r'\{', Punctuation),
454
447
  (r'(' + _id + r')(\s*)(=)(\s*)(' +
455
- '|'.join((_id, _STRING_LITERAL, _INT, '\*')) + ')(\s*)(;)',
448
+ '|'.join((_id, _STRING_LITERAL, _INT, r'\*')) + r')(\s*)(;)',
456
449
  bygroups(Name.Variable, Whitespace, Punctuation, Whitespace,
457
450
  Text, Whitespace, Punctuation)),
458
451
  (r'\}', Punctuation, '#pop'),
@@ -462,14 +455,14 @@ class AntlrLexer(RegexLexer):
462
455
  r'[^${}\'"/\\]+', # exclude unsafe characters
463
456
 
464
457
  # strings and comments may safely contain unsafe characters
465
- r'"(\\\\|\\"|[^"])*"', # double quote string
466
- r"'(\\\\|\\'|[^'])*'", # single quote string
458
+ r'"(\\\\|\\[^\\]|[^"\\])*"',
459
+ r"'(\\\\|\\[^\\]|[^'\\])*'",
467
460
  r'//.*$\n?', # single line comment
468
461
  r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
469
462
 
470
463
  # regular expression: There's no reason for it to start
471
464
  # with a * and this stops confusion with comments.
472
- r'/(?!\*)(\\\\|\\/|[^/])*/',
465
+ r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
473
466
 
474
467
  # backslashes are okay, as long as we are not backslashing a %
475
468
  r'\\(?!%)',
@@ -489,14 +482,14 @@ class AntlrLexer(RegexLexer):
489
482
  r'[^$\[\]\'"/]+', # exclude unsafe characters
490
483
 
491
484
  # strings and comments may safely contain unsafe characters
492
- r'"(\\\\|\\"|[^"])*"', # double quote string
493
- r"'(\\\\|\\'|[^'])*'", # single quote string
485
+ r'"(\\\\|\\[^\\]|[^"\\])*"',
486
+ r"'(\\\\|\\[^\\]|[^'\\])*'",
494
487
  r'//.*$\n?', # single line comment
495
488
  r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
496
489
 
497
490
  # regular expression: There's no reason for it to start
498
491
  # with a * and this stops confusion with comments.
499
- r'/(?!\*)(\\\\|\\/|[^/])*/',
492
+ r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
500
493
 
501
494
  # Now that we've handled regex and javadoc comments
502
495
  # it's safe to let / through.
@@ -515,30 +508,8 @@ class AntlrLexer(RegexLexer):
515
508
  def analyse_text(text):
516
509
  return re.search(r'^\s*grammar\s+[a-zA-Z0-9]+\s*;', text, re.M)
517
510
 
518
- # http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets
519
-
520
- # TH: I'm not aware of any language features of C++ that will cause
521
- # incorrect lexing of C files. Antlr doesn't appear to make a distinction,
522
- # so just assume they're C++. No idea how to make Objective C work in the
523
- # future.
524
-
525
- # class AntlrCLexer(DelegatingLexer):
526
- # """
527
- # ANTLR with C Target
528
- #
529
- # .. versionadded:: 1.1
530
- # """
531
- #
532
- # name = 'ANTLR With C Target'
533
- # aliases = ['antlr-c']
534
- # filenames = ['*.G', '*.g']
535
- #
536
- # def __init__(self, **options):
537
- # super(AntlrCLexer, self).__init__(CLexer, AntlrLexer, **options)
538
- #
539
- # def analyse_text(text):
540
- # return re.match(r'^\s*language\s*=\s*C\s*;', text)
541
511
 
512
+ # http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets
542
513
 
543
514
  class AntlrCppLexer(DelegatingLexer):
544
515
  """
@@ -552,7 +523,7 @@ class AntlrCppLexer(DelegatingLexer):
552
523
  filenames = ['*.G', '*.g']
553
524
 
554
525
  def __init__(self, **options):
555
- super(AntlrCppLexer, self).__init__(CppLexer, AntlrLexer, **options)
526
+ super().__init__(CppLexer, AntlrLexer, **options)
556
527
 
557
528
  def analyse_text(text):
558
529
  return AntlrLexer.analyse_text(text) and \
@@ -571,8 +542,7 @@ class AntlrObjectiveCLexer(DelegatingLexer):
571
542
  filenames = ['*.G', '*.g']
572
543
 
573
544
  def __init__(self, **options):
574
- super(AntlrObjectiveCLexer, self).__init__(ObjectiveCLexer,
575
- AntlrLexer, **options)
545
+ super().__init__(ObjectiveCLexer, AntlrLexer, **options)
576
546
 
577
547
  def analyse_text(text):
578
548
  return AntlrLexer.analyse_text(text) and \
@@ -591,8 +561,7 @@ class AntlrCSharpLexer(DelegatingLexer):
591
561
  filenames = ['*.G', '*.g']
592
562
 
593
563
  def __init__(self, **options):
594
- super(AntlrCSharpLexer, self).__init__(CSharpLexer, AntlrLexer,
595
- **options)
564
+ super().__init__(CSharpLexer, AntlrLexer, **options)
596
565
 
597
566
  def analyse_text(text):
598
567
  return AntlrLexer.analyse_text(text) and \
@@ -611,8 +580,7 @@ class AntlrPythonLexer(DelegatingLexer):
611
580
  filenames = ['*.G', '*.g']
612
581
 
613
582
  def __init__(self, **options):
614
- super(AntlrPythonLexer, self).__init__(PythonLexer, AntlrLexer,
615
- **options)
583
+ super().__init__(PythonLexer, AntlrLexer, **options)
616
584
 
617
585
  def analyse_text(text):
618
586
  return AntlrLexer.analyse_text(text) and \
@@ -631,8 +599,7 @@ class AntlrJavaLexer(DelegatingLexer):
631
599
  filenames = ['*.G', '*.g']
632
600
 
633
601
  def __init__(self, **options):
634
- super(AntlrJavaLexer, self).__init__(JavaLexer, AntlrLexer,
635
- **options)
602
+ super().__init__(JavaLexer, AntlrLexer, **options)
636
603
 
637
604
  def analyse_text(text):
638
605
  # Antlr language is Java by default
@@ -651,8 +618,7 @@ class AntlrRubyLexer(DelegatingLexer):
651
618
  filenames = ['*.G', '*.g']
652
619
 
653
620
  def __init__(self, **options):
654
- super(AntlrRubyLexer, self).__init__(RubyLexer, AntlrLexer,
655
- **options)
621
+ super().__init__(RubyLexer, AntlrLexer, **options)
656
622
 
657
623
  def analyse_text(text):
658
624
  return AntlrLexer.analyse_text(text) and \
@@ -671,8 +637,7 @@ class AntlrPerlLexer(DelegatingLexer):
671
637
  filenames = ['*.G', '*.g']
672
638
 
673
639
  def __init__(self, **options):
674
- super(AntlrPerlLexer, self).__init__(PerlLexer, AntlrLexer,
675
- **options)
640
+ super().__init__(PerlLexer, AntlrLexer, **options)
676
641
 
677
642
  def analyse_text(text):
678
643
  return AntlrLexer.analyse_text(text) and \
@@ -692,8 +657,7 @@ class AntlrActionScriptLexer(DelegatingLexer):
692
657
 
693
658
  def __init__(self, **options):
694
659
  from pygments.lexers.actionscript import ActionScriptLexer
695
- super(AntlrActionScriptLexer, self).__init__(ActionScriptLexer,
696
- AntlrLexer, **options)
660
+ super().__init__(ActionScriptLexer, AntlrLexer, **options)
697
661
 
698
662
  def analyse_text(text):
699
663
  return AntlrLexer.analyse_text(text) and \
@@ -736,8 +700,8 @@ class TreetopBaseLexer(RegexLexer):
736
700
  'rule': [
737
701
  include('space'),
738
702
  include('end'),
739
- (r'"(\\\\|\\"|[^"])*"', String.Double),
740
- (r"'(\\\\|\\'|[^'])*'", String.Single),
703
+ (r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
704
+ (r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
741
705
  (r'([A-Za-z_]\w*)(:)', bygroups(Name.Label, Punctuation)),
742
706
  (r'[A-Za-z_]\w*', Name),
743
707
  (r'[()]', Punctuation),
@@ -781,7 +745,7 @@ class TreetopLexer(DelegatingLexer):
781
745
  filenames = ['*.treetop', '*.tt']
782
746
 
783
747
  def __init__(self, **options):
784
- super(TreetopLexer, self).__init__(RubyLexer, TreetopBaseLexer, **options)
748
+ super().__init__(RubyLexer, TreetopBaseLexer, **options)
785
749
 
786
750
 
787
751
  class EbnfLexer(RegexLexer):