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
@@ -1,158 +0,0 @@
1
- within Modelica;
2
- package Constants
3
- "Library of mathematical constants and constants of nature (e.g., pi, eps, R, sigma)"
4
-
5
- import SI = Modelica.SIunits;
6
- import NonSI = Modelica.SIunits.Conversions.NonSIunits;
7
-
8
- extends Modelica.Icons.Library2;
9
-
10
- // Mathematical constants
11
- final constant Real e=Modelica.Math.exp(1.0);
12
- final constant Real pi=2*Modelica.Math.asin(1.0); // 3.14159265358979;
13
- final constant Real D2R=pi/180 "Degree to Radian";
14
- final constant Real R2D=180/pi "Radian to Degree";
15
-
16
- // Machine dependent constants
17
- // (the definition is a temporary fix since not adapted to the
18
- // machine where the Modelica translator is running)
19
- final constant Real eps=1.e-15 "Biggest number such that 1.0 + eps = 1.0";
20
- final constant Real small=1.e-60
21
- "Smallest number such that small and -small are representable on the machine";
22
- final constant Real inf=1.e+60
23
- "Biggest Real number such that inf and -inf are representable on the machine";
24
- final constant Integer Integer_inf=2147483647
25
- "Biggest Integer number such that Integer_inf and -Integer_inf are representable on the machine";
26
-
27
- // Constants of nature
28
- // (name, value, description from http://physics.nist.gov/cuu/Constants/)
29
- final constant SI.Velocity c=299792458 "Speed of light in vacuum";
30
- final constant SI.Acceleration g_n=9.80665
31
- "Standard acceleration of gravity on earth";
32
- final constant Real G(final unit="m3/(kg.s2)") = 6.6742e-11
33
- "Newtonian constant of gravitation";
34
- final constant SI.FaradayConstant F = 9.64853399e4 "Faraday constant, C/mol";
35
- final constant Real h(final unit="J.s") = 6.6260693e-34 "Planck constant";
36
- final constant Real k(final unit="J/K") = 1.3806505e-23 "Boltzmann constant";
37
- final constant Real R(final unit="J/(mol.K)") = 8.314472 "Molar gas constant";
38
- final constant Real sigma(final unit="W/(m2.K4)") = 5.670400e-8
39
- "Stefan-Boltzmann constant";
40
- final constant Real N_A(final unit="1/mol") = 6.0221415e23
41
- "Avogadro constant";
42
- final constant Real mue_0(final unit="N/A2") = 4*pi*1.e-7 "Magnetic constant";
43
- final constant Real epsilon_0(final unit="F/m") = 1/(mue_0*c*c)
44
- "Electric constant";
45
- final constant NonSI.Temperature_degC T_zero=-273.15
46
- "Absolute zero temperature";
47
-
48
- annotation (
49
- Documentation(info="<html>
50
- <p>
51
- This package provides often needed constants from mathematics, machine
52
- dependent constants and constants from nature. The latter constants
53
- (name, value, description) are from the following source:
54
- </p>
55
-
56
- <dl>
57
- <dt>Peter J. Mohr and Barry N. Taylor (1999):</dt>
58
- <dd><b>CODATA Recommended Values of the Fundamental Physical Constants: 1998</b>.
59
- Journal of Physical and Chemical Reference Data, Vol. 28, No. 6, 1999 and
60
- Reviews of Modern Physics, Vol. 72, No. 2, 2000. See also <a href=
61
- \"http://physics.nist.gov/cuu/Constants/\">http://physics.nist.gov/cuu/Constants/</a></dd>
62
- </dl>
63
-
64
- <p>CODATA is the Committee on Data for Science and Technology.</p>
65
-
66
- <dl>
67
- <dt><b>Main Author:</b></dt>
68
- <dd><a href=\"http://www.robotic.dlr.de/Martin.Otter/\">Martin Otter</a><br>
69
- Deutsches Zentrum f&uuml;r Luft und Raumfahrt e. V. (DLR)<br>
70
- Oberpfaffenhofen<br>
71
- Postfach 11 16<br>
72
- D-82230 We&szlig;ling<br>
73
- email: <a href=\"mailto:Martin.Otter@dlr.de\">Martin.Otter@dlr.de</a></dd>
74
- </dl>
75
-
76
-
77
- <p>
78
- Copyright &copy; 1998-2009, Modelica Association and DLR.
79
- </p>
80
- <p>
81
- <i>This Modelica package is <b>free</b> software; it can be redistributed and/or modified
82
- under the terms of the <b>Modelica license</b>, see the license conditions
83
- and the accompanying <b>disclaimer</b>
84
- <a href=\"Modelica://Modelica.UsersGuide.ModelicaLicense\">here</a>.</i>
85
- </p><br>
86
- </html>
87
- ", revisions="<html>
88
- <ul>
89
- <li><i>Nov 8, 2004</i>
90
- by <a href=\"http://www.robotic.dlr.de/Christian.Schweiger/\">Christian Schweiger</a>:<br>
91
- Constants updated according to 2002 CODATA values.</li>
92
- <li><i>Dec 9, 1999</i>
93
- by <a href=\"http://www.robotic.dlr.de/Martin.Otter/\">Martin Otter</a>:<br>
94
- Constants updated according to 1998 CODATA values. Using names, values
95
- and description text from this source. Included magnetic and
96
- electric constant.</li>
97
- <li><i>Sep 18, 1999</i>
98
- by <a href=\"http://www.robotic.dlr.de/Martin.Otter/\">Martin Otter</a>:<br>
99
- Constants eps, inf, small introduced.</li>
100
- <li><i>Nov 15, 1997</i>
101
- by <a href=\"http://www.robotic.dlr.de/Martin.Otter/\">Martin Otter</a>:<br>
102
- Realized.</li>
103
- </ul>
104
- </html>"),
105
- Invisible=true,
106
- Icon(coordinateSystem(preserveAspectRatio=true, extent={{-100,-100},{100,
107
- 100}}), graphics={
108
- Line(
109
- points={{-34,-38},{12,-38}},
110
- color={0,0,0},
111
- thickness=0.5),
112
- Line(
113
- points={{-20,-38},{-24,-48},{-28,-56},{-34,-64}},
114
- color={0,0,0},
115
- thickness=0.5),
116
- Line(
117
- points={{-2,-38},{2,-46},{8,-56},{14,-64}},
118
- color={0,0,0},
119
- thickness=0.5)}),
120
- Diagram(graphics={
121
- Rectangle(
122
- extent={{200,162},{380,312}},
123
- fillColor={235,235,235},
124
- fillPattern=FillPattern.Solid,
125
- lineColor={0,0,255}),
126
- Polygon(
127
- points={{200,312},{220,332},{400,332},{380,312},{200,312}},
128
- fillColor={235,235,235},
129
- fillPattern=FillPattern.Solid,
130
- lineColor={0,0,255}),
131
- Polygon(
132
- points={{400,332},{400,182},{380,162},{380,312},{400,332}},
133
- fillColor={235,235,235},
134
- fillPattern=FillPattern.Solid,
135
- lineColor={0,0,255}),
136
- Text(
137
- extent={{210,302},{370,272}},
138
- lineColor={160,160,164},
139
- fillColor={0,0,0},
140
- fillPattern=FillPattern.Solid,
141
- textString="Library"),
142
- Line(
143
- points={{266,224},{312,224}},
144
- color={0,0,0},
145
- thickness=1),
146
- Line(
147
- points={{280,224},{276,214},{272,206},{266,198}},
148
- color={0,0,0},
149
- thickness=1),
150
- Line(
151
- points={{298,224},{302,216},{308,206},{314,198}},
152
- color={0,0,0},
153
- thickness=1),
154
- Text(
155
- extent={{152,412},{458,334}},
156
- lineColor={255,0,0},
157
- textString="Modelica.Constants")}));
158
- end Constants;
@@ -1,411 +0,0 @@
1
- A Sukodku solver by Chris Kuklewicz (haskell (at) list (dot) mightyreason (dot) com)
2
- The usual BSD license applies, copyright 2006.
3
- Uploaded to HaskellWiki as DancingSudoku.lhs
4
-
5
- I compile on a powerbook G4 (Mac OS X, ghc 6.4.2) using
6
- ghc -optc-O3 -funbox-strict-fields -O2 --make -fglasgow-exts
7
-
8
- This is a translation of Knuth's GDANCE from dance.w / dance.c
9
-
10
- http://www-cs-faculty.stanford.edu/~uno/preprints.html
11
- http://www-cs-faculty.stanford.edu/~uno/programs.html
12
- http://en.wikipedia.org/wiki/Dancing_Links
13
-
14
- I have an older verison that uses lazy ST to return the solutions on
15
- demand, which was more useful when trying to generate new puzzles to
16
- solve.
17
-
18
- > module Main where
19
-
20
- > import Prelude hiding (read)
21
- > import Control.Monad
22
- > import Control.Monad.Fix
23
- > import Data.Array.IArray
24
- > import Control.Monad.ST.Strict
25
- > import Data.STRef.Strict
26
- > import Data.Char(intToDigit,digitToInt)
27
- > import Data.List(unfoldr,intersperse,inits)
28
-
29
- > new = newSTRef
30
- > {-# INLINE new #-}
31
- > read = readSTRef
32
- > {-# INLINE read #-}
33
- > write = writeSTRef
34
- > {-# INLINE write #-}
35
- > modify = modifySTRef
36
- > {-# INLINE modify #-}
37
-
38
- Data types to prevent mixing different index and value types
39
-
40
- > type A = Int
41
- > newtype R = R A deriving (Show,Read,Eq,Ord,Ix,Enum)
42
- > newtype C = C A deriving (Show,Read,Eq,Ord,Ix,Enum)
43
- > newtype V = V A deriving (Show,Read,Eq,Ord,Ix,Enum)
44
- > newtype B = B A deriving (Show,Read,Eq,Ord,Ix,Enum)
45
-
46
- Sudoku also has block constraints, so we want to look up a block
47
- index in an array:
48
-
49
- > lookupBlock :: Array (R,C) B
50
- > lookupBlock = listArray bb [ toBlock ij | ij <- range bb ]
51
- > where ra :: Array Int B
52
- > ra = listArray (0,pred (rangeSize b)) [B (fst b) .. B (snd b)]
53
- > toBlock (R i,C j) = ra ! ( (div (index b j) 3)+3*(div (index b i) 3) )
54
-
55
- The values for an unknown location is 'u'.
56
- The bound and range are given by b and rng. And bb is a 2D bound.
57
-
58
- > u = V 0 -- unknown value
59
- > b :: (Int,Int)
60
- > b = (1,9) -- min and max bounds
61
- > rng = enumFromTo (fst b) (snd b) -- list from '1' to '9'
62
- > bb = ((R (fst b),C (fst b)),(R (snd b),C (snd b)))
63
-
64
- A Spec can be turned into a parsed array with ease:
65
-
66
- > type Hint = ((R,C),V)
67
- > newtype Spec = Spec [Hint] deriving (Eq,Show)
68
-
69
- > type PA = Array (R,C) V
70
-
71
- > parse :: Spec -> PA
72
- > parse (Spec parsed) = let acc old new = new
73
- > in accumArray acc u bb parsed
74
-
75
- The dancing links algorithm depends on a sparse 2D node structure.
76
- Each column represents a constraint. Each row represents a Hint.
77
- The number of possible hints is 9x9x9 = 271
78
-
79
- > type (MutInt st) = (STRef st) Int
80
-
81
- The pointer types:
82
-
83
- > type (NodePtr st) = (STRef st) (Node st)
84
- > type (HeadPtr st) = (STRef st) (Head st)
85
-
86
- The structures is a 2D grid of nodes, with Col's on the top of
87
- columns and a sparse collection of nodes. Note that topNode of Head
88
- is not a strict field. This is because the topNode needs to refer to
89
- the Head, and they are both created monadically.
90
-
91
- > type HeadName = (Int,Int,Int) -- see below for meaning
92
-
93
- > data Head st = Head {headName:: !HeadName
94
- > ,topNode:: (Node st) -- header node for this column
95
- > ,len:: !(MutInt st) -- number of nodes below this head
96
- > ,next,prev:: !(HeadPtr st) -- doubly-linked list
97
- > }
98
-
99
- > data Node st = Node {getHint:: !Hint
100
- > ,getHead:: !(Head st) -- head for the column this node is in
101
- > ,up,down,left,right :: !(NodePtr st) -- two doubly-linked lists
102
- > }
103
-
104
- > instance Eq (Head st) where
105
- > a == b = headName a == headName b
106
-
107
- > instance Eq (Node st) where
108
- > a == b = up a == up b
109
-
110
- To initialize the structures is a bit tedious. Knuth's code reads in
111
- the problem description from a data file and builds the structure
112
- based on that. Rather than short strings, I will use HeadName as the
113
- identifier.
114
-
115
- The columns are (0,4,5) for nodes that put some value in Row 4 Col 5
116
- (1,2,3) for nodes that put Val 3 in Row 2 and some column
117
- (2,7,4) for nodes that put Val 4 in Col 7 and some row
118
- (3,1,8) for nodes that put Val 8 in some (row,column) in Block 1
119
-
120
- The first head is (0,0,0) which is the root. The non-root head data
121
- will be put in an array with the HeadName as an index.
122
-
123
- > headNames :: [HeadName]
124
- > headNames = let names = [0,1,2,3]
125
- > in (0,0,0):[ (l,i,j) | l<-names,i<-rng,j<-rng]
126
-
127
- A "row" of left-right linked nodes is a move. It is defined by a
128
- list of head names.
129
-
130
- > type Move = [(Hint,HeadName)]
131
-
132
- Initial hints are enforced by making them the only legal move for
133
- that location. Blank entries with value 'u = V 0' have a move for
134
- all possible values [V 1..V 9].
135
-
136
- > parseSpec :: Spec -> [Move]
137
- > parseSpec spec =
138
- > let rowsFrom :: Hint -> [Move]
139
- > rowsFrom (rc@(R r,C c),mv@(V v')) =
140
- > if mv == u then [ rsyms v | v <- rng ]
141
- > else [ rsyms v' ]
142
- > where (B b) = lookupBlock ! rc
143
- > rsyms :: A -> Move
144
- > rsyms v = map ( (,) (rc,V v) ) [(0,r,c),(1,r,v),(2,c,v),(3,b,v)]
145
- > in concatMap rowsFrom (assocs (parse spec))
146
-
147
- mkDList creates doubly linked lists using a monadic smart
148
- constructor and the recursive "mdo" notation as documented at
149
- http://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html#mdo-notation
150
- http://www.cse.ogi.edu/PacSoft/projects/rmb/
151
-
152
- For more fun with this, see the wiki page at
153
- http://haskell.org/hawiki/TyingTheKnot
154
-
155
- > mkDList :: (MonadFix m) => (b -> a -> b -> m b) -> [a] -> m b
156
- > mkDList _ [] = error "must have at least one element"
157
- > mkDList mkNode xs = mdo (first,last) <- go last xs first
158
- > return first
159
- > where go prev [] next = return (next,prev)
160
- > go prev (x:xs) next = mdo this <- mkNode prev x rest
161
- > (rest,last) <- go this xs next
162
- > return (this,last)
163
-
164
- toSimple takes a function and a header node and iterates (read . function)
165
- until the header is reached again, but does not return the header
166
- itself.
167
-
168
- > toSingle step header = loop =<< (read . step) header
169
- > where loop y = if header/=y then liftM (y:) (read (step y) >>= loop)
170
- > else return []
171
- >
172
-
173
- forEach is an optimization of (toSimple step header >>= mapM_ act)
174
-
175
- > forEach step header act = loop =<< (read . step) header
176
- > where loop y = if header/=y then (act y >> (read (step y)) >>= loop)
177
- > else return ()
178
-
179
- Now make the root node and all the head nodes. This also exploits mdo:
180
-
181
- > makeHeads :: [HeadName] -> (ST st) (Head st)
182
- > makeHeads names = mkDList makeHead names
183
- > where makeHead before name after = mdo
184
- > ~newTopNode <- liftM4 (Node ((R 0,C 0),V 0) newHead) (new newTopNode) (new newTopNode)
185
- > (new newTopNode) (new newTopNode)
186
- > newHead <- liftM3 (Head name newTopNode)
187
- > (new 0) (new after) (new before)
188
- > return newHead
189
-
190
- The Head nodes will be places in an array for easy lookup while building moves:
191
-
192
- > type HArray st = Array HeadName (Head st)
193
- > hBounds = ((0,1,1),(3,9,9))
194
- > type Root st = (Head st,HArray st)
195
-
196
- The addMove function creates the (four) nodes that represent a move and adds
197
- them to the data structure. The HArray in Root makes for a fast
198
- lookup of the Head data.
199
-
200
- > addMove :: forall st. (Root st) -> Move -> (ST st) (Node st)
201
- > addMove (_,ha) move = mkDList addNode move
202
- > where addNode :: (Node st) -> (Hint,HeadName) -> (Node st) -> (ST st) (Node st)
203
- > addNode before (hint,name) after = do
204
- > let head = ha ! name
205
- > let below = topNode head
206
- > above <- read (up below)
207
- > newNode <- liftM4 (Node hint head) (new above) (new below)
208
- > (new before) (new after)
209
- > write (down above) newNode
210
- > write (up below) newNode
211
- > modify (len head) succ
212
- > l <- read (len head)
213
- > seq l (return newNode)
214
-
215
- Create the column headers, including the fast lookup array. These
216
- will be resused between puzzles.
217
-
218
- > initHA :: (ST st) (Root st)
219
- > initHA = do
220
- > root <- makeHeads headNames
221
- > heads <- toSingle next root
222
- > let ha = array hBounds (zip (map headName heads) heads)
223
- > return (root,ha)
224
-
225
- Take the Root from initHA and a puzzle Spec and fill in all the Nodes.
226
-
227
- > initRoot :: (Root st) -> Spec -> (ST st) ()
228
- > initRoot root spec = do
229
- > let moves = parseSpec spec
230
- > mapM_ (addMove root) moves
231
-
232
- Return the column headers to their condition after initHA
233
-
234
- > resetRoot :: (Root st) -> (ST st) ()
235
- > resetRoot (root,ha) = do
236
- > let heads@(first:_) = elems ha
237
- > let resetHead head = do
238
- > write (len head) 0
239
- > let node = topNode head
240
- > write (down node) node
241
- > write (up node) node
242
- > reset (last:[]) = do
243
- > write (prev root) last
244
- > write (next root) first
245
- > reset (before:xs@(head:[])) = do
246
- > resetHead head
247
- > write (prev head) before
248
- > write (next head) root
249
- > reset xs
250
- > reset (before:xs@(head:after:_)) = do
251
- > resetHead head
252
- > write (prev head) before
253
- > write (next head) after
254
- > reset xs
255
- > reset (root:heads)
256
-
257
- getBest iterates over the unmet constraints (i.e. the Head that are
258
- reachable from root). It locates the one with the lowest number of
259
- possible moves that will solve it, aborting early if it finds 0 or 1
260
- moves.
261
-
262
- > getBest :: (Head st) -> (ST st) (Maybe (Head st))
263
- > getBest root = do
264
- > first <- read (next root)
265
- > if first == root then return Nothing
266
- > else do
267
- > let findMin m best head | head == root = return (Just best)
268
- > | otherwise = do
269
- > l <- read (len head)
270
- > if l <= 1 then return (Just head)
271
- > else if l < m then findMin l head =<< read (next head)
272
- > else findMin l best =<< read (next head)
273
- > findMin 10 first first
274
-
275
- The unlink and relink operations are from where Knuth got the name
276
- "dancing links". So long as "a" does not change in between, the
277
- relink call will undo the unlink call. Similarly, the unconver will
278
- undo the changes of cover and unconverOthers will undo coverOthers.
279
-
280
- > unlink :: (a->STRef st a) -> (a->STRef st a) -> a -> (ST st) ()
281
- > unlink prev next a = do
282
- > before <- read (prev a)
283
- > after <- read (next a)
284
- > write (next before) after
285
- > write (prev after) before
286
-
287
- > relink :: (a->STRef st a) -> (a->STRef st a) -> a -> (ST st) ()
288
- > relink prev next a = do
289
- > before <- read (prev a)
290
- > after <- read (next a)
291
- > write (next before) a
292
- > write (prev after) a
293
-
294
- > cover :: (Head st) -> (ST st) ()
295
- > cover head = do
296
- > unlink prev next head
297
- > let eachDown rr = forEach right rr eachRight
298
- > eachRight nn = do
299
- > unlink up down nn
300
- > modify (len $ getHead nn) pred
301
- > forEach down (topNode head) eachDown
302
-
303
- > uncover :: (Head st) -> (ST st) ()
304
- > uncover head = do
305
- > let eachUp rr = forEach left rr eachLeft
306
- > eachLeft nn = do
307
- > modify (len $ getHead nn) succ
308
- > relink up down nn
309
- > forEach up (topNode head) eachUp
310
- > relink prev next head
311
-
312
- > coverOthers :: (Node st) -> (ST st) ()
313
- > coverOthers node = forEach right node (cover . getHead)
314
-
315
- > uncoverOthers :: (Node st) -> (ST st) ()
316
- > uncoverOthers node = forEach left node (uncover . getHead)
317
-
318
- A helper function for gdance:
319
-
320
- > choicesToSpec :: [(Node st)] -> Spec
321
- > choicesToSpec = Spec . (map getHint)
322
-
323
- This is the heart of the algorithm. I have altered it to return only
324
- the first solution, or produce an error if none is found.
325
-
326
- Knuth used several goto links to do what is done below with tail
327
- recursion.
328
-
329
- > gdance :: (Head st) -> (ST st) Spec -- [Spec]
330
- > gdance root =
331
- > let
332
- > forward choices = do
333
- > maybeHead <- getBest root
334
- > case maybeHead of
335
- > Nothing -> if null choices
336
- > then error "No choices in forward" -- return [] -- for [Spec]
337
- > else do -- nextSols <- recover choices -- for [Spec]
338
- > return $ (choicesToSpec choices) -- :nextSols -- for [Spec]
339
- > Just head -> do cover head
340
- > startRow <- readSTRef (down (topNode head))
341
- > advance (startRow:choices)
342
- >
343
- > advance choices@(newRow:oldChoices) = do
344
- > let endOfRows = topNode (getHead newRow)
345
- > if (newRow == endOfRows)
346
- > then do uncover (getHead newRow)
347
- > if (null oldChoices)
348
- > then error "No choices in advance" -- return [] -- for [Spec]
349
- > else recover oldChoices
350
- > else do coverOthers newRow
351
- > forward choices
352
- >
353
- > recover (oldRow:oldChoices) = do
354
- > uncoverOthers oldRow
355
- > newRow <- readSTRef (down oldRow)
356
- > advance (newRow:oldChoices)
357
- >
358
- > in forward []
359
-
360
-
361
- Convert a text board into a Spec
362
-
363
- > parseBoard :: String -> Spec
364
- > parseBoard s = Spec (zip rcs vs'check)
365
- > where rcs :: [(R,C)]
366
- > rcs = [ (R r,C c) | r <- rng, c <- rng ]
367
- > isUnset c = (c=='.') || (c==' ') || (c=='0')
368
- > isHint c = ('1'<=c) && (c<='9')
369
- > cs = take 81 $ filter (\c -> isUnset c || isHint c) s
370
- > vs :: [V]
371
- > vs = map (\c -> if isUnset c then u else (V $ digitToInt c)) cs
372
- > vs'check = if 81==length vs then vs else error ("parse of board failed\n"++s)
373
-
374
- This is quite useful as a utility function which partitions the list into groups of n elements.
375
- Used by showSpec.
376
-
377
- > groupTake :: Int->[a]->[[a]]
378
- > groupTake n b = unfoldr foo b
379
- > where foo [] = Nothing
380
- > foo b = Just (splitAt n b)
381
-
382
- Make a nice 2D ascii board from the Spec (not used at the moment)
383
-
384
- > showSpec :: Spec -> String
385
- > showSpec spec = let pa = parse spec
386
- > g = groupTake 9 (map (\(V v) -> if v == 0 then '.' else intToDigit v) $ elems pa)
387
- > addV line = concat $ intersperse "|" (groupTake 3 line)
388
- > addH list = concat $ intersperse ["---+---+---"] (groupTake 3 list)
389
- > in unlines $ addH (map addV g)
390
-
391
- One line display
392
-
393
- > showCompact spec = map (\(V v) -> intToDigit v) (elems (parse spec))
394
-
395
- The main routine is designed to handle the input from http://www.csse.uwa.edu.au/~gordon/sudoku17
396
-
397
- > main = do
398
- > all <- getContents
399
- > let puzzles = zip [1..] (map parseBoard (lines all))
400
- > root <- stToIO initHA
401
- > let act :: (Int,Spec) -> IO ()
402
- > act (i,spec) = do
403
- > answer <- stToIO (do initRoot root spec
404
- > answer <- gdance (fst root)
405
- > resetRoot root
406
- > return answer)
407
- > print (i,showCompact answer)
408
- > mapM_ act puzzles
409
-
410
- > inits' xn@(_:_) = zipWith take [0..] $ map (const xn) $ undefined:xn
411
- > inits' _ = undefined