gitlab-pygments.rb 0.3.2 → 0.5.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (199) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/CHANGELOG.md +71 -0
  4. data/Gemfile +1 -1
  5. data/LICENSE +17 -0
  6. data/README.md +28 -1
  7. data/Rakefile +2 -5
  8. data/lexers +0 -0
  9. data/lib/pygments/mentos.py +19 -12
  10. data/lib/pygments/popen.rb +21 -4
  11. data/lib/pygments/version.rb +1 -1
  12. data/pygments.rb.gemspec +2 -0
  13. data/test/test_pygments.rb +13 -2
  14. data/vendor/custom_lexers/github.py +206 -3
  15. data/vendor/pygments-main/AUTHORS +41 -3
  16. data/vendor/pygments-main/CHANGES +132 -5
  17. data/vendor/pygments-main/LICENSE +1 -1
  18. data/vendor/pygments-main/Makefile +1 -1
  19. data/vendor/pygments-main/REVISION +1 -1
  20. data/vendor/pygments-main/docs/generate.py +1 -1
  21. data/vendor/pygments-main/docs/src/api.txt +1 -1
  22. data/vendor/pygments-main/docs/src/index.txt +1 -1
  23. data/vendor/pygments-main/docs/src/integrate.txt +5 -0
  24. data/vendor/pygments-main/docs/src/java.txt +70 -0
  25. data/vendor/pygments-main/docs/src/lexerdevelopment.txt +52 -0
  26. data/vendor/pygments-main/external/autopygmentize +64 -0
  27. data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +144 -0
  28. data/vendor/pygments-main/external/markdown-processor.py +2 -2
  29. data/vendor/pygments-main/external/moin-parser.py +1 -1
  30. data/vendor/pygments-main/external/rst-directive-old.py +1 -1
  31. data/vendor/pygments-main/external/rst-directive.py +1 -1
  32. data/vendor/pygments-main/pygmentize +1 -1
  33. data/vendor/pygments-main/pygments/__init__.py +2 -2
  34. data/vendor/pygments-main/pygments/cmdline.py +14 -6
  35. data/vendor/pygments-main/pygments/console.py +1 -1
  36. data/vendor/pygments-main/pygments/filter.py +1 -1
  37. data/vendor/pygments-main/pygments/filters/__init__.py +3 -4
  38. data/vendor/pygments-main/pygments/formatter.py +4 -1
  39. data/vendor/pygments-main/pygments/formatters/__init__.py +1 -1
  40. data/vendor/pygments-main/pygments/formatters/_mapping.py +3 -3
  41. data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
  42. data/vendor/pygments-main/pygments/formatters/html.py +73 -2
  43. data/vendor/pygments-main/pygments/formatters/img.py +2 -2
  44. data/vendor/pygments-main/pygments/formatters/latex.py +9 -9
  45. data/vendor/pygments-main/pygments/formatters/other.py +1 -3
  46. data/vendor/pygments-main/pygments/formatters/rtf.py +1 -1
  47. data/vendor/pygments-main/pygments/formatters/svg.py +1 -1
  48. data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
  49. data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
  50. data/vendor/pygments-main/pygments/lexer.py +78 -10
  51. data/vendor/pygments-main/pygments/lexers/__init__.py +13 -2
  52. data/vendor/pygments-main/pygments/lexers/_asybuiltins.py +1 -1
  53. data/vendor/pygments-main/pygments/lexers/_clbuiltins.py +1 -1
  54. data/vendor/pygments-main/pygments/lexers/_lassobuiltins.py +5172 -0
  55. data/vendor/pygments-main/pygments/lexers/_luabuiltins.py +1 -1
  56. data/vendor/pygments-main/pygments/lexers/_mapping.py +92 -36
  57. data/vendor/pygments-main/pygments/lexers/_openedgebuiltins.py +562 -0
  58. data/vendor/pygments-main/pygments/lexers/_phpbuiltins.py +2 -2
  59. data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +4 -3
  60. data/vendor/pygments-main/pygments/lexers/_robotframeworklexer.py +557 -0
  61. data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +11 -0
  62. data/vendor/pygments-main/pygments/lexers/_sourcemodbuiltins.py +1072 -0
  63. data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +360 -0
  64. data/vendor/pygments-main/pygments/lexers/_vimbuiltins.py +13 -3
  65. data/vendor/pygments-main/pygments/lexers/agile.py +525 -38
  66. data/vendor/pygments-main/pygments/lexers/asm.py +45 -7
  67. data/vendor/pygments-main/pygments/lexers/compiled.py +1257 -425
  68. data/vendor/pygments-main/pygments/lexers/dalvik.py +104 -0
  69. data/vendor/pygments-main/pygments/lexers/dotnet.py +97 -62
  70. data/vendor/pygments-main/pygments/lexers/foxpro.py +428 -0
  71. data/vendor/pygments-main/pygments/lexers/functional.py +931 -32
  72. data/vendor/pygments-main/pygments/lexers/github.py +206 -3
  73. data/vendor/pygments-main/pygments/lexers/hdl.py +3 -3
  74. data/vendor/pygments-main/pygments/lexers/jvm.py +309 -44
  75. data/vendor/pygments-main/pygments/lexers/math.py +876 -30
  76. data/vendor/pygments-main/pygments/lexers/other.py +956 -517
  77. data/vendor/pygments-main/pygments/lexers/parsers.py +85 -2
  78. data/vendor/pygments-main/pygments/lexers/shell.py +81 -18
  79. data/vendor/pygments-main/pygments/lexers/special.py +1 -1
  80. data/vendor/pygments-main/pygments/lexers/sql.py +2 -2
  81. data/vendor/pygments-main/pygments/lexers/templates.py +119 -8
  82. data/vendor/pygments-main/pygments/lexers/text.py +155 -15
  83. data/vendor/pygments-main/pygments/lexers/web.py +1578 -397
  84. data/vendor/pygments-main/pygments/modeline.py +40 -0
  85. data/vendor/pygments-main/pygments/plugin.py +1 -1
  86. data/vendor/pygments-main/pygments/scanner.py +1 -1
  87. data/vendor/pygments-main/pygments/style.py +1 -1
  88. data/vendor/pygments-main/pygments/styles/__init__.py +1 -1
  89. data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
  90. data/vendor/pygments-main/pygments/styles/borland.py +1 -1
  91. data/vendor/pygments-main/pygments/styles/bw.py +1 -1
  92. data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
  93. data/vendor/pygments-main/pygments/styles/default.py +1 -1
  94. data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
  95. data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
  96. data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
  97. data/vendor/pygments-main/pygments/styles/manni.py +1 -1
  98. data/vendor/pygments-main/pygments/styles/monokai.py +1 -1
  99. data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
  100. data/vendor/pygments-main/pygments/styles/native.py +1 -1
  101. data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
  102. data/vendor/pygments-main/pygments/styles/perldoc.py +1 -1
  103. data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
  104. data/vendor/pygments-main/pygments/styles/tango.py +1 -1
  105. data/vendor/pygments-main/pygments/styles/trac.py +1 -1
  106. data/vendor/pygments-main/pygments/styles/vim.py +1 -1
  107. data/vendor/pygments-main/pygments/styles/vs.py +1 -1
  108. data/vendor/pygments-main/pygments/token.py +1 -1
  109. data/vendor/pygments-main/pygments/unistring.py +36 -26
  110. data/vendor/pygments-main/pygments/util.py +46 -1
  111. data/vendor/pygments-main/scripts/check_sources.py +2 -2
  112. data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +2 -0
  113. data/vendor/pygments-main/scripts/find_codetags.py +1 -1
  114. data/vendor/pygments-main/scripts/find_error.py +5 -6
  115. data/vendor/pygments-main/setup.cfg +1 -0
  116. data/vendor/pygments-main/setup.py +6 -4
  117. data/vendor/pygments-main/tests/examplefiles/BOM.js +1 -0
  118. data/vendor/pygments-main/tests/examplefiles/Config.in.cache +1973 -0
  119. data/vendor/pygments-main/tests/examplefiles/Deflate.fs +578 -0
  120. data/vendor/pygments-main/tests/examplefiles/Get-CommandDefinitionHtml.ps1 +66 -0
  121. data/vendor/pygments-main/tests/examplefiles/IPDispatchC.nc +104 -0
  122. data/vendor/pygments-main/tests/examplefiles/IPDispatchP.nc +671 -0
  123. data/vendor/pygments-main/tests/examplefiles/RoleQ.pm6 +23 -0
  124. data/vendor/pygments-main/tests/examplefiles/autoit_submit.au3 +25 -0
  125. data/vendor/pygments-main/tests/examplefiles/bigtest.nsi +308 -0
  126. data/vendor/pygments-main/tests/examplefiles/ca65_example +284 -0
  127. data/vendor/pygments-main/tests/examplefiles/cbmbas_example +9 -0
  128. data/vendor/pygments-main/tests/examplefiles/classes.dylan +89 -4
  129. data/vendor/pygments-main/tests/examplefiles/example.Rd +78 -0
  130. data/vendor/pygments-main/tests/examplefiles/example.bug +54 -0
  131. data/vendor/pygments-main/tests/examplefiles/example.ceylon +52 -0
  132. data/vendor/pygments-main/tests/examplefiles/example.clay +33 -0
  133. data/vendor/pygments-main/tests/examplefiles/example.cob +3556 -0
  134. data/vendor/pygments-main/tests/examplefiles/example.hx +142 -0
  135. data/vendor/pygments-main/tests/examplefiles/example.jag +48 -0
  136. data/vendor/pygments-main/tests/examplefiles/example.lagda +19 -0
  137. data/vendor/pygments-main/tests/examplefiles/example.monkey +152 -0
  138. data/vendor/pygments-main/tests/examplefiles/example.msc +43 -0
  139. data/vendor/pygments-main/tests/examplefiles/example.prg +161 -0
  140. data/vendor/pygments-main/tests/examplefiles/example.reg +19 -0
  141. data/vendor/pygments-main/tests/examplefiles/example.rexx +50 -0
  142. data/vendor/pygments-main/tests/examplefiles/example.rkt +95 -0
  143. data/vendor/pygments-main/tests/examplefiles/example.rpf +4 -0
  144. data/vendor/pygments-main/tests/examplefiles/example.shell-session +45 -0
  145. data/vendor/pygments-main/tests/examplefiles/example.stan +108 -0
  146. data/vendor/pygments-main/tests/examplefiles/example.ts +28 -0
  147. data/vendor/pygments-main/tests/examplefiles/example.xtend +34 -0
  148. data/vendor/pygments-main/tests/examplefiles/example2.msc +79 -0
  149. data/vendor/pygments-main/tests/examplefiles/garcia-wachs.kk +133 -0
  150. data/vendor/pygments-main/tests/examplefiles/grammar-test.p6 +22 -0
  151. data/vendor/pygments-main/tests/examplefiles/hello.smali +40 -0
  152. data/vendor/pygments-main/tests/examplefiles/hello.sp +9 -0
  153. data/vendor/pygments-main/tests/examplefiles/http_request_example +2 -1
  154. data/vendor/pygments-main/tests/examplefiles/http_response_example +4 -2
  155. data/vendor/pygments-main/tests/examplefiles/inet_pton6.dg +71 -0
  156. data/vendor/pygments-main/tests/examplefiles/json.lasso +301 -0
  157. data/vendor/pygments-main/tests/examplefiles/json.lasso9 +213 -0
  158. data/vendor/pygments-main/tests/examplefiles/livescript-demo.ls +41 -0
  159. data/vendor/pygments-main/tests/examplefiles/logos_example.xm +28 -0
  160. data/vendor/pygments-main/tests/examplefiles/matlab_sample +5 -2
  161. data/vendor/pygments-main/tests/examplefiles/metagrammar.treetop +455 -0
  162. data/vendor/pygments-main/tests/examplefiles/mg_sample.pro +73 -0
  163. data/vendor/pygments-main/tests/examplefiles/minehunt.qml +112 -0
  164. data/vendor/pygments-main/tests/examplefiles/nanomsg.intr +95 -0
  165. data/vendor/pygments-main/tests/examplefiles/objc_example.m +7 -0
  166. data/vendor/pygments-main/tests/examplefiles/phpMyAdmin.spec +163 -0
  167. data/vendor/pygments-main/tests/examplefiles/py3tb_test.py3tb +4 -0
  168. data/vendor/pygments-main/tests/examplefiles/pytb_test3.pytb +4 -0
  169. data/vendor/pygments-main/tests/examplefiles/robotframework.txt +39 -0
  170. data/vendor/pygments-main/tests/examplefiles/rust_example.rs +233 -0
  171. data/vendor/pygments-main/tests/examplefiles/session.dylan-console +9 -0
  172. data/vendor/pygments-main/tests/examplefiles/swig_java.swg +1329 -0
  173. data/vendor/pygments-main/tests/examplefiles/swig_std_vector.i +225 -0
  174. data/vendor/pygments-main/tests/examplefiles/test.R +149 -115
  175. data/vendor/pygments-main/tests/examplefiles/test.agda +102 -0
  176. data/vendor/pygments-main/tests/examplefiles/test.bb +95 -0
  177. data/vendor/pygments-main/tests/examplefiles/test.cu +36 -0
  178. data/vendor/pygments-main/tests/examplefiles/test.ebnf +31 -0
  179. data/vendor/pygments-main/tests/examplefiles/test.opa +10 -0
  180. data/vendor/pygments-main/tests/examplefiles/test.p6 +252 -0
  181. data/vendor/pygments-main/tests/examplefiles/test2.pypylog +120 -0
  182. data/vendor/pygments-main/tests/examplefiles/type.lisp +16 -0
  183. data/vendor/pygments-main/tests/examplefiles/unix-io.lid +37 -0
  184. data/vendor/pygments-main/tests/old_run.py +1 -1
  185. data/vendor/pygments-main/tests/run.py +3 -2
  186. data/vendor/pygments-main/tests/support/tags +36 -0
  187. data/vendor/pygments-main/tests/test_basic_api.py +4 -3
  188. data/vendor/pygments-main/tests/test_clexer.py +1 -1
  189. data/vendor/pygments-main/tests/test_cmdline.py +1 -1
  190. data/vendor/pygments-main/tests/test_examplefiles.py +3 -1
  191. data/vendor/pygments-main/tests/test_html_formatter.py +17 -1
  192. data/vendor/pygments-main/tests/test_latex_formatter.py +1 -1
  193. data/vendor/pygments-main/tests/test_lexers_other.py +68 -0
  194. data/vendor/pygments-main/tests/test_perllexer.py +1 -1
  195. data/vendor/pygments-main/tests/test_regexlexer.py +1 -1
  196. data/vendor/pygments-main/tests/test_token.py +1 -1
  197. data/vendor/pygments-main/tests/test_using_api.py +1 -1
  198. data/vendor/pygments-main/tests/test_util.py +22 -3
  199. metadata +84 -16
