pygments.rb 0.5.4 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (267) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +3 -0
  4. data/lexers +0 -0
  5. data/lib/pygments/popen.rb +3 -2
  6. data/lib/pygments/version.rb +1 -1
  7. data/pygments.rb.gemspec +2 -1
  8. data/vendor/pygments-main/AUTHORS +20 -1
  9. data/vendor/pygments-main/CHANGES +55 -3
  10. data/vendor/pygments-main/LICENSE +1 -1
  11. data/vendor/pygments-main/MANIFEST.in +1 -1
  12. data/vendor/pygments-main/Makefile +5 -8
  13. data/vendor/pygments-main/REVISION +1 -1
  14. data/vendor/pygments-main/doc/Makefile +153 -0
  15. data/vendor/pygments-main/doc/_static/favicon.ico +0 -0
  16. data/vendor/pygments-main/doc/_static/logo_new.png +0 -0
  17. data/vendor/pygments-main/doc/_static/logo_only.png +0 -0
  18. data/vendor/pygments-main/doc/_templates/docssidebar.html +3 -0
  19. data/vendor/pygments-main/doc/_templates/indexsidebar.html +25 -0
  20. data/vendor/pygments-main/doc/_themes/pygments14/layout.html +98 -0
  21. data/vendor/pygments-main/doc/_themes/pygments14/static/bodybg.png +0 -0
  22. data/vendor/pygments-main/doc/_themes/pygments14/static/docbg.png +0 -0
  23. data/vendor/pygments-main/doc/_themes/pygments14/static/listitem.png +0 -0
  24. data/vendor/pygments-main/doc/_themes/pygments14/static/logo.png +0 -0
  25. data/vendor/pygments-main/doc/_themes/pygments14/static/pocoo.png +0 -0
  26. data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +401 -0
  27. data/vendor/pygments-main/doc/_themes/pygments14/theme.conf +15 -0
  28. data/vendor/pygments-main/doc/conf.py +249 -0
  29. data/vendor/pygments-main/doc/docs/api.rst +316 -0
  30. data/vendor/pygments-main/doc/docs/authors.rst +4 -0
  31. data/vendor/pygments-main/doc/docs/changelog.rst +1 -0
  32. data/vendor/pygments-main/{docs/src/cmdline.txt → doc/docs/cmdline.rst} +9 -11
  33. data/vendor/pygments-main/{docs/src/filterdevelopment.txt → doc/docs/filterdevelopment.rst} +1 -1
  34. data/vendor/pygments-main/{docs/src/filters.txt → doc/docs/filters.rst} +4 -5
  35. data/vendor/pygments-main/{docs/src/formatterdevelopment.txt → doc/docs/formatterdevelopment.rst} +1 -1
  36. data/vendor/pygments-main/{docs/src/formatters.txt → doc/docs/formatters.rst} +6 -6
  37. data/vendor/pygments-main/doc/docs/index.rst +66 -0
  38. data/vendor/pygments-main/{docs/src/integrate.txt → doc/docs/integrate.rst} +3 -7
  39. data/vendor/pygments-main/{docs/src/java.txt → doc/docs/java.rst} +0 -0
  40. data/vendor/pygments-main/{docs/src/lexerdevelopment.txt → doc/docs/lexerdevelopment.rst} +13 -14
  41. data/vendor/pygments-main/{docs/src/lexers.txt → doc/docs/lexers.rst} +7 -5
  42. data/vendor/pygments-main/{docs/src/moinmoin.txt → doc/docs/moinmoin.rst} +0 -0
  43. data/vendor/pygments-main/{docs/src/plugins.txt → doc/docs/plugins.rst} +0 -0
  44. data/vendor/pygments-main/{docs/src/quickstart.txt → doc/docs/quickstart.rst} +22 -19
  45. data/vendor/pygments-main/{docs/src/rstdirective.txt → doc/docs/rstdirective.rst} +0 -0
  46. data/vendor/pygments-main/{docs/src/styles.txt → doc/docs/styles.rst} +2 -2
  47. data/vendor/pygments-main/{docs/src/tokens.txt → doc/docs/tokens.rst} +10 -7
  48. data/vendor/pygments-main/{docs/src/unicode.txt → doc/docs/unicode.rst} +8 -7
  49. data/vendor/pygments-main/doc/download.rst +41 -0
  50. data/vendor/pygments-main/doc/faq.rst +143 -0
  51. data/vendor/pygments-main/doc/index.rst +53 -0
  52. data/vendor/pygments-main/doc/languages.rst +151 -0
  53. data/vendor/pygments-main/doc/make.bat +190 -0
  54. data/vendor/pygments-main/{docs → doc}/pygmentize.1 +0 -0
  55. data/vendor/pygments-main/external/autopygmentize +65 -48
  56. data/vendor/pygments-main/external/markdown-processor.py +15 -15
  57. data/vendor/pygments-main/external/moin-parser.py +1 -1
  58. data/vendor/pygments-main/external/rst-directive.py +2 -3
  59. data/vendor/pygments-main/ez_setup.py +340 -234
  60. data/vendor/pygments-main/pygments/__init__.py +4 -4
  61. data/vendor/pygments-main/pygments/cmdline.py +81 -68
  62. data/vendor/pygments-main/pygments/console.py +1 -1
  63. data/vendor/pygments-main/pygments/filter.py +1 -1
  64. data/vendor/pygments-main/pygments/filters/__init__.py +11 -9
  65. data/vendor/pygments-main/pygments/formatter.py +3 -3
  66. data/vendor/pygments-main/pygments/formatters/__init__.py +5 -3
  67. data/vendor/pygments-main/pygments/formatters/_mapping.py +16 -5
  68. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
  69. data/vendor/pygments-main/pygments/formatters/html.py +44 -26
  70. data/vendor/pygments-main/pygments/formatters/img.py +21 -14
  71. data/vendor/pygments-main/pygments/formatters/latex.py +104 -12
  72. data/vendor/pygments-main/pygments/formatters/other.py +53 -6
  73. data/vendor/pygments-main/pygments/formatters/rtf.py +30 -16
  74. data/vendor/pygments-main/pygments/formatters/svg.py +2 -2
  75. data/vendor/pygments-main/pygments/formatters/terminal.py +41 -1
  76. data/vendor/pygments-main/pygments/formatters/terminal256.py +2 -2
  77. data/vendor/pygments-main/pygments/lexer.py +59 -39
  78. data/vendor/pygments-main/pygments/lexers/__init__.py +38 -15
  79. data/vendor/pygments-main/pygments/lexers/_asybuiltins.py +1 -1
  80. data/vendor/pygments-main/pygments/lexers/_clbuiltins.py +15 -15
  81. data/vendor/pygments-main/pygments/lexers/_cocoabuiltins.py +73 -0
  82. data/vendor/pygments-main/pygments/lexers/_lassobuiltins.py +11 -1
  83. data/vendor/pygments-main/pygments/lexers/_luabuiltins.py +14 -8
  84. data/vendor/pygments-main/pygments/lexers/_mapping.py +81 -30
  85. data/vendor/pygments-main/pygments/lexers/_openedgebuiltins.py +1 -1
  86. data/vendor/pygments-main/pygments/lexers/_phpbuiltins.py +1067 -95
  87. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +7 -7
  88. data/vendor/pygments-main/pygments/lexers/_robotframeworklexer.py +5 -4
  89. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +1 -1
  90. data/vendor/pygments-main/pygments/lexers/_sourcemodbuiltins.py +12 -7
  91. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +112 -18
  92. data/vendor/pygments-main/pygments/lexers/_vimbuiltins.py +1 -1
  93. data/vendor/pygments-main/pygments/lexers/agile.py +644 -382
  94. data/vendor/pygments-main/pygments/lexers/asm.py +66 -29
  95. data/vendor/pygments-main/pygments/lexers/compiled.py +1643 -174
  96. data/vendor/pygments-main/pygments/lexers/dalvik.py +27 -6
  97. data/vendor/pygments-main/pygments/lexers/dotnet.py +45 -33
  98. data/vendor/pygments-main/pygments/lexers/foxpro.py +3 -3
  99. data/vendor/pygments-main/pygments/lexers/functional.py +1510 -570
  100. data/vendor/pygments-main/pygments/lexers/graph.py +81 -0
  101. data/vendor/pygments-main/pygments/lexers/hdl.py +29 -30
  102. data/vendor/pygments-main/pygments/lexers/inferno.py +96 -0
  103. data/vendor/pygments-main/pygments/lexers/jvm.py +622 -207
  104. data/vendor/pygments-main/pygments/lexers/math.py +438 -70
  105. data/vendor/pygments-main/pygments/lexers/other.py +885 -171
  106. data/vendor/pygments-main/pygments/lexers/parsers.py +24 -24
  107. data/vendor/pygments-main/pygments/lexers/qbasic.py +157 -0
  108. data/vendor/pygments-main/pygments/lexers/rdf.py +99 -0
  109. data/vendor/pygments-main/pygments/lexers/shell.py +28 -25
  110. data/vendor/pygments-main/pygments/lexers/special.py +7 -8
  111. data/vendor/pygments-main/pygments/lexers/sql.py +56 -23
  112. data/vendor/pygments-main/pygments/lexers/templates.py +377 -59
  113. data/vendor/pygments-main/pygments/lexers/text.py +208 -46
  114. data/vendor/pygments-main/pygments/lexers/web.py +729 -264
  115. data/vendor/pygments-main/pygments/modeline.py +1 -1
  116. data/vendor/pygments-main/pygments/plugin.py +1 -1
  117. data/vendor/pygments-main/pygments/scanner.py +1 -1
  118. data/vendor/pygments-main/pygments/sphinxext.py +153 -0
  119. data/vendor/pygments-main/pygments/style.py +3 -2
  120. data/vendor/pygments-main/pygments/styles/__init__.py +5 -1
  121. data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
  122. data/vendor/pygments-main/pygments/styles/borland.py +1 -1
  123. data/vendor/pygments-main/pygments/styles/bw.py +1 -1
  124. data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
  125. data/vendor/pygments-main/pygments/styles/default.py +1 -1
  126. data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
  127. data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
  128. data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
  129. data/vendor/pygments-main/pygments/styles/igor.py +29 -0
  130. data/vendor/pygments-main/pygments/styles/manni.py +1 -1
  131. data/vendor/pygments-main/pygments/styles/monokai.py +4 -4
  132. data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
  133. data/vendor/pygments-main/pygments/styles/native.py +1 -1
  134. data/vendor/pygments-main/pygments/styles/paraiso_dark.py +125 -0
  135. data/vendor/pygments-main/pygments/styles/paraiso_light.py +125 -0
  136. data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
  137. data/vendor/pygments-main/pygments/styles/perldoc.py +1 -1
  138. data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
  139. data/vendor/pygments-main/pygments/styles/tango.py +1 -1
  140. data/vendor/pygments-main/pygments/styles/trac.py +1 -1
  141. data/vendor/pygments-main/pygments/styles/vim.py +1 -1
  142. data/vendor/pygments-main/pygments/styles/vs.py +1 -1
  143. data/vendor/pygments-main/pygments/styles/xcode.py +51 -0
  144. data/vendor/pygments-main/pygments/token.py +4 -1
  145. data/vendor/pygments-main/pygments/unistring.py +6 -5
  146. data/vendor/pygments-main/pygments/util.py +35 -21
  147. data/vendor/pygments-main/scripts/check_sources.py +28 -44
  148. data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +5 -4
  149. data/vendor/pygments-main/scripts/find_codetags.py +27 -19
  150. data/vendor/pygments-main/scripts/find_error.py +16 -13
  151. data/vendor/pygments-main/scripts/get_vimkw.py +3 -3
  152. data/vendor/pygments-main/scripts/vim2pygments.py +9 -7
  153. data/vendor/pygments-main/setup.py +19 -19
  154. data/vendor/pygments-main/tests/examplefiles/99_bottles_of_beer.chpl +118 -0
  155. data/vendor/pygments-main/tests/examplefiles/Error.pmod +38 -0
  156. data/vendor/pygments-main/tests/examplefiles/FakeFile.pike +360 -0
  157. data/vendor/pygments-main/tests/examplefiles/{ANTLRv3.g → antlr_ANTLRv3.g} +0 -0
  158. data/vendor/pygments-main/tests/examplefiles/clojure-weird-keywords.clj +5 -0
  159. data/vendor/pygments-main/tests/examplefiles/core.cljs +52 -0
  160. data/vendor/pygments-main/tests/examplefiles/demo.cfm +13 -1
  161. data/vendor/pygments-main/tests/examplefiles/demo.hbs +12 -0
  162. data/vendor/pygments-main/tests/examplefiles/ember.handlebars +33 -0
  163. data/vendor/pygments-main/tests/examplefiles/example.als +217 -0
  164. data/vendor/pygments-main/tests/examplefiles/example.c +1 -1
  165. data/vendor/pygments-main/tests/examplefiles/example.chai +6 -0
  166. data/vendor/pygments-main/tests/examplefiles/example.coffee +27 -0
  167. data/vendor/pygments-main/tests/examplefiles/example.e +124 -0
  168. data/vendor/pygments-main/tests/examplefiles/example.f90 +8 -0
  169. data/vendor/pygments-main/tests/examplefiles/example.feature +16 -0
  170. data/vendor/pygments-main/tests/examplefiles/example.gd +23 -0
  171. data/vendor/pygments-main/tests/examplefiles/example.gi +64 -0
  172. data/vendor/pygments-main/tests/examplefiles/example.groovy +2 -0
  173. data/vendor/pygments-main/tests/examplefiles/example.hs +27 -0
  174. data/vendor/pygments-main/tests/examplefiles/example.hx +44 -1
  175. data/vendor/pygments-main/tests/examplefiles/example.i6t +32 -0
  176. data/vendor/pygments-main/tests/examplefiles/example.i7x +45 -0
  177. data/vendor/pygments-main/tests/examplefiles/example.inf +374 -0
  178. data/vendor/pygments-main/tests/examplefiles/example.j +564 -0
  179. data/vendor/pygments-main/tests/examplefiles/example.java +16 -0
  180. data/vendor/pygments-main/tests/examplefiles/example.kal +75 -0
  181. data/vendor/pygments-main/tests/examplefiles/example.liquid +42 -0
  182. data/vendor/pygments-main/tests/examplefiles/example.ma +8 -0
  183. data/vendor/pygments-main/tests/examplefiles/example.mq4 +187 -0
  184. data/vendor/pygments-main/tests/examplefiles/example.mqh +123 -0
  185. data/vendor/pygments-main/tests/examplefiles/example.ni +57 -0
  186. data/vendor/pygments-main/tests/examplefiles/example.nix +80 -0
  187. data/vendor/pygments-main/tests/examplefiles/example.pp +8 -0
  188. data/vendor/pygments-main/tests/examplefiles/example.red +257 -0
  189. data/vendor/pygments-main/tests/examplefiles/example.reds +150 -0
  190. data/vendor/pygments-main/tests/examplefiles/example.rkt +677 -29
  191. data/vendor/pygments-main/tests/examplefiles/example.sh +22 -0
  192. data/vendor/pygments-main/tests/examplefiles/example.slim +31 -0
  193. data/vendor/pygments-main/tests/examplefiles/example.sls +51 -0
  194. data/vendor/pygments-main/tests/examplefiles/example.stan +2 -0
  195. data/vendor/pygments-main/tests/examplefiles/example.todotxt +9 -0
  196. data/vendor/pygments-main/tests/examplefiles/exampleScript.cfc +241 -0
  197. data/vendor/pygments-main/tests/examplefiles/exampleTag.cfc +18 -0
  198. data/vendor/pygments-main/tests/examplefiles/example_elixir.ex +192 -350
  199. data/vendor/pygments-main/tests/examplefiles/hash_syntax.rb +5 -0
  200. data/vendor/pygments-main/tests/examplefiles/hello.at +6 -0
  201. data/vendor/pygments-main/tests/examplefiles/hello.golo +5 -0
  202. data/vendor/pygments-main/tests/examplefiles/hello.lsl +12 -0
  203. data/vendor/pygments-main/tests/examplefiles/{File.hy → hybris_File.hy} +0 -0
  204. data/vendor/pygments-main/tests/examplefiles/{mg_sample.pro → idl_sample.pro} +0 -0
  205. data/vendor/pygments-main/tests/examplefiles/iex_example +23 -0
  206. data/vendor/pygments-main/tests/examplefiles/inet_pton6.dg +24 -24
  207. data/vendor/pygments-main/tests/examplefiles/language.hy +165 -0
  208. data/vendor/pygments-main/tests/examplefiles/limbo.b +456 -0
  209. data/vendor/pygments-main/tests/examplefiles/livescript-demo.ls +3 -1
  210. data/vendor/pygments-main/tests/examplefiles/main.cmake +2 -0
  211. data/vendor/pygments-main/tests/examplefiles/objc_example.m +163 -16
  212. data/vendor/pygments-main/tests/examplefiles/{example.p → openedge_example} +0 -0
  213. data/vendor/pygments-main/tests/examplefiles/pawn_example +25 -0
  214. data/vendor/pygments-main/tests/examplefiles/qbasic_example +2 -0
  215. data/vendor/pygments-main/tests/examplefiles/r6rs-comments.scm +23 -0
  216. data/vendor/pygments-main/tests/examplefiles/{robotframework.txt → robotframework_test.txt} +0 -0
  217. data/vendor/pygments-main/tests/examplefiles/rql-queries.rql +34 -0
  218. data/vendor/pygments-main/tests/examplefiles/scope.cirru +43 -0
  219. data/vendor/pygments-main/tests/examplefiles/sparql.rq +23 -0
  220. data/vendor/pygments-main/tests/examplefiles/test.R +37 -5
  221. data/vendor/pygments-main/tests/examplefiles/test.apl +26 -0
  222. data/vendor/pygments-main/tests/examplefiles/test.cyp +123 -0
  223. data/vendor/pygments-main/tests/examplefiles/test.idr +93 -0
  224. data/vendor/pygments-main/tests/examplefiles/test.mask +41 -0
  225. data/vendor/pygments-main/tests/examplefiles/test.pan +54 -0
  226. data/vendor/pygments-main/tests/examplefiles/test.php +3 -1
  227. data/vendor/pygments-main/tests/examplefiles/test.pig +148 -0
  228. data/vendor/pygments-main/tests/examplefiles/test.pwn +253 -0
  229. data/vendor/pygments-main/tests/examplefiles/test.r3 +27 -7
  230. data/vendor/pygments-main/tests/examplefiles/test.rsl +111 -0
  231. data/vendor/pygments-main/tests/examplefiles/test.swift +65 -0
  232. data/vendor/pygments-main/tests/examplefiles/test.zep +33 -0
  233. data/vendor/pygments-main/tests/examplefiles/unicode.go +10 -0
  234. data/vendor/pygments-main/tests/examplefiles/{test.bas → vbnet_test.bas} +0 -0
  235. data/vendor/pygments-main/tests/examplefiles/vctreestatus_hg +4 -0
  236. data/vendor/pygments-main/tests/examplefiles/vimrc +21 -0
  237. data/vendor/pygments-main/tests/run.py +14 -19
  238. data/vendor/pygments-main/tests/string_asserts.py +22 -0
  239. data/vendor/pygments-main/tests/test_basic_api.py +28 -14
  240. data/vendor/pygments-main/tests/test_cfm.py +46 -0
  241. data/vendor/pygments-main/tests/test_clexer.py +208 -3
  242. data/vendor/pygments-main/tests/test_cmdline.py +6 -5
  243. data/vendor/pygments-main/tests/test_examplefiles.py +30 -19
  244. data/vendor/pygments-main/tests/test_html_formatter.py +15 -13
  245. data/vendor/pygments-main/tests/test_latex_formatter.py +4 -2
  246. data/vendor/pygments-main/tests/test_lexers_other.py +11 -11
  247. data/vendor/pygments-main/tests/test_objectiveclexer.py +81 -0
  248. data/vendor/pygments-main/tests/test_perllexer.py +1 -1
  249. data/vendor/pygments-main/tests/test_qbasiclexer.py +43 -0
  250. data/vendor/pygments-main/tests/test_regexlexer.py +8 -1
  251. data/vendor/pygments-main/tests/test_rtf_formatter.py +109 -0
  252. data/vendor/pygments-main/tests/test_string_asserts.py +39 -0
  253. data/vendor/pygments-main/tests/test_token.py +3 -3
  254. data/vendor/pygments-main/tests/test_using_api.py +1 -1
  255. data/vendor/pygments-main/tests/test_util.py +1 -1
  256. metadata +138 -51
  257. data/vendor/pygments-main/docs/generate.py +0 -472
  258. data/vendor/pygments-main/docs/src/api.txt +0 -270
  259. data/vendor/pygments-main/docs/src/authors.txt +0 -5
  260. data/vendor/pygments-main/docs/src/changelog.txt +0 -5
  261. data/vendor/pygments-main/docs/src/index.txt +0 -69
  262. data/vendor/pygments-main/docs/src/installation.txt +0 -71
  263. data/vendor/pygments-main/external/rst-directive-old.py +0 -77
  264. data/vendor/pygments-main/scripts/reindent.py +0 -291
  265. data/vendor/pygments-main/tests/examplefiles/import.hs +0 -4
  266. data/vendor/pygments-main/tests/examplefiles/objc_example2.m +0 -24
  267. data/vendor/pygments-main/tests/old_run.py +0 -138
