Pygments

generic syntax highlighter


root/CHANGES

Revision 1073:4298dff52d9b, 17.1 kB (checked in by Georg Brandl <georg@…>, 11 days ago)

Update codename info (test commit).

Line 
1Pygments changelog
2==================
3
4Issue numbers refer to the tracker at http://dev.pocoo.org/projects/pygments/.
5
6Version 1.4
7-----------
8(codename not selected, in development)
9
10- Lexers added:
11
12  * Factor (#520)
13  * PostScript (#486)
14  * Verilog (#491)
15  * BlitzMax Basic (#478)
16  * Ioke (#465)
17  * Java properties, split out of the INI lexer (#445)
18  * Scss (#509)
19
20- Performance improvements in the HTML formatter (#523).
21
22- With the ``noclasses`` option in the HTML formatter, some styles
23  present in the stylesheet were not added as inline styles.
24
25- Four fixes to the Lua lexer (#480, #481, #482, #497).
26
27- More context-sensitive Gherkin lexer with support for more i18n translations.
28
29- Support new OO keywords in Matlab lexer (#521).
30
31- Small fix in the CoffeeScript lexer (#519).
32
33- A bugfix for backslashes in ocaml strings (#499).
34
35- Fix unicode/raw docstrings in the Python lexer (#489).
36
37- Allow PIL to work without PIL.pth (#502).
38
39- Allow seconds as a unit in css (#496).
40
41- Support ``application/javascript`` as a JavaScript mime type (#504).
42
43- Support `Offload <http://offload.codeplay.com>`_ C++ Extensions as
44  keywords in the C++ lexer (#484).
45
46- Escape more characters in LaTeX output (#505).
47
48- Update Haml/Sass lexers to version 3 (#509).
49
50- Small PHP lexer string escaping fix (#515).
51
52
53Version 1.3.1
54-------------
55(bugfix release, released Mar 05, 2010)
56
57- The ``pygmentize`` script was missing from the distribution.
58
59
60Version 1.3
61-----------
62(codename Schneeglöckchen, released Mar 01, 2010)
63
64- Added the ``ensurenl`` lexer option, which can be used to suppress the
65  automatic addition of a newline to the lexer input.
66
67- Lexers added:
68
69  * Ada
70  * Coldfusion
71  * Modula-2
72  * haXe
73  * R console
74  * Objective-J
75  * Haml and Sass
76  * CoffeeScript
77
78- Enhanced reStructuredText highlighting.
79
80- Added support for PHP 5.3 namespaces in the PHP lexer.
81
82- Added a bash completion script for `pygmentize`, to the external/
83  directory (#466).
84
85- Fixed a bug in `do_insertions()` used for multi-lexer languages.
86
87- Fixed a Ruby regex highlighting bug (#476).
88
89- Fixed regex highlighting bugs in Perl lexer (#258).
90
91- Add small enhancements to the C lexer (#467) and Bash lexer (#469).
92
93- Small fixes for the Tcl, Debian control file, Nginx config,
94  Smalltalk, Objective-C, Clojure, Lua lexers.
95
96- Gherkin lexer: Fixed single apostrophe bug and added new i18n keywords.
97
98
99Version 1.2.2
100-------------
101(bugfix release, released Jan 02, 2010)
102
103* Removed a backwards incompatibility in the LaTeX formatter that caused
104  Sphinx to produce invalid commands when writing LaTeX output (#463).
105
106* Fixed a forever-backtracking regex in the BashLexer (#462).
107
108
109Version 1.2.1
110-------------
111(bugfix release, released Jan 02, 2010)
112
113* Fixed mishandling of an ellipsis in place of the frames in a Python
114  console traceback, resulting in clobbered output.
115
116
117Version 1.2
118-----------
119(codename Neujahr, released Jan 01, 2010)
120
121- Dropped Python 2.3 compatibility.
122
123- Lexers added:
124
125  * Asymptote
126  * Go
127  * Gherkin (Cucumber)
128  * CMake
129  * Ooc
130  * Coldfusion
131  * haXe
132  * R console
133
134- Added options for rendering LaTeX in source code comments in the
135  LaTeX formatter (#461).
136
137- Updated the Logtalk lexer.
138
139- Added `line_number_start` option to image formatter (#456).
140
141- Added `hl_lines` and `hl_color` options to image formatter (#457).
142
143- Fixed the HtmlFormatter's handling of noclasses=True to not output any
144  classes (#427).
145
146- Added the Monokai style (#453).
147
148- Fixed LLVM lexer identifier syntax and added new keywords (#442).
149
150- Fixed the PythonTracebackLexer to handle non-traceback data in header or
151  trailer, and support more partial tracebacks that start on line 2 (#437).
152
153- Fixed the CLexer to not highlight ternary statements as labels.
154
155- Fixed lexing of some Ruby quoting peculiarities (#460).
156
157- A few ASM lexer fixes (#450).
158
159
160Version 1.1.1
161-------------
162(bugfix release, released Sep 15, 2009)
163
164- Fixed the BBCode lexer (#435).
165
166- Added support for new Jinja2 keywords.
167
168- Fixed test suite failures.
169
170- Added Gentoo-specific suffixes to Bash lexer.
171
172
173Version 1.1
174-----------
175(codename Brillouin, released Sep 11, 2009)
176
177- Ported Pygments to Python 3.  This needed a few changes in the way
178  encodings are handled; they may affect corner cases when used with
179  Python 2 as well.
180
181- Lexers added:
182
183  * Antlr/Ragel, thanks to Ana Nelson
184  * (Ba)sh shell
185  * Erlang shell
186  * GLSL
187  * Prolog
188  * Evoque
189  * Modelica
190  * Rebol
191  * MXML
192  * Cython
193  * ABAP
194  * ASP.net (VB/C#)
195  * Vala
196  * Newspeak
197
198- Fixed the LaTeX formatter's output so that output generated for one style
199  can be used with the style definitions of another (#384).
200
201- Added "anchorlinenos" and "noclobber_cssfile" (#396) options to HTML
202  formatter.
203
204- Support multiline strings in Lua lexer.
205
206- Rewrite of the JavaScript lexer by Pumbaa80 to better support regular
207  expression literals (#403).
208
209- When pygmentize is asked to highlight a file for which multiple lexers
210  match the filename, use the analyse_text guessing engine to determine the
211  winner (#355).
212
213- Fixed minor bugs in the JavaScript lexer (#383), the Matlab lexer (#378),
214  the Scala lexer (#392), the INI lexer (#391), the Clojure lexer (#387)
215  and the AS3 lexer (#389).
216
217- Fixed three Perl heredoc lexing bugs (#379, #400, #422).
218
219- Fixed a bug in the image formatter which misdetected lines (#380).
220
221- Fixed bugs lexing extended Ruby strings and regexes.
222
223- Fixed a bug when lexing git diffs.
224
225- Fixed a bug lexing the empty commit in the PHP lexer (#405).
226
227- Fixed a bug causing Python numbers to be mishighlighted as floats (#397).
228
229- Fixed a bug when backslashes are used in odd locations in Python (#395).
230
231- Fixed various bugs in Matlab and S-Plus lexers, thanks to Winston Chang (#410,
232  #411, #413, #414) and fmarc (#419).
233
234- Fixed a bug in Haskell single-line comment detection (#426).
235
236- Added new-style reStructuredText directive for docutils 0.5+ (#428).
237
238
239Version 1.0
240-----------
241(codename Dreiundzwanzig, released Nov 23, 2008)
242
243- Don't use join(splitlines()) when converting newlines to ``\n``,
244  because that doesn't keep all newlines at the end when the
245  ``stripnl`` lexer option is False.
246
247- Added ``-N`` option to command-line interface to get a lexer name
248  for a given filename.
249
250- Added Tango style, written by Andre Roberge for the Crunchy project.
251
252- Added Python3TracebackLexer and ``python3`` option to
253  PythonConsoleLexer.
254
255- Fixed a few bugs in the Haskell lexer.
256
257- Fixed PythonTracebackLexer to be able to recognize SyntaxError and
258  KeyboardInterrupt (#360).
259
260- Provide one formatter class per image format, so that surprises like::
261
262    pygmentize -f gif -o foo.gif foo.py
263
264  creating a PNG file are avoided.
265
266- Actually use the `font_size` option of the image formatter.
267
268- Fixed numpy lexer that it doesn't listen for `*.py` any longer.
269
270- Fixed HTML formatter so that text options can be Unicode
271  strings (#371).
272
273- Unified Diff lexer supports the "udiff" alias now.
274
275- Fixed a few issues in Scala lexer (#367).
276
277- RubyConsoleLexer now supports simple prompt mode (#363).
278
279- JavascriptLexer is smarter about what constitutes a regex (#356).
280
281- Add Applescript lexer, thanks to Andreas Amann (#330).
282
283- Make the codetags more strict about matching words (#368).
284
285- NginxConfLexer is a little more accurate on mimetypes and
286  variables (#370).
287
288
289Version 0.11.1
290--------------
291(released Aug 24, 2008)
292
293- Fixed a Jython compatibility issue in pygments.unistring (#358).
294
295
296Version 0.11
297------------
298(codename Straußenei, released Aug 23, 2008)
299
300Many thanks go to Tim Hatch for writing or integrating most of the bug
301fixes and new features.
302
303- Lexers added:
304
305  * Nasm-style assembly language, thanks to delroth
306  * YAML, thanks to Kirill Simonov
307  * ActionScript 3, thanks to Pierre Bourdon
308  * Cheetah/Spitfire templates, thanks to Matt Good
309  * Lighttpd config files
310  * Nginx config files
311  * Gnuplot plotting scripts
312  * Clojure
313  * POV-Ray scene files
314  * Sqlite3 interactive console sessions
315  * Scala source files, thanks to Krzysiek Goj
316
317- Lexers improved:
318
319  * C lexer highlights standard library functions now and supports C99
320    types.
321  * Bash lexer now correctly highlights heredocs without preceding
322    whitespace.
323  * Vim lexer now highlights hex colors properly and knows a couple
324    more keywords.
325  * Irc logs lexer now handles xchat's default time format (#340) and
326    correctly highlights lines ending in ``>``.
327  * Support more delimiters for perl regular expressions (#258).
328  * ObjectiveC lexer now supports 2.0 features.
329
330- Added "Visual Studio" style.
331
332- Updated markdown processor to Markdown 1.7.
333
334- Support roman/sans/mono style defs and use them in the LaTeX
335  formatter.
336
337- The RawTokenFormatter is no longer registered to ``*.raw`` and it's
338  documented that tokenization with this lexer may raise exceptions.
339
340- New option ``hl_lines`` to HTML formatter, to highlight certain
341  lines.
342
343- New option ``prestyles`` to HTML formatter.
344
345- New option *-g* to pygmentize, to allow lexer guessing based on
346  filetext (can be slowish, so file extensions are still checked
347  first).
348
349- ``guess_lexer()`` now makes its decision much faster due to a cache
350  of whether data is xml-like (a check which is used in several
351  versions of ``analyse_text()``.  Several lexers also have more
352  accurate ``analyse_text()`` now.
353
354
355Version 0.10
356------------
357(codename Malzeug, released May 06, 2008)
358
359- Lexers added:
360
361  * Io
362  * Smalltalk
363  * Darcs patches
364  * Tcl
365  * Matlab
366  * Matlab sessions
367  * FORTRAN
368  * XSLT
369  * tcsh
370  * NumPy
371  * Python 3
372  * S, S-plus, R statistics languages
373  * Logtalk
374
375- In the LatexFormatter, the *commandprefix* option is now by default
376  'PY' instead of 'C', since the latter resulted in several collisions
377  with other packages.  Also, the special meaning of the *arg*
378  argument to ``get_style_defs()`` was removed.
379
380- Added ImageFormatter, to format code as PNG, JPG, GIF or BMP.
381  (Needs the Python Imaging Library.)
382
383- Support doc comments in the PHP lexer.
384
385- Handle format specifications in the Perl lexer.
386
387- Fix comment handling in the Batch lexer.
388
389- Add more file name extensions for the C++, INI and XML lexers.
390
391- Fixes in the IRC and MuPad lexers.
392
393- Fix function and interface name highlighting in the Java lexer.
394
395- Fix at-rule handling in the CSS lexer.
396
397- Handle KeyboardInterrupts gracefully in pygmentize.
398
399- Added BlackWhiteStyle.
400
401- Bash lexer now correctly highlights math, does not require
402  whitespace after semicolons, and correctly highlights boolean
403  operators.
404
405- Makefile lexer is now capable of handling BSD and GNU make syntax.
406
407
408Version 0.9
409-----------
410(codename Herbstzeitlose, released Oct 14, 2007)
411
412- Lexers added:
413
414  * Erlang
415  * ActionScript
416  * Literate Haskell
417  * Common Lisp
418  * Various assembly languages
419  * Gettext catalogs
420  * Squid configuration
421  * Debian control files
422  * MySQL-style SQL
423  * MOOCode
424
425- Lexers improved:
426
427  * Greatly improved the Haskell and OCaml lexers.
428  * Improved the Bash lexer's handling of nested constructs.
429  * The C# and Java lexers exhibited abysmal performance with some
430    input code; this should now be fixed.
431  * The IRC logs lexer is now able to colorize weechat logs too.
432  * The Lua lexer now recognizes multi-line comments.
433  * Fixed bugs in the D and MiniD lexer.
434
435- The encoding handling of the command line mode (pygmentize) was
436  enhanced. You shouldn't get UnicodeErrors from it anymore if you
437  don't give an encoding option.
438
439- Added a ``-P`` option to the command line mode which can be used to
440  give options whose values contain commas or equals signs.
441
442- Added 256-color terminal formatter.
443
444- Added an experimental SVG formatter.
445
446- Added the ``lineanchors`` option to the HTML formatter, thanks to
447  Ian Charnas for the idea.
448
449- Gave the line numbers table a CSS class in the HTML formatter.
450
451- Added a Vim 7-like style.
452
453
454Version 0.8.1
455-------------
456(released Jun 27, 2007)
457
458- Fixed POD highlighting in the Ruby lexer.
459
460- Fixed Unicode class and namespace name highlighting in the C# lexer.
461
462- Fixed Unicode string prefix highlighting in the Python lexer.
463
464- Fixed a bug in the D and MiniD lexers.
465
466- Fixed the included MoinMoin parser.
467
468
469Version 0.8
470-----------
471(codename Maikäfer, released May 30, 2007)
472
473- Lexers added:
474
475  * Haskell, thanks to Adam Blinkinsop
476  * Redcode, thanks to Adam Blinkinsop
477  * D, thanks to Kirk McDonald
478  * MuPad, thanks to Christopher Creutzig
479  * MiniD, thanks to Jarrett Billingsley
480  * Vim Script, by Tim Hatch
481
482- The HTML formatter now has a second line-numbers mode in which it
483  will just integrate the numbers in the same ``<pre>`` tag as the
484  code.
485
486- The `CSharpLexer` now is Unicode-aware, which means that it has an
487  option that can be set so that it correctly lexes Unicode
488  identifiers allowed by the C# specs.
489
490- Added a `RaiseOnErrorTokenFilter` that raises an exception when the
491  lexer generates an error token, and a `VisibleWhitespaceFilter` that
492  converts whitespace (spaces, tabs, newlines) into visible
493  characters.
494
495- Fixed the `do_insertions()` helper function to yield correct
496  indices.
497
498- The ReST lexer now automatically highlights source code blocks in
499  ".. sourcecode:: language" and ".. code:: language" directive
500  blocks.
501
502- Improved the default style (thanks to Tiberius Teng). The old
503  default is still available as the "emacs" style (which was an alias
504  before).
505
506- The `get_style_defs` method of HTML formatters now uses the
507  `cssclass` option as the default selector if it was given.
508
509- Improved the ReST and Bash lexers a bit.
510
511- Fixed a few bugs in the Makefile and Bash lexers, thanks to Tim
512  Hatch.
513
514- Fixed a bug in the command line code that disallowed ``-O`` options
515  when using the ``-S`` option.
516
517- Fixed a bug in the `RawTokenFormatter`.
518
519
520Version 0.7.1
521-------------
522(released Feb 15, 2007)
523
524- Fixed little highlighting bugs in the Python, Java, Scheme and
525  Apache Config lexers.
526
527- Updated the included manpage.
528
529- Included a built version of the documentation in the source tarball.
530
531
532Version 0.7
533-----------
534(codename Faschingskrapfn, released Feb 14, 2007)
535
536- Added a MoinMoin parser that uses Pygments. With it, you get
537  Pygments highlighting in Moin Wiki pages.
538
539- Changed the exception raised if no suitable lexer, formatter etc. is
540  found in one of the `get_*_by_*` functions to a custom exception,
541  `pygments.util.ClassNotFound`. It is, however, a subclass of
542  `ValueError` in order to retain backwards compatibility.
543
544- Added a `-H` command line option which can be used to get the
545  docstring of a lexer, formatter or filter.
546
547- Made the handling of lexers and formatters more consistent. The
548  aliases and filename patterns of formatters are now attributes on
549  them.
550
551- Added an OCaml lexer, thanks to Adam Blinkinsop.
552
553- Made the HTML formatter more flexible, and easily subclassable in
554  order to make it easy to implement custom wrappers, e.g. alternate
555  line number markup. See the documentation.
556
557- Added an `outencoding` option to all formatters, making it possible
558  to override the `encoding` (which is used by lexers and formatters)
559  when using the command line interface. Also, if using the terminal
560  formatter and the output file is a terminal and has an encoding
561  attribute, use it if no encoding is given.
562
563- Made it possible to just drop style modules into the `styles`
564  subpackage of the Pygments installation.
565
566- Added a "state" keyword argument to the `using` helper.
567
568- Added a `commandprefix` option to the `LatexFormatter` which allows
569  to control how the command names are constructed.
570
571- Added quite a few new lexers, thanks to Tim Hatch:
572
573  * Java Server Pages
574  * Windows batch files
575  * Trac Wiki markup
576  * Python tracebacks
577  * ReStructuredText
578  * Dylan
579  * and the Befunge esoteric programming language (yay!)
580
581- Added Mako lexers by Ben Bangert.
582
583- Added "fruity" style, another dark background originally vim-based
584  theme.
585
586- Added sources.list lexer by Dennis Kaarsemaker.
587
588- Added token stream filters, and a pygmentize option to use them.
589
590- Changed behavior of `in` Operator for tokens.
591
592- Added mimetypes for all lexers.
593
594- Fixed some problems lexing Python strings.
595
596- Fixed tickets: #167, #178, #179, #180, #185, #201.
597
598
599Version 0.6
600-----------
601(codename Zimtstern, released Dec 20, 2006)
602
603- Added option for the HTML formatter to write the CSS to an external
604  file in "full document" mode.
605
606- Added RTF formatter.
607
608- Added Bash and Apache configuration lexers (thanks to Tim Hatch).
609
610- Improved guessing methods for various lexers.
611
612- Added `@media` support to CSS lexer (thanks to Tim Hatch).
613
614- Added a Groff lexer (thanks to Tim Hatch).
615
616- License change to BSD.
617
618- Added lexers for the Myghty template language.
619
620- Added a Scheme lexer (thanks to Marek Kubica).
621
622- Added some functions to iterate over existing lexers, formatters and
623  lexers.
624
625- The HtmlFormatter's `get_style_defs()` can now take a list as an
626  argument to generate CSS with multiple prefixes.
627
628- Support for guessing input encoding added.
629
630- Encoding support added: all processing is now done with Unicode
631  strings, input and output are converted from and optionally to byte
632  strings (see the ``encoding`` option of lexers and formatters).
633
634- Some improvements in the C(++) lexers handling comments and line
635  continuations.
636
637
638Version 0.5.1
639-------------
640(released Oct 30, 2006)
641
642- Fixed traceback in ``pygmentize -L`` (thanks to Piotr Ozarowski).
643
644
645Version 0.5
646-----------
647(codename PyKleur, released Oct 30, 2006)
648
649- Initial public release.
Note: See TracBrowser for help on using the browser.