pygments.rb 1.2.1 → 2.2.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 (386) 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 +4 -6
  6. data/.rubocop.yml +16 -0
  7. data/CHANGELOG.adoc +137 -0
  8. data/Gemfile +3 -1
  9. data/LICENSE +1 -1
  10. data/README.adoc +159 -0
  11. data/Rakefile +8 -32
  12. data/bench.rb +14 -8
  13. data/lib/pygments.rb +16 -14
  14. data/lib/pygments/lexer.rb +87 -65
  15. data/lib/pygments/mentos.py +23 -110
  16. data/lib/pygments/popen.rb +188 -284
  17. data/lib/pygments/version.rb +2 -2
  18. data/pygments.rb.gemspec +20 -13
  19. data/test/test_pygments.rb +50 -110
  20. data/vendor/pygments-main/{AUTHORS → Pygments-2.8.1.dist-info/AUTHORS} +26 -3
  21. data/vendor/pygments-main/Pygments-2.8.1.dist-info/INSTALLER +1 -0
  22. data/vendor/pygments-main/{LICENSE → Pygments-2.8.1.dist-info/LICENSE} +1 -1
  23. data/vendor/pygments-main/Pygments-2.8.1.dist-info/METADATA +48 -0
  24. data/vendor/pygments-main/Pygments-2.8.1.dist-info/RECORD +494 -0
  25. data/vendor/pygments-main/Pygments-2.8.1.dist-info/REQUESTED +0 -0
  26. data/vendor/pygments-main/Pygments-2.8.1.dist-info/WHEEL +5 -0
  27. data/vendor/pygments-main/Pygments-2.8.1.dist-info/entry_points.txt +3 -0
  28. data/vendor/pygments-main/Pygments-2.8.1.dist-info/top_level.txt +1 -0
  29. data/vendor/pygments-main/bin/pygmentize +8 -0
  30. data/vendor/pygments-main/pygments/__init__.py +6 -12
  31. data/vendor/pygments-main/pygments/__main__.py +17 -0
  32. data/vendor/pygments-main/pygments/cmdline.py +213 -184
  33. data/vendor/pygments-main/pygments/console.py +6 -10
  34. data/vendor/pygments-main/pygments/filter.py +4 -7
  35. data/vendor/pygments-main/pygments/filters/__init__.py +609 -22
  36. data/vendor/pygments-main/pygments/formatter.py +4 -5
  37. data/vendor/pygments-main/pygments/formatters/__init__.py +10 -10
  38. data/vendor/pygments-main/pygments/formatters/_mapping.py +1 -4
  39. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -2
  40. data/vendor/pygments-main/pygments/formatters/html.py +242 -139
  41. data/vendor/pygments-main/pygments/formatters/img.py +91 -50
  42. data/vendor/pygments-main/pygments/formatters/irc.py +39 -40
  43. data/vendor/pygments-main/pygments/formatters/latex.py +62 -33
  44. data/vendor/pygments-main/pygments/formatters/other.py +18 -17
  45. data/vendor/pygments-main/pygments/formatters/rtf.py +29 -30
  46. data/vendor/pygments-main/pygments/formatters/svg.py +40 -5
  47. data/vendor/pygments-main/pygments/formatters/terminal.py +25 -32
  48. data/vendor/pygments-main/pygments/formatters/terminal256.py +45 -14
  49. data/vendor/pygments-main/pygments/lexer.py +47 -44
  50. data/vendor/pygments-main/pygments/lexers/__init__.py +341 -0
  51. data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1644 -0
  52. data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +231 -0
  53. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +75 -0
  54. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1724 -0
  55. data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +5326 -0
  56. data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +292 -0
  57. data/vendor/pygments-main/pygments/lexers/_mapping.py +554 -0
  58. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1171 -0
  59. data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +1281 -0
  60. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +2600 -0
  61. data/vendor/pygments-main/pygments/lexers/_php_builtins.py +4752 -0
  62. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +677 -0
  63. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +3093 -0
  64. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1160 -0
  65. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +557 -0
  66. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +457 -0
  67. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1003 -0
  68. data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +112 -0
  69. data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +279 -0
  70. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1938 -0
  71. data/vendor/pygments-main/pygments/lexers/actionscript.py +244 -0
  72. data/vendor/pygments-main/pygments/lexers/agile.py +23 -0
  73. data/vendor/pygments-main/pygments/lexers/algebra.py +239 -0
  74. data/vendor/pygments-main/pygments/lexers/ambient.py +75 -0
  75. data/vendor/pygments-main/pygments/lexers/amdgpu.py +48 -0
  76. data/vendor/pygments-main/pygments/lexers/ampl.py +86 -0
  77. data/vendor/pygments-main/pygments/lexers/apl.py +100 -0
  78. data/vendor/pygments-main/pygments/lexers/archetype.py +317 -0
  79. data/vendor/pygments-main/pygments/lexers/arrow.py +116 -0
  80. data/vendor/pygments-main/pygments/lexers/asm.py +1004 -0
  81. data/vendor/pygments-main/pygments/lexers/automation.py +379 -0
  82. data/vendor/pygments-main/pygments/lexers/bare.py +103 -0
  83. data/vendor/pygments-main/pygments/lexers/basic.py +661 -0
  84. data/vendor/pygments-main/pygments/lexers/bibtex.py +159 -0
  85. data/vendor/pygments-main/pygments/lexers/boa.py +101 -0
  86. data/vendor/pygments-main/pygments/lexers/business.py +626 -0
  87. data/vendor/pygments-main/pygments/lexers/c_cpp.py +342 -0
  88. data/vendor/pygments-main/pygments/lexers/c_like.py +565 -0
  89. data/vendor/pygments-main/pygments/lexers/capnproto.py +77 -0
  90. data/vendor/pygments-main/pygments/lexers/cddl.py +190 -0
  91. data/vendor/pygments-main/pygments/lexers/chapel.py +111 -0
  92. data/vendor/pygments-main/pygments/lexers/clean.py +178 -0
  93. data/vendor/pygments-main/pygments/lexers/compiled.py +33 -0
  94. data/vendor/pygments-main/pygments/lexers/configs.py +985 -0
  95. data/vendor/pygments-main/pygments/lexers/console.py +113 -0
  96. data/vendor/pygments-main/pygments/lexers/crystal.py +366 -0
  97. data/vendor/pygments-main/pygments/lexers/csound.py +466 -0
  98. data/vendor/pygments-main/pygments/lexers/css.py +694 -0
  99. data/vendor/pygments-main/pygments/lexers/d.py +255 -0
  100. data/vendor/pygments-main/pygments/lexers/dalvik.py +124 -0
  101. data/vendor/pygments-main/pygments/lexers/data.py +697 -0
  102. data/vendor/pygments-main/pygments/lexers/devicetree.py +108 -0
  103. data/vendor/pygments-main/pygments/lexers/diff.py +164 -0
  104. data/vendor/pygments-main/pygments/lexers/dotnet.py +706 -0
  105. data/vendor/pygments-main/pygments/lexers/dsls.py +959 -0
  106. data/vendor/pygments-main/pygments/lexers/dylan.py +286 -0
  107. data/vendor/pygments-main/pygments/lexers/ecl.py +137 -0
  108. data/vendor/pygments-main/pygments/lexers/eiffel.py +64 -0
  109. data/vendor/pygments-main/pygments/lexers/elm.py +120 -0
  110. data/vendor/pygments-main/pygments/lexers/email.py +150 -0
  111. data/vendor/pygments-main/pygments/lexers/erlang.py +529 -0
  112. data/vendor/pygments-main/pygments/lexers/esoteric.py +303 -0
  113. data/vendor/pygments-main/pygments/lexers/ezhil.py +76 -0
  114. data/vendor/pygments-main/pygments/lexers/factor.py +343 -0
  115. data/vendor/pygments-main/pygments/lexers/fantom.py +249 -0
  116. data/vendor/pygments-main/pygments/lexers/felix.py +272 -0
  117. data/vendor/pygments-main/pygments/lexers/floscript.py +82 -0
  118. data/vendor/pygments-main/pygments/lexers/forth.py +177 -0
  119. data/vendor/pygments-main/pygments/lexers/fortran.py +208 -0
  120. data/vendor/pygments-main/pygments/lexers/foxpro.py +427 -0
  121. data/vendor/pygments-main/pygments/lexers/freefem.py +897 -0
  122. data/vendor/pygments-main/pygments/lexers/functional.py +20 -0
  123. data/vendor/pygments-main/pygments/lexers/futhark.py +110 -0
  124. data/vendor/pygments-main/pygments/lexers/gdscript.py +345 -0
  125. data/vendor/pygments-main/pygments/lexers/go.py +100 -0
  126. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +269 -0
  127. data/vendor/pygments-main/pygments/lexers/graph.py +84 -0
  128. data/vendor/pygments-main/pygments/lexers/graphics.py +799 -0
  129. data/vendor/pygments-main/pygments/lexers/graphviz.py +57 -0
  130. data/vendor/pygments-main/pygments/lexers/haskell.py +869 -0
  131. data/vendor/pygments-main/pygments/lexers/haxe.py +935 -0
  132. data/vendor/pygments-main/pygments/lexers/hdl.py +468 -0
  133. data/vendor/pygments-main/pygments/lexers/hexdump.py +102 -0
  134. data/vendor/pygments-main/pygments/lexers/html.py +613 -0
  135. data/vendor/pygments-main/pygments/lexers/idl.py +280 -0
  136. data/vendor/pygments-main/pygments/lexers/igor.py +419 -0
  137. data/vendor/pygments-main/pygments/lexers/inferno.py +95 -0
  138. data/vendor/pygments-main/pygments/lexers/installers.py +321 -0
  139. data/vendor/pygments-main/pygments/lexers/int_fiction.py +1367 -0
  140. data/vendor/pygments-main/pygments/lexers/iolang.py +62 -0
  141. data/vendor/pygments-main/pygments/lexers/j.py +145 -0
  142. data/vendor/pygments-main/pygments/lexers/javascript.py +1536 -0
  143. data/vendor/pygments-main/pygments/lexers/julia.py +330 -0
  144. data/vendor/pygments-main/pygments/lexers/jvm.py +1739 -0
  145. data/vendor/pygments-main/pygments/lexers/lisp.py +2698 -0
  146. data/vendor/pygments-main/pygments/lexers/make.py +205 -0
  147. data/vendor/pygments-main/pygments/lexers/markup.py +762 -0
  148. data/vendor/pygments-main/pygments/lexers/math.py +20 -0
  149. data/vendor/pygments-main/pygments/lexers/matlab.py +3280 -0
  150. data/vendor/pygments-main/pygments/lexers/mime.py +225 -0
  151. data/vendor/pygments-main/pygments/lexers/ml.py +957 -0
  152. data/vendor/pygments-main/pygments/lexers/modeling.py +365 -0
  153. data/vendor/pygments-main/pygments/lexers/modula2.py +1579 -0
  154. data/vendor/pygments-main/pygments/lexers/monte.py +203 -0
  155. data/vendor/pygments-main/pygments/lexers/mosel.py +447 -0
  156. data/vendor/pygments-main/pygments/lexers/ncl.py +893 -0
  157. data/vendor/pygments-main/pygments/lexers/nimrod.py +158 -0
  158. data/vendor/pygments-main/pygments/lexers/nit.py +63 -0
  159. data/vendor/pygments-main/pygments/lexers/nix.py +135 -0
  160. data/vendor/pygments-main/pygments/lexers/oberon.py +120 -0
  161. data/vendor/pygments-main/pygments/lexers/objective.py +503 -0
  162. data/vendor/pygments-main/pygments/lexers/ooc.py +84 -0
  163. data/vendor/pygments-main/pygments/lexers/other.py +40 -0
  164. data/vendor/pygments-main/pygments/lexers/parasail.py +78 -0
  165. data/vendor/pygments-main/pygments/lexers/parsers.py +799 -0
  166. data/vendor/pygments-main/pygments/lexers/pascal.py +643 -0
  167. data/vendor/pygments-main/pygments/lexers/pawn.py +202 -0
  168. data/vendor/pygments-main/pygments/lexers/perl.py +731 -0
  169. data/vendor/pygments-main/pygments/lexers/php.py +320 -0
  170. data/vendor/pygments-main/pygments/lexers/pointless.py +70 -0
  171. data/vendor/pygments-main/pygments/lexers/pony.py +93 -0
  172. data/vendor/pygments-main/pygments/lexers/praat.py +301 -0
  173. data/vendor/pygments-main/pygments/lexers/prolog.py +305 -0
  174. data/vendor/pygments-main/pygments/lexers/promql.py +182 -0
  175. data/vendor/pygments-main/pygments/lexers/python.py +1158 -0
  176. data/vendor/pygments-main/pygments/lexers/qvt.py +151 -0
  177. data/vendor/pygments-main/pygments/lexers/r.py +190 -0
  178. data/vendor/pygments-main/pygments/lexers/rdf.py +462 -0
  179. data/vendor/pygments-main/pygments/lexers/rebol.py +430 -0
  180. data/vendor/pygments-main/pygments/lexers/resource.py +84 -0
  181. data/vendor/pygments-main/pygments/lexers/ride.py +138 -0
  182. data/vendor/pygments-main/pygments/lexers/rnc.py +66 -0
  183. data/vendor/pygments-main/pygments/lexers/roboconf.py +81 -0
  184. data/vendor/pygments-main/pygments/lexers/robotframework.py +551 -0
  185. data/vendor/pygments-main/pygments/lexers/ruby.py +523 -0
  186. data/vendor/pygments-main/pygments/lexers/rust.py +223 -0
  187. data/vendor/pygments-main/pygments/lexers/sas.py +227 -0
  188. data/vendor/pygments-main/pygments/lexers/scdoc.py +82 -0
  189. data/vendor/pygments-main/pygments/lexers/scripting.py +1283 -0
  190. data/vendor/pygments-main/pygments/lexers/sgf.py +60 -0
  191. data/vendor/pygments-main/pygments/lexers/shell.py +909 -0
  192. data/vendor/pygments-main/pygments/lexers/sieve.py +68 -0
  193. data/vendor/pygments-main/pygments/lexers/slash.py +184 -0
  194. data/vendor/pygments-main/pygments/lexers/smalltalk.py +194 -0
  195. data/vendor/pygments-main/pygments/lexers/smv.py +78 -0
  196. data/vendor/pygments-main/pygments/lexers/snobol.py +82 -0
  197. data/vendor/pygments-main/pygments/lexers/solidity.py +91 -0
  198. data/vendor/pygments-main/pygments/lexers/special.py +106 -0
  199. data/vendor/pygments-main/pygments/lexers/sql.py +832 -0
  200. data/vendor/pygments-main/pygments/lexers/stata.py +170 -0
  201. data/vendor/pygments-main/pygments/lexers/supercollider.py +94 -0
  202. data/vendor/pygments-main/pygments/lexers/tcl.py +144 -0
  203. data/vendor/pygments-main/pygments/lexers/templates.py +2263 -0
  204. data/vendor/pygments-main/pygments/lexers/teraterm.py +334 -0
  205. data/vendor/pygments-main/pygments/lexers/testing.py +206 -0
  206. data/vendor/pygments-main/pygments/lexers/text.py +25 -0
  207. data/vendor/pygments-main/pygments/lexers/textedit.py +168 -0
  208. data/vendor/pygments-main/pygments/lexers/textfmts.py +429 -0
  209. data/vendor/pygments-main/pygments/lexers/theorem.py +476 -0
  210. data/vendor/pygments-main/pygments/lexers/tnt.py +262 -0
  211. data/vendor/pygments-main/pygments/lexers/trafficscript.py +53 -0
  212. data/vendor/pygments-main/pygments/lexers/typoscript.py +218 -0
  213. data/vendor/pygments-main/pygments/lexers/unicon.py +411 -0
  214. data/vendor/pygments-main/pygments/lexers/urbi.py +145 -0
  215. data/vendor/pygments-main/pygments/lexers/usd.py +89 -0
  216. data/vendor/pygments-main/pygments/lexers/varnish.py +189 -0
  217. data/vendor/pygments-main/pygments/lexers/verification.py +113 -0
  218. data/vendor/pygments-main/pygments/lexers/web.py +23 -0
  219. data/vendor/pygments-main/pygments/lexers/webidl.py +298 -0
  220. data/vendor/pygments-main/pygments/lexers/webmisc.py +991 -0
  221. data/vendor/pygments-main/pygments/lexers/whiley.py +115 -0
  222. data/vendor/pygments-main/pygments/lexers/x10.py +68 -0
  223. data/vendor/pygments-main/pygments/lexers/xorg.py +36 -0
  224. data/vendor/pygments-main/pygments/lexers/yang.py +103 -0
  225. data/vendor/pygments-main/pygments/lexers/zig.py +123 -0
  226. data/vendor/pygments-main/pygments/modeline.py +1 -2
  227. data/vendor/pygments-main/pygments/plugin.py +4 -3
  228. data/vendor/pygments-main/pygments/regexopt.py +1 -2
  229. data/vendor/pygments-main/pygments/scanner.py +2 -3
  230. data/vendor/pygments-main/pygments/sphinxext.py +2 -5
  231. data/vendor/pygments-main/pygments/style.py +61 -25
  232. data/vendor/pygments-main/pygments/styles/__init__.py +12 -5
  233. data/vendor/pygments-main/pygments/styles/abap.py +1 -2
  234. data/vendor/pygments-main/pygments/styles/algol.py +1 -2
  235. data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -2
  236. data/vendor/pygments-main/pygments/styles/arduino.py +2 -3
  237. data/vendor/pygments-main/pygments/styles/autumn.py +1 -2
  238. data/vendor/pygments-main/pygments/styles/borland.py +1 -2
  239. data/vendor/pygments-main/pygments/styles/bw.py +1 -2
  240. data/vendor/pygments-main/pygments/styles/colorful.py +1 -2
  241. data/vendor/pygments-main/pygments/styles/default.py +1 -2
  242. data/vendor/pygments-main/pygments/styles/emacs.py +1 -2
  243. data/vendor/pygments-main/pygments/styles/friendly.py +1 -2
  244. data/vendor/pygments-main/pygments/styles/fruity.py +1 -2
  245. data/vendor/pygments-main/pygments/styles/igor.py +1 -2
  246. data/vendor/pygments-main/pygments/styles/inkpot.py +66 -0
  247. data/vendor/pygments-main/pygments/styles/lovelace.py +1 -2
  248. data/vendor/pygments-main/pygments/styles/manni.py +1 -2
  249. data/vendor/pygments-main/pygments/styles/material.py +118 -0
  250. data/vendor/pygments-main/pygments/styles/monokai.py +4 -4
  251. data/vendor/pygments-main/pygments/styles/murphy.py +1 -2
  252. data/vendor/pygments-main/pygments/styles/native.py +1 -2
  253. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -2
  254. data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -2
  255. data/vendor/pygments-main/pygments/styles/pastie.py +1 -2
  256. data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
  257. data/vendor/pygments-main/pygments/styles/rainbow_dash.py +1 -2
  258. data/vendor/pygments-main/pygments/styles/rrt.py +1 -2
  259. data/vendor/pygments-main/pygments/styles/sas.py +1 -2
  260. data/vendor/pygments-main/pygments/styles/solarized.py +136 -0
  261. data/vendor/pygments-main/pygments/styles/stata_dark.py +40 -0
  262. data/vendor/pygments-main/pygments/styles/{stata.py → stata_light.py} +14 -16
  263. data/vendor/pygments-main/pygments/styles/tango.py +1 -2
  264. data/vendor/pygments-main/pygments/styles/trac.py +1 -2
  265. data/vendor/pygments-main/pygments/styles/vim.py +1 -2
  266. data/vendor/pygments-main/pygments/styles/vs.py +1 -2
  267. data/vendor/pygments-main/pygments/styles/xcode.py +1 -2
  268. data/vendor/pygments-main/pygments/styles/zenburn.py +80 -0
  269. data/vendor/pygments-main/pygments/token.py +1 -2
  270. data/vendor/pygments-main/pygments/unistring.py +47 -109
  271. data/vendor/pygments-main/pygments/util.py +16 -96
  272. metadata +81 -139
  273. data/CHANGELOG.md +0 -111
  274. data/README.md +0 -121
  275. data/cache-lexers.rb +0 -8
  276. data/circle.yml +0 -20
  277. data/test/test_data.c +0 -2581
  278. data/test/test_data.py +0 -514
  279. data/test/test_data_generated +0 -2582
  280. data/vendor/custom_lexers/github.py +0 -565
  281. data/vendor/pygments-main/CHANGES +0 -1186
  282. data/vendor/pygments-main/MANIFEST.in +0 -6
  283. data/vendor/pygments-main/Makefile +0 -65
  284. data/vendor/pygments-main/README.rst +0 -39
  285. data/vendor/pygments-main/REVISION +0 -1
  286. data/vendor/pygments-main/TODO +0 -12
  287. data/vendor/pygments-main/doc/Makefile +0 -153
  288. data/vendor/pygments-main/doc/_static/favicon.ico +0 -0
  289. data/vendor/pygments-main/doc/_static/logo_new.png +0 -0
  290. data/vendor/pygments-main/doc/_static/logo_only.png +0 -0
  291. data/vendor/pygments-main/doc/_templates/docssidebar.html +0 -3
  292. data/vendor/pygments-main/doc/_templates/indexsidebar.html +0 -25
  293. data/vendor/pygments-main/doc/_themes/pygments14/layout.html +0 -98
  294. data/vendor/pygments-main/doc/_themes/pygments14/static/bodybg.png +0 -0
  295. data/vendor/pygments-main/doc/_themes/pygments14/static/docbg.png +0 -0
  296. data/vendor/pygments-main/doc/_themes/pygments14/static/listitem.png +0 -0
  297. data/vendor/pygments-main/doc/_themes/pygments14/static/logo.png +0 -0
  298. data/vendor/pygments-main/doc/_themes/pygments14/static/pocoo.png +0 -0
  299. data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +0 -401
  300. data/vendor/pygments-main/doc/_themes/pygments14/theme.conf +0 -15
  301. data/vendor/pygments-main/doc/conf.py +0 -241
  302. data/vendor/pygments-main/doc/docs/api.rst +0 -354
  303. data/vendor/pygments-main/doc/docs/authors.rst +0 -4
  304. data/vendor/pygments-main/doc/docs/changelog.rst +0 -1
  305. data/vendor/pygments-main/doc/docs/cmdline.rst +0 -166
  306. data/vendor/pygments-main/doc/docs/filterdevelopment.rst +0 -71
  307. data/vendor/pygments-main/doc/docs/filters.rst +0 -41
  308. data/vendor/pygments-main/doc/docs/formatterdevelopment.rst +0 -169
  309. data/vendor/pygments-main/doc/docs/formatters.rst +0 -48
  310. data/vendor/pygments-main/doc/docs/index.rst +0 -66
  311. data/vendor/pygments-main/doc/docs/integrate.rst +0 -40
  312. data/vendor/pygments-main/doc/docs/java.rst +0 -70
  313. data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +0 -728
  314. data/vendor/pygments-main/doc/docs/lexers.rst +0 -69
  315. data/vendor/pygments-main/doc/docs/moinmoin.rst +0 -39
  316. data/vendor/pygments-main/doc/docs/plugins.rst +0 -93
  317. data/vendor/pygments-main/doc/docs/quickstart.rst +0 -205
  318. data/vendor/pygments-main/doc/docs/rstdirective.rst +0 -22
  319. data/vendor/pygments-main/doc/docs/styles.rst +0 -201
  320. data/vendor/pygments-main/doc/docs/tokens.rst +0 -372
  321. data/vendor/pygments-main/doc/docs/unicode.rst +0 -58
  322. data/vendor/pygments-main/doc/download.rst +0 -41
  323. data/vendor/pygments-main/doc/faq.rst +0 -139
  324. data/vendor/pygments-main/doc/index.rst +0 -54
  325. data/vendor/pygments-main/doc/languages.rst +0 -154
  326. data/vendor/pygments-main/doc/make.bat +0 -190
  327. data/vendor/pygments-main/doc/pygmentize.1 +0 -94
  328. data/vendor/pygments-main/external/autopygmentize +0 -101
  329. data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +0 -162
  330. data/vendor/pygments-main/external/markdown-processor.py +0 -67
  331. data/vendor/pygments-main/external/moin-parser.py +0 -112
  332. data/vendor/pygments-main/external/pygments.bashcomp +0 -38
  333. data/vendor/pygments-main/external/rst-directive.py +0 -82
  334. data/vendor/pygments-main/pygmentize +0 -8
  335. data/vendor/pygments-main/requirements.txt +0 -5
  336. data/vendor/pygments-main/scripts/check_sources.py +0 -211
  337. data/vendor/pygments-main/scripts/debug_lexer.py +0 -246
  338. data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +0 -33
  339. data/vendor/pygments-main/scripts/epydoc.css +0 -280
  340. data/vendor/pygments-main/scripts/get_vimkw.py +0 -74
  341. data/vendor/pygments-main/scripts/pylintrc +0 -301
  342. data/vendor/pygments-main/scripts/vim2pygments.py +0 -935
  343. data/vendor/pygments-main/setup.cfg +0 -10
  344. data/vendor/pygments-main/setup.py +0 -77
  345. data/vendor/pygments-main/tox.ini +0 -7
  346. data/vendor/simplejson/.gitignore +0 -10
  347. data/vendor/simplejson/.travis.yml +0 -5
  348. data/vendor/simplejson/CHANGES.txt +0 -291
  349. data/vendor/simplejson/LICENSE.txt +0 -19
  350. data/vendor/simplejson/MANIFEST.in +0 -5
  351. data/vendor/simplejson/README.rst +0 -19
  352. data/vendor/simplejson/conf.py +0 -179
  353. data/vendor/simplejson/index.rst +0 -628
  354. data/vendor/simplejson/scripts/make_docs.py +0 -18
  355. data/vendor/simplejson/setup.py +0 -104
  356. data/vendor/simplejson/simplejson/__init__.py +0 -510
  357. data/vendor/simplejson/simplejson/_speedups.c +0 -2745
  358. data/vendor/simplejson/simplejson/decoder.py +0 -425
  359. data/vendor/simplejson/simplejson/encoder.py +0 -567
  360. data/vendor/simplejson/simplejson/ordered_dict.py +0 -119
  361. data/vendor/simplejson/simplejson/scanner.py +0 -77
  362. data/vendor/simplejson/simplejson/tests/__init__.py +0 -67
  363. data/vendor/simplejson/simplejson/tests/test_bigint_as_string.py +0 -55
  364. data/vendor/simplejson/simplejson/tests/test_check_circular.py +0 -30
  365. data/vendor/simplejson/simplejson/tests/test_decimal.py +0 -66
  366. data/vendor/simplejson/simplejson/tests/test_decode.py +0 -83
  367. data/vendor/simplejson/simplejson/tests/test_default.py +0 -9
  368. data/vendor/simplejson/simplejson/tests/test_dump.py +0 -67
  369. data/vendor/simplejson/simplejson/tests/test_encode_basestring_ascii.py +0 -46
  370. data/vendor/simplejson/simplejson/tests/test_encode_for_html.py +0 -32
  371. data/vendor/simplejson/simplejson/tests/test_errors.py +0 -34
  372. data/vendor/simplejson/simplejson/tests/test_fail.py +0 -91
  373. data/vendor/simplejson/simplejson/tests/test_float.py +0 -19
  374. data/vendor/simplejson/simplejson/tests/test_indent.py +0 -86
  375. data/vendor/simplejson/simplejson/tests/test_item_sort_key.py +0 -20
  376. data/vendor/simplejson/simplejson/tests/test_namedtuple.py +0 -121
  377. data/vendor/simplejson/simplejson/tests/test_pass1.py +0 -76
  378. data/vendor/simplejson/simplejson/tests/test_pass2.py +0 -14
  379. data/vendor/simplejson/simplejson/tests/test_pass3.py +0 -20
  380. data/vendor/simplejson/simplejson/tests/test_recursion.py +0 -67
  381. data/vendor/simplejson/simplejson/tests/test_scanstring.py +0 -117
  382. data/vendor/simplejson/simplejson/tests/test_separators.py +0 -42
  383. data/vendor/simplejson/simplejson/tests/test_speedups.py +0 -20
  384. data/vendor/simplejson/simplejson/tests/test_tuple.py +0 -49
  385. data/vendor/simplejson/simplejson/tests/test_unicode.py +0 -109
  386. data/vendor/simplejson/simplejson/tool.py +0 -39
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.console
4
3
  ~~~~~~~~~~~~~~~~