@@ -0,0 +1,4 @@
1
+ Full contributor list
2
+ =====================
3
+
4
+ .. include:: ../../AUTHORS
@@ -0,0 +1 @@
1
+ .. include:: ../../CHANGES
@@ -4,8 +4,8 @@
4
4
  Command Line Interface
5
5
  ======================
6
6
 
7
- You can use Pygments from the shell, provided you installed the `pygmentize`
8
- script::
7
+ You can use Pygments from the shell, provided you installed the
8
+ :program:`pygmentize` script::
9
9
 
10
10
  $ pygmentize test.py
11
11
  print "Hello World"
@@ -28,7 +28,7 @@ written to stdout.
28
28
  The ``-f`` option selects a formatter (as with ``-l``, it can also be omitted
29
29
  if an output file name is given and has a supported extension).
30
30
  If no output file name is given and ``-f`` is omitted, the
31
- `TerminalFormatter` is used.
31
+ :class:`.TerminalFormatter` is used.
32
32
 
33
33
  The above command could therefore also be given as::
34
34
 
@@ -82,14 +82,15 @@ Usage is as follows::
82
82
  generates a CSS style sheet (because you selected the HTML formatter) for
83
83
  the "colorful" style prepending a ".syntax" selector to all style rules.
84
84
 
85
- For an explanation what ``-a`` means for `a particular formatter`_, look for
86
- the `arg` argument for the formatter's `get_style_defs()` method.
85
+ For an explanation what ``-a`` means for :doc:`a particular formatter
86
+ <formatters>`, look for the `arg` argument for the formatter's
87
+ :meth:`.get_style_defs()` method.
87
88
 
