pygments.rb 0.6.3 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (606) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +11 -0
  3. data/README.md +6 -6
  4. data/Rakefile +2 -1
  5. data/cache-lexers.rb +1 -1
  6. data/circle.yml +7 -0
  7. data/lib/pygments/lexer.rb +3 -3
  8. data/lib/pygments/popen.rb +67 -30
  9. data/lib/pygments/version.rb +1 -1
  10. data/pygments.rb.gemspec +2 -1
  11. data/test/test_pygments.rb +16 -16
  12. data/vendor/pygments-main/AUTHORS +54 -8
  13. data/vendor/pygments-main/CHANGES +247 -25
  14. data/vendor/pygments-main/LICENSE +1 -1
  15. data/vendor/pygments-main/Makefile +15 -6
  16. data/vendor/pygments-main/README.rst +39 -0
  17. data/vendor/pygments-main/REVISION +1 -1
  18. data/vendor/pygments-main/TODO +0 -3
  19. data/vendor/pygments-main/doc/_themes/pygments14/layout.html +1 -1
  20. data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +1 -1
  21. data/vendor/pygments-main/doc/conf.py +3 -11
  22. data/vendor/pygments-main/doc/docs/api.rst +15 -0
  23. data/vendor/pygments-main/doc/docs/cmdline.rst +6 -2
  24. data/vendor/pygments-main/doc/docs/filterdevelopment.rst +4 -3
  25. data/vendor/pygments-main/doc/docs/integrate.rst +11 -15
  26. data/vendor/pygments-main/doc/docs/java.rst +7 -7
  27. data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +258 -171
  28. data/vendor/pygments-main/doc/docs/lexers.rst +2 -2
  29. data/vendor/pygments-main/doc/docs/styles.rst +58 -0
  30. data/vendor/pygments-main/doc/docs/tokens.rst +22 -2
  31. data/vendor/pygments-main/doc/docs/unicode.rst +15 -7
  32. data/vendor/pygments-main/doc/faq.rst +17 -21
  33. data/vendor/pygments-main/doc/index.rst +12 -11
  34. data/vendor/pygments-main/doc/languages.rst +10 -7
  35. data/vendor/pygments-main/external/autopygmentize +9 -6
  36. data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +70 -52
  37. data/vendor/pygments-main/external/markdown-processor.py +1 -1
  38. data/vendor/pygments-main/external/moin-parser.py +1 -1
  39. data/vendor/pygments-main/external/rst-directive.py +1 -1
  40. data/vendor/pygments-main/pygmentize +2 -1
  41. data/vendor/pygments-main/pygments/__init__.py +14 -15
  42. data/vendor/pygments-main/pygments/cmdline.py +188 -113
  43. data/vendor/pygments-main/pygments/console.py +13 -13
  44. data/vendor/pygments-main/pygments/filter.py +7 -7
  45. data/vendor/pygments-main/pygments/filters/__init__.py +24 -32
  46. data/vendor/pygments-main/pygments/formatter.py +5 -5
  47. data/vendor/pygments-main/pygments/formatters/__init__.py +92 -44
  48. data/vendor/pygments-main/pygments/formatters/_mapping.py +51 -69
  49. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
  50. data/vendor/pygments-main/pygments/formatters/html.py +63 -51
  51. data/vendor/pygments-main/pygments/formatters/img.py +25 -22
  52. data/vendor/pygments-main/pygments/formatters/irc.py +182 -0
  53. data/vendor/pygments-main/pygments/formatters/latex.py +34 -22
  54. data/vendor/pygments-main/pygments/formatters/other.py +5 -7
  55. data/vendor/pygments-main/pygments/formatters/rtf.py +28 -31
  56. data/vendor/pygments-main/pygments/formatters/svg.py +1 -2
  57. data/vendor/pygments-main/pygments/formatters/terminal.py +29 -45
  58. data/vendor/pygments-main/pygments/formatters/terminal256.py +118 -31
  59. data/vendor/pygments-main/pygments/lexer.py +120 -34
  60. data/vendor/pygments-main/pygments/lexers/__init__.py +85 -53
  61. data/vendor/pygments-main/pygments/lexers/{_asybuiltins.py → _asy_builtins.py} +7 -7
  62. data/vendor/pygments-main/pygments/lexers/{_clbuiltins.py → _cl_builtins.py} +17 -17
  63. data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +72 -0
  64. data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1346 -0
  65. data/vendor/pygments-main/pygments/lexers/{_lassobuiltins.py → _lasso_builtins.py} +4699 -4561
  66. data/vendor/pygments-main/pygments/lexers/{_luabuiltins.py → _lua_builtins.py} +91 -51
  67. data/vendor/pygments-main/pygments/lexers/_mapping.py +342 -242
  68. data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1172 -0
  69. data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +2547 -0
  70. data/vendor/pygments-main/pygments/lexers/{_phpbuiltins.py → _php_builtins.py} +350 -353
  71. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +600 -212
  72. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +3084 -30
  73. data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1163 -0
  74. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +91 -13
  75. data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +419 -0
  76. data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1004 -0
  77. data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1939 -0
  78. data/vendor/pygments-main/pygments/lexers/actionscript.py +240 -0
  79. data/vendor/pygments-main/pygments/lexers/agile.py +14 -2542
  80. data/vendor/pygments-main/pygments/lexers/algebra.py +221 -0
  81. data/vendor/pygments-main/pygments/lexers/ambient.py +76 -0
  82. data/vendor/pygments-main/pygments/lexers/ampl.py +87 -0
  83. data/vendor/pygments-main/pygments/lexers/apl.py +101 -0
  84. data/vendor/pygments-main/pygments/lexers/archetype.py +318 -0
  85. data/vendor/pygments-main/pygments/lexers/asm.py +276 -81
  86. data/vendor/pygments-main/pygments/lexers/automation.py +374 -0
  87. data/vendor/pygments-main/pygments/lexers/basic.py +500 -0
  88. data/vendor/pygments-main/pygments/lexers/bibtex.py +156 -0
  89. data/vendor/pygments-main/pygments/lexers/business.py +594 -0
  90. data/vendor/pygments-main/pygments/lexers/c_cpp.py +252 -0
  91. data/vendor/pygments-main/pygments/lexers/c_like.py +541 -0
  92. data/vendor/pygments-main/pygments/lexers/capnproto.py +79 -0
  93. data/vendor/pygments-main/pygments/lexers/chapel.py +101 -0
  94. data/vendor/pygments-main/pygments/lexers/clean.py +288 -0
  95. data/vendor/pygments-main/pygments/lexers/compiled.py +24 -5182
  96. data/vendor/pygments-main/pygments/lexers/configs.py +833 -0
  97. data/vendor/pygments-main/pygments/lexers/console.py +114 -0
  98. data/vendor/pygments-main/pygments/lexers/crystal.py +384 -0
  99. data/vendor/pygments-main/pygments/lexers/csound.py +366 -0
  100. data/vendor/pygments-main/pygments/lexers/css.py +689 -0
  101. data/vendor/pygments-main/pygments/lexers/d.py +251 -0
  102. data/vendor/pygments-main/pygments/lexers/dalvik.py +6 -6
  103. data/vendor/pygments-main/pygments/lexers/data.py +555 -0
  104. data/vendor/pygments-main/pygments/lexers/diff.py +165 -0
  105. data/vendor/pygments-main/pygments/lexers/dotnet.py +96 -88
  106. data/vendor/pygments-main/pygments/lexers/dsls.py +878 -0
  107. data/vendor/pygments-main/pygments/lexers/dylan.py +289 -0
  108. data/vendor/pygments-main/pygments/lexers/ecl.py +125 -0
  109. data/vendor/pygments-main/pygments/lexers/eiffel.py +65 -0
  110. data/vendor/pygments-main/pygments/lexers/elm.py +121 -0
  111. data/vendor/pygments-main/pygments/lexers/erlang.py +533 -0
  112. data/vendor/pygments-main/pygments/lexers/esoteric.py +275 -0
  113. data/vendor/pygments-main/pygments/lexers/ezhil.py +68 -0
  114. data/vendor/pygments-main/pygments/lexers/factor.py +344 -0
  115. data/vendor/pygments-main/pygments/lexers/fantom.py +250 -0
  116. data/vendor/pygments-main/pygments/lexers/felix.py +273 -0
  117. data/vendor/pygments-main/pygments/lexers/forth.py +177 -0
  118. data/vendor/pygments-main/pygments/lexers/fortran.py +205 -0
  119. data/vendor/pygments-main/pygments/lexers/foxpro.py +1 -1
  120. data/vendor/pygments-main/pygments/lexers/functional.py +11 -3661
  121. data/vendor/pygments-main/pygments/lexers/go.py +101 -0
  122. data/vendor/pygments-main/pygments/lexers/grammar_notation.py +213 -0
  123. data/vendor/pygments-main/pygments/lexers/graph.py +7 -8
  124. data/vendor/pygments-main/pygments/lexers/graphics.py +553 -0
  125. data/vendor/pygments-main/pygments/lexers/haskell.py +840 -0
  126. data/vendor/pygments-main/pygments/lexers/haxe.py +936 -0
  127. data/vendor/pygments-main/pygments/lexers/hdl.py +172 -145
  128. data/vendor/pygments-main/pygments/lexers/hexdump.py +97 -0
  129. data/vendor/pygments-main/pygments/lexers/html.py +602 -0
  130. data/vendor/pygments-main/pygments/lexers/idl.py +270 -0
  131. data/vendor/pygments-main/pygments/lexers/igor.py +288 -0
  132. data/vendor/pygments-main/pygments/lexers/inferno.py +3 -3
  133. data/vendor/pygments-main/pygments/lexers/installers.py +322 -0
  134. data/vendor/pygments-main/pygments/lexers/int_fiction.py +1343 -0
  135. data/vendor/pygments-main/pygments/lexers/iolang.py +63 -0
  136. data/vendor/pygments-main/pygments/lexers/j.py +146 -0
  137. data/vendor/pygments-main/pygments/lexers/javascript.py +1506 -0
  138. data/vendor/pygments-main/pygments/lexers/julia.py +333 -0
  139. data/vendor/pygments-main/pygments/lexers/jvm.py +232 -186
  140. data/vendor/pygments-main/pygments/lexers/lisp.py +2621 -0
  141. data/vendor/pygments-main/pygments/lexers/make.py +202 -0
  142. data/vendor/pygments-main/pygments/lexers/markup.py +595 -0
  143. data/vendor/pygments-main/pygments/lexers/math.py +11 -2276
  144. data/vendor/pygments-main/pygments/lexers/matlab.py +663 -0
  145. data/vendor/pygments-main/pygments/lexers/ml.py +769 -0
  146. data/vendor/pygments-main/pygments/lexers/modeling.py +358 -0
  147. data/vendor/pygments-main/pygments/lexers/modula2.py +1561 -0
  148. data/vendor/pygments-main/pygments/lexers/monte.py +203 -0
  149. data/vendor/pygments-main/pygments/lexers/ncl.py +1053 -0
  150. data/vendor/pygments-main/pygments/lexers/nimrod.py +159 -0
  151. data/vendor/pygments-main/pygments/lexers/nit.py +64 -0
  152. data/vendor/pygments-main/pygments/lexers/nix.py +136 -0
  153. data/vendor/pygments-main/pygments/lexers/oberon.py +105 -0
  154. data/vendor/pygments-main/pygments/lexers/objective.py +504 -0
  155. data/vendor/pygments-main/pygments/lexers/ooc.py +85 -0
  156. data/vendor/pygments-main/pygments/lexers/other.py +30 -4481
  157. data/vendor/pygments-main/pygments/lexers/parasail.py +79 -0
  158. data/vendor/pygments-main/pygments/lexers/parsers.py +171 -114
  159. data/vendor/pygments-main/pygments/lexers/pascal.py +644 -0
  160. data/vendor/pygments-main/pygments/lexers/pawn.py +199 -0
  161. data/vendor/pygments-main/pygments/lexers/perl.py +616 -0
  162. data/vendor/pygments-main/pygments/lexers/php.py +267 -0
  163. data/vendor/pygments-main/pygments/lexers/praat.py +294 -0
  164. data/vendor/pygments-main/pygments/lexers/prolog.py +306 -0
  165. data/vendor/pygments-main/pygments/lexers/python.py +938 -0
  166. data/vendor/pygments-main/pygments/lexers/qvt.py +152 -0
  167. data/vendor/pygments-main/pygments/lexers/r.py +453 -0
  168. data/vendor/pygments-main/pygments/lexers/rdf.py +195 -24
  169. data/vendor/pygments-main/pygments/lexers/rebol.py +431 -0
  170. data/vendor/pygments-main/pygments/lexers/resource.py +85 -0
  171. data/vendor/pygments-main/pygments/lexers/rnc.py +67 -0
  172. data/vendor/pygments-main/pygments/lexers/roboconf.py +82 -0
  173. data/vendor/pygments-main/pygments/lexers/{_robotframeworklexer.py → robotframework.py} +20 -18
  174. data/vendor/pygments-main/pygments/lexers/ruby.py +519 -0
  175. data/vendor/pygments-main/pygments/lexers/rust.py +209 -0
  176. data/vendor/pygments-main/pygments/lexers/sas.py +228 -0
  177. data/vendor/pygments-main/pygments/lexers/scripting.py +1222 -0
  178. data/vendor/pygments-main/pygments/lexers/shell.py +478 -115
  179. data/vendor/pygments-main/pygments/lexers/smalltalk.py +195 -0
  180. data/vendor/pygments-main/pygments/lexers/smv.py +75 -0
  181. data/vendor/pygments-main/pygments/lexers/snobol.py +83 -0
  182. data/vendor/pygments-main/pygments/lexers/special.py +6 -2
  183. data/vendor/pygments-main/pygments/lexers/sql.py +209 -120
  184. data/vendor/pygments-main/pygments/lexers/stata.py +106 -0
  185. data/vendor/pygments-main/pygments/lexers/supercollider.py +90 -0
  186. data/vendor/pygments-main/pygments/lexers/tcl.py +145 -0
  187. data/vendor/pygments-main/pygments/lexers/templates.py +282 -90
  188. data/vendor/pygments-main/pygments/lexers/testing.py +207 -0
  189. data/vendor/pygments-main/pygments/lexers/text.py +15 -2045
  190. data/vendor/pygments-main/pygments/lexers/textedit.py +169 -0
  191. data/vendor/pygments-main/pygments/lexers/textfmts.py +297 -0
  192. data/vendor/pygments-main/pygments/lexers/theorem.py +458 -0
  193. data/vendor/pygments-main/pygments/lexers/trafficscript.py +54 -0
  194. data/vendor/pygments-main/pygments/lexers/typoscript.py +225 -0
  195. data/vendor/pygments-main/pygments/lexers/urbi.py +133 -0
  196. data/vendor/pygments-main/pygments/lexers/varnish.py +190 -0
  197. data/vendor/pygments-main/pygments/lexers/verification.py +111 -0
  198. data/vendor/pygments-main/pygments/lexers/web.py +13 -4499
  199. data/vendor/pygments-main/pygments/lexers/webmisc.py +979 -0
  200. data/vendor/pygments-main/pygments/lexers/whiley.py +117 -0
  201. data/vendor/pygments-main/pygments/lexers/x10.py +69 -0
  202. data/vendor/pygments-main/pygments/modeline.py +5 -2
  203. data/vendor/pygments-main/pygments/plugin.py +1 -1
  204. data/vendor/pygments-main/pygments/regexopt.py +92 -0
  205. data/vendor/pygments-main/pygments/scanner.py +3 -2
  206. data/vendor/pygments-main/pygments/sphinxext.py +11 -6
  207. data/vendor/pygments-main/pygments/style.py +41 -4
  208. data/vendor/pygments-main/pygments/styles/__init__.py +5 -1
  209. data/vendor/pygments-main/pygments/styles/algol.py +63 -0
  210. data/vendor/pygments-main/pygments/styles/algol_nu.py +63 -0
  211. data/vendor/pygments-main/pygments/styles/arduino.py +98 -0
  212. data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
  213. data/vendor/pygments-main/pygments/styles/borland.py +1 -1
  214. data/vendor/pygments-main/pygments/styles/bw.py +1 -1
  215. data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
  216. data/vendor/pygments-main/pygments/styles/default.py +1 -1
  217. data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
  218. data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
  219. data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
  220. data/vendor/pygments-main/pygments/styles/igor.py +1 -1
  221. data/vendor/pygments-main/pygments/styles/lovelace.py +97 -0
  222. data/vendor/pygments-main/pygments/styles/manni.py +1 -1
  223. data/vendor/pygments-main/pygments/styles/monokai.py +1 -1
  224. data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
  225. data/vendor/pygments-main/pygments/styles/native.py +1 -1
  226. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -1
  227. data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -1
  228. data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
  229. data/vendor/pygments-main/pygments/styles/perldoc.py +2 -2
  230. data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
  231. data/vendor/pygments-main/pygments/styles/sas.py +41 -0
  232. data/vendor/pygments-main/pygments/styles/stata.py +37 -0
  233. data/vendor/pygments-main/pygments/styles/tango.py +1 -1
  234. data/vendor/pygments-main/pygments/styles/trac.py +1 -1
  235. data/vendor/pygments-main/pygments/styles/vim.py +1 -1
  236. data/vendor/pygments-main/pygments/styles/vs.py +1 -1
  237. data/vendor/pygments-main/pygments/styles/xcode.py +1 -1
  238. data/vendor/pygments-main/pygments/token.py +31 -16
  239. data/vendor/pygments-main/pygments/unistring.py +141 -65
  240. data/vendor/pygments-main/pygments/util.py +129 -33
  241. data/vendor/pygments-main/requirements.txt +5 -0
  242. data/vendor/pygments-main/scripts/check_sources.py +25 -40
  243. data/vendor/pygments-main/scripts/debug_lexer.py +246 -0
  244. data/vendor/pygments-main/scripts/find_error.py +1 -0
  245. data/vendor/pygments-main/scripts/get_vimkw.py +35 -4
  246. data/vendor/pygments-main/setup.cfg +3 -0
  247. data/vendor/pygments-main/setup.py +17 -30
  248. data/vendor/pygments-main/tox.ini +7 -0
  249. metadata +159 -387
  250. data/vendor/pygments-main/ez_setup.py +0 -382
  251. data/vendor/pygments-main/pygments/lexers/_cocoabuiltins.py +0 -73
  252. data/vendor/pygments-main/pygments/lexers/_openedgebuiltins.py +0 -562
  253. data/vendor/pygments-main/pygments/lexers/_sourcemodbuiltins.py +0 -1077
  254. data/vendor/pygments-main/pygments/lexers/_vimbuiltins.py +0 -13
  255. data/vendor/pygments-main/pygments/lexers/qbasic.py +0 -157
  256. data/vendor/pygments-main/scripts/find_codetags.py +0 -213
  257. data/vendor/pygments-main/scripts/find_error.py +0 -173
  258. data/vendor/pygments-main/tests/dtds/HTML4-f.dtd +0 -37
  259. data/vendor/pygments-main/tests/dtds/HTML4-s.dtd +0 -869
  260. data/vendor/pygments-main/tests/dtds/HTML4.dcl +0 -88
  261. data/vendor/pygments-main/tests/dtds/HTML4.dtd +0 -1092
  262. data/vendor/pygments-main/tests/dtds/HTML4.soc +0 -9
  263. data/vendor/pygments-main/tests/dtds/HTMLlat1.ent +0 -195
  264. data/vendor/pygments-main/tests/dtds/HTMLspec.ent +0 -77
  265. data/vendor/pygments-main/tests/dtds/HTMLsym.ent +0 -241
  266. data/vendor/pygments-main/tests/examplefiles/99_bottles_of_beer.chpl +0 -118
  267. data/vendor/pygments-main/tests/examplefiles/AcidStateAdvanced.hs +0 -209
  268. data/vendor/pygments-main/tests/examplefiles/AlternatingGroup.mu +0 -102
  269. data/vendor/pygments-main/tests/examplefiles/BOM.js +0 -1
  270. data/vendor/pygments-main/tests/examplefiles/CPDictionary.j +0 -611
  271. data/vendor/pygments-main/tests/examplefiles/Config.in.cache +0 -1973
  272. data/vendor/pygments-main/tests/examplefiles/Constants.mo +0 -158
  273. data/vendor/pygments-main/tests/examplefiles/DancingSudoku.lhs +0 -411
  274. data/vendor/pygments-main/tests/examplefiles/Deflate.fs +0 -578
  275. data/vendor/pygments-main/tests/examplefiles/Error.pmod +0 -38
  276. data/vendor/pygments-main/tests/examplefiles/Errors.scala +0 -18
  277. data/vendor/pygments-main/tests/examplefiles/FakeFile.pike +0 -360
  278. data/vendor/pygments-main/tests/examplefiles/Get-CommandDefinitionHtml.ps1 +0 -66
  279. data/vendor/pygments-main/tests/examplefiles/IPDispatchC.nc +0 -104
  280. data/vendor/pygments-main/tests/examplefiles/IPDispatchP.nc +0 -671
  281. data/vendor/pygments-main/tests/examplefiles/Intro.java +0 -1660
  282. data/vendor/pygments-main/tests/examplefiles/Makefile +0 -1131
  283. data/vendor/pygments-main/tests/examplefiles/Object.st +0 -4394
  284. data/vendor/pygments-main/tests/examplefiles/OrderedMap.hx +0 -584
  285. data/vendor/pygments-main/tests/examplefiles/RoleQ.pm6 +0 -23
  286. data/vendor/pygments-main/tests/examplefiles/SmallCheck.hs +0 -378
  287. data/vendor/pygments-main/tests/examplefiles/Sorting.mod +0 -470
  288. data/vendor/pygments-main/tests/examplefiles/Sudoku.lhs +0 -382
  289. data/vendor/pygments-main/tests/examplefiles/addressbook.proto +0 -30
  290. data/vendor/pygments-main/tests/examplefiles/antlr_ANTLRv3.g +0 -608
  291. data/vendor/pygments-main/tests/examplefiles/antlr_throws +0 -1
  292. data/vendor/pygments-main/tests/examplefiles/apache2.conf +0 -393
  293. data/vendor/pygments-main/tests/examplefiles/as3_test.as +0 -143
  294. data/vendor/pygments-main/tests/examplefiles/as3_test2.as +0 -46
  295. data/vendor/pygments-main/tests/examplefiles/as3_test3.as +0 -3
  296. data/vendor/pygments-main/tests/examplefiles/aspx-cs_example +0 -27
  297. data/vendor/pygments-main/tests/examplefiles/autoit_submit.au3 +0 -25
  298. data/vendor/pygments-main/tests/examplefiles/badcase.java +0 -2
  299. data/vendor/pygments-main/tests/examplefiles/batchfile.bat +0 -49
  300. data/vendor/pygments-main/tests/examplefiles/bigtest.nsi +0 -308
  301. data/vendor/pygments-main/tests/examplefiles/boot-9.scm +0 -1557
  302. data/vendor/pygments-main/tests/examplefiles/ca65_example +0 -284
  303. data/vendor/pygments-main/tests/examplefiles/cbmbas_example +0 -9
  304. data/vendor/pygments-main/tests/examplefiles/cells.ps +0 -515
  305. data/vendor/pygments-main/tests/examplefiles/ceval.c +0 -2604
  306. data/vendor/pygments-main/tests/examplefiles/cheetah_example.html +0 -13
  307. data/vendor/pygments-main/tests/examplefiles/classes.dylan +0 -125
  308. data/vendor/pygments-main/tests/examplefiles/clojure-weird-keywords.clj +0 -5
  309. data/vendor/pygments-main/tests/examplefiles/condensed_ruby.rb +0 -10
  310. data/vendor/pygments-main/tests/examplefiles/coq_RelationClasses +0 -447
  311. data/vendor/pygments-main/tests/examplefiles/core.cljs +0 -52
  312. data/vendor/pygments-main/tests/examplefiles/database.pytb +0 -20
  313. data/vendor/pygments-main/tests/examplefiles/de.MoinMoin.po +0 -2461
  314. data/vendor/pygments-main/tests/examplefiles/demo.ahk +0 -181
  315. data/vendor/pygments-main/tests/examplefiles/demo.cfm +0 -50
  316. data/vendor/pygments-main/tests/examplefiles/demo.hbs +0 -12
  317. data/vendor/pygments-main/tests/examplefiles/django_sample.html+django +0 -68
  318. data/vendor/pygments-main/tests/examplefiles/dwarf.cw +0 -17
  319. data/vendor/pygments-main/tests/examplefiles/ember.handlebars +0 -33
  320. data/vendor/pygments-main/tests/examplefiles/erl_session +0 -10
  321. data/vendor/pygments-main/tests/examplefiles/escape_semicolon.clj +0 -1
  322. data/vendor/pygments-main/tests/examplefiles/evil_regex.js +0 -48
  323. data/vendor/pygments-main/tests/examplefiles/example.Rd +0 -78
  324. data/vendor/pygments-main/tests/examplefiles/example.als +0 -217
  325. data/vendor/pygments-main/tests/examplefiles/example.bug +0 -54
  326. data/vendor/pygments-main/tests/examplefiles/example.c +0 -2080
  327. data/vendor/pygments-main/tests/examplefiles/example.ceylon +0 -52
  328. data/vendor/pygments-main/tests/examplefiles/example.chai +0 -6
  329. data/vendor/pygments-main/tests/examplefiles/example.clay +0 -33
  330. data/vendor/pygments-main/tests/examplefiles/example.cls +0 -15
  331. data/vendor/pygments-main/tests/examplefiles/example.cob +0 -3556
  332. data/vendor/pygments-main/tests/examplefiles/example.coffee +0 -27
  333. data/vendor/pygments-main/tests/examplefiles/example.cpp +0 -2363
  334. data/vendor/pygments-main/tests/examplefiles/example.e +0 -124
  335. data/vendor/pygments-main/tests/examplefiles/example.f90 +0 -8
  336. data/vendor/pygments-main/tests/examplefiles/example.feature +0 -16
  337. data/vendor/pygments-main/tests/examplefiles/example.gd +0 -23
  338. data/vendor/pygments-main/tests/examplefiles/example.gi +0 -64
  339. data/vendor/pygments-main/tests/examplefiles/example.groovy +0 -2
  340. data/vendor/pygments-main/tests/examplefiles/example.gs +0 -106
  341. data/vendor/pygments-main/tests/examplefiles/example.gst +0 -7
  342. data/vendor/pygments-main/tests/examplefiles/example.hs +0 -27
  343. data/vendor/pygments-main/tests/examplefiles/example.hx +0 -185
  344. data/vendor/pygments-main/tests/examplefiles/example.i6t +0 -32
  345. data/vendor/pygments-main/tests/examplefiles/example.i7x +0 -45
  346. data/vendor/pygments-main/tests/examplefiles/example.inf +0 -374
  347. data/vendor/pygments-main/tests/examplefiles/example.j +0 -564
  348. data/vendor/pygments-main/tests/examplefiles/example.jag +0 -48
  349. data/vendor/pygments-main/tests/examplefiles/example.java +0 -16
  350. data/vendor/pygments-main/tests/examplefiles/example.kal +0 -75
  351. data/vendor/pygments-main/tests/examplefiles/example.kt +0 -47
  352. data/vendor/pygments-main/tests/examplefiles/example.lagda +0 -19
  353. data/vendor/pygments-main/tests/examplefiles/example.liquid +0 -42
  354. data/vendor/pygments-main/tests/examplefiles/example.lua +0 -250
  355. data/vendor/pygments-main/tests/examplefiles/example.ma +0 -8
  356. data/vendor/pygments-main/tests/examplefiles/example.monkey +0 -152
  357. data/vendor/pygments-main/tests/examplefiles/example.moo +0 -26
  358. data/vendor/pygments-main/tests/examplefiles/example.moon +0 -629
  359. data/vendor/pygments-main/tests/examplefiles/example.mq4 +0 -187
  360. data/vendor/pygments-main/tests/examplefiles/example.mqh +0 -123
  361. data/vendor/pygments-main/tests/examplefiles/example.msc +0 -43
  362. data/vendor/pygments-main/tests/examplefiles/example.ni +0 -57
  363. data/vendor/pygments-main/tests/examplefiles/example.nim +0 -1010
  364. data/vendor/pygments-main/tests/examplefiles/example.nix +0 -80
  365. data/vendor/pygments-main/tests/examplefiles/example.ns2 +0 -69
  366. data/vendor/pygments-main/tests/examplefiles/example.pas +0 -2708
  367. data/vendor/pygments-main/tests/examplefiles/example.pp +0 -8
  368. data/vendor/pygments-main/tests/examplefiles/example.prg +0 -161
  369. data/vendor/pygments-main/tests/examplefiles/example.rb +0 -1852
  370. data/vendor/pygments-main/tests/examplefiles/example.red +0 -257
  371. data/vendor/pygments-main/tests/examplefiles/example.reds +0 -150
  372. data/vendor/pygments-main/tests/examplefiles/example.reg +0 -19
  373. data/vendor/pygments-main/tests/examplefiles/example.rexx +0 -50
  374. data/vendor/pygments-main/tests/examplefiles/example.rhtml +0 -561
  375. data/vendor/pygments-main/tests/examplefiles/example.rkt +0 -743
  376. data/vendor/pygments-main/tests/examplefiles/example.rpf +0 -4
  377. data/vendor/pygments-main/tests/examplefiles/example.sh +0 -22
  378. data/vendor/pygments-main/tests/examplefiles/example.sh-session +0 -19
  379. data/vendor/pygments-main/tests/examplefiles/example.shell-session +0 -45
  380. data/vendor/pygments-main/tests/examplefiles/example.slim +0 -31
  381. data/vendor/pygments-main/tests/examplefiles/example.sls +0 -51
  382. data/vendor/pygments-main/tests/examplefiles/example.sml +0 -156
  383. data/vendor/pygments-main/tests/examplefiles/example.snobol +0 -15
  384. data/vendor/pygments-main/tests/examplefiles/example.stan +0 -110
  385. data/vendor/pygments-main/tests/examplefiles/example.tea +0 -34
  386. data/vendor/pygments-main/tests/examplefiles/example.todotxt +0 -9
  387. data/vendor/pygments-main/tests/examplefiles/example.ts +0 -28
  388. data/vendor/pygments-main/tests/examplefiles/example.u +0 -548
  389. data/vendor/pygments-main/tests/examplefiles/example.weechatlog +0 -9
  390. data/vendor/pygments-main/tests/examplefiles/example.xhtml +0 -376
  391. data/vendor/pygments-main/tests/examplefiles/example.xtend +0 -34
  392. data/vendor/pygments-main/tests/examplefiles/example.yaml +0 -302
  393. data/vendor/pygments-main/tests/examplefiles/example2.aspx +0 -29
  394. data/vendor/pygments-main/tests/examplefiles/example2.msc +0 -79
  395. data/vendor/pygments-main/tests/examplefiles/exampleScript.cfc +0 -241
  396. data/vendor/pygments-main/tests/examplefiles/exampleTag.cfc +0 -18
  397. data/vendor/pygments-main/tests/examplefiles/example_elixir.ex +0 -205
  398. data/vendor/pygments-main/tests/examplefiles/example_file.fy +0 -128
  399. data/vendor/pygments-main/tests/examplefiles/firefox.mak +0 -586
  400. data/vendor/pygments-main/tests/examplefiles/flipflop.sv +0 -19
  401. data/vendor/pygments-main/tests/examplefiles/foo.sce +0 -6
  402. data/vendor/pygments-main/tests/examplefiles/format.ml +0 -1213
  403. data/vendor/pygments-main/tests/examplefiles/fucked_up.rb +0 -77
  404. data/vendor/pygments-main/tests/examplefiles/function.mu +0 -1
  405. data/vendor/pygments-main/tests/examplefiles/functional.rst +0 -1472
  406. data/vendor/pygments-main/tests/examplefiles/garcia-wachs.kk +0 -133
  407. data/vendor/pygments-main/tests/examplefiles/genclass.clj +0 -510
  408. data/vendor/pygments-main/tests/examplefiles/genshi_example.xml+genshi +0 -193
  409. data/vendor/pygments-main/tests/examplefiles/genshitext_example.genshitext +0 -33
  410. data/vendor/pygments-main/tests/examplefiles/glsl.frag +0 -7
  411. data/vendor/pygments-main/tests/examplefiles/glsl.vert +0 -13
  412. data/vendor/pygments-main/tests/examplefiles/grammar-test.p6 +0 -22
  413. data/vendor/pygments-main/tests/examplefiles/hash_syntax.rb +0 -5
  414. data/vendor/pygments-main/tests/examplefiles/hello.at +0 -6
  415. data/vendor/pygments-main/tests/examplefiles/hello.golo +0 -5
  416. data/vendor/pygments-main/tests/examplefiles/hello.lsl +0 -12
  417. data/vendor/pygments-main/tests/examplefiles/hello.smali +0 -40
  418. data/vendor/pygments-main/tests/examplefiles/hello.sp +0 -9
  419. data/vendor/pygments-main/tests/examplefiles/html+php_faulty.php +0 -1
  420. data/vendor/pygments-main/tests/examplefiles/http_request_example +0 -15
  421. data/vendor/pygments-main/tests/examplefiles/http_response_example +0 -29
  422. data/vendor/pygments-main/tests/examplefiles/hybris_File.hy +0 -174
  423. data/vendor/pygments-main/tests/examplefiles/idl_sample.pro +0 -73
  424. data/vendor/pygments-main/tests/examplefiles/iex_example +0 -23
  425. data/vendor/pygments-main/tests/examplefiles/inet_pton6.dg +0 -71
  426. data/vendor/pygments-main/tests/examplefiles/intro.ik +0 -24
  427. data/vendor/pygments-main/tests/examplefiles/ints.php +0 -10
  428. data/vendor/pygments-main/tests/examplefiles/intsyn.fun +0 -675
  429. data/vendor/pygments-main/tests/examplefiles/intsyn.sig +0 -286
  430. data/vendor/pygments-main/tests/examplefiles/irb_heredoc +0 -8
  431. data/vendor/pygments-main/tests/examplefiles/irc.lsp +0 -214
  432. data/vendor/pygments-main/tests/examplefiles/java.properties +0 -16
  433. data/vendor/pygments-main/tests/examplefiles/jbst_example1.jbst +0 -28
  434. data/vendor/pygments-main/tests/examplefiles/jbst_example2.jbst +0 -45
  435. data/vendor/pygments-main/tests/examplefiles/jinjadesignerdoc.rst +0 -713
  436. data/vendor/pygments-main/tests/examplefiles/json.lasso +0 -301
  437. data/vendor/pygments-main/tests/examplefiles/json.lasso9 +0 -213
  438. data/vendor/pygments-main/tests/examplefiles/language.hy +0 -165
  439. data/vendor/pygments-main/tests/examplefiles/lighttpd_config.conf +0 -13
  440. data/vendor/pygments-main/tests/examplefiles/limbo.b +0 -456
  441. data/vendor/pygments-main/tests/examplefiles/linecontinuation.py +0 -47
  442. data/vendor/pygments-main/tests/examplefiles/livescript-demo.ls +0 -43
  443. data/vendor/pygments-main/tests/examplefiles/logos_example.xm +0 -28
  444. data/vendor/pygments-main/tests/examplefiles/ltmain.sh +0 -2849
  445. data/vendor/pygments-main/tests/examplefiles/main.cmake +0 -44
  446. data/vendor/pygments-main/tests/examplefiles/markdown.lsp +0 -679
  447. data/vendor/pygments-main/tests/examplefiles/matlab_noreturn +0 -3
  448. data/vendor/pygments-main/tests/examplefiles/matlab_sample +0 -30
  449. data/vendor/pygments-main/tests/examplefiles/matlabsession_sample.txt +0 -37
  450. data/vendor/pygments-main/tests/examplefiles/metagrammar.treetop +0 -455
  451. data/vendor/pygments-main/tests/examplefiles/minehunt.qml +0 -112
  452. data/vendor/pygments-main/tests/examplefiles/minimal.ns2 +0 -4
  453. data/vendor/pygments-main/tests/examplefiles/moin_SyntaxReference.txt +0 -340
  454. data/vendor/pygments-main/tests/examplefiles/multiline_regexes.rb +0 -38
  455. data/vendor/pygments-main/tests/examplefiles/nanomsg.intr +0 -95
  456. data/vendor/pygments-main/tests/examplefiles/nasm_aoutso.asm +0 -96
  457. data/vendor/pygments-main/tests/examplefiles/nasm_objexe.asm +0 -30
  458. data/vendor/pygments-main/tests/examplefiles/nemerle_sample.n +0 -87
  459. data/vendor/pygments-main/tests/examplefiles/nginx_nginx.conf +0 -118
  460. data/vendor/pygments-main/tests/examplefiles/numbers.c +0 -12
  461. data/vendor/pygments-main/tests/examplefiles/objc_example.m +0 -179
  462. data/vendor/pygments-main/tests/examplefiles/openedge_example +0 -34
  463. data/vendor/pygments-main/tests/examplefiles/pawn_example +0 -25
  464. data/vendor/pygments-main/tests/examplefiles/perl_misc +0 -62
  465. data/vendor/pygments-main/tests/examplefiles/perl_perl5db +0 -998
  466. data/vendor/pygments-main/tests/examplefiles/perl_regex-delims +0 -120
  467. data/vendor/pygments-main/tests/examplefiles/perlfunc.1 +0 -856
  468. data/vendor/pygments-main/tests/examplefiles/phpMyAdmin.spec +0 -163
  469. data/vendor/pygments-main/tests/examplefiles/phpcomplete.vim +0 -567
  470. data/vendor/pygments-main/tests/examplefiles/pleac.in.rb +0 -1223
  471. data/vendor/pygments-main/tests/examplefiles/postgresql_test.txt +0 -47
  472. data/vendor/pygments-main/tests/examplefiles/pppoe.applescript +0 -10
  473. data/vendor/pygments-main/tests/examplefiles/psql_session.txt +0 -122
  474. data/vendor/pygments-main/tests/examplefiles/py3_test.txt +0 -2
  475. data/vendor/pygments-main/tests/examplefiles/py3tb_test.py3tb +0 -4
  476. data/vendor/pygments-main/tests/examplefiles/pycon_test.pycon +0 -14
  477. data/vendor/pygments-main/tests/examplefiles/pytb_test2.pytb +0 -2
  478. data/vendor/pygments-main/tests/examplefiles/pytb_test3.pytb +0 -4
  479. data/vendor/pygments-main/tests/examplefiles/python25-bsd.mak +0 -234
  480. data/vendor/pygments-main/tests/examplefiles/qbasic_example +0 -2
  481. data/vendor/pygments-main/tests/examplefiles/qsort.prolog +0 -13
  482. data/vendor/pygments-main/tests/examplefiles/r-console-transcript.Rout +0 -38
  483. data/vendor/pygments-main/tests/examplefiles/r6rs-comments.scm +0 -23
  484. data/vendor/pygments-main/tests/examplefiles/ragel-cpp_rlscan +0 -280
  485. data/vendor/pygments-main/tests/examplefiles/ragel-cpp_snippet +0 -2
  486. data/vendor/pygments-main/tests/examplefiles/regex.js +0 -22
  487. data/vendor/pygments-main/tests/examplefiles/reversi.lsp +0 -427
  488. data/vendor/pygments-main/tests/examplefiles/robotframework_test.txt +0 -39
  489. data/vendor/pygments-main/tests/examplefiles/rql-queries.rql +0 -34
  490. data/vendor/pygments-main/tests/examplefiles/ruby_func_def.rb +0 -11
  491. data/vendor/pygments-main/tests/examplefiles/rust_example.rs +0 -233
  492. data/vendor/pygments-main/tests/examplefiles/scilab.sci +0 -30
  493. data/vendor/pygments-main/tests/examplefiles/scope.cirru +0 -43
  494. data/vendor/pygments-main/tests/examplefiles/session.dylan-console +0 -9
  495. data/vendor/pygments-main/tests/examplefiles/sibling.prolog +0 -19
  496. data/vendor/pygments-main/tests/examplefiles/simple.md +0 -747
  497. data/vendor/pygments-main/tests/examplefiles/smarty_example.html +0 -209
  498. data/vendor/pygments-main/tests/examplefiles/source.lgt +0 -343
  499. data/vendor/pygments-main/tests/examplefiles/sources.list +0 -62
  500. data/vendor/pygments-main/tests/examplefiles/sparql.rq +0 -23
  501. data/vendor/pygments-main/tests/examplefiles/sphere.pov +0 -18
  502. data/vendor/pygments-main/tests/examplefiles/sqlite3.sqlite3-console +0 -27
  503. data/vendor/pygments-main/tests/examplefiles/squid.conf +0 -30
  504. data/vendor/pygments-main/tests/examplefiles/string.jl +0 -1031
  505. data/vendor/pygments-main/tests/examplefiles/string_delimiters.d +0 -21
  506. data/vendor/pygments-main/tests/examplefiles/stripheredoc.sh +0 -3
  507. data/vendor/pygments-main/tests/examplefiles/swig_java.swg +0 -1329
  508. data/vendor/pygments-main/tests/examplefiles/swig_std_vector.i +0 -225
  509. data/vendor/pygments-main/tests/examplefiles/test.R +0 -185
  510. data/vendor/pygments-main/tests/examplefiles/test.adb +0 -211
  511. data/vendor/pygments-main/tests/examplefiles/test.agda +0 -102
  512. data/vendor/pygments-main/tests/examplefiles/test.apl +0 -26
  513. data/vendor/pygments-main/tests/examplefiles/test.asy +0 -131
  514. data/vendor/pygments-main/tests/examplefiles/test.awk +0 -121
  515. data/vendor/pygments-main/tests/examplefiles/test.bb +0 -95
  516. data/vendor/pygments-main/tests/examplefiles/test.bmx +0 -145
  517. data/vendor/pygments-main/tests/examplefiles/test.boo +0 -39
  518. data/vendor/pygments-main/tests/examplefiles/test.bro +0 -250
  519. data/vendor/pygments-main/tests/examplefiles/test.cs +0 -374
  520. data/vendor/pygments-main/tests/examplefiles/test.css +0 -54
  521. data/vendor/pygments-main/tests/examplefiles/test.cu +0 -36
  522. data/vendor/pygments-main/tests/examplefiles/test.cyp +0 -123
  523. data/vendor/pygments-main/tests/examplefiles/test.d +0 -135
  524. data/vendor/pygments-main/tests/examplefiles/test.dart +0 -23
  525. data/vendor/pygments-main/tests/examplefiles/test.dtd +0 -89
  526. data/vendor/pygments-main/tests/examplefiles/test.ebnf +0 -31
  527. data/vendor/pygments-main/tests/examplefiles/test.ec +0 -605
  528. data/vendor/pygments-main/tests/examplefiles/test.ecl +0 -58
  529. data/vendor/pygments-main/tests/examplefiles/test.eh +0 -315
  530. data/vendor/pygments-main/tests/examplefiles/test.erl +0 -169
  531. data/vendor/pygments-main/tests/examplefiles/test.evoque +0 -33
  532. data/vendor/pygments-main/tests/examplefiles/test.fan +0 -818
  533. data/vendor/pygments-main/tests/examplefiles/test.flx +0 -57
  534. data/vendor/pygments-main/tests/examplefiles/test.gdc +0 -13
  535. data/vendor/pygments-main/tests/examplefiles/test.groovy +0 -97
  536. data/vendor/pygments-main/tests/examplefiles/test.html +0 -339
  537. data/vendor/pygments-main/tests/examplefiles/test.idr +0 -93
  538. data/vendor/pygments-main/tests/examplefiles/test.ini +0 -10
  539. data/vendor/pygments-main/tests/examplefiles/test.java +0 -653
  540. data/vendor/pygments-main/tests/examplefiles/test.jsp +0 -24
  541. data/vendor/pygments-main/tests/examplefiles/test.maql +0 -45
  542. data/vendor/pygments-main/tests/examplefiles/test.mask +0 -41
  543. data/vendor/pygments-main/tests/examplefiles/test.mod +0 -374
  544. data/vendor/pygments-main/tests/examplefiles/test.moo +0 -51
  545. data/vendor/pygments-main/tests/examplefiles/test.myt +0 -166
  546. data/vendor/pygments-main/tests/examplefiles/test.nim +0 -93
  547. data/vendor/pygments-main/tests/examplefiles/test.opa +0 -10
  548. data/vendor/pygments-main/tests/examplefiles/test.p6 +0 -252
  549. data/vendor/pygments-main/tests/examplefiles/test.pan +0 -54
  550. data/vendor/pygments-main/tests/examplefiles/test.pas +0 -743
  551. data/vendor/pygments-main/tests/examplefiles/test.php +0 -507
  552. data/vendor/pygments-main/tests/examplefiles/test.pig +0 -148
  553. data/vendor/pygments-main/tests/examplefiles/test.plot +0 -333
  554. data/vendor/pygments-main/tests/examplefiles/test.ps1 +0 -108
  555. data/vendor/pygments-main/tests/examplefiles/test.pwn +0 -253
  556. data/vendor/pygments-main/tests/examplefiles/test.pypylog +0 -1839
  557. data/vendor/pygments-main/tests/examplefiles/test.r3 +0 -114
  558. data/vendor/pygments-main/tests/examplefiles/test.rb +0 -177
  559. data/vendor/pygments-main/tests/examplefiles/test.rhtml +0 -43
  560. data/vendor/pygments-main/tests/examplefiles/test.rsl +0 -111
  561. data/vendor/pygments-main/tests/examplefiles/test.scaml +0 -8
  562. data/vendor/pygments-main/tests/examplefiles/test.ssp +0 -12
  563. data/vendor/pygments-main/tests/examplefiles/test.swift +0 -65
  564. data/vendor/pygments-main/tests/examplefiles/test.tcsh +0 -830
  565. data/vendor/pygments-main/tests/examplefiles/test.vb +0 -407
  566. data/vendor/pygments-main/tests/examplefiles/test.vhdl +0 -161
  567. data/vendor/pygments-main/tests/examplefiles/test.xqy +0 -138
  568. data/vendor/pygments-main/tests/examplefiles/test.xsl +0 -23
  569. data/vendor/pygments-main/tests/examplefiles/test.zep +0 -33
  570. data/vendor/pygments-main/tests/examplefiles/test2.pypylog +0 -120
  571. data/vendor/pygments-main/tests/examplefiles/truncated.pytb +0 -15
  572. data/vendor/pygments-main/tests/examplefiles/type.lisp +0 -1218
  573. data/vendor/pygments-main/tests/examplefiles/underscore.coffee +0 -603
  574. data/vendor/pygments-main/tests/examplefiles/unicode.applescript +0 -5
  575. data/vendor/pygments-main/tests/examplefiles/unicode.go +0 -10
  576. data/vendor/pygments-main/tests/examplefiles/unicodedoc.py +0 -11
  577. data/vendor/pygments-main/tests/examplefiles/unix-io.lid +0 -37
  578. data/vendor/pygments-main/tests/examplefiles/vbnet_test.bas +0 -29
  579. data/vendor/pygments-main/tests/examplefiles/vctreestatus_hg +0 -4
  580. data/vendor/pygments-main/tests/examplefiles/vimrc +0 -21
  581. data/vendor/pygments-main/tests/examplefiles/webkit-transition.css +0 -3
  582. data/vendor/pygments-main/tests/examplefiles/while.pov +0 -13
  583. data/vendor/pygments-main/tests/examplefiles/wiki.factor +0 -384
  584. data/vendor/pygments-main/tests/examplefiles/xml_example +0 -1897
  585. data/vendor/pygments-main/tests/examplefiles/zmlrpc.f90 +0 -798
  586. data/vendor/pygments-main/tests/run.py +0 -44
  587. data/vendor/pygments-main/tests/string_asserts.py +0 -22
  588. data/vendor/pygments-main/tests/support.py +0 -15
  589. data/vendor/pygments-main/tests/support/tags +0 -36
  590. data/vendor/pygments-main/tests/test_basic_api.py +0 -309
  591. data/vendor/pygments-main/tests/test_cfm.py +0 -46
  592. data/vendor/pygments-main/tests/test_clexer.py +0 -236
  593. data/vendor/pygments-main/tests/test_cmdline.py +0 -106
  594. data/vendor/pygments-main/tests/test_examplefiles.py +0 -110
  595. data/vendor/pygments-main/tests/test_html_formatter.py +0 -180
  596. data/vendor/pygments-main/tests/test_latex_formatter.py +0 -57
  597. data/vendor/pygments-main/tests/test_lexers_other.py +0 -68
  598. data/vendor/pygments-main/tests/test_objectiveclexer.py +0 -81
  599. data/vendor/pygments-main/tests/test_perllexer.py +0 -137
  600. data/vendor/pygments-main/tests/test_qbasiclexer.py +0 -43
  601. data/vendor/pygments-main/tests/test_regexlexer.py +0 -54
  602. data/vendor/pygments-main/tests/test_rtf_formatter.py +0 -109
  603. data/vendor/pygments-main/tests/test_string_asserts.py +0 -39
  604. data/vendor/pygments-main/tests/test_token.py +0 -46
  605. data/vendor/pygments-main/tests/test_using_api.py +0 -40
  606. data/vendor/pygments-main/tests/test_util.py +0 -135