5
4
 
6
5
  Format colored console output.
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
 
@@ -22,22 +21,19 @@ codes["underline"] = esc + "04m"
22
21
  codes["blink"] = esc + "05m"
23
22
  codes["overline"] = esc + "06m"
24
23
 
25
- dark_colors = ["black", "darkred", "darkgreen", "brown", "darkblue",
26
- "purple", "teal", "lightgray"]
27
- light_colors = ["darkgray", "red", "green", "yellow", "blue",
28
- "fuchsia", "turquoise", "white"]
24
+ dark_colors = ["black", "red", "green", "yellow", "blue",
25
+ "magenta", "cyan", "gray"]
26
+ light_colors = ["brightblack", "brightred", "brightgreen", "brightyellow", "brightblue",
27
+ "brightmagenta", "brightcyan", "white"]
29
28
 
30
29
  x = 30
31
30
  for d, l in zip(dark_colors, light_colors):
32
31
  codes[d] = esc + "%im" % x
33
- codes[l] = esc + "%i;01m" % x
32
+ codes[l] = esc + "%im" % (60 + x)
34
33
  x += 1
35
34
 
36
35
  del d, l, x
37
36
 
38
- codes["darkteal"] = codes["turquoise"]
39
- codes["darkyellow"] = codes["brown"]
40
- codes["fuscia"] = codes["fuchsia"]
41
37
  codes["white"] = codes["bold"]