88
89
 
89
90
  Getting lexer names
90
91
  -------------------
91
92
 
92
- *New in Pygments 1.0.*
93
+ .. versionadded:: 1.0
93
94
 
94
95
  The ``-N`` option guesses a lexer name for a given filename, so that ::
95
96
 
@@ -125,7 +126,7 @@ will print the help for the Python lexer, etc.
125
126
  A note on encodings
126
127
  -------------------
127
128
 
128
- *New in Pygments 0.9.*
129
+ .. versionadded:: 0.9
129
130
 
130
131
  Pygments tries to be smart regarding encodings in the formatting process:
131
132
 
@@ -141,7 +142,4 @@ Pygments tries to be smart regarding encodings in the formatting process:
141
142
 
142
143
  * If you don't give an encoding and haven't given an output file (that means
143
144
  output is written to the console), the default encoding for lexer and
144
- formatter is the terminal encoding (`sys.stdout.encoding`).
145
-
146
-
147
- .. _a particular formatter: formatters.txt
145
+ formatter is the terminal encoding (``sys.stdout.encoding``).
@@ -4,7 +4,7 @@
4
4
  Write your own filter
5
5
  =====================
6
6
 
7
- *New in Pygments 0.7.*
7
+ .. versionadded:: 0.7
8
8
 