@@ -0,0 +1,64 @@
1
+ #!/bin/sh
2
+ # Best effort auto-pygmentization with transparent decompression
3
+ # (c) Reuben Thomas 2012-2013
4
+ # This program is in the public domain.
5
+
6
+ # Strategy: first see if pygmentize can find a lexer; if not, ask file; if that finds nothing, fail
7
+ # Set the environment variable PYGMENTIZE_OPTS to configure pygments.
8
+
9
+ # This program can be used as a .lessfilter for the less pager to auto-color less's output
10
+
11
+ lexer=`pygmentize -N "$1"`
12
+ if [ "$lexer" = "text" ]; then
13
+ file_common_opts="--brief --dereference --uncompress"
14
+
15
+ unset lexer
16
+ case `file --mime-type $file_common_opts "$1"` in
17
+ application/xml|image/svg+xml) lexer=xml;;
18
+ text/html) lexer=html;;
19
+ text/troff) lexer=nroff;;
20
+ text/x-asm) lexer=nasm;;
21
+ text/x-awk) lexer=awk;;
22
+ text/x-c) lexer=c;;
23
+ text/x-c++) lexer=cpp;;
24
+ text/x-diff) lexer=diff;;
25
+ text/x-fortran) lexer=fortran;;
26
+ text/x-gawk) lexer=gawk;;
27
+ text/x-java) lexer=java;;
28
+ text/x-lisp) lexer=common-lisp;;
29
+ text/x-lua) lexer=lua;;
30
+ text/x-makefile) lexer=make;;
31
+ text/x-msdos-batch) lexer=bat;;
32
+ text/x-nawk) lexer=nawk;;
33
+ text/x-pascal) lexer=pascal;;
34
+ text/x-perl) lexer=perl;;
35
+ text/x-php) lexer=php;;
36
+ text/x-po) lexer=po;;
37
+ text/x-python) lexer=python;;
38
+ text/x-ruby) lexer=ruby;;
39
+ text/x-shellscript) lexer=sh;;
40
+ text/x-tcl) lexer=tcl;;
41
+ text/x-tex|text/x-texinfo) lexer=latex;; # FIXME: texinfo really needs its own lexer
42
+
43
+ # Types that file outputs which pygmentize didn't support as of file 5.11, pygments 1.6rc1
44
+ # text/calendar
45
+ # text/PGP
46
+ # text/rtf
47
+ # text/texmacs
48
+ # text/x-bcpl
49
+ # text/x-info
50
+ # text/x-m4
51
+ # text/x-vcard
52
+ # text/x-xmcd
53
+ esac
54
+ fi
55
+
56
+ encoding=`file --brief --mime-encoding $file_common_opts "$1"`
57
+
58
+ if [ -n "$lexer" ]; then
59
+ # FIXME: Specify input encoding rather than output encoding https://bitbucket.org/birkenfeld/pygments-main/issue/800
60
+ zcat "$1" | pygmentize -O encoding=$encoding,outencoding=UTF-8 $PYGMENTIZE_OPTS -l $lexer
61
+ exit 0
62
+ fi
63
+
64
+ exit 1
@@ -0,0 +1,144 @@
1
+ #!/usr/bin/lasso9
2
+
3
+ /*
4
+ Builtins Generator for Lasso 9
5
+
6
+ This is the shell script that was used to extract Lasso 9's built-in keywords
7
+ and generate most of the _lassobuiltins.py file. When run, it creates a file
8
+ named "lassobuiltins-9.py" containing the types, traits, methods, and members
9
+ of the currently-installed version of Lasso 9.
10
+
11
+ A list of tags in Lasso 8 can be generated with this code:
12
+
13
+ <?LassoScript
14
+ local('l8tags' = list,
15
+ 'l8libs' = array('Cache','ChartFX','Client','Database','File','HTTP',
16
+ 'iCal','Lasso','Link','List','PDF','Response','Stock','String',
17
+ 'Thread','Valid','WAP','XML'));
18
+ iterate(#l8libs, local('library'));
19
+ local('result' = namespace_load(#library));
20
+ /iterate;
21
+ iterate(tags_list, local('i'));
22
+ #l8tags->insert(string_removeleading(#i, -pattern='_global_'));
23
+ /iterate;
24
+ #l8tags->sort;
25
+ iterate(#l8tags, local('i'));
26
+ string_lowercase(#i)+"<br>";
27
+ /iterate;
28
+
29
+ */
30
+
31
+ output("This output statement is required for a complete list of methods.")
32
+ local(f) = file("lassobuiltins-9.py")
33
+ #f->doWithClose => {
34
+
35
+ #f->openWrite
36
+ #f->writeString('# -*- coding: utf-8 -*-
37
+ """
38
+ pygments.lexers._lassobuiltins
39
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40
+
41
+ Built-in Lasso types, traits, methods, and members.
42
+
43
+ :copyright: Copyright 2006-'+date->year+' by the Pygments team, see AUTHORS.
44
+ :license: BSD, see LICENSE for details.
45
+ """
46
+
47
+ ')
48
+
49
+ lcapi_loadModules
50
+
51
+ // Load all of the libraries from builtins and lassoserver
52
+ // This forces all possible available types and methods to be registered
53
+ local(srcs =
54
+ tie(
55
+ dir(sys_masterHomePath + 'LassoLibraries/builtins/')->eachFilePath,
56
+ dir(sys_masterHomePath + 'LassoLibraries/lassoserver/')->eachFilePath
57
+ )
58
+ )
59
+
60
+ with topLevelDir in #srcs
61
+ where not #topLevelDir->lastComponent->beginsWith('.')
62
+ do protect => {
63
+ handle_error => {
64
+ stdoutnl('Unable to load: ' + #topLevelDir + ' ' + error_msg)
65
+ }
66
+ library_thread_loader->loadLibrary(#topLevelDir)
67
+ stdoutnl('Loaded: ' + #topLevelDir)
68
+ }
69
+
70
+ local(
71
+ typesList = list(),
72
+ traitsList = list(),
73
+ unboundMethodsList = list(),
74
+ memberMethodsList = list()
75
+ )
76
+
77
+ // types
78
+ with type in sys_listTypes
79
+ where #typesList !>> #type
80
+ do {
81
+ #typesList->insert(#type)
82
+ with method in #type->getType->listMethods
83
+ let name = #method->methodName
84
+ where not #name->asString->endsWith('=') // skip setter methods
85
+ where #name->asString->isAlpha(1) // skip unpublished methods
86
+ where #memberMethodsList !>> #name
87
+ do #memberMethodsList->insert(#name)
88
+ }
89
+
90
+ // traits
91
+ with trait in sys_listTraits
92
+ where not #trait->asString->beginsWith('$') // skip combined traits
93
+ where #traitsList !>> #trait
94
+ do {
95
+ #traitsList->insert(#trait)
96
+ with method in tie(#trait->getType->provides, #trait->getType->requires)
97
+ let name = #method->methodName
98
+ where not #name->asString->endsWith('=') // skip setter methods
99
+ where #name->asString->isAlpha(1) // skip unpublished methods
100
+ where #memberMethodsList !>> #name
101
+ do #memberMethodsList->insert(#name)
102
+ }
103
+
104
+ // unbound methods
105
+ with method in sys_listUnboundMethods
106
+ let name = #method->methodName
107
+ where not #name->asString->endsWith('=') // skip setter methods
108
+ where #name->asString->isAlpha(1) // skip unpublished methods
109
+ where #typesList !>> #name
110
+ where #traitsList !>> #name
111
+ where #unboundMethodsList !>> #name
112
+ do #unboundMethodsList->insert(#name)
113
+
114
+ #f->writeString("BUILTINS = {
115
+ 'Types': [
116
+ ")
117
+ with t in #typesList
118
+ do !#t->asString->endsWith('$') ? #f->writeString(" '"+string_lowercase(#t->asString)+"',\n")
119
+
120
+ #f->writeString(" ],
121
+ 'Traits': [
122
+ ")
123
+ with t in #traitsList
124
+ do #f->writeString(" '"+string_lowercase(#t->asString)+"',\n")
125
+
126
+ #f->writeString(" ],
127
+ 'Unbound Methods': [
128
+ ")
129
+ with t in #unboundMethodsList
130
+ do #f->writeString(" '"+string_lowercase(#t->asString)+"',\n")
131
+
132
+ #f->writeString(" ]
133
+ }
134
+ MEMBERS = {
135
+ 'Member Methods': [
136
+ ")
137
+ with t in #memberMethodsList
138
+ do #f->writeString(" '"+string_lowercase(#t->asString)+"',\n")
139
+
140
+ #f->writeString(" ]
141
+ }
142
+ ")
143
+
144
+ }
@@ -27,7 +27,7 @@
27
27
 
28
28
  .. _Markdown: http://www.freewisdom.org/projects/python-markdown/
29
29
 
30
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
30
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
31
31
  :license: BSD, see LICENSE for details.
32
32
  """
33
33
 
@@ -64,4 +64,4 @@ class CodeBlockPreprocessor(TextPreprocessor):
64
64
  code = code.replace('\n\n', '\n&nbsp;\n').replace('\n', '<br />')
65
65
  return '\n\n<div class="code">%s</div>\n\n' % code
66
66
  return self.pattern.sub(
67
- repl, lines)
67
+ repl, lines)
@@ -31,7 +31,7 @@
31
31
  If you do not want to do that and are willing to accept larger HTML
32
32
  output, you can set the INLINESTYLES option below to True.
33
33
 
34
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
34
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
35
35
  :license: BSD, see LICENSE for details.
36
36
  """
37
37
 
@@ -31,7 +31,7 @@
31
31
  .. _directive documentation:
32
32
  http://docutils.sourceforge.net/docs/howto/rst-directives.html
33
33
 
34
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
34
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
35
35
  :license: BSD, see LICENSE for details.
36
36
  """
37
37
 
@@ -31,7 +31,7 @@
31
31
  .. _directive documentation:
32
32
  http://docutils.sourceforge.net/docs/howto/rst-directives.html
33
33
 
34
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
34
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
35
35
  :license: BSD, see LICENSE for details.
36
36
  """
37
37
 
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env python
1
+ #!/usr/bin/env python2
2
2
 
3
3
  import sys, pygments.cmdline
4
4
  try:
@@ -22,11 +22,11 @@
22
22
  .. _Pygments tip:
23
23
  http://bitbucket.org/birkenfeld/pygments-main/get/tip.zip#egg=Pygments-dev
24
24
 
25
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
25
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
26
26
  :license: BSD, see LICENSE for details.
27
27
  """
28
28
 
29
- __version__ = '1.5'
29
+ __version__ = '1.6'
30
30
  __docformat__ = 'restructuredtext'
31
31
 
32
32
  __all__ = ['lex', 'format', 'highlight']
@@ -5,7 +5,7 @@
5
5
 
6
6
  Command line interface.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
  import sys
@@ -192,6 +192,14 @@ def main(args=sys.argv):
192
192
 
193
193
  usage = USAGE % ((args[0],) * 6)
194
194
 
195
+ if sys.platform in ['win32', 'cygwin']:
196
+ try:
197
+ # Provide coloring under Windows, if possible
198
+ import colorama
199
+ colorama.init()
200
+ except ImportError:
201
+ pass
202
+
195
203
  try:
196
204
  popts, args = getopt.getopt(args[1:], "l:f:F:o:O:P:LS:a:N:hVHg")
197
205
  except getopt.GetoptError, err:
@@ -219,7 +227,7 @@ def main(args=sys.argv):
219
227
  return 0
220
228
 
221
229
  if opts.pop('-V', None) is not None:
222
- print 'Pygments version %s, (c) 2006-2011 by Georg Brandl.' % __version__
230
+ print 'Pygments version %s, (c) 2006-2013 by Georg Brandl.' % __version__
223
231
  return 0
224
232
 
225
233
  # handle ``pygmentize -L``
@@ -370,9 +378,9 @@ def main(args=sys.argv):
370
378
  except ClassNotFound, err:
371
379
  if '-g' in opts:
372
380
  try:
373
- lexer = guess_lexer(code)
381
+ lexer = guess_lexer(code, **parsed_opts)
374
382
  except ClassNotFound:
375
- lexer = TextLexer()
383
+ lexer = TextLexer(**parsed_opts)
376
384
  else:
377
385
  print >>sys.stderr, 'Error:', err
378
386
  return 1
@@ -384,9 +392,9 @@ def main(args=sys.argv):
384
392
  if '-g' in opts:
385
393
  code = sys.stdin.read()
386
394
  try:
387
- lexer = guess_lexer(code)
395
+ lexer = guess_lexer(code, **parsed_opts)
388
396
  except ClassNotFound:
389
- lexer = TextLexer()
397
+ lexer = TextLexer(**parsed_opts)
390
398
  elif not lexer:
391
399
  print >>sys.stderr, 'Error: no lexer name given and reading ' + \
392
400
  'from stdin (try using -g or -l <lexer>)'
@@ -5,7 +5,7 @@
5
5
 
6
6
  Format colored console output.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Module that implements the default filter.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -6,7 +6,7 @@
6
6
  Module containing filter lookup functions and default
7
7
  filters.
8
8
 
9
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
9
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
10
10
  :license: BSD, see LICENSE for details.
11
11
  """
12
12
 
@@ -129,7 +129,7 @@ class KeywordCaseFilter(Filter):
129
129
 
130
130
  class NameHighlightFilter(Filter):
131
131
  """
132
- Highlight a normal Name token with a different token type.
132
+ Highlight a normal Name (and Name.*) token with a different token type.
133
133
 
134
134
  Example::
135
135
 
@@ -163,7 +163,7 @@ class NameHighlightFilter(Filter):
163
163
 
164
164
  def filter(self, lexer, stream):
165
165
  for ttype, value in stream:
166
- if ttype is Name and value in self.names:
166
+ if ttype in Name and value in self.names:
167
167
  yield self.tokentype, value
168
168
  else:
169
169
  yield ttype, value
@@ -331,7 +331,6 @@ class TokenMergeFilter(Filter):
331
331
  Filter.__init__(self, **options)
332
332
 
333
333
  def filter(self, lexer, stream):
334
- output = []
335
334
  current_type = None
336
335
  current_value = None
337
336
  for ttype, value in stream:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Base formatter class.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
 
@@ -68,6 +68,9 @@ class Formatter(object):
68
68
  self.full = get_bool_opt(options, 'full', False)
69
69
  self.title = options.get('title', '')
70
70
  self.encoding = options.get('encoding', None) or None
71
+ if self.encoding == 'guess':
72
+ # can happen for pygmentize -O encoding=guess
73
+ self.encoding = 'utf-8'
71
74
  self.encoding = options.get('outencoding', None) or self.encoding
72
75
  self.options = options
73
76
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Pygments formatters.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11
  import os.path
@@ -9,12 +9,10 @@
9
9
 
10
10
  Do not alter the FORMATTERS dictionary by hand.
11
11
 
12
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
12
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
13
13
  :license: BSD, see LICENSE for details.
14
14
  """
15
15
 
16
- from pygments.util import docstring_headline
17
-
18
16
  # start
19
17
  from pygments.formatters.bbcode import BBCodeFormatter
20
18
  from pygments.formatters.gitlab import GitlabFormatter
@@ -56,6 +54,8 @@ if __name__ == '__main__':
56
54
  found_formatters = []
57
55
  imports = []
58
56
  sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..', '..'))
57
+ from pygments.util import docstring_headline
58
+
59
59
  for filename in os.listdir('.'):
60
60
  if filename.endswith('.py') and not filename.startswith('_'):
61
61
  module_name = 'pygments.formatters.%s' % filename[:-3]
@@ -5,7 +5,7 @@
5
5
 
6
6
  BBcode formatter.
7
7
 
8
- :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS.
8
+ :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9
9
  :license: BSD, see LICENSE for details.
10
10
  """
11
11