@@ -5,7 +5,7 @@
5
5
 
6
6
  Formatter for LaTeX fancyvrb output.
7
7
 
8
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -235,6 +235,13 @@ class LatexFormatter(Formatter):
235
235
  no effect in comments if `texcomments` or `mathescape` is
236
236
  set. (default: ``''``).
237
237
 
238
+ .. versionadded:: 2.0
239
+
240
+ `envname`
241
+ Allows you to pick an alternative environment name replacing Verbatim.
242
+ The alternate environment still has to support Verbatim's option syntax.
243
+ (default: ``'Verbatim'``).
244
+
238
245
  .. versionadded:: 2.0
239
246
  """
240
247
  name = 'LaTeX'
@@ -254,16 +261,15 @@ class LatexFormatter(Formatter):
254
261
  self.texcomments = get_bool_opt(options, 'texcomments', False)
255
262
  self.mathescape = get_bool_opt(options, 'mathescape', False)
256
263
  self.escapeinside = options.get('escapeinside', '')
257
-
258
264
  if len(self.escapeinside) == 2:
259
265
  self.left = self.escapeinside[0]
260
266
  self.right = self.escapeinside[1]
261
267
  else:
262
268
  self.escapeinside = ''
269
+ self.envname = options.get('envname', u'Verbatim')
263
270
 
264
271
  self._create_stylesheet()
265
272
 
266
-
267
273
  def _create_stylesheet(self):
268
274
  t2n = self.ttype2name = {Token: ''}
269
275
  c2d = self.cmd2def = {}
@@ -271,7 +277,7 @@ class LatexFormatter(Formatter):
271
277
 
272
278
  def rgbcolor(col):
273
279
  if col:
274
- return ','.join(['%.2f' %(int(col[i] + col[i + 1], 16) / 255.0)
280
+ return ','.join(['%.2f' % (int(col[i] + col[i + 1], 16) / 255.0)
275
281
  for i in (0, 2, 4)])
276
282
  else:
277
283
  return '1,1,1'
@@ -331,7 +337,7 @@ class LatexFormatter(Formatter):
331
337
  realoutfile = outfile
332
338
  outfile = StringIO()
333
339
 
334
- outfile.write(u'\\begin{Verbatim}[commandchars=\\\\\\{\\}')
340
+ outfile.write(u'\\begin{' + self.envname + u'}[commandchars=\\\\\\{\\}')
335
341
  if self.linenos:
336
342
  start, step = self.linenostart, self.linenostep
337
343
  outfile.write(u',numbers=left' +
@@ -354,7 +360,7 @@ class LatexFormatter(Formatter):
354
360
  start += value[i]
355
361
 
356
362
  value = value[len(start):]
357
- start = escape_tex(start, self.commandprefix)
363
+ start = escape_tex(start, cp)
358
364
 
359
365
  # ... but do not escape inside comment.
360
366
  value = start + value
@@ -364,26 +370,26 @@ class LatexFormatter(Formatter):
364
370
  in_math = False
365
371
  for i, part in enumerate(parts):
366
372
  if not in_math:
367
- parts[i] = escape_tex(part, self.commandprefix)
373
+ parts[i] = escape_tex(part, cp)
368
374
  in_math = not in_math
369
375
  value = '$'.join(parts)
370
376
  elif self.escapeinside:
371
377
  text = value
372
378
  value = ''
373
- while len(text) > 0:
374
- a,sep1,text = text.partition(self.left)
375
- if len(sep1) > 0:
376
- b,sep2,text = text.partition(self.right)
377
- if len(sep2) > 0:
378
- value += escape_tex(a, self.commandprefix) + b
379
+ while text:
380
+ a, sep1, text = text.partition(self.left)
381
+ if sep1:
382
+ b, sep2, text = text.partition(self.right)
383
+ if sep2:
384
+ value += escape_tex(a, cp) + b
379
385
  else:
380
- value += escape_tex(a + sep1 + b, self.commandprefix)
386
+ value += escape_tex(a + sep1 + b, cp)
381
387
  else:
382
- value = value + escape_tex(a, self.commandprefix)
388
+ value += escape_tex(a, cp)
383
389
  else:
384
- value = escape_tex(value, self.commandprefix)
390
+ value = escape_tex(value, cp)
385
391
  elif ttype not in Token.Escape:
386
- value = escape_tex(value, self.commandprefix)
392
+ value = escape_tex(value, cp)
387
393
  styles = []
388
394
  while ttype is not Token:
389
395
  try:
@@ -404,21 +410,27 @@ class LatexFormatter(Formatter):
404
410
  else:
405
411
  outfile.write(value)
406
412
 
407
- outfile.write(u'\\end{Verbatim}\n')
413
+ outfile.write(u'\\end{' + self.envname + u'}\n')
408
414
 
409
415
  if self.full:
416
+ encoding = self.encoding or 'utf8'
417
+ # map known existings encodings from LaTeX distribution
418
+ encoding = {
419
+ 'utf_8': 'utf8',
420
+ 'latin_1': 'latin1',
421
+ 'iso_8859_1': 'latin1',
422
+ }.get(encoding.replace('-', '_'), encoding)
410
423
  realoutfile.write(DOC_TEMPLATE %
411
424
  dict(docclass = self.docclass,
412
425
  preamble = self.preamble,
413
426
  title = self.title,
414
- encoding = self.encoding or 'latin1',
427
+ encoding = encoding,
415
428
  styledefs = self.get_style_defs(),
416
429
  code = outfile.getvalue()))
417
430
 
418
431
 
419
432
  class LatexEmbeddedLexer(Lexer):
420
- r"""
421
-
433
+ """
422
434
  This lexer takes one lexer as argument, the lexer for the language
423
435
  being formatted, and the left and right delimiters for escaped text.
424
436
 
@@ -436,6 +448,7 @@ class LatexEmbeddedLexer(Lexer):
436
448
 
437
449
  def get_tokens_unprocessed(self, text):
438
450
  buf = ''
451
+ idx = 0
439
452
  for i, t, v in self.lang.get_tokens_unprocessed(text):
440
453
  if t in Token.Comment or t in Token.String:
441
454
  if buf:
@@ -467,4 +480,3 @@ class LatexEmbeddedLexer(Lexer):
467
480
  yield index, Token.Error, sep1
468
481
  index += len(sep1)
469
482
  text = b
470
-
@@ -5,7 +5,7 @@
5
5
 
6
6
  Other formatters: NullFormatter, RawTokenFormatter.
7
7
 
8
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -62,9 +62,9 @@ class RawTokenFormatter(Formatter):
62
62
 
63
63
  def __init__(self, **options):
64
64
  Formatter.__init__(self, **options)
65
- if self.encoding:
66
- raise OptionError('the raw formatter does not support the '
67
- 'encoding option')
65
+ # We ignore self.encoding if it is set, since it gets set for lexer
66
+ # and formatter if given with -Oencoding on the command line.
67
+ # The RawTokenFormatter outputs only ASCII. Override here.
68
68
  self.encoding = 'ascii' # let pygments.format() do the right thing
69
69
  self.compress = get_choice_opt(options, 'compress',
70
70
  ['', 'none', 'gz', 'bz2'], '')
@@ -137,10 +137,8 @@ class TestcaseFormatter(Formatter):
137
137
 
138
138
  def __init__(self, **options):
139
139
  Formatter.__init__(self, **options)
140
- #if self.encoding != 'utf-8':
141
- # print >>sys.stderr, "NOTICE: Forcing encoding to utf-8, as all Pygments source is"
142
140
  if self.encoding is not None and self.encoding != 'utf-8':
143
- raise ValueError("Only None and utf-u are allowed encodings.")
141
+ raise ValueError("Only None and utf-8 are allowed encodings.")
144
142
 
145
143
  def format(self, tokensource, outfile):
146
144
  indentation = ' ' * 12
@@ -5,7 +5,7 @@
5
5
 
6
6
  A formatter that generates RTF files.
7
7
 
8
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -20,7 +20,7 @@ class RtfFormatter(Formatter):
20
20
  """