9
9
  Writing own filters is very easy. All you have to do is to subclass
10
10
  the `Filter` class and override the `filter` method. Additionally a
@@ -4,7 +4,7 @@
4
4
  Filters
5
5
  =======
6
6
 
7
- *New in Pygments 0.7.*
7
+ .. versionadded:: 0.7
8
8
 
9
9
  You can filter token streams coming from lexers to improve or annotate the
10
10
  output. For example, you can highlight special words in comments, convert
@@ -31,12 +31,11 @@ To get a list of all registered filters by name, you can use the
31
31
  `get_all_filters()` function from the `pygments.filters` module that returns an
32
32
  iterable for all known filters.
33
33
 
34
- If you want to write your own filter, have a look at `Write your own filter`_.
35
-
36
- .. _Write your own filter: filterdevelopment.txt
34
+ If you want to write your own filter, have a look at :doc:`Write your own filter
35
+ <filterdevelopment>`.
37
36
 
38
37
 
39
38
  Builtin Filters
40
39
  ===============
41
40
 
42
- [builtin_filter_docs]
41
+ .. pygmentsdoc:: filters
@@ -4,7 +4,7 @@
4
4
  Write your own formatter
5
5
  ========================
6
6
 
7
- As well as creating `your own lexer <lexerdevelopment.txt>`_, writing a new
7
+ As well as creating :doc:`your own lexer <lexerdevelopment>`, writing a new
8
8
  formatter for Pygments is easy and straightforward.