42
38
 
43
39
 
@@ -1,11 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.filter
4
3
  ~~~~~~~~~~~~~~~
5
4
 
6
5
  Module that implements the default filter.
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
 
@@ -17,8 +16,7 @@ def apply_filters(stream, filters, lexer=None):
17
16
  filter, otherwise the filter receives `None`.
18
17
  """
19
18
  def _apply(filter_, stream):
20
- for token in filter_.filter(lexer, stream):
21
- yield token
19
+ yield from filter_.filter(lexer, stream)
22
20
  for filter_ in filters:
23
21
  stream = _apply(filter_, stream)
24
22
  return stream
@@ -40,7 +38,7 @@ def simplefilter(f):
40
38
  })
41
39
 
42
40
 
43
- class Filter(object):
41
+ class Filter:
44
42
  """
45
43
  Default filter. Subclass this class or use the `simplefilter`
46
44
  decorator to create own filters.
@@ -70,5 +68,4 @@ class FunctionFilter(Filter):
70
68
 
71
69
  def filter(self, lexer, stream):
72
70
  # pylint: disable=not-callable
73
- for ttype, value in self.function(lexer, stream, self.options):
74
- yield ttype, value
71
+ yield from self.function(lexer, stream, self.options)
@@ -1,4 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  pygments.filters
4
3
  ~~~~~~~~~~~~~~~~