21
21
  Format tokens as RTF markup. This formatter automatically outputs full RTF
22
22
  documents with color information and other useful stuff. Perfect for Copy and
23
- Paste into Microsoft® Word® documents.
23
+ Paste into Microsoft(R) Word(R) documents.
24
24
 
25
25
  Please note that ``encoding`` and ``outencoding`` options are ignored.
26
26
  The RTF format is ASCII natively, but handles unicode characters correctly
@@ -48,10 +48,8 @@ class RtfFormatter(Formatter):
48
48
  aliases = ['rtf']
49
49
  filenames = ['*.rtf']
50
50
 
51
- unicodeoutput = False
52
-
53
51
  def __init__(self, **options):
54
- """
52
+ r"""
55
53
  Additional options accepted:
56
54
 
57
55
  ``fontface``
@@ -67,14 +65,14 @@ class RtfFormatter(Formatter):
67
65
  self.fontsize = get_int_opt(options, 'fontsize', 0)
68
66
 
69
67
  def _escape(self, text):
70
- return text.replace('\\', '\\\\') \
71
- .replace('{', '\\{') \
72
- .replace('}', '\\}')
68
+ return text.replace(u'\\', u'\\\\') \
69
+ .replace(u'{', u'\\{') \
70
+ .replace(u'}', u'\\}')
73
71
 