9
9
 
10
10
  A formatter is a class that is initialized with some keyword arguments (the
@@ -12,8 +12,6 @@ Common options
12
12
  All formatters support these options:
13
13
 
14
14
  `encoding`
15
- *New in Pygments 0.6.*
16
-
17
15
  If given, must be an encoding name (such as ``"utf-8"``). This will
18
16
  be used to convert the token strings (which are Unicode strings)
19
17
  to byte strings in the output (default: ``None``).
@@ -30,19 +28,21 @@ All formatters support these options:
30
28
  supports Unicode arguments to `write()`. Using a regular file object
31
29
  wouldn't work.
32
30
 
33
- `outencoding`
34
- *New in Pygments 0.7.*
31
+ .. versionadded:: 0.6
35
32
 
33
+ `outencoding`
36
34
  When using Pygments from the command line, any `encoding` option given is
37
35
  passed to the lexer and the formatter. This is sometimes not desirable,
38
36
  for example if you want to set the input encoding to ``"guess"``.
39
37
  Therefore, `outencoding` has been introduced which overrides `encoding`
40
38
  for the formatter if given.
41
39
 
40
+ .. versionadded:: 0.7
41
+
42
42
 
43
43
  Formatter classes
44
44
  =================
45
45
 
46
- All these classes are importable from `pygments.formatters`.
46
+ All these classes are importable from :mod:`pygments.formatters`.
47
47
 
48
- [builtin_formatter_docs]
48
+ .. pygmentsdoc:: formatters
@@ -0,0 +1,66 @@
1
+ Pygments documentation
2
+ ======================
3
+
4
+ **Starting with Pygments**
5
+
6
+ .. toctree::
7
+ :maxdepth: 1
8
+
9
+ ../download
10
+ quickstart
11
+ cmdline
12
+
13
+ **Builtin components**
14
+
15
+ .. toctree::
16
+ :maxdepth: 1
17
+
18
+ lexers
19
+ filters
20
+ formatters
21
+ styles
22
+
23
+ **Reference**
24
+
25
+ .. toctree::
26
+ :maxdepth: 1
27
+
28
+ unicode
29
+ tokens
30
+ api
31
+
32
+ **Hacking for Pygments**
33
+
34
+ .. toctree::
35
+ :maxdepth: 1
36
+
37
+ lexerdevelopment
38
+ formatterdevelopment
39
+ filterdevelopment
40
+ plugins
41
+
42
+ **Hints and tricks**
43
+
44
+ .. toctree::
45
+ :maxdepth: 1
46
+
47
+ rstdirective
48
+ moinmoin
49
+ java
50
+ integrate
51
+
52
+ **About Pygments**
53
+
54
+ .. toctree::
55
+ :maxdepth: 1
56
+
57
+ changelog
58
+ authors
59
+
60
+
61
+ If you find bugs or have suggestions for the documentation, please look
62
+ :ref:`here <contribute>` for info on how to contact the team.
63
+
64
+ .. XXX You can download an offline version of this documentation from the
65
+ :doc:`download page </download>`.
66
+
@@ -23,8 +23,9 @@ Markdown
23
23
  --------
24
24
 
25
25
  Since Pygments 0.9, the distribution ships Markdown_ preprocessor sample code
26
- that uses Pygments to render source code in `external/markdown-processor.py`.
27
- You can copy and adapt it to your liking.
26
+ that uses Pygments to render source code in
27
+ :file:`external/markdown-processor.py`. You can copy and adapt it to your
28
+ liking.
28
29
 
29
30
  .. _Markdown: http://www.freewisdom.org/projects/python-markdown/
30
31
 
@@ -41,8 +42,3 @@ Bash completion
41
42
 
42
43
  The source distribution contains a file ``external/pygments.bashcomp`` that
43
44
  sets up completion for the ``pygmentize`` command in bash.
44
-
45
- Java
46
- ----
47
-
48
- See the `Java quickstart <java.txt>`_ document.
@@ -7,13 +7,13 @@ Write your own lexer
7
7
  If a lexer for your favorite language is missing in the Pygments package, you can
8
8
  easily write your own and extend Pygments.
9
9
 
10
- All you need can be found inside the `pygments.lexer` module. As you can read in
11
- the `API documentation <api.txt>`_, a lexer is a class that is initialized with
12
- some keyword arguments (the lexer options) and that provides a
13
- `get_tokens_unprocessed()` method which is given a string or unicode object with
14
- the data to parse.
10
+ All you need can be found inside the :mod:`pygments.lexer` module. As you can
11
+ read in the :doc:`API documentation <api>`, a lexer is a class that is
12
+ initialized with some keyword arguments (the lexer options) and that provides a
13
+ :meth:`.get_tokens_unprocessed()` method which is given a string or unicode
14
+ object with the data to parse.
15
15
 
16
- The `get_tokens_unprocessed()` method must return an iterator or iterable
16
+ The :meth:`.get_tokens_unprocessed()` method must return an iterator or iterable
17
17
  containing tuples in the form ``(index, token, value)``. Normally you don't need
18
18
  to do this since there are numerous base lexers you can subclass.
19
19
 
@@ -21,9 +21,9 @@ to do this since there are numerous base lexers you can subclass.
21
21
  RegexLexer
22
22
  ==========
23
23
 
24
- A very powerful (but quite easy to use) lexer is the `RegexLexer`. This lexer
25
- base class allows you to define lexing rules in terms of *regular expressions*
26
- for different *states*.
24
+ A very powerful (but quite easy to use) lexer is the :class:`RegexLexer`. This
25
+ lexer base class allows you to define lexing rules in terms of *regular
26
+ expressions* for different *states*.
27
27
 
28
28
  States are groups of regular expressions that are matched against the input
29
29
  string at the *current position*. If one of these expressions matches, a
@@ -289,8 +289,9 @@ There are a few more things you can do with states:
289
289
  the closing ``*/``. Then, both states are popped from the stack again and
290
290
  lexing continues in the root state.
291
291
 
292
- *New in Pygments 0.9:* The tuple can contain the special ``'#push'`` and
293
- ``'#pop'`` (but not ``'#pop:n'``) directives.
292
+ .. versionadded:: 0.9
293
+ The tuple can contain the special ``'#push'`` and ``'#pop'`` (but not
294
+ ``'#pop:n'``) directives.
294
295
 
295
296
 
296
297
  - You can include the rules of a state in the definition of another. This is
@@ -598,6 +599,4 @@ the ``get_tokens_unprocessed()`` method. The following lexer subclasses the
598
599
 
599
600
  The `PhpLexer` and `LuaLexer` use this method to resolve builtin functions.
600
601
 
601
- **Note** Do not confuse this with the `filter`_ system.
602
-
603
- .. _filter: filters.txt
602
+ .. note:: Do not confuse this with the :doc:`filter <filters>` system.
@@ -18,14 +18,13 @@ Currently, **all lexers** support these options:
18
18
  `ensurenl`
19
19
  Make sure that the input ends with a newline (default: ``True``). This
20
20
  is required for some lexers that consume input linewise.
21
- *New in Pygments 1.3.*
21
+
22
+ .. versionadded:: 1.3
22
23
 
23
24
  `tabsize`
24
25
  If given and greater than 0, expand tabs in the input (default: ``0``).
25
26
 
26
27
  `encoding`
27
- *New in Pygments 0.6.*
28
-
29
28
  If given, must be an encoding name (such as ``"utf-8"``). This encoding
30
29
  will be used to convert the input string to Unicode (if it is not already
31
30
  a Unicode string). The default is ``"latin1"``.
@@ -35,18 +34,21 @@ Currently, **all lexers** support these options:
35
34
  `chardet library <http://chardet.feedparser.org/>`__ is used to
36
35
  guess the encoding of the input.
37
36
 
37
+ .. versionadded:: 0.6
38
+
38
39
 
39
40
  The "Short Names" field lists the identifiers that can be used with the
40
41
  `get_lexer_by_name()` function.
41
42
 
42
43
  These lexers are builtin and can be imported from `pygments.lexers`:
43
44
 
44
- [builtin_lexer_docs]
45
+ .. pygmentsdoc:: lexers
46
+
45
47
 
46
48
  Iterating over all lexers
47
49
  -------------------------
48
50
 
49
- *New in Pygments 0.6.*
51
+ .. versionadded:: 0.6
50
52
 
51
53
  To get all lexers (both the builtin and the plugin ones), you can
52
54
  use the `get_all_lexers()` function from the `pygments.lexers`
@@ -58,8 +58,8 @@ can be produced by:
58
58
 
59
59
  print HtmlFormatter().get_style_defs('.highlight')
60
60
 
61
- The argument to `get_style_defs` is used as an additional CSS selector: the output
62
- may look like this:
61
+ The argument to :func:`get_style_defs` is used as an additional CSS selector:
62
+ the output may look like this:
63
63
 
64
64
  .. sourcecode:: css
65
65
 
@@ -71,9 +71,9 @@ may look like this:
71
71
  Options
72
72
  =======
73
73
 
74
- The `highlight()` function supports a fourth argument called `outfile`, it must be
75
- a file object if given. The formatted output will then be written to this file
76
- instead of being returned as a string.
74
+ The :func:`highlight()` function supports a fourth argument called *outfile*, it
75
+ must be a file object if given. The formatted output will then be written to
76
+ this file instead of being returned as a string.
77
77
 
78
78
  Lexers and formatters both support options. They are given to them as keyword
79
79
  arguments either to the class or to the lookup method:
@@ -103,9 +103,9 @@ Important options include:
103
103
 
104
104
 
105
105
  For an overview of builtin lexers and formatters and their options, visit the
106
- `lexer <lexers.txt>`_ and `formatters <formatters.txt>`_ lists.
106
+ :doc:`lexer <lexers>` and :doc:`formatters <formatters>` lists.
107
107
 
108
- For a documentation on filters, see `this page <filters.txt>`_.
108
+ For a documentation on filters, see :doc:`this page <filters>`.
109
109
 
110
110
 
111
111
  Lexer and formatter lookup
@@ -131,9 +131,9 @@ one of the following methods:
131
131
  All these functions accept keyword arguments; they will be passed to the lexer
132
132
  as options.
133
133
 
134
- A similar API is available for formatters: use `get_formatter_by_name()` and
135
- `get_formatter_for_filename()` from the `pygments.formatters` module
136
- for this purpose.
134
+ A similar API is available for formatters: use :func:`.get_formatter_by_name()`
135
+ and :func:`.get_formatter_for_filename()` from the :mod:`pygments.formatters`
136
+ module for this purpose.
137
137
 
138
138
 
139
139
  Guessing lexers
@@ -153,16 +153,17 @@ or some template tags), use these functions:
153
153
  >>> guess_lexer_for_filename('test.py', 'print "Hello World!"')
