pygments.rb 0.6.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -1,62 +0,0 @@
1
- ## CD ROM
2
- deb cdrom:[Xubuntu 6.06.1 _Dapper Drake_ - Release i386 (20060807)]/ dapper main restricted
3
-
4
- deb http://archive.ubuntu.com/ubuntu/ dapper main restricted
5
- deb-src http://archive.ubuntu.com/ubuntu/ dapper main restricted
6
-
7
- deb http://foo.com/$(ARCH)/ main foo
8
-
9
- ## Major bug fix updates produced after the final release of the
10
- ## distribution.
11
- deb http://archive.ubuntu.com/ubuntu/ dapper-updates main restricted
12
- deb-src http://archive.ubuntu.com/ubuntu/ dapper-updates main restricted
13
-
14
- ## Uncomment the following two lines to add software from the 'universe'
15
- ## repository.
16
- ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
17
- ## team, and may not be under a free licence. Please satisfy yourself as to
18
- ## your rights to use the software. Also, please note that software in
19
- ## universe WILL NOT receive any review or updates from the Ubuntu security
20
- ## team.
21
- deb http://archive.ubuntu.com/ubuntu/ dapper universe multiverse
22
- deb-src http://archive.ubuntu.com/ubuntu/ dapper universe multiverse
23
-
24
- ## Uncomment the following two lines to add software from the 'backports'
25
- ## repository.
26
- ## N.B. software from this repository may not have been tested as
27
- ## extensively as that contained in the main release, although it includes
28
- ## newer versions of some applications which may provide useful features.
29
- ## Also, please note that software in backports WILL NOT receive any review
30
- ## or updates from the Ubuntu security team.
31
- deb http://archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
32
- deb-src http://archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
33
-
34
- deb http://security.ubuntu.com/ubuntu dapper-security main restricted
35
- deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted
36
- deb http://security.ubuntu.com/ubuntu dapper-security universe multiverse
37
- deb-src http://security.ubuntu.com/ubuntu dapper-security universe multiverse
38
-
39
- ## dapper-commercial by canonical
40
- ## currently has realplay (realplayer 10) and opera (opera 9)
41
- deb http://archive.canonical.com/ubuntu dapper-commercial main
42
-
43
- ## Bleeding edge wine repository for Dapper
44
- ## only uncomment it if you need it
45
- ## deb http://wine.budgetdedicated.com/apt dapper main
46
- ## deb-src http://wine.budgetdedicated.com/apt dapper main
47
-
48
- ## skype
49
- ## only uncomment it if you need it
50
- ## deb http://download.skype.com/linux/repos/debian/ stable non-free
51
-
52
- deb http://de.archive.ubuntu.com/ubuntu/ edgy main restricted multiverse universe
53
-
54
- deb http://de.archive.ubuntu.com/ubuntu/ edgy-updates main restricted multiverse universe
55
-
56
- deb http://de.archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
57
-
58
- deb http://security.ubuntu.com/ubuntu edgy-security main restricted universe multiverse
59
-
60
- deb http://wine.budgetdedicated.com/apt edgy main
61
-
62
- deb http://archive.czessi.net/ubuntu edgy main restricted universe multiverse i18n-de
@@ -1,23 +0,0 @@
1
- # This is a test SPARQL query
2
-
3
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
4
- PREFIX ex: <http://example.org/>
5
- PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
6
- PREFIX dcterms: <http://purl.org/dc/terms/>
7
-
8
- SELECT ?person (COUNT(?nick) AS ?nickCount) {
9
- ?person foaf:nick ?nick ;
10
- foaf:lastName "Smith" ;
11
- foaf:age "21"^^xsd:int ;
12
- ex:title 'Mr' ; # single-quoted string
13
- ex:height 1.80 ; # float
14
- ex:distanceToSun +1.4e8 ; # float with exponent
15
- ex:ownsACat true ;
16
- dcterms:description "Someone with a cat called \"cat\"."@en .
17
- OPTIONAL { ?person foaf:isPrimaryTopicOf ?page }
18
- OPTIONAL { ?person foaf:name ?name
19
- { ?person foaf:depiction ?img }
20
- UNION
21
- { ?person foaf:firstName ?firstN } }
22
- FILTER ( bound(?page) || bound(?img) || bound(?firstN) )
23
- } GROUP BY ?person ORDER BY ?img
@@ -1,18 +0,0 @@
1
- #include "colors.inc"
2
-
3
- background { color Cyan }
4
-
5
- camera {
6
- location <0, 2, -3>
7
- look_at <0, 1, 2>
8
- }
9
-
10
- sphere {
11
- <0, 1, 2>, 2
12
- texture {
13
- pigment { color Yellow }
14
- }
15
- }
16
-
17
- light_source { <2, 4, -3> color White}
18
-
@@ -1,27 +0,0 @@
1
- SQLite version 3.4.2
2
- Enter ".help" for instructions
3
- sqlite> .schema
4
- CREATE TABLE paste (paste_id integer, code text, parsed_code text, pub_date
5
- varchar(24), language varchar(64), parent_id integer, url varchar(128));
6
- CREATE TABLE vars (key varchar(24), value varchar(128));
7
- sqlite> a '
8
- ...> '
9
- ...> ;
10
- SQL error: near "a": syntax error
11
- sqlite> %;
12
- SQL error: near "%": syntax error
13
- sqlite> select count(language), language from paste group by language order
14
- ...> by count(language) desc;
15
- 144|python
16
- 76|text
17
- 22|pycon
18
- 9|ruby
19
- 7|c
20
- 7|js
21
- 6|html+django
22
- 4|html
23
- 4|tex
24
- 2|html+php
25
- 1|cpp
26
- 1|scheme
27
- sqlite>
@@ -1,30 +0,0 @@
1
- # Some multiline comments
2
-
3
- acl manager proto cache_object
4
- acl localhost src 127.0.0.1/32 ::1
5
- acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
6
- acl SSL_ports port 443
7
- acl Safe_ports port 80 # http
8
- acl Safe_ports port 21 # ftp
9
- acl Safe_ports port 443 # https
10
- acl Safe_ports port 70 # gopher
11
- acl Safe_ports port 210 # wais
12
- acl Safe_ports port 1025-65535 # unregistered ports
13
- acl Safe_ports port 280 # http-mgmt
14
- acl Safe_ports port 488 # gss-http
15
- acl Safe_ports port 591 # filemaker
16
- acl Safe_ports port 777 # multiling http
17
- acl CONNECT method CONNECT
18
- http_access allow manager localhost
19
- http_access deny manager
20
- http_access deny !Safe_ports
21
- http_access deny CONNECT !SSL_ports
22
- http_access allow localhost
23
- http_access deny all
24
- http_port 3128
25
- hierarchy_stoplist cgi-bin ?
26
- coredump_dir /var/spool/squid3
27
- refresh_pattern ^ftp: 1440 20% 10080
28
- refresh_pattern ^gopher: 1440 0% 1440
29
- refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
30
- refresh_pattern . 0 20% 4320
@@ -1,1031 +0,0 @@
1
- ## core string functions ##
2
-
3
- length(s::String) = error("you must implement length(",typeof(s),")")
4
- next(s::String, i::Int) = error("you must implement next(",typeof(s),",Int)")
5
- next(s::DirectIndexString, i::Int) = (s[i],i+1)
6
- next(s::String, i::Integer) = next(s,int(i))
7
-
8
- ## generic supplied functions ##
9
-
10
- start(s::String) = 1
11
- done(s::String,i) = (i > length(s))
12
- isempty(s::String) = done(s,start(s))
13
- ref(s::String, i::Int) = next(s,i)[1]
14
- ref(s::String, i::Integer) = s[int(i)]
15
- ref(s::String, x::Real) = s[iround(x)]
16
- ref{T<:Integer}(s::String, r::Range1{T}) = s[int(first(r)):int(last(r))]
17
-
18
- symbol(s::String) = symbol(cstring(s))
19
- string(s::String) = s
20
-
21
- print(s::String) = for c=s; print(c); end
22
- print(x...) = for i=x; print(i); end
23
- println(args...) = print(args..., '\n')
24
-
25
- show(s::String) = print_quoted(s)
26
-
27
- (*)(s::String...) = strcat(s...)
28
- (^)(s::String, r::Integer) = repeat(s,r)
29
-
30
- size(s::String) = (length(s),)
31
- size(s::String, d::Integer) = d==1 ? length(s) :
32
- error("in size: dimension ",d," out of range")
33
-
34
- strlen(s::DirectIndexString) = length(s)
35
- function strlen(s::String)
36
- i = start(s)
37
- if done(s,i)
38
- return 0
39
- end
40
- n = 1
41
- while true
42
- c, j = next(s,i)
43
- if done(s,j)
44
- return n
45
- end
46
- n += 1
47
- i = j
48
- end
49
- end
50
-
51
- isvalid(s::DirectIndexString, i::Integer) = (start(s) <= i <= length(s))
52
- function isvalid(s::String, i::Integer)
53
- try
54
- next(s,i)
55
- true
56
- catch
57
- false
58
- end
59
- end
60
-
61
- prevind(s::DirectIndexString, i::Integer) = i-1
62
- thisind(s::DirectIndexString, i::Integer) = i
63
- nextind(s::DirectIndexString, i::Integer) = i+1
64
-
65
- prevind(s::String, i::Integer) = thisind(s,thisind(s,i)-1)
66
-
67
- function thisind(s::String, i::Integer)
68
- for j = i:-1:1
69
- if isvalid(s,j)
70
- return j
71
- end
72
- end
73
- return 0 # out of range
74
- end
75
-
76
- function nextind(s::String, i::Integer)
77
- for j = i+1:length(s)
78
- if isvalid(s,j)
79
- return j
80
- end
81
- end
82
- length(s)+1 # out of range
83
- end
84
-
85
- ind2chr(s::DirectIndexString, i::Integer) = i
86
- chr2ind(s::DirectIndexString, i::Integer) = i
87
-
88
- function ind2chr(s::String, i::Integer)
89
- s[i] # throws error if invalid
90
- j = 1
91
- k = start(s)
92
- while true
93
- c, l = next(s,k)
94
- if i <= k
95
- return j
96
- end
97
- j += 1
98
- k = l
99
- end
100
- end
101
-
102
- function chr2ind(s::String, i::Integer)
103
- if i < 1
104
- return i
105
- end
106
- j = 1
107
- k = start(s)
108
- while true
109
- c, l = next(s,k)
110
- if i == j
111
- return k
112
- end
113
- j += 1
114
- k = l
115
- end
116
- end
117
-
118
- function strchr(s::String, c::Char, i::Integer)
119
- i = nextind(s,i)
120
- while !done(s,i)
121
- d, j = next(s,i)
122
- if c == d
123
- return i
124
- end
125
- i = j
126
- end
127
- return 0
128
- end
129
- strchr(s::String, c::Char) = strchr(s, c, start(s))
130
- contains(s::String, c::Char) = (strchr(s,c)!=0)
131
-
132
- function chars(s::String)
133
- cx = Array(Char,strlen(s))
134
- i = 0
135
- for c in s
136
- cx[i += 1] = c
137
- end
138
- return cx
139
- end
140
-
141
- function cmp(a::String, b::String)
142
- i = start(a)
143
- j = start(b)
144
- while !done(a,i) && !done(b,i)
145
- c, i = next(a,i)
146
- d, j = next(b,j)
147
- if c != d
148
- return c < d ? -1 : +1
149
- end
150
- end
151
- done(a,i) && !done(b,j) ? -1 :
152
- !done(a,i) && done(b,j) ? +1 : 0
153
- end
154
-
155
- isequal(a::String, b::String) = cmp(a,b) == 0
156
- isless(a::String, b::String) = cmp(a,b) < 0
157
-
158
- # faster comparisons for byte strings
159
-
160
- cmp(a::ByteString, b::ByteString) = lexcmp(a.data, b.data)
161
- isequal(a::ByteString, b::ByteString) = length(a)==length(b) && cmp(a,b)==0
162
-
163
- ## character column width function ##
164
-
165
- charwidth(c::Char) = max(0,int(ccall(:wcwidth, Int32, (Char,), c)))
166
- strwidth(s::String) = (w=0; for c in s; w += charwidth(c); end; w)
167
- strwidth(s::ByteString) = ccall(:u8_strwidth, Int, (Ptr{Uint8},), s.data)
168
- # TODO: implement and use u8_strnwidth that takes a length argument
169
-
170
- ## generic string uses only length and next ##
171
-
172
- type GenericString <: String
173
- string::String
174
- end
175
-
176
- length(s::GenericString) = length(s.string)
177
- next(s::GenericString, i::Int) = next(s.string, i)
178
-
179
- ## plain old character arrays ##
180
-
181
- type CharString <: String
182
- chars::Array{Char,1}
183
-
184
- CharString(a::Array{Char,1}) = new(a)
185
- CharString(c::Char...) = new([ c[i] | i=1:length(c) ])
186
- end
187
- CharString(x...) = CharString(map(char,x)...)
188
-
189
- next(s::CharString, i::Int) = (s.chars[i], i+1)
190
- length(s::CharString) = length(s.chars)
191
- strlen(s::CharString) = length(s)
192
-
193
- string(c::Char) = CharString(c)
194
- string(c::Char, x::Char...) = CharString(c, x...)
195
-
196
- ## substrings reference original strings ##
197
-
198
- type SubString <: String
199
- string::String
200
- offset::Int
201
- length::Int
202
-
203
- SubString(s::String, i::Int, j::Int) = new(s, i-1, j-i+1)
204
- SubString(s::SubString, i::Int, j::Int) =
205
- new(s.string, i-1+s.offset, j-i+1)
206
- end
207
- SubString(s::String, i::Integer, j::Integer) = SubString(s, int(i), int(j))
208
-
209
- function next(s::SubString, i::Int)
210
- if i < 1 || i > s.length
211
- error("string index out of bounds")
212
- end
213
- c, i = next(s.string, i+s.offset)
214
- c, i-s.offset
215
- end
216
-
217
- length(s::SubString) = s.length
218
- # TODO: strlen(s::SubString) = ??
219
- # default implementation will work but it's slow
220
- # can this be delegated efficiently somehow?
221
- # that may require additional string interfaces
222
-
223
- function ref(s::String, r::Range1{Int})
224
- if first(r) < 1 || length(s) < last(r)
225
- error("in substring slice: index out of range")
226
- end
227
- SubString(s, first(r), last(r))
228
- end
229
-
230
- ## efficient representation of repeated strings ##
231
-
232
- type RepString <: String
233
- string::String
234
- repeat::Integer
235
- end
236
-
237
- length(s::RepString) = length(s.string)*s.repeat
238
- strlen(s::RepString) = strlen(s.string)*s.repeat
239
-
240
- function next(s::RepString, i::Int)
241
- if i < 1 || i > length(s)
242
- error("string index out of bounds")
243
- end
244
- j = mod1(i,length(s.string))
245
- c, k = next(s.string, j)
246
- c, k-j+i
247
- end
248
-
249
- function repeat(s::String, r::Integer)
250
- r < 0 ? error("can't repeat a string ",r," times") :
251
- r == 0 ? "" :
252
- r == 1 ? s :
253
- RepString(s,r)
254
- end
255
-
256
- ## reversed strings without data movement ##
257
-
258
- type RevString <: String
259
- string::String
260
- end
261
-
262
- length(s::RevString) = length(s.string)
263
- strlen(s::RevString) = strlen(s.string)
264
-
265
- start(s::RevString) = (n=length(s); n-thisind(s.string,n)+1)
266
- function next(s::RevString, i::Int)
267
- n = length(s); j = n-i+1
268
- (s.string[j], n-thisind(s.string,j-1)+1)
269
- end
270
-
271
- reverse(s::String) = RevString(s)
272
- reverse(s::RevString) = s.string
273
-
274
- ## ropes for efficient concatenation, etc. ##
275
-
276
- # Idea: instead of this standard binary tree structure,
277
- # how about we keep an array of substrings, with an
278
- # offset array. We can do binary search on the offset
279
- # array so we get O(log(n)) indexing time still, but we
280
- # can compute the offsets lazily and avoid all the
281
- # futzing around while the string is being constructed.
282
-
283
- type RopeString <: String
284
- head::String
285
- tail::String
286
- depth::Int32
287
- length::Int
288
-
289
- RopeString(h::RopeString, t::RopeString) =
290
- depth(h.tail) + depth(t) < depth(h.head) ?
291
- RopeString(h.head, RopeString(h.tail, t)) :
292
- new(h, t, max(h.depth,t.depth)+1, length(h)+length(t))
293
-
294
- RopeString(h::RopeString, t::String) =
295
- depth(h.tail) < depth(h.head) ?
296
- RopeString(h.head, RopeString(h.tail, t)) :
297
- new(h, t, h.depth+1, length(h)+length(t))
298
-
299
- RopeString(h::String, t::RopeString) =
300
- depth(t.head) < depth(t.tail) ?
301
- RopeString(RopeString(h, t.head), t.tail) :
302
- new(h, t, t.depth+1, length(h)+length(t))
303
-
304
- RopeString(h::String, t::String) =
305
- new(h, t, 1, length(h)+length(t))
306
- end
307
-
308
- depth(s::String) = 0
309
- depth(s::RopeString) = s.depth
310
-
311
- function next(s::RopeString, i::Int)
312
- if i <= length(s.head)
313
- return next(s.head, i)
314
- else
315
- c, j = next(s.tail, i-length(s.head))
316
- return c, j+length(s.head)
317
- end
318
- end
319
-
320
- length(s::RopeString) = s.length
321
- strlen(s::RopeString) = strlen(s.head) + strlen(s.tail)
322
-
323
- strcat() = ""
324
- strcat(s::String) = s
325
- strcat(x...) = strcat(map(string,x)...)
326
- strcat(s::String, t::String...) =
327
- (t = strcat(t...); isempty(s) ? t : isempty(t) ? s : RopeString(s, t))
328
-
329
- print(s::RopeString) = print(s.head, s.tail)
330
-
331
- ## transformed strings ##
332
-
333
- type TransformedString <: String
334
- transform::Function
335
- string::String
336
- end
337
-
338
- length(s::TransformedString) = length(s.string)
339
- strlen(s::TransformedString) = strlen(s.string)
340
-
341
- function next(s::TransformedString, i::Int)
342
- c, j = next(s.string,i)
343
- c = s.transform(c, i)
344
- return c, j
345
- end
346
-
347
- ## uppercase and lowercase transformations ##
348
-
349
- uppercase(c::Char) = ccall(:towupper, Char, (Char,), c)
350
- lowercase(c::Char) = ccall(:towlower, Char, (Char,), c)
351
-
352
- uppercase(s::String) = TransformedString((c,i)->uppercase(c), s)
353
- lowercase(s::String) = TransformedString((c,i)->lowercase(c), s)
354
-
355
- ucfirst(s::String) = TransformedString((c,i)->i==1 ? uppercase(c) : c, s)
356
- lcfirst(s::String) = TransformedString((c,i)->i==1 ? lowercase(c) : c, s)
357
-
358
- const uc = uppercase
359
- const lc = lowercase
360
-
361
- ## string map ##
362
-
363
- function map(f::Function, s::String)
364
- out = memio(length(s))
365
- for c in s
366
- write(out, f(c)::Char)
367
- end
368
- takebuf_string(out)
369
- end
370
-
371
- ## conversion of general objects to strings ##
372
-
373
- string(x) = print_to_string(show, x)
374
- cstring(x...) = print_to_string(print, x...)
375
-
376
- function cstring(p::Ptr{Uint8})
377
- p == C_NULL ? error("cannot convert NULL to string") :
378
- ccall(:jl_cstr_to_string, Any, (Ptr{Uint8},), p)::ByteString
379
- end
380
-
381
- ## string promotion rules ##
382
-
383
- promote_rule(::Type{UTF8String} , ::Type{ASCIIString}) = UTF8String
384
- promote_rule(::Type{UTF8String} , ::Type{CharString} ) = UTF8String
385
- promote_rule(::Type{ASCIIString}, ::Type{CharString} ) = UTF8String
386
-
387
- ## printing literal quoted string data ##
388
-
389
- # TODO: this is really the inverse of print_unbackslashed
390
-
391
- function print_quoted_literal(s::String)
392
- print('"')
393
- for c = s; c == '"' ? print("\\\"") : print(c); end
394
- print('"')
395
- end
396
-
397
- ## string escaping & unescaping ##
398
-
399
- escape_nul(s::String, i::Int) =
400
- !done(s,i) && '0' <= next(s,i)[1] <= '7' ? L"\x00" : L"\0"
401
-
402
- is_hex_digit(c::Char) = '0'<=c<='9' || 'a'<=c<='f' || 'A'<=c<='F'
403
- need_full_hex(s::String, i::Int) = !done(s,i) && is_hex_digit(next(s,i)[1])
404
-
405
- function print_escaped(s::String, esc::String)
406
- i = start(s)
407
- while !done(s,i)
408
- c, j = next(s,i)
409
- c == '\0' ? print(escape_nul(s,j)) :
410
- c == '\e' ? print(L"\e") :
411
- c == '\\' ? print("\\\\") :
412
- contains(esc,c) ? print('\\', c) :
413
- iswprint(c) ? print(c) :
414
- 7 <= c <= 13 ? print('\\', "abtnvfr"[c-6]) :
415
- c <= '\x7f' ? print(L"\x", hex(c, 2)) :
416
- c <= '\uffff' ? print(L"\u", hex(c, need_full_hex(s,j) ? 4 : 2)) :
417
- print(L"\U", hex(c, need_full_hex(s,j) ? 8 : 4))
418
- i = j
419
- end
420
- end
421
-
422
- escape_string(s::String) = print_to_string(length(s), print_escaped, s, "\"")
423
- print_quoted(s::String) = (print('"'); print_escaped(s, "\"\$"); print('"'))
424
- #" # work around syntax highlighting problem
425
- quote_string(s::String) = print_to_string(length(s)+2, print_quoted, s)
426
-
427
- # bare minimum unescaping function unescapes only given characters
428
-
429
- function print_unescaped_chars(s::String, esc::String)
430
- if !contains(esc,'\\')
431
- esc = strcat("\\", esc)
432
- end
433
- i = start(s)
434
- while !done(s,i)
435
- c, i = next(s,i)
436
- if c == '\\' && !done(s,i) && contains(esc,s[i])
437
- c, i = next(s,i)
438
- end
439
- print(c)
440
- end
441
- end
442
-
443
- unescape_chars(s::String, esc::String) =
444
- print_to_string(length(s), print_unescaped_chars, s, esc)
445
-
446
- # general unescaping of traditional C and Unicode escape sequences
447
-
448
- function print_unescaped(s::String)
449
- i = start(s)
450
- while !done(s,i)
451
- c, i = next(s,i)
452
- if !done(s,i) && c == '\\'
453
- c, i = next(s,i)
454
- if c == 'x' || c == 'u' || c == 'U'
455
- n = k = 0
456
- m = c == 'x' ? 2 :
457
- c == 'u' ? 4 : 8
458
- while (k+=1) <= m && !done(s,i)
459
- c, j = next(s,i)
460
- n = '0' <= c <= '9' ? n<<4 + c-'0' :
461
- 'a' <= c <= 'f' ? n<<4 + c-'a'+10 :
462
- 'A' <= c <= 'F' ? n<<4 + c-'A'+10 : break
463
- i = j
464
- end
465
- if k == 1
466
- error("\\x used with no following hex digits")
467
- end
468
- if m == 2 # \x escape sequence
469
- write(uint8(n))
470
- else
471
- print(char(n))
472
- end
473
- elseif '0' <= c <= '7'
474
- k = 1
475
- n = c-'0'
476
- while (k+=1) <= 3 && !done(s,i)
477
- c, j = next(s,i)
478
- n = '0' <= c <= '7' ? n<<3 + c-'0' : break
479
- i = j
480
- end
481
- if n > 255
482
- error("octal escape sequence out of range")
483
- end
484
- write(uint8(n))
485
- else
486
- print(c == 'a' ? '\a' :
487
- c == 'b' ? '\b' :
488
- c == 't' ? '\t' :
489
- c == 'n' ? '\n' :
490
- c == 'v' ? '\v' :
491
- c == 'f' ? '\f' :
492
- c == 'r' ? '\r' :
493
- c == 'e' ? '\e' : c)
494
- end
495
- else
496
- print(c)
497
- end
498
- end
499
- end
500
-
501
- unescape_string(s::String) = print_to_string(length(s), print_unescaped, s)
502
-
503
- ## checking UTF-8 & ACSII validity ##
504
-
505
- byte_string_classify(s::ByteString) =
506
- ccall(:u8_isvalid, Int32, (Ptr{Uint8}, Int), s.data, length(s))
507
- # 0: neither valid ASCII nor UTF-8
508
- # 1: valid ASCII
509
- # 2: valid UTF-8
510
-
511
- is_valid_ascii(s::ByteString) = byte_string_classify(s) == 1
512
- is_valid_utf8 (s::ByteString) = byte_string_classify(s) != 0
513
-
514
- check_ascii(s::ByteString) = is_valid_ascii(s) ? s : error("invalid ASCII sequence")
515
- check_utf8 (s::ByteString) = is_valid_utf8(s) ? s : error("invalid UTF-8 sequence")
516
-
517
- ## string interpolation parsing ##
518
-
519
- function _jl_interp_parse(s::String, unescape::Function, printer::Function)
520
- sx = {}
521
- i = j = start(s)
522
- while !done(s,j)
523
- c, k = next(s,j)
524
- if c == '$'
525
- if !isempty(s[i:j-1])
526
- push(sx, unescape(s[i:j-1]))
527
- end
528
- ex, j = parseatom(s,k)
529
- push(sx, ex)
530
- i = j
531
- elseif c == '\\' && !done(s,k)
532
- if s[k] == '$'
533
- if !isempty(s[i:j-1])
534
- push(sx, unescape(s[i:j-1]))
535
- end
536
- i = k
537
- end
538
- c, j = next(s,k)
539
- else
540
- j = k
541
- end
542
- end
543
- if !isempty(s[i:])
544
- push(sx, unescape(s[i:j-1]))
545
- end
546
- length(sx) == 1 && isa(sx[1],ByteString) ? sx[1] :
547
- expr(:call, :print_to_string, printer, sx...)
548
- end
549
-
550
- _jl_interp_parse(s::String, u::Function) = _jl_interp_parse(s, u, print)
551
- _jl_interp_parse(s::String) = _jl_interp_parse(s, x->check_utf8(unescape_string(x)))
552
-
553
- function _jl_interp_parse_bytes(s::String)
554
- writer(x...) = for w=x; write(w); end
555
- _jl_interp_parse(s, unescape_string, writer)
556
- end
557
-
558
- ## core string macros ##
559
-
560
- macro str(s); _jl_interp_parse(s); end
561
- macro S_str(s); _jl_interp_parse(s); end
562
- macro I_str(s); _jl_interp_parse(s, x->unescape_chars(x,"\"")); end
563
- macro E_str(s); check_utf8(unescape_string(s)); end
564
- macro B_str(s); _jl_interp_parse_bytes(s); end
565
- macro b_str(s); ex = _jl_interp_parse_bytes(s); :(($ex).data); end
566
-
567
- ## shell-like command parsing ##
568
-
569
- function _jl_shell_parse(s::String, interp::Bool)
570
-
571
- in_single_quotes = false
572
- in_double_quotes = false
573
-
574
- args = {}
575
- arg = {}
576
- i = start(s)
577
- j = i
578
-
579
- function update_arg(x)
580
- if !isa(x,String) || !isempty(x)
581
- push(arg, x)
582
- end
583
- end
584
- function append_arg()
585
- if isempty(arg); arg = {"",}; end
586
- push(args, arg)
587
- arg = {}
588
- end
589
-
590
- while !done(s,j)
591
- c, k = next(s,j)
592
- if !in_single_quotes && !in_double_quotes && iswspace(c)
593
- update_arg(s[i:j-1])
594
- append_arg()
595
- j = k
596
- while !done(s,j)
597
- c, k = next(s,j)
598
- if !iswspace(c)
599
- i = j
600
- break
601
- end
602
- j = k
603
- end
604
- elseif interp && !in_single_quotes && c == '$'
605
- update_arg(s[i:j-1]); i = k; j = k
606
- if done(s,k)
607
- error("\$ right before end of command")
608
- end
609
- if iswspace(s[k])
610
- error("space not allowed right after \$")
611
- end
612
- ex, j = parseatom(s,j)
613
- update_arg(ex); i = j
614
- else
615
- if !in_double_quotes && c == '\''
616
- in_single_quotes = !in_single_quotes
617
- update_arg(s[i:j-1]); i = k
618
- elseif !in_single_quotes && c == '"'
619
- in_double_quotes = !in_double_quotes
620
- update_arg(s[i:j-1]); i = k
621
- elseif c == '\\'
622
- if in_double_quotes
623
- if done(s,k)
624
- error("unterminated double quote")
625
- end
626
- if s[k] == '"' || s[k] == '$'
627
- update_arg(s[i:j-1]); i = k
628
- c, k = next(s,k)
629
- end
630
- elseif !in_single_quotes
631
- if done(s,k)
632
- error("dangling backslash")
633
- end
634
- update_arg(s[i:j-1]); i = k
635
- c, k = next(s,k)
636
- end
637
- end
638
- j = k
639
- end
640
- end
641
-
642
- if in_single_quotes; error("unterminated single quote"); end
643
- if in_double_quotes; error("unterminated double quote"); end
644
-
645
- update_arg(s[i:])
646
- append_arg()
647
-
648
- if !interp
649
- return args
650
- end
651
-
652
- # construct an expression
653
- exprs = {}
654
- for arg in args
655
- push(exprs, expr(:tuple, arg))
656
- end
657
- expr(:tuple,exprs)
658
- end
659
- _jl_shell_parse(s::String) = _jl_shell_parse(s,true)
660
-
661
- function shell_split(s::String)
662
- parsed = _jl_shell_parse(s,false)
663
- args = String[]
664
- for arg in parsed
665
- push(args, strcat(arg...))
666
- end
667
- args
668
- end
669
-
670
- function print_shell_word(word::String)
671
- if isempty(word)
672
- print("''")
673
- end
674
- has_single = false
675
- has_special = false
676
- for c in word
677
- if iswspace(c) || c=='\\' || c=='\'' || c=='"' || c=='$'
678
- has_special = true
679
- if c == '\''
680
- has_single = true
681
- end
682
- end
683
- end
684
- if !has_special
685
- print(word)
686
- elseif !has_single
687
- print('\'', word, '\'')
688
- else
689
- print('"')
690
- for c in word
691
- if c == '"' || c == '$'
692
- print('\\')
693
- end
694
- print(c)
695
- end
696
- print('"')
697
- end
698
- end
699
-
700
- function print_shell_escaped(cmd::String, args::String...)
701
- print_shell_word(cmd)
702
- for arg in args
703
- print(' ')
704
- print_shell_word(arg)
705
- end
706
- end
707
-
708
- shell_escape(cmd::String, args::String...) =
709
- print_to_string(print_shell_escaped, cmd, args...)
710
-
711
- ## interface to parser ##
712
-
713
- function parse(s::String, pos, greedy)
714
- # returns (expr, end_pos). expr is () in case of parse error.
715
- ex, pos = ccall(:jl_parse_string, Any,
716
- (Ptr{Uint8}, Int32, Int32),
717
- cstring(s), pos-1, greedy ? 1:0)
718
- if isa(ex,Expr) && is(ex.head,:error)
719
- throw(ParseError(ex.args[1]))
720
- end
721
- if ex == (); throw(ParseError("end of input")); end
722
- ex, pos+1 # C is zero-based, Julia is 1-based
723
- end
724
-
725
- parse(s::String) = parse(s, 1, true)
726
- parse(s::String, pos) = parse(s, pos, true)
727
- parseatom(s::String) = parse(s, 1, false)
728
- parseatom(s::String, pos) = parse(s, pos, false)
729
-
730
- ## miscellaneous string functions ##
731
-
732
- function lpad(s::String, n::Integer, p::String)
733
- m = n - strlen(s)
734
- if m <= 0; return s; end
735
- l = strlen(p)
736
- if l==1
737
- return p^m * s
738
- end
739
- q = div(m,l)
740
- r = m - q*l
741
- cstring(p^q*p[1:chr2ind(p,r)]*s)
742
- end
743
-
744
- function rpad(s::String, n::Integer, p::String)
745
- m = n - strlen(s)
746
- if m <= 0; return s; end
747
- l = strlen(p)
748
- if l==1
749
- return s * p^m
750
- end
751
- q = div(m,l)
752
- r = m - q*l
753
- cstring(s*p^q*p[1:chr2ind(p,r)])
754
- end
755
-
756
- lpad(s, n::Integer, p) = lpad(string(s), n, string(p))
757
- rpad(s, n::Integer, p) = rpad(string(s), n, string(p))
758
-
759
- lpad(s, n::Integer) = lpad(string(s), n, " ")
760
- rpad(s, n::Integer) = rpad(string(s), n, " ")
761
-
762
- function split(s::String, delims, include_empty::Bool)
763
- i = 1
764
- strs = String[]
765
- len = length(s)
766
- while true
767
- tokstart = tokend = i
768
- while !done(s,i)
769
- (c,i) = next(s,i)
770
- if contains(delims, c)
771
- break
772
- end
773
- tokend = i
774
- end
775
- tok = s[tokstart:(tokend-1)]
776
- if include_empty || !isempty(tok)
777
- push(strs, tok)
778
- end
779
- if !((i <= len) || (i==len+1 && tokend!=i))
780
- break
781
- end
782
- end
783
- strs
784
- end
785
-
786
- split(s::String) = split(s, (' ','\t','\n','\v','\f','\r'), false)
787
- split(s::String, x) = split(s, x, true)
788
- split(s::String, x::Char, incl::Bool) = split(s, (x,), incl)
789
-
790
- function print_joined(strings, delim, last)
791
- i = start(strings)
792
- if done(strings,i)
793
- return
794
- end
795
- str, i = next(strings,i)
796
- print(str)
797
- while !done(strings,i)
798
- str, i = next(strings,i)
799
- print(done(strings,i) ? last : delim)
800
- print(str)
801
- end
802
- end
803
-
804
- function print_joined(strings, delim)
805
- i = start(strings)
806
- while !done(strings,i)
807
- str, i = next(strings,i)
808
- print(str)
809
- if !done(strings,i)
810
- print(delim)
811
- end
812
- end
813
- end
814
- print_joined(strings) = print_joined(strings, "")
815
-
816
- join(args...) = print_to_string(print_joined, args...)
817
-
818
- chop(s::String) = s[1:thisind(s,length(s))-1]
819
- chomp(s::String) = (i=thisind(s,length(s)); s[i]=='\n' ? s[1:i-1] : s)
820
- chomp(s::ByteString) = s.data[end]==0x0a ? s[1:end-1] : s
821
-
822
- function lstrip(s::String)
823
- i = start(s)
824
- while !done(s,i)
825
- c, j = next(s,i)
826
- if !iswspace(c)
827
- return s[i:end]
828
- end
829
- i = j
830
- end
831
- ""
832
- end
833
-
834
- function rstrip(s::String)
835
- r = reverse(s)
836
- i = start(r)
837
- while !done(r,i)
838
- c, j = next(r,i)
839
- if !iswspace(c)
840
- return s[1:end-i+1]
841
- end
842
- i = j
843
- end
844
- ""
845
- end
846
-
847
- strip(s::String) = lstrip(rstrip(s))
848
-
849
- ## string to integer functions ##
850
-
851
- function parse_int{T<:Integer}(::Type{T}, s::String, base::Integer)
852
- if !(2 <= base <= 36); error("invalid base: ",base); end
853
- i = start(s)
854
- if done(s,i)
855
- error("premature end of integer (in ",show_to_string(s),")")
856
- end
857
- c,i = next(s,i)
858
- sgn = one(T)
859
- if T <: Signed && c == '-'
860
- sgn = -sgn
861
- if done(s,i)
862
- error("premature end of integer (in ",show_to_string(s),")")
863
- end
864
- c,i = next(s,i)
865
- end
866
- base = convert(T,base)
867
- n::T = 0
868
- while true
869
- d = '0' <= c <= '9' ? c-'0' :
870
- 'A' <= c <= 'Z' ? c-'A'+10 :
871
- 'a' <= c <= 'z' ? c-'a'+10 : typemax(Int)
872
- if d >= base
873
- error(show_to_string(c)," is not a valid digit (in ",show_to_string(s),")")
874
- end
875
- # TODO: overflow detection?
876
- n = n*base + d
877
- if done(s,i)
878
- break
879
- end
880
- c,i = next(s,i)
881
- end
882
- return flipsign(n,sgn)
883
- end
884
-
885
- parse_int(s::String, base::Integer) = parse_int(Int,s,base)
886
- parse_int(T::Type, s::String) = parse_int(T,s,10)
887
- parse_int(s::String) = parse_int(Int,s,10)
888
-
889
- parse_bin(T::Type, s::String) = parse_int(T,s,2)
890
- parse_oct(T::Type, s::String) = parse_int(T,s,8)
891
- parse_hex(T::Type, s::String) = parse_int(T,s,16)
892
-
893
- parse_bin(s::String) = parse_int(Int,s,2)
894
- parse_oct(s::String) = parse_int(Int,s,8)
895
- parse_hex(s::String) = parse_int(Int,s,16)
896
-
897
- integer (s::String) = int(s)
898
- unsigned(s::String) = uint(s)
899
- int (s::String) = parse_int(Int,s)
900
- uint (s::String) = parse_int(Uint,s)
901
- int8 (s::String) = parse_int(Int8,s)
902
- uint8 (s::String) = parse_int(Uint8,s)
903
- int16 (s::String) = parse_int(Int16,s)
904
- uint16 (s::String) = parse_int(Uint16,s)
905
- int32 (s::String) = parse_int(Int32,s)
906
- uint32 (s::String) = parse_int(Uint32,s)
907
- int64 (s::String) = parse_int(Int64,s)
908
- uint64 (s::String) = parse_int(Uint64,s)
909
-
910
- ## integer to string functions ##
911
-
912
- const _jl_dig_syms = "0123456789abcdefghijklmnopqrstuvwxyz".data
913
-
914
- function int2str(n::Union(Int64,Uint64), b::Integer, l::Int)
915
- if b < 2 || b > 36; error("int2str: invalid base ", b); end
916
- neg = n < 0
917
- n = unsigned(abs(n))
918
- b = convert(typeof(n), b)
919
- ndig = ndigits(n, b)
920
- sz = max(convert(Int, ndig), l) + neg
921
- data = Array(Uint8, sz)
922
- i = sz
923
- if ispow2(b)
924
- digmask = b-1
925
- shift = trailing_zeros(b)
926
- while i > neg
927
- ch = n & digmask
928
- data[i] = _jl_dig_syms[int(ch)+1]
929
- n >>= shift
930
- i -= 1
931
- end
932
- else
933
- while i > neg
934
- ch = n % b
935
- data[i] = _jl_dig_syms[int(ch)+1]
936
- n = div(n,b)
937
- i -= 1
938
- end
939
- end
940
- if neg
941
- data[1] = '-'
942
- end
943
- ASCIIString(data)
944
- end
945
- int2str(n::Integer, b::Integer) = int2str(n, b, 0)
946
- int2str(n::Integer, b::Integer, l::Int) = int2str(int64(n), b, l)
947
-
948
- string(x::Signed) = dec(int64(x))
949
- cstring(x::Signed) = dec(int64(x))
950
-
951
- ## string to float functions ##
952
-
953
- function float64_isvalid(s::String, out::Array{Float64,1})
954
- s = cstring(s)
955
- return (ccall(:jl_strtod, Int32, (Ptr{Uint8},Ptr{Float64}), s, out)==0)
956
- end
957
-
958
- function float32_isvalid(s::String, out::Array{Float32,1})
959
- s = cstring(s)
960
- return (ccall(:jl_strtof, Int32, (Ptr{Uint8},Ptr{Float32}), s, out)==0)
961
- end
962
-
963
- begin
964
- local tmp::Array{Float64,1} = Array(Float64,1)
965
- local tmpf::Array{Float32,1} = Array(Float32,1)
966
- global float64, float32
967
- function float64(s::String)
968
- if !float64_isvalid(s, tmp)
969
- throw(ArgumentError("float64(String): invalid number format"))
970
- end
971
- return tmp[1]
972
- end
973
-
974
- function float32(s::String)
975
- if !float32_isvalid(s, tmpf)
976
- throw(ArgumentError("float32(String): invalid number format"))
977
- end
978
- return tmpf[1]
979
- end
980
- end
981
-
982
- float(x::String) = float64(x)
983
- parse_float(x::String) = float64(x)
984
- parse_float(::Type{Float64}, x::String) = float64(x)
985
- parse_float(::Type{Float32}, x::String) = float32(x)
986
-
987
- # copying a byte string (generally not needed due to "immutability")
988
-
989
- strcpy{T<:ByteString}(s::T) = T(copy(s.data))
990
-
991
- # lexicographically compare byte arrays (used by Latin-1 and UTF-8)
992
-
993
- function lexcmp(a::Array{Uint8,1}, b::Array{Uint8,1})
994
- c = ccall(:memcmp, Int32, (Ptr{Uint8}, Ptr{Uint8}, Uint),
995
- a, b, min(length(a),length(b)))
996
- c < 0 ? -1 : c > 0 ? +1 : cmp(length(a),length(b))
997
- end
998
-
999
- # find the index of the first occurrence of a byte value in a byte array
1000
-
1001
- function memchr(a::Array{Uint8,1}, b::Integer)
1002
- p = pointer(a)
1003
- q = ccall(:memchr, Ptr{Uint8}, (Ptr{Uint8}, Int32, Uint), p, b, length(a))
1004
- q == C_NULL ? 0 : q - p + 1
1005
- end
1006
-
1007
- # concatenate byte arrays into a single array
1008
-
1009
- memcat() = Array(Uint8,0)
1010
- memcat(a::Array{Uint8,1}) = copy(a)
1011
-
1012
- function memcat(arrays::Array{Uint8,1}...)
1013
- n = 0
1014
- for a in arrays
1015
- n += length(a)
1016
- end
1017
- arr = Array(Uint8, n)
1018
- ptr = pointer(arr)
1019
- offset = 0
1020
- for a in arrays
1021
- ccall(:memcpy, Ptr{Uint8}, (Ptr{Uint8}, Ptr{Uint8}, Uint),
1022
- ptr+offset, a, length(a))
1023
- offset += length(a)
1024
- end
1025
- return arr
1026
- end
1027
-
1028
- # concatenate the data fields of byte strings
1029
-
1030
- memcat(s::ByteString) = memcat(s.data)
1031
- memcat(sx::ByteString...) = memcat(map(s->s.data, sx)...)