74
72
  def _escape_text(self, text):
75
73
  # empty strings, should give a small performance improvment
76
74
  if not text:
77
- return ''
75
+ return u''
78
76
 
79
77
  # escape text
80
78
  text = self._escape(text)
@@ -87,22 +85,21 @@ class RtfFormatter(Formatter):
87
85
  buf.append(str(c))
88
86
  elif (2**7) <= cn < (2**16):
89
87
  # single unicode escape sequence
90
- buf.append(r'{\u%d}' % cn)
88
+ buf.append(u'{\\u%d}' % cn)
91
89
  elif (2**16) <= cn:
92
90
  # RTF limits unicode to 16 bits.
93
91
  # Force surrogate pairs
94
- h,l = _surrogatepair(cn)
95
- buf.append(r'{\u%d}{\u%d}' % (h,l))
92
+ buf.append(u'{\\u%d}{\\u%d}' % _surrogatepair(cn))
96
93
 
97
- return ''.join(buf).replace('\n', '\\par\n')
94
+ return u''.join(buf).replace(u'\n', u'\\par\n')
98
95
 
99
96
  def format_unencoded(self, tokensource, outfile):
100
97
  # rtf 1.8 header
101
- outfile.write(r'{\rtf1\ansi\uc0\deff0'
102
- r'{\fonttbl{\f0\fmodern\fprq1\fcharset0%s;}}'
103
- r'{\colortbl;' % (self.fontface and
104
- ' ' + self._escape(self.fontface) or
105
- ''))
98
+ outfile.write(u'{\\rtf1\\ansi\\uc0\\deff0'
99
+ u'{\\fonttbl{\\f0\\fmodern\\fprq1\\fcharset0%s;}}'
100
+ u'{\\colortbl;' % (self.fontface and
101
+ u' ' + self._escape(self.fontface) or
102
+ u''))
106
103
 