154
154
  <pygments.lexers.PythonLexer>
155
155
 
156
- `guess_lexer()` passes the given content to the lexer classes' `analyse_text()`
157
- method and returns the one for which it returns the highest number.
156
+ :func:`.guess_lexer()` passes the given content to the lexer classes'
157
+ :meth:`analyse_text()` method and returns the one for which it returns the
158
+ highest number.
158
159
 
159
160
  All lexers have two different filename pattern lists: the primary and the
160
- secondary one. The `get_lexer_for_filename()` function only uses the primary
161
- list, whose entries are supposed to be unique among all lexers.
162
- `guess_lexer_for_filename()`, however, will first loop through all lexers and
163
- look at the primary and secondary filename patterns if the filename matches.
161
+ secondary one. The :func:`.get_lexer_for_filename()` function only uses the
162
+ primary list, whose entries are supposed to be unique among all lexers.
163
+ :func:`.guess_lexer_for_filename()`, however, will first loop through all lexers
164
+ and look at the primary and secondary filename patterns if the filename matches.
164
165
  If only one lexer matches, it is returned, else the guessing mechanism of
165
- `guess_lexer()` is used with the matching lexers.
166
+ :func:`.guess_lexer()` is used with the matching lexers.
166
167
 
167
168
  As usual, keyword arguments to these functions are given to the created lexer