@@ -6,7 +5,7 @@
6
5
  Module containing filter lookup functions and default
7
6
  filters.
8
7
 
9
- :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
10
9
  :license: BSD, see LICENSE for details.
11
10
  """
12
11
 
@@ -16,7 +15,7 @@ from pygments.token import String, Comment, Keyword, Name, Error, Whitespace, \
16
15
  string_to_tokentype
17
16
  from pygments.filter import Filter
18
17
  from pygments.util import get_list_opt, get_int_opt, get_bool_opt, \
19
- get_choice_opt, ClassNotFound, OptionError, text_type, string_types
18
+ get_choice_opt, ClassNotFound, OptionError
20
19
  from pygments.plugin import find_plugin_filters
21
20
 
22
21
 
@@ -45,8 +44,7 @@ def get_filter_by_name(filtername, **options):
45
44
 
46
45
  def get_all_filters():
47
46
  """Return a generator of all filter names."""
48
- for name in FILTERS:
49
- yield name
47
+ yield from FILTERS
50
48
  for name, _ in find_plugin_filters():
51
49
  yield name
52
50
 
@@ -88,9 +86,597 @@ class CodeTagFilter(Filter):
88
86
  if ttype in String.Doc or \
89
87
  ttype in Comment and \
90
88
  ttype not in Comment.Preproc:
91
- for sttype, svalue in _replace_special(ttype, value, regex,
92
- Comment.Special):
93
- yield sttype, svalue
89
+ yield from _replace_special(ttype, value, regex, Comment.Special)
90
+ else:
91
+ yield ttype, value
92
+
93
+
94
+ class SymbolFilter(Filter):
95
+ """Convert mathematical symbols such as \\<longrightarrow> in Isabelle
96
+ or \\longrightarrow in LaTeX into Unicode characters.
97
+
98
+ This is mostly useful for HTML or console output when you want to
99
+ approximate the source rendering you'd see in an IDE.
100
+
101
+ Options accepted:
102
+
103
+ `lang` : string
104
+ The symbol language. Must be one of ``'isabelle'`` or
105
+ ``'latex'``. The default is ``'isabelle'``.
106
+ """
107
+
108
+ latex_symbols = {
109
+ '\\alpha' : '\U000003b1',
110
+ '\\beta' : '\U000003b2',
111
+ '\\gamma' : '\U000003b3',
112
+ '\\delta' : '\U000003b4',
113
+ '\\varepsilon' : '\U000003b5',
114
+ '\\zeta' : '\U000003b6',
115
+ '\\eta' : '\U000003b7',
116
+ '\\vartheta' : '\U000003b8',
117
+ '\\iota' : '\U000003b9',
118
+ '\\kappa' : '\U000003ba',
119
+ '\\lambda' : '\U000003bb',
120
+ '\\mu' : '\U000003bc',
121
+ '\\nu' : '\U000003bd',
122
+ '\\xi' : '\U000003be',
123
+ '\\pi' : '\U000003c0',
124
+ '\\varrho' : '\U000003c1',
125
+ '\\sigma' : '\U000003c3',
126
+ '\\tau' : '\U000003c4',
127
+ '\\upsilon' : '\U000003c5',
128
+ '\\varphi' : '\U000003c6',
129
+ '\\chi' : '\U000003c7',
130
+ '\\psi' : '\U000003c8',
131
+ '\\omega' : '\U000003c9',
132
+ '\\Gamma' : '\U00000393',
133
+ '\\Delta' : '\U00000394',
134
+ '\\Theta' : '\U00000398',
135
+ '\\Lambda' : '\U0000039b',
136
+ '\\Xi' : '\U0000039e',
137
+ '\\Pi' : '\U000003a0',
138
+ '\\Sigma' : '\U000003a3',
139
+ '\\Upsilon' : '\U000003a5',
140
+ '\\Phi' : '\U000003a6',
141
+ '\\Psi' : '\U000003a8',
142
+ '\\Omega' : '\U000003a9',
143
+ '\\leftarrow' : '\U00002190',
144
+ '\\longleftarrow' : '\U000027f5',
145
+ '\\rightarrow' : '\U00002192',
146
+ '\\longrightarrow' : '\U000027f6',
147
+ '\\Leftarrow' : '\U000021d0',
148
+ '\\Longleftarrow' : '\U000027f8',
149
+ '\\Rightarrow' : '\U000021d2',
150
+ '\\Longrightarrow' : '\U000027f9',
151
+ '\\leftrightarrow' : '\U00002194',
152
+ '\\longleftrightarrow' : '\U000027f7',
153
+ '\\Leftrightarrow' : '\U000021d4',
154
+ '\\Longleftrightarrow' : '\U000027fa',
155
+ '\\mapsto' : '\U000021a6',
156
+ '\\longmapsto' : '\U000027fc',
157
+ '\\relbar' : '\U00002500',
158
+ '\\Relbar' : '\U00002550',
159
+ '\\hookleftarrow' : '\U000021a9',
160
+ '\\hookrightarrow' : '\U000021aa',
161
+ '\\leftharpoondown' : '\U000021bd',
162
+ '\\rightharpoondown' : '\U000021c1',
163
+ '\\leftharpoonup' : '\U000021bc',
164
+ '\\rightharpoonup' : '\U000021c0',
165
+ '\\rightleftharpoons' : '\U000021cc',
166
+ '\\leadsto' : '\U0000219d',
167
+ '\\downharpoonleft' : '\U000021c3',
168
+ '\\downharpoonright' : '\U000021c2',
169
+ '\\upharpoonleft' : '\U000021bf',
170
+ '\\upharpoonright' : '\U000021be',
171
+ '\\restriction' : '\U000021be',
172
+ '\\uparrow' : '\U00002191',
173
+ '\\Uparrow' : '\U000021d1',
174
+ '\\downarrow' : '\U00002193',
175
+ '\\Downarrow' : '\U000021d3',
176
+ '\\updownarrow' : '\U00002195',
177
+ '\\Updownarrow' : '\U000021d5',
178
+ '\\langle' : '\U000027e8',
179
+ '\\rangle' : '\U000027e9',
180
+ '\\lceil' : '\U00002308',
181
+ '\\rceil' : '\U00002309',
182
+ '\\lfloor' : '\U0000230a',
183
+ '\\rfloor' : '\U0000230b',
184
+ '\\flqq' : '\U000000ab',
185
+ '\\frqq' : '\U000000bb',
186
+ '\\bot' : '\U000022a5',
187
+ '\\top' : '\U000022a4',
188
+ '\\wedge' : '\U00002227',
189
+ '\\bigwedge' : '\U000022c0',
190
+ '\\vee' : '\U00002228',
191
+ '\\bigvee' : '\U000022c1',
192
+ '\\forall' : '\U00002200',
193
+ '\\exists' : '\U00002203',
194
+ '\\nexists' : '\U00002204',
195
+ '\\neg' : '\U000000ac',
196
+ '\\Box' : '\U000025a1',
197
+ '\\Diamond' : '\U000025c7',
198
+ '\\vdash' : '\U000022a2',
199
+ '\\models' : '\U000022a8',
200
+ '\\dashv' : '\U000022a3',
201
+ '\\surd' : '\U0000221a',
202
+ '\\le' : '\U00002264',
203
+ '\\ge' : '\U00002265',
204
+ '\\ll' : '\U0000226a',
205
+ '\\gg' : '\U0000226b',
206
+ '\\lesssim' : '\U00002272',
207
+ '\\gtrsim' : '\U00002273',
208
+ '\\lessapprox' : '\U00002a85',
209
+ '\\gtrapprox' : '\U00002a86',
210
+ '\\in' : '\U00002208',
211
+ '\\notin' : '\U00002209',
212
+ '\\subset' : '\U00002282',
213
+ '\\supset' : '\U00002283',
214
+ '\\subseteq' : '\U00002286',
215
+ '\\supseteq' : '\U00002287',
216
+ '\\sqsubset' : '\U0000228f',
217
+ '\\sqsupset' : '\U00002290',
218
+ '\\sqsubseteq' : '\U00002291',
219
+ '\\sqsupseteq' : '\U00002292',
220
+ '\\cap' : '\U00002229',
221
+ '\\bigcap' : '\U000022c2',
222
+ '\\cup' : '\U0000222a',
223
+ '\\bigcup' : '\U000022c3',
224
+ '\\sqcup' : '\U00002294',
225
+ '\\bigsqcup' : '\U00002a06',
226
+ '\\sqcap' : '\U00002293',
227
+ '\\Bigsqcap' : '\U00002a05',
228
+ '\\setminus' : '\U00002216',
229
+ '\\propto' : '\U0000221d',
230
+ '\\uplus' : '\U0000228e',
231
+ '\\bigplus' : '\U00002a04',
232
+ '\\sim' : '\U0000223c',
233
+ '\\doteq' : '\U00002250',
234
+ '\\simeq' : '\U00002243',
235
+ '\\approx' : '\U00002248',
236
+ '\\asymp' : '\U0000224d',
237
+ '\\cong' : '\U00002245',
238
+ '\\equiv' : '\U00002261',
239
+ '\\Join' : '\U000022c8',
240
+ '\\bowtie' : '\U00002a1d',
241
+ '\\prec' : '\U0000227a',
242
+ '\\succ' : '\U0000227b',
243
+ '\\preceq' : '\U0000227c',
244
+ '\\succeq' : '\U0000227d',
245
+ '\\parallel' : '\U00002225',
246
+ '\\mid' : '\U000000a6',
247
+ '\\pm' : '\U000000b1',
248
+ '\\mp' : '\U00002213',
249
+ '\\times' : '\U000000d7',
250
+ '\\div' : '\U000000f7',
251
+ '\\cdot' : '\U000022c5',
252
+ '\\star' : '\U000022c6',
253
+ '\\circ' : '\U00002218',
254
+ '\\dagger' : '\U00002020',
255
+ '\\ddagger' : '\U00002021',
256
+ '\\lhd' : '\U000022b2',
257
+ '\\rhd' : '\U000022b3',
258
+ '\\unlhd' : '\U000022b4',
259
+ '\\unrhd' : '\U000022b5',
260
+ '\\triangleleft' : '\U000025c3',
261
+ '\\triangleright' : '\U000025b9',
262
+ '\\triangle' : '\U000025b3',
263
+ '\\triangleq' : '\U0000225c',
264
+ '\\oplus' : '\U00002295',
265
+ '\\bigoplus' : '\U00002a01',
266
+ '\\otimes' : '\U00002297',
267
+ '\\bigotimes' : '\U00002a02',
268
+ '\\odot' : '\U00002299',
269
+ '\\bigodot' : '\U00002a00',
270
+ '\\ominus' : '\U00002296',
271
+ '\\oslash' : '\U00002298',
272
+ '\\dots' : '\U00002026',
273
+ '\\cdots' : '\U000022ef',
274
+ '\\sum' : '\U00002211',
275
+ '\\prod' : '\U0000220f',
276
+ '\\coprod' : '\U00002210',
277
+ '\\infty' : '\U0000221e',
278
+ '\\int' : '\U0000222b',
279
+ '\\oint' : '\U0000222e',
280
+ '\\clubsuit' : '\U00002663',
281
+ '\\diamondsuit' : '\U00002662',
282
+ '\\heartsuit' : '\U00002661',
283
+ '\\spadesuit' : '\U00002660',
284
+ '\\aleph' : '\U00002135',
285
+ '\\emptyset' : '\U00002205',
286
+ '\\nabla' : '\U00002207',
287
+ '\\partial' : '\U00002202',
288
+ '\\flat' : '\U0000266d',
289
+ '\\natural' : '\U0000266e',
290
+ '\\sharp' : '\U0000266f',
291
+ '\\angle' : '\U00002220',
292
+ '\\copyright' : '\U000000a9',
293
+ '\\textregistered' : '\U000000ae',
294
+ '\\textonequarter' : '\U000000bc',
295
+ '\\textonehalf' : '\U000000bd',
296
+ '\\textthreequarters' : '\U000000be',
297
+ '\\textordfeminine' : '\U000000aa',
298
+ '\\textordmasculine' : '\U000000ba',
299
+ '\\euro' : '\U000020ac',
300
+ '\\pounds' : '\U000000a3',
301
+ '\\yen' : '\U000000a5',
302
+ '\\textcent' : '\U000000a2',
303
+ '\\textcurrency' : '\U000000a4',
304
+ '\\textdegree' : '\U000000b0',
305
+ }
306
+
307
+ isabelle_symbols = {
308
+ '\\<zero>' : '\U0001d7ec',
309
+ '\\<one>' : '\U0001d7ed',
310
+ '\\<two>' : '\U0001d7ee',
311
+ '\\<three>' : '\U0001d7ef',
312
+ '\\<four>' : '\U0001d7f0',
313
+ '\\<five>' : '\U0001d7f1',
314
+ '\\<six>' : '\U0001d7f2',
315
+ '\\<seven>' : '\U0001d7f3',
316
+ '\\<eight>' : '\U0001d7f4',
317
+ '\\<nine>' : '\U0001d7f5',
318
+ '\\<A>' : '\U0001d49c',
319
+ '\\<B>' : '\U0000212c',
320
+ '\\<C>' : '\U0001d49e',
321
+ '\\<D>' : '\U0001d49f',
322
+ '\\<E>' : '\U00002130',
323
+ '\\<F>' : '\U00002131',
324
+ '\\<G>' : '\U0001d4a2',
325
+ '\\<H>' : '\U0000210b',
326
+ '\\<I>' : '\U00002110',
327
+ '\\<J>' : '\U0001d4a5',
328
+ '\\<K>' : '\U0001d4a6',
329
+ '\\<L>' : '\U00002112',
330
+ '\\<M>' : '\U00002133',
331
+ '\\<N>' : '\U0001d4a9',
332
+ '\\<O>' : '\U0001d4aa',
333
+ '\\<P>' : '\U0001d4ab',
334
+ '\\<Q>' : '\U0001d4ac',
335
+ '\\<R>' : '\U0000211b',
336
+ '\\<S>' : '\U0001d4ae',
337
+ '\\<T>' : '\U0001d4af',
338
+ '\\<U>' : '\U0001d4b0',
339
+ '\\<V>' : '\U0001d4b1',
340
+ '\\<W>' : '\U0001d4b2',
341
+ '\\<X>' : '\U0001d4b3',
342
+ '\\<Y>' : '\U0001d4b4',
343
+ '\\<Z>' : '\U0001d4b5',
344
+ '\\<a>' : '\U0001d5ba',
345
+ '\\<b>' : '\U0001d5bb',
346
+ '\\<c>' : '\U0001d5bc',
347
+ '\\<d>' : '\U0001d5bd',
348
+ '\\<e>' : '\U0001d5be',
349
+ '\\<f>' : '\U0001d5bf',
350
+ '\\<g>' : '\U0001d5c0',
351
+ '\\<h>' : '\U0001d5c1',
352
+ '\\<i>' : '\U0001d5c2',
353
+ '\\<j>' : '\U0001d5c3',
354
+ '\\<k>' : '\U0001d5c4',
355
+ '\\<l>' : '\U0001d5c5',
356
+ '\\<m>' : '\U0001d5c6',
357
+ '\\<n>' : '\U0001d5c7',
358
+ '\\<o>' : '\U0001d5c8',
359
+ '\\<p>' : '\U0001d5c9',
360
+ '\\<q>' : '\U0001d5ca',
361
+ '\\<r>' : '\U0001d5cb',
362
+ '\\<s>' : '\U0001d5cc',
363
+ '\\<t>' : '\U0001d5cd',
364
+ '\\<u>' : '\U0001d5ce',
365
+ '\\<v>' : '\U0001d5cf',
366
+ '\\<w>' : '\U0001d5d0',
367
+ '\\<x>' : '\U0001d5d1',
368
+ '\\<y>' : '\U0001d5d2',
369
+ '\\<z>' : '\U0001d5d3',
370
+ '\\<AA>' : '\U0001d504',
371
+ '\\<BB>' : '\U0001d505',
372
+ '\\<CC>' : '\U0000212d',
373
+ '\\<DD>' : '\U0001d507',
374
+ '\\<EE>' : '\U0001d508',
375
+ '\\<FF>' : '\U0001d509',
376
+ '\\<GG>' : '\U0001d50a',
377
+ '\\<HH>' : '\U0000210c',
378
+ '\\<II>' : '\U00002111',
379
+ '\\<JJ>' : '\U0001d50d',
380
+ '\\<KK>' : '\U0001d50e',
381
+ '\\<LL>' : '\U0001d50f',
382
+ '\\<MM>' : '\U0001d510',
383
+ '\\<NN>' : '\U0001d511',
384
+ '\\<OO>' : '\U0001d512',
385
+ '\\<PP>' : '\U0001d513',
386
+ '\\<QQ>' : '\U0001d514',
387
+ '\\<RR>' : '\U0000211c',
388
+ '\\<SS>' : '\U0001d516',
389
+ '\\<TT>' : '\U0001d517',
390
+ '\\<UU>' : '\U0001d518',
391
+ '\\<VV>' : '\U0001d519',
392
+ '\\<WW>' : '\U0001d51a',
393
+ '\\<XX>' : '\U0001d51b',
394
+ '\\<YY>' : '\U0001d51c',
395
+ '\\<ZZ>' : '\U00002128',
396
+ '\\<aa>' : '\U0001d51e',
397
+ '\\<bb>' : '\U0001d51f',
398
+ '\\<cc>' : '\U0001d520',
399
+ '\\<dd>' : '\U0001d521',
400
+ '\\<ee>' : '\U0001d522',
401
+ '\\<ff>' : '\U0001d523',
402
+ '\\<gg>' : '\U0001d524',
403
+ '\\<hh>' : '\U0001d525',
404
+ '\\<ii>' : '\U0001d526',
405
+ '\\<jj>' : '\U0001d527',
406
+ '\\<kk>' : '\U0001d528',
407
+ '\\<ll>' : '\U0001d529',
408
+ '\\<mm>' : '\U0001d52a',
409
+ '\\<nn>' : '\U0001d52b',
410
+ '\\<oo>' : '\U0001d52c',
411
+ '\\<pp>' : '\U0001d52d',
412
+ '\\<qq>' : '\U0001d52e',
413
+ '\\<rr>' : '\U0001d52f',
414
+ '\\<ss>' : '\U0001d530',
415
+ '\\<tt>' : '\U0001d531',
416
+ '\\<uu>' : '\U0001d532',
417
+ '\\<vv>' : '\U0001d533',
418
+ '\\<ww>' : '\U0001d534',
419
+ '\\<xx>' : '\U0001d535',
420
+ '\\<yy>' : '\U0001d536',
421
+ '\\<zz>' : '\U0001d537',
422
+ '\\<alpha>' : '\U000003b1',
423
+ '\\<beta>' : '\U000003b2',
424
+ '\\<gamma>' : '\U000003b3',
425
+ '\\<delta>' : '\U000003b4',
426
+ '\\<epsilon>' : '\U000003b5',
427
+ '\\<zeta>' : '\U000003b6',
428
+ '\\<eta>' : '\U000003b7',
429
+ '\\<theta>' : '\U000003b8',
430
+ '\\<iota>' : '\U000003b9',
431
+ '\\<kappa>' : '\U000003ba',
432
+ '\\<lambda>' : '\U000003bb',
433
+ '\\<mu>' : '\U000003bc',
434
+ '\\<nu>' : '\U000003bd',
435
+ '\\<xi>' : '\U000003be',
436
+ '\\<pi>' : '\U000003c0',
437
+ '\\<rho>' : '\U000003c1',
438
+ '\\<sigma>' : '\U000003c3',
439
+ '\\<tau>' : '\U000003c4',
440
+ '\\<upsilon>' : '\U000003c5',
441
+ '\\<phi>' : '\U000003c6',
442
+ '\\<chi>' : '\U000003c7',
443
+ '\\<psi>' : '\U000003c8',
444
+ '\\<omega>' : '\U000003c9',
445
+ '\\<Gamma>' : '\U00000393',
446
+ '\\<Delta>' : '\U00000394',
447
+ '\\<Theta>' : '\U00000398',
448
+ '\\<Lambda>' : '\U0000039b',
449
+ '\\<Xi>' : '\U0000039e',
450
+ '\\<Pi>' : '\U000003a0',
451
+ '\\<Sigma>' : '\U000003a3',
452
+ '\\<Upsilon>' : '\U000003a5',
453
+ '\\<Phi>' : '\U000003a6',
454
+ '\\<Psi>' : '\U000003a8',
455
+ '\\<Omega>' : '\U000003a9',
456
+ '\\<bool>' : '\U0001d539',
457
+ '\\<complex>' : '\U00002102',
458
+ '\\<nat>' : '\U00002115',
459
+ '\\<rat>' : '\U0000211a',
460
+ '\\<real>' : '\U0000211d',
461
+ '\\<int>' : '\U00002124',
462
+ '\\<leftarrow>' : '\U00002190',
463
+ '\\<longleftarrow>' : '\U000027f5',
464
+ '\\<rightarrow>' : '\U00002192',
465
+ '\\<longrightarrow>' : '\U000027f6',
466
+ '\\<Leftarrow>' : '\U000021d0',
467
+ '\\<Longleftarrow>' : '\U000027f8',
468
+ '\\<Rightarrow>' : '\U000021d2',
469
+ '\\<Longrightarrow>' : '\U000027f9',
470
+ '\\<leftrightarrow>' : '\U00002194',
471
+ '\\<longleftrightarrow>' : '\U000027f7',
472
+ '\\<Leftrightarrow>' : '\U000021d4',
473
+ '\\<Longleftrightarrow>' : '\U000027fa',
474
+ '\\<mapsto>' : '\U000021a6',
475
+ '\\<longmapsto>' : '\U000027fc',
476
+ '\\<midarrow>' : '\U00002500',
477
+ '\\<Midarrow>' : '\U00002550',
478
+ '\\<hookleftarrow>' : '\U000021a9',
479
+ '\\<hookrightarrow>' : '\U000021aa',
480
+ '\\<leftharpoondown>' : '\U000021bd',
481
+ '\\<rightharpoondown>' : '\U000021c1',
482
+ '\\<leftharpoonup>' : '\U000021bc',
483
+ '\\<rightharpoonup>' : '\U000021c0',
484
+ '\\<rightleftharpoons>' : '\U000021cc',
485
+ '\\<leadsto>' : '\U0000219d',
486
+ '\\<downharpoonleft>' : '\U000021c3',
487
+ '\\<downharpoonright>' : '\U000021c2',
488
+ '\\<upharpoonleft>' : '\U000021bf',
489
+ '\\<upharpoonright>' : '\U000021be',
490
+ '\\<restriction>' : '\U000021be',
491
+ '\\<Colon>' : '\U00002237',
492
+ '\\<up>' : '\U00002191',
493
+ '\\<Up>' : '\U000021d1',
494
+ '\\<down>' : '\U00002193',
495
+ '\\<Down>' : '\U000021d3',
496
+ '\\<updown>' : '\U00002195',
497
+ '\\<Updown>' : '\U000021d5',
498
+ '\\<langle>' : '\U000027e8',
499
+ '\\<rangle>' : '\U000027e9',
500
+ '\\<lceil>' : '\U00002308',
501
+ '\\<rceil>' : '\U00002309',
502
+ '\\<lfloor>' : '\U0000230a',
503
+ '\\<rfloor>' : '\U0000230b',
504
+ '\\<lparr>' : '\U00002987',
505
+ '\\<rparr>' : '\U00002988',
506
+ '\\<lbrakk>' : '\U000027e6',
507
+ '\\<rbrakk>' : '\U000027e7',
508
+ '\\<lbrace>' : '\U00002983',
509
+ '\\<rbrace>' : '\U00002984',
510
+ '\\<guillemotleft>' : '\U000000ab',
511
+ '\\<guillemotright>' : '\U000000bb',
512
+ '\\<bottom>' : '\U000022a5',
513
+ '\\<top>' : '\U000022a4',
514
+ '\\<and>' : '\U00002227',
515
+ '\\<And>' : '\U000022c0',
516
+ '\\<or>' : '\U00002228',
517
+ '\\<Or>' : '\U000022c1',
518
+ '\\<forall>' : '\U00002200',
519
+ '\\<exists>' : '\U00002203',
520
+ '\\<nexists>' : '\U00002204',
521
+ '\\<not>' : '\U000000ac',
522
+ '\\<box>' : '\U000025a1',
523
+ '\\<diamond>' : '\U000025c7',
524
+ '\\<turnstile>' : '\U000022a2',
525
+ '\\<Turnstile>' : '\U000022a8',
526
+ '\\<tturnstile>' : '\U000022a9',
527
+ '\\<TTurnstile>' : '\U000022ab',
528
+ '\\<stileturn>' : '\U000022a3',
529
+ '\\<surd>' : '\U0000221a',
530
+ '\\<le>' : '\U00002264',
531
+ '\\<ge>' : '\U00002265',
532
+ '\\<lless>' : '\U0000226a',
533
+ '\\<ggreater>' : '\U0000226b',
534
+ '\\<lesssim>' : '\U00002272',
535
+ '\\<greatersim>' : '\U00002273',
536
+ '\\<lessapprox>' : '\U00002a85',
537
+ '\\<greaterapprox>' : '\U00002a86',
538
+ '\\<in>' : '\U00002208',
539
+ '\\<notin>' : '\U00002209',
540
+ '\\<subset>' : '\U00002282',
541
+ '\\<supset>' : '\U00002283',
542
+ '\\<subseteq>' : '\U00002286',
543
+ '\\<supseteq>' : '\U00002287',
544
+ '\\<sqsubset>' : '\U0000228f',
545
+ '\\<sqsupset>' : '\U00002290',
546
+ '\\<sqsubseteq>' : '\U00002291',
547
+ '\\<sqsupseteq>' : '\U00002292',
548
+ '\\<inter>' : '\U00002229',
549
+ '\\<Inter>' : '\U000022c2',
550
+ '\\<union>' : '\U0000222a',
551
+ '\\<Union>' : '\U000022c3',
552
+ '\\<squnion>' : '\U00002294',
553
+ '\\<Squnion>' : '\U00002a06',
554
+ '\\<sqinter>' : '\U00002293',
555
+ '\\<Sqinter>' : '\U00002a05',
556
+ '\\<setminus>' : '\U00002216',
557
+ '\\<propto>' : '\U0000221d',
558
+ '\\<uplus>' : '\U0000228e',
559
+ '\\<Uplus>' : '\U00002a04',
560
+ '\\<noteq>' : '\U00002260',
561
+ '\\<sim>' : '\U0000223c',
562
+ '\\<doteq>' : '\U00002250',
563
+ '\\<simeq>' : '\U00002243',
564
+ '\\<approx>' : '\U00002248',
565
+ '\\<asymp>' : '\U0000224d',
566
+ '\\<cong>' : '\U00002245',
567
+ '\\<smile>' : '\U00002323',
568
+ '\\<equiv>' : '\U00002261',
569
+ '\\<frown>' : '\U00002322',
570
+ '\\<Join>' : '\U000022c8',
571
+ '\\<bowtie>' : '\U00002a1d',
572
+ '\\<prec>' : '\U0000227a',
573
+ '\\<succ>' : '\U0000227b',
574
+ '\\<preceq>' : '\U0000227c',
575
+ '\\<succeq>' : '\U0000227d',
576
+ '\\<parallel>' : '\U00002225',
577
+ '\\<bar>' : '\U000000a6',
578
+ '\\<plusminus>' : '\U000000b1',
579
+ '\\<minusplus>' : '\U00002213',
580
+ '\\<times>' : '\U000000d7',
581
+ '\\<div>' : '\U000000f7',
582
+ '\\<cdot>' : '\U000022c5',
583
+ '\\<star>' : '\U000022c6',
584
+ '\\<bullet>' : '\U00002219',
585
+ '\\<circ>' : '\U00002218',
586
+ '\\<dagger>' : '\U00002020',
587
+ '\\<ddagger>' : '\U00002021',
588
+ '\\<lhd>' : '\U000022b2',
589
+ '\\<rhd>' : '\U000022b3',
590
+ '\\<unlhd>' : '\U000022b4',
591
+ '\\<unrhd>' : '\U000022b5',
592
+ '\\<triangleleft>' : '\U000025c3',
593
+ '\\<triangleright>' : '\U000025b9',
594
+ '\\<triangle>' : '\U000025b3',
595
+ '\\<triangleq>' : '\U0000225c',
596
+ '\\<oplus>' : '\U00002295',
597
+ '\\<Oplus>' : '\U00002a01',
598
+ '\\<otimes>' : '\U00002297',
599
+ '\\<Otimes>' : '\U00002a02',
600
+ '\\<odot>' : '\U00002299',
601
+ '\\<Odot>' : '\U00002a00',
602
+ '\\<ominus>' : '\U00002296',
603
+ '\\<oslash>' : '\U00002298',
604
+ '\\<dots>' : '\U00002026',
605
+ '\\<cdots>' : '\U000022ef',
606
+ '\\<Sum>' : '\U00002211',
607
+ '\\<Prod>' : '\U0000220f',
608
+ '\\<Coprod>' : '\U00002210',
609
+ '\\<infinity>' : '\U0000221e',
610
+ '\\<integral>' : '\U0000222b',
611
+ '\\<ointegral>' : '\U0000222e',
612
+ '\\<clubsuit>' : '\U00002663',
613
+ '\\<diamondsuit>' : '\U00002662',
614
+ '\\<heartsuit>' : '\U00002661',
615
+ '\\<spadesuit>' : '\U00002660',
616
+ '\\<aleph>' : '\U00002135',
617
+ '\\<emptyset>' : '\U00002205',
618
+ '\\<nabla>' : '\U00002207',
619
+ '\\<partial>' : '\U00002202',
620
+ '\\<flat>' : '\U0000266d',
621
+ '\\<natural>' : '\U0000266e',
622
+ '\\<sharp>' : '\U0000266f',
623
+ '\\<angle>' : '\U00002220',
624
+ '\\<copyright>' : '\U000000a9',
625
+ '\\<registered>' : '\U000000ae',
626
+ '\\<hyphen>' : '\U000000ad',
627
+ '\\<inverse>' : '\U000000af',
628
+ '\\<onequarter>' : '\U000000bc',
629
+ '\\<onehalf>' : '\U000000bd',
630
+ '\\<threequarters>' : '\U000000be',
631
+ '\\<ordfeminine>' : '\U000000aa',
632
+ '\\<ordmasculine>' : '\U000000ba',
633
+ '\\<section>' : '\U000000a7',
634
+ '\\<paragraph>' : '\U000000b6',
635
+ '\\<exclamdown>' : '\U000000a1',
636
+ '\\<questiondown>' : '\U000000bf',
637
+ '\\<euro>' : '\U000020ac',
638
+ '\\<pounds>' : '\U000000a3',
639
+ '\\<yen>' : '\U000000a5',
640
+ '\\<cent>' : '\U000000a2',
641
+ '\\<currency>' : '\U000000a4',
642
+ '\\<degree>' : '\U000000b0',
643
+ '\\<amalg>' : '\U00002a3f',
644
+ '\\<mho>' : '\U00002127',
645
+ '\\<lozenge>' : '\U000025ca',
646
+ '\\<wp>' : '\U00002118',
647
+ '\\<wrong>' : '\U00002240',
648
+ '\\<struct>' : '\U000022c4',
649
+ '\\<acute>' : '\U000000b4',
650
+ '\\<index>' : '\U00000131',
651
+ '\\<dieresis>' : '\U000000a8',
652
+ '\\<cedilla>' : '\U000000b8',
653
+ '\\<hungarumlaut>' : '\U000002dd',
654
+ '\\<some>' : '\U000003f5',
655
+ '\\<newline>' : '\U000023ce',
656
+ '\\<open>' : '\U00002039',
657
+ '\\<close>' : '\U0000203a',
658
+ '\\<here>' : '\U00002302',
659
+ '\\<^sub>' : '\U000021e9',
660
+ '\\<^sup>' : '\U000021e7',
661
+ '\\<^bold>' : '\U00002759',
662
+ '\\<^bsub>' : '\U000021d8',
663
+ '\\<^esub>' : '\U000021d9',
664
+ '\\<^bsup>' : '\U000021d7',
665
+ '\\<^esup>' : '\U000021d6',
666
+ }
667
+
668
+ lang_map = {'isabelle' : isabelle_symbols, 'latex' : latex_symbols}
669
+
670
+ def __init__(self, **options):
671
+ Filter.__init__(self, **options)
672
+ lang = get_choice_opt(options, 'lang',
673
+ ['isabelle', 'latex'], 'isabelle')
674
+ self.symbols = self.lang_map[lang]
675
+
676
+ def filter(self, lexer, stream):
677
+ for ttype, value in stream:
678
+ if value in self.symbols:
679
+ yield ttype, self.symbols[value]
94
680
  else:
95
681
  yield ttype, value
96
682
 
@@ -113,7 +699,7 @@ class KeywordCaseFilter(Filter):
113
699
  Filter.__init__(self, **options)
114
700
  case = get_choice_opt(options, 'case',
115
701
  ['lower', 'upper', 'capitalize'], 'lower')
116
- self.convert = getattr(text_type, case)
702
+ self.convert = getattr(str, case)
117
703
 
118
704
  def filter(self, lexer, stream):
119
705
  for ttype, value in stream:
@@ -229,11 +815,11 @@ class VisibleWhitespaceFilter(Filter):
229
815
 
230
816
  def __init__(self, **options):
231
817
  Filter.__init__(self, **options)
232
- for name, default in [('spaces', u'·'),
233
- ('tabs', u'»'),
234
- ('newlines', u'¶')]:
818
+ for name, default in [('spaces', '·'),
819
+ ('tabs', '»'),
820
+ ('newlines', '¶')]:
235
821
  opt = options.get(name, False)
236
- if isinstance(opt, string_types) and len(opt) == 1:
822
+ if isinstance(opt, str) and len(opt) == 1:
237
823
  setattr(self, name, opt)
238
824
  else:
239
825
  setattr(self, name, (opt and default or ''))
@@ -246,10 +832,11 @@ class VisibleWhitespaceFilter(Filter):
246
832
 
247
833
  def filter(self, lexer, stream):
248
834
  if self.wstt:
249
- spaces = self.spaces or u' '
250
- tabs = self.tabs or u'\t'
251
- newlines = self.newlines or u'\n'
835
+ spaces = self.spaces or ' '
836
+ tabs = self.tabs or '\t'
837
+ newlines = self.newlines or '\n'
252
838
  regex = re.compile(r'\s')
839
+
253
840
  def replacefunc(wschar):
254
841
  if wschar == ' ':
255
842
  return spaces
@@ -260,9 +847,8 @@ class VisibleWhitespaceFilter(Filter):
260
847
  return wschar
261
848
 
262
849
  for ttype, value in stream:
263
- for sttype, svalue in _replace_special(ttype, value, regex,
264
- Whitespace, replacefunc):
265
- yield sttype, svalue
850
+ yield from _replace_special(ttype, value, regex, Whitespace,
851
+ replacefunc)
266
852
  else:
267
853
  spaces, tabs, newlines = self.spaces, self.tabs, self.newlines
268
854
  # simpler processing
@@ -298,18 +884,18 @@ class GobbleFilter(Filter):
298
884
  if left < len(value):
299
885
  return value[left:], 0
300
886
  else:
301
- return u'', left - len(value)
887
+ return '', left - len(value)
302
888
 
303
889
  def filter(self, lexer, stream):
304
890
  n = self.n
305
- left = n # How many characters left to gobble.
891
+ left = n # How many characters left to gobble.
306
892
  for ttype, value in stream:
307
893
  # Remove ``left`` tokens from first line, ``n`` from all others.
308
894
  parts = value.split('\n')
309
895
  (parts[0], left) = self.gobble(parts[0], left)
310
896
  for i in range(1, len(parts)):
311
897
  (parts[i], left) = self.gobble(parts[i], n)
312
- value = u'\n'.join(parts)
898
+ value = '\n'.join(parts)
313
899
 
314
900
  if value != '':
315
901
  yield ttype, value
@@ -347,4 +933,5 @@ FILTERS = {
347
933
  'whitespace': VisibleWhitespaceFilter,
348
934
  'gobble': GobbleFilter,
349
935
  'tokenmerge': TokenMergeFilter,
936
+ 'symbols': SymbolFilter,
350
937
  }