107
104
  # convert colors and save them in a mapping to access them later.
108
105
  color_mapping = {}
@@ -111,15 +108,15 @@ class RtfFormatter(Formatter):
111
108
  for color in style['color'], style['bgcolor'], style['border']:
112
109
  if color and color not in color_mapping:
113
110
  color_mapping[color] = offset
114
- outfile.write(r'\red%d\green%d\blue%d;' % (
111
+ outfile.write(u'\\red%d\\green%d\\blue%d;' % (
115
112
  int(color[0:2], 16),
116
113
  int(color[2:4], 16),
117
114
  int(color[4:6], 16)
118
115
  ))
119
116
  offset += 1
120
- outfile.write(r'}\f0 ')
117
+ outfile.write(u'}\\f0 ')
121
118
  if self.fontsize:
122
- outfile.write(r'\fs%d' % (self.fontsize))
119
+ outfile.write(u'\\fs%d' % (self.fontsize))
123
120
 
124
121
  # highlight stream
125
122
  for ttype, value in tokensource:
@@ -128,23 +125,23 @@ class RtfFormatter(Formatter):
128
125
  style = self.style.style_for_token(ttype)
129
126
  buf = []
130
127
  if style['bgcolor']:
131
- buf.append(r'\cb%d' % color_mapping[style['bgcolor']])
128
+ buf.append(u'\\cb%d' % color_mapping[style['bgcolor']])
132
129
  if style['color']:
133
- buf.append(r'\cf%d' % color_mapping[style['color']])
130
+ buf.append(u'\\cf%d' % color_mapping[style['color']])
134
131
  if style['bold']:
135
- buf.append(r'\b')
132
+ buf.append(u'\\b')
136
133
  if style['italic']:
137
- buf.append(r'\i')
134
+ buf.append(u'\\i')
138
135
  if style['underline']:
139
- buf.append(r'\ul')
136
+ buf.append(u'\\ul')
140
137
  if style['border']:
141
- buf.append(r'\chbrdr\chcfpat%d' %
138
+ buf.append(u'\\chbrdr\\chcfpat%d' %
142
139
  color_mapping[style['border']])
143
- start = ''.join(buf)
140
+ start = u''.join(buf)
144
141
  if start:
145
- outfile.write('{%s ' % start)
142
+ outfile.write(u'{%s ' % start)
146
143
  outfile.write(self._escape_text(value))
147
144
  if start:
148
- outfile.write('}')
145
+ outfile.write(u'}')
149
146
 
150
- outfile.write('}')
147
+ outfile.write(u'}')
@@ -5,7 +5,7 @@
5
5
 
6
6
  Formatter for SVG output.
7
7
 
8
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -78,7 +78,6 @@ class SvgFormatter(Formatter):
78
78
  filenames = ['*.svg']
79
79
 
80
80
  def __init__(self, **options):
81
- # XXX outencoding
82
81
  Formatter.__init__(self, **options)
83
82
  self.nowrap = get_bool_opt(options, 'nowrap', False)
84
83
  self.fontfamily = options.get('fontfamily', 'monospace')
@@ -5,7 +5,7 @@
5
5
 
6
6
  Formatter for terminal output with ANSI sequences.
7
7
 
8
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -13,7 +13,7 @@ import sys
13
13
 
14
14
  from pygments.formatter import Formatter
15
15
  from pygments.token import Keyword, Name, Comment, String, Error, \
16
- Number, Operator, Generic, Token, Whitespace
16
+ Number, Operator, Generic, Token, Whitespace
17
17
  from pygments.console import ansiformat
18
18
  from pygments.util import get_choice_opt
19
19
 
@@ -49,6 +49,7 @@ TERMINAL_COLORS = {
49
49
  Generic.Inserted: ('darkgreen', 'green'),
50
50
  Generic.Heading: ('**', '**'),
51
51
  Generic.Subheading: ('*purple*', '*fuchsia*'),
52
+ Generic.Prompt: ('**', '**'),
52
53
  Generic.Error: ('red', 'red'),
53
54
 
54
55
  Error: ('_red_', '_red_'),
@@ -101,52 +102,35 @@ class TerminalFormatter(Formatter):
101
102
 
102
103
  def _write_lineno(self, outfile):
103
104
  self._lineno += 1
104
- outfile.write("\n%04d: " % self._lineno)
105
-
106
- def _format_unencoded_with_lineno(self, tokensource, outfile):
107
- self._write_lineno(outfile)
108
-
109
- for ttype, value in tokensource:
110
- if value.endswith("\n"):
111
- self._write_lineno(outfile)
112
- value = value[:-1]
113
- color = self.colorscheme.get(ttype)
114
- while color is None:
115
- ttype = ttype[:-1]
116
- color = self.colorscheme.get(ttype)
117
- if color:
118
- color = color[self.darkbg]
119
- spl = value.split('\n')
120
- for line in spl[:-1]:
121
- self._write_lineno(outfile)
122
- if line:
123
- outfile.write(ansiformat(color, line[:-1]))
124
- if spl[-1]:
125
- outfile.write(ansiformat(color, spl[-1]))
126
- else:
127
- outfile.write(value)
128
-
129
- outfile.write("\n")
105
+ outfile.write("%s%04d: " % (self._lineno != 1 and '\n' or '', self._lineno))
106
+
107
+ def _get_color(self, ttype):
108
+ # self.colorscheme is a dict containing usually generic types, so we
109
+ # have to walk the tree of dots. The base Token type must be a key,
110
+ # even if it's empty string, as in the default above.
111
+ colors = self.colorscheme.get(ttype)
112
+ while colors is None:
113
+ ttype = ttype.parent
114
+ colors = self.colorscheme.get(ttype)
115
+ return colors[self.darkbg]
130
116
 
131
117
  def format_unencoded(self, tokensource, outfile):
132
118
  if self.linenos:
133
- self._format_unencoded_with_lineno(tokensource, outfile)
134
- return
119
+ self._write_lineno(outfile)
135
120
 
136
121
  for ttype, value in tokensource:
137
- color = self.colorscheme.get(ttype)
138
- while color is None:
139
- ttype = ttype[:-1]
140
- color = self.colorscheme.get(ttype)
141
- if color:
142
- color = color[self.darkbg]
143
- spl = value.split('\n')
144
- for line in spl[:-1]:
145
- if line:
146
- outfile.write(ansiformat(color, line))
147
- outfile.write('\n')
148
- if spl[-1]:
149
- outfile.write(ansiformat(color, spl[-1]))
150
- else:
151
- outfile.write(value)
122
+ color = self._get_color(ttype)
123
+
124
+ for line in value.splitlines(True):
125
+ if color:
126
+ outfile.write(ansiformat(color, line.rstrip('\n')))
127
+ else:
128
+ outfile.write(line.rstrip('\n'))
129
+ if line.endswith('\n'):
130
+ if self.linenos:
131
+ self._write_lineno(outfile)
132
+ else:
133
+ outfile.write('\n')
152
134
 
135
+ if self.linenos:
136
+ outfile.write("\n")
@@ -11,7 +11,7 @@
11
11
 
12
12
  Formatter version 1.
13
13
 
14
- :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
14
+ :copyright: Copyright 2006-2015 by the Pygments team, see AUTHORS.
15
15
  :license: BSD, see LICENSE for details.
16
16
  """
17
17
 
@@ -27,9 +27,11 @@
27
27
  import sys
28
28
 
29
29
  from pygments.formatter import Formatter
30
+ from pygments.console import codes
31
+ from pygments.style import ansicolors
30
32
 
31
33
 
32
- __all__ = ['Terminal256Formatter']
34
+ __all__ = ['Terminal256Formatter', 'TerminalTrueColorFormatter']
33
35
 
34
36
 
35
37
  class EscapeSequence:
@@ -47,9 +49,33 @@ class EscapeSequence:
47
49
  def color_string(self):
48
50
  attrs = []
49
51
  if self.fg is not None:
50
- attrs.extend(("38", "5", "%i" % self.fg))
52
+ if self.fg in ansicolors:
53
+ esc = codes[self.fg[5:]]
54
+ if ';01m' in esc:
55
+ self.bold = True
56
+ # extract fg color code.
57
+ attrs.append(esc[2:4])
58
+ else:
59
+ attrs.extend(("38", "5", "%i" % self.fg))
51
60
  if self.bg is not None:
52
- attrs.extend(("48", "5", "%i" % self.bg))
61
+ if self.bg in ansicolors:
62
+ esc = codes[self.bg[5:]]
63
+ # extract fg color code, add 10 for bg.
64
+ attrs.append(str(int(esc[2:4])+10))
65
+ else:
66
+ attrs.extend(("48", "5", "%i" % self.bg))
67
+ if self.bold:
68
+ attrs.append("01")
69
+ if self.underline:
70
+ attrs.append("04")
71
+ return self.escape(attrs)
72
+
73
+ def true_color_string(self):
74
+ attrs = []
75
+ if self.fg:
76
+ attrs.extend(("38", "2", str(self.fg[0]), str(self.fg[1]), str(self.fg[2])))
77
+ if self.bg:
78
+ attrs.extend(("48", "2", str(self.bg[0]), str(self.bg[1]), str(self.bg[2])))
53
79
  if self.bold:
54
80
  attrs.append("01")
55
81
  if self.underline:
@@ -66,10 +92,11 @@ class EscapeSequence:
66
92
  attrs.append("00")
67
93
  return self.escape(attrs)
68
94
 
95
+
69
96
  class Terminal256Formatter(Formatter):
70
- r"""
97
+ """
71
98
  Format tokens with ANSI color sequences, for output in a 256-color
72
- terminal or console. Like in `TerminalFormatter` color sequences
99
+ terminal or console. Like in `TerminalFormatter` color sequences
73
100
  are terminated at newlines, so that paging the output works correctly.
74
101
 
75
102
  The formatter takes colors from a style defined by the `style` option
@@ -78,6 +105,11 @@ class Terminal256Formatter(Formatter):
78
105
 
79
106
  .. versionadded:: 0.9
80
107
 
108
+ .. versionchanged:: 2.2
109
+ If the used style defines foreground colors in the form ``#ansi*``, then
110
+ `Terminal256Formatter` will map these to non extended foreground color.
111
+ See :ref:`AnsiTerminalStyle` for more information.
112
+
81
113
  Options accepted:
82
114
 
83
115
  `style`
@@ -98,28 +130,28 @@ class Terminal256Formatter(Formatter):
98
130
  self.usebold = 'nobold' not in options
99
131
  self.useunderline = 'nounderline' not in options
100
132
 
101
- self._build_color_table() # build an RGB-to-256 color conversion table
102
- self._setup_styles() # convert selected style's colors to term. colors
133
+ self._build_color_table() # build an RGB-to-256 color conversion table
134
+ self._setup_styles() # convert selected style's colors to term. colors
103
135
 
104
136
  def _build_color_table(self):
105
137
  # colors 0..15: 16 basic colors
106
138
 
107
- self.xterm_colors.append((0x00, 0x00, 0x00)) # 0
108
- self.xterm_colors.append((0xcd, 0x00, 0x00)) # 1
109
- self.xterm_colors.append((0x00, 0xcd, 0x00)) # 2
110
- self.xterm_colors.append((0xcd, 0xcd, 0x00)) # 3
111
- self.xterm_colors.append((0x00, 0x00, 0xee)) # 4
112
- self.xterm_colors.append((0xcd, 0x00, 0xcd)) # 5
113
- self.xterm_colors.append((0x00, 0xcd, 0xcd)) # 6
114
- self.xterm_colors.append((0xe5, 0xe5, 0xe5)) # 7
115
- self.xterm_colors.append((0x7f, 0x7f, 0x7f)) # 8
116
- self.xterm_colors.append((0xff, 0x00, 0x00)) # 9
117
- self.xterm_colors.append((0x00, 0xff, 0x00)) # 10
118
- self.xterm_colors.append((0xff, 0xff, 0x00)) # 11
119
- self.xterm_colors.append((0x5c, 0x5c, 0xff)) # 12
120
- self.xterm_colors.append((0xff, 0x00, 0xff)) # 13
121
- self.xterm_colors.append((0x00, 0xff, 0xff)) # 14
122
- self.xterm_colors.append((0xff, 0xff, 0xff)) # 15
139
+ self.xterm_colors.append((0x00, 0x00, 0x00)) # 0
140
+ self.xterm_colors.append((0xcd, 0x00, 0x00)) # 1
141
+ self.xterm_colors.append((0x00, 0xcd, 0x00)) # 2
142
+ self.xterm_colors.append((0xcd, 0xcd, 0x00)) # 3
143
+ self.xterm_colors.append((0x00, 0x00, 0xee)) # 4
144
+ self.xterm_colors.append((0xcd, 0x00, 0xcd)) # 5
145
+ self.xterm_colors.append((0x00, 0xcd, 0xcd)) # 6
146
+ self.xterm_colors.append((0xe5, 0xe5, 0xe5)) # 7
147
+ self.xterm_colors.append((0x7f, 0x7f, 0x7f)) # 8
148
+ self.xterm_colors.append((0xff, 0x00, 0x00)) # 9
149
+ self.xterm_colors.append((0x00, 0xff, 0x00)) # 10
150
+ self.xterm_colors.append((0xff, 0xff, 0x00)) # 11
151
+ self.xterm_colors.append((0x5c, 0x5c, 0xff)) # 12
152
+ self.xterm_colors.append((0xff, 0x00, 0xff)) # 13
153
+ self.xterm_colors.append((0x00, 0xff, 0xff)) # 14
154
+ self.xterm_colors.append((0xff, 0xff, 0xff)) # 15
123
155
 
124
156
  # colors 16..232: the 6x6x6 color cube
125
157
 
@@ -138,7 +170,7 @@ class Terminal256Formatter(Formatter):
138
170
  self.xterm_colors.append((v, v, v))
139
171
 
140
172
  def _closest_color(self, r, g, b):
141
- distance = 257*257*3 # "infinity" (>distance from #000000 to #ffffff)
173
+ distance = 257*257*3 # "infinity" (>distance from #000000 to #ffffff)
142
174
  match = 0
143
175
 
144
176
  for i in range(0, 254):
@@ -156,6 +188,10 @@ class Terminal256Formatter(Formatter):
156
188
 
157
189
  def _color_index(self, color):
158
190
  index = self.best_match.get(color, None)
191
+ if color in ansicolors:
192
+ # strip the `#ansi` part and look up code
193
+ index = color
194
+ self.best_match[color] = index
159
195
  if index is None:
160
196
  try:
161
197
  rgb = int(str(color), 16)
@@ -172,9 +208,14 @@ class Terminal256Formatter(Formatter):
172
208
  def _setup_styles(self):
173
209
  for ttype, ndef in self.style:
174
210
  escape = EscapeSequence()
175
- if ndef['color']:
211
+ # get foreground from ansicolor if set
212
+ if ndef['ansicolor']:
213
+ escape.fg = self._color_index(ndef['ansicolor'])
214
+ elif ndef['color']:
176
215
  escape.fg = self._color_index(ndef['color'])
177
- if ndef['bgcolor']:
216
+ if ndef['bgansicolor']:
217
+ escape.bg = self._color_index(ndef['bgansicolor'])
218
+ elif ndef['bgcolor']:
178
219
  escape.bg = self._color_index(ndef['bgcolor'])
179
220
  if self.usebold and ndef['bold']:
180
221
  escape.bold = True
@@ -197,7 +238,7 @@ class Terminal256Formatter(Formatter):
197
238
  not_found = True
198
239
  while ttype and not_found:
199
240
  try:
200
- #outfile.write( "<" + str(ttype) + ">" )
241
+ # outfile.write( "<" + str(ttype) + ">" )
201
242
  on, off = self.style_string[str(ttype)]
202
243
 
203
244
  # Like TerminalFormatter, add "reset colors" escape sequence
@@ -211,12 +252,58 @@ class Terminal256Formatter(Formatter):
211
252
  outfile.write(on + spl[-1] + off)
212
253
 
213
254
  not_found = False
214
- #outfile.write( '#' + str(ttype) + '#' )
255
+ # outfile.write( '#' + str(ttype) + '#' )
215
256
 
216
257
  except KeyError:
217
- #ottype = ttype
258
+ # ottype = ttype
218
259
  ttype = ttype[:-1]
219
- #outfile.write( '!' + str(ottype) + '->' + str(ttype) + '!' )
260
+ # outfile.write( '!' + str(ottype) + '->' + str(ttype) + '!' )
220
261
 
221
262
  if not_found:
222
263
  outfile.write(value)
264
+
265
+
266
+ class TerminalTrueColorFormatter(Terminal256Formatter):
267
+ r"""
268
+ Format tokens with ANSI color sequences, for output in a true-color
269
+ terminal or console. Like in `TerminalFormatter` color sequences
270
+ are terminated at newlines, so that paging the output works correctly.
271
+
272
+ .. versionadded:: 2.1
273
+
274
+ Options accepted:
275
+
276
+ `style`
277
+ The style to use, can be a string or a Style subclass (default:
278
+ ``'default'``).
279
+ """
280
+ name = 'TerminalTrueColor'
281
+ aliases = ['terminal16m', 'console16m', '16m']
282
+ filenames = []
283
+
284
+ def _build_color_table(self):
285
+ pass
286
+
287
+ def _color_tuple(self, color):
288
+ try:
289
+ rgb = int(str(color), 16)
290
+ except ValueError:
291
+ return None
292
+ r = (rgb >> 16) & 0xff
293
+ g = (rgb >> 8) & 0xff
294
+ b = rgb & 0xff
295
+ return (r, g, b)
296
+
297
+ def _setup_styles(self):
298
+ for ttype, ndef in self.style:
299
+ escape = EscapeSequence()
300
+ if ndef['color']:
301
+ escape.fg = self._color_tuple(ndef['color'])
302
+ if ndef['bgcolor']:
303
+ escape.bg = self._color_tuple(ndef['bgcolor'])
304
+ if self.usebold and ndef['bold']:
305
+ escape.bold = True
306
+ if self.useunderline and ndef['underline']:
307
+ escape.underline = True
308
+ self.style_string[str(ttype)] = (escape.true_color_string(),
309
+ escape.reset_string())