168
169
  as options.
@@ -171,7 +172,8 @@ as options.
171
172
  Command line usage
172
173
  ==================
173
174
 
174
- You can use Pygments from the command line, using the `pygmentize` script::
175
+ You can use Pygments from the command line, using the :program:`pygmentize`
176
+ script::
175
177
 
176
178
  $ pygmentize test.py
177
179
 
@@ -199,4 +201,5 @@ it can be created with::
199
201
 
200
202
  where ``default`` is the style name.
201
203
 
202
- More options and tricks and be found in the `command line reference <cmdline.txt>`_.
204
+ More options and tricks and be found in the :doc:`command line reference
205
+ <cmdline>`.
@@ -68,7 +68,7 @@ they can be used for a variety of formatters.)
68
68
 
69
69
  To make the style usable for Pygments, you must
70
70
 
71
- * either register it as a plugin (see `the plugin docs <plugins.txt>`_)
71
+ * either register it as a plugin (see :doc:`the plugin docs <plugins>`)
72
72
  * or drop it into the `styles` subpackage of your Pygments distribution one style
73
73
  class per style, where the file name is the style name and the class name is
74
74
  `StylenameClass`. For example, if your style should be called
@@ -132,7 +132,7 @@ To get a list of known styles you can use this snippet:
132
132
  Getting a list of available styles
133
133
  ==================================
134
134
 
135
- *New in Pygments 0.6.*
135
+ .. versionadded:: 0.6
136
136
 
137
137
  Because it could be that a plugin registered a style, there is
138
138
  a way to iterate over all styles:
@@ -4,7 +4,9 @@
4
4
  Builtin Tokens
5
5
  ==============
6
6
 
7
- Inside the `pygments.token` module, there is a special object called `Token`
7
+ .. module:: pygments.token
8
+
9
+ In the :mod:`pygments.token` module, there is a special object called `Token`
8
10
  that is used to create token types.
9
11
 
10
12
  You can create a new token type by accessing an attribute of `Token`:
@@ -30,8 +32,8 @@ As of Pygments 0.7 you can also use the ``in`` operator to perform set tests:
30
32
  >>> Comment in Comment.Multi
31
33
  False
32
34
 
33
- This can be useful in `filters`_ and if you write lexers on your own without
34
- using the base lexers.
35
+ This can be useful in :doc:`filters <filters>` and if you write lexers on your
36
+ own without using the base lexers.
35
37
 
36
38
  You can also split a token type into a hierarchy, and get the parent of it:
37
39
 
@@ -55,7 +57,7 @@ For some tokens aliases are already defined:
55
57
  >>> String
56
58
  Token.Literal.String
57
59
 
58
- Inside the `pygments.token` module the following aliases are defined:
60
+ Inside the :mod:`pygments.token` module the following aliases are defined:
59
61
 
60
62
  ============= ============================ ====================================
61
63
  `Text` `Token.Text` for any type of text data
@@ -251,6 +253,9 @@ Literals
251
253
  `Number`
252
254
  Token type for any number literal.
253
255
 
256
+ `Number.Bin`
257
+ Token type for binary literals (e.g. ``0b101010``).
258
+
254
259
  `Number.Float`
255
260
  Token type for float literals (e.g. ``42.0``).
256
261
 
@@ -280,7 +285,7 @@ Operators
280
285
  Punctuation
281
286
  ===========
282
287
 
283
- *New in Pygments 0.7.*
288
+ .. versionadded:: 0.7
284
289
 
285
290
  `Punctuation`
286
291
  For any punctuation which is not an operator (e.g. ``[``, ``(``...)
@@ -345,5 +350,3 @@ highlight a programming language but a patch file.
345
350
 
346
351
  `Generic.Traceback`
347
352
  Marks the token value as a part of an error traceback.
348
-
349
- .. _filters: filters.txt