--- a/eric6/ThirdParty/Pygments/pygments/CHANGES Tue Sep 15 18:46:58 2020 +0200 +++ b/eric6/ThirdParty/Pygments/pygments/CHANGES Tue Sep 15 19:09:05 2020 +0200 @@ -1,1457 +1,1520 @@ -Pygments changelog -================== - -Since 2.5.0, issue numbers refer to the tracker at -<https://github.com/pygments/pygments/issues>, -pull request numbers to the requests at -<https://github.com/pygments/pygments/pulls>. - - -Version 2.6.1 -------------- -(released March 8, 2020) - -- This release fixes a packaging issue. No functional changes. - -Version 2.6 ------------ -(released March 8, 2020) - -- Running Pygments on Python 2.x is no longer supported. - (The Python 2 lexer still exists.) - -- Added lexers: - - * Linux kernel logs (PR#1310) - * LLVM MIR (PR#1361) - * MiniScript (PR#1397) - * Mosel (PR#1287, PR#1326) - * Parsing Expression Grammar (PR#1336) - * ReasonML (PR#1386) - * Ride (PR#1319, PR#1321) - * Sieve (PR#1257) - * USD (PR#1290) - * WebIDL (PR#1309) - -- Updated lexers: - - * Apache2 (PR#1378) - * Chapel (PR#1357) - * CSound (PR#1383) - * D (PR#1375, PR#1362) - * Idris (PR#1360) - * Perl6/Raku lexer (PR#1344) - * Python3 (PR#1382, PR#1385) - * Rust: Updated lexer to cover more builtins (mostly macros) and miscellaneous - new syntax (PR#1320) - * SQL: Add temporal support keywords (PR#1402) - -- The 256-color/true-color terminal formatters now support the italic attribute - in styles (PR#1288) -- Support HTTP 2/3 header (PR#1308) -- Support missing reason in HTTP header (PR#1322) -- Boogie/Silver: support line continuations and triggers, move contract keywords - to separate category (PR#1299) -- GAS: support C-style comments (PR#1291) -- Fix names in S lexer (PR#1330, PR#1333) -- Fix numeric literals in Ada (PR#1334) -- Recognize ``.mjs`` files as Javascript (PR#1392) -- Recognize ``.eex`` files as Elixir (PR#1387) -- Fix ``re.MULTILINE`` usage (PR#1388) -- Recognize ``pipenv`` and ``poetry`` dependency & lock files (PR#1376) -- Improve font search on Windows (#1247) -- Remove unused script block (#1401) - -Version 2.5.2 -------------- -(released November 29, 2019) - -- Fix incompatibility with some setuptools versions (PR#1316) - -- Fix lexing of ReST field lists (PR#1279) -- Fix lexing of Matlab keywords as field names (PR#1282) -- Recognize double-quoted strings in Matlab (PR#1278) -- Avoid slow backtracking in Vim lexer (PR#1312) -- Fix Scala highlighting of types (PR#1315) -- Highlight field lists more consistently in ReST (PR#1279) -- Fix highlighting Matlab keywords in field names (PR#1282) -- Recognize Matlab double quoted strings (PR#1278) -- Add some Terraform keywords -- Update Modelica lexer to 3.4 -- Update Crystal examples - - -Version 2.5.1 -------------- -(released November 26, 2019) - -- This release fixes a packaging issue. No functional changes. - - -Version 2.5.0 -------------- -(released November 26, 2019) - -- Added lexers: - - * Email (PR#1246) - * Erlang, Elixir shells (PR#823, #1521) - * Notmuch (PR#1264) - * `Scdoc <https://git.sr.ht/~sircmpwn/scdoc>`_ (PR#1268) - * `Solidity <https://solidity.readthedocs.io/>`_ (#1214) - * `Zeek <https://www.zeek.org>`_ (new name for Bro) (PR#1269) - * `Zig <https://ziglang.org/>`_ (PR#820) - -- Updated lexers: - - * Apache2 Configuration (PR#1251) - * Bash sessions (#1253) - * CSound (PR#1250) - * Dart - * Dockerfile - * Emacs Lisp - * Handlebars (PR#773) - * Java (#1101, #987) - * Logtalk (PR#1261) - * Matlab (PR#1271) - * Praat (PR#1277) - * Python3 (PR#1255, PR#1400) - * Ruby - * YAML (#1528) - * Velocity - -- Added styles: - - * Inkpot (PR#1276) - -- The ``PythonLexer`` class is now an alias for the former ``Python3Lexer``. - The old ``PythonLexer`` is available as ``Python2Lexer``. Same change has - been done for the ``PythonTracebackLexer``. The ``python3`` option for - the ``PythonConsoleLexer`` is now true by default. - -- Bump ``NasmLexer`` priority over ``TasmLexer`` for ``.asm`` files - (fixes #1326) -- Default font in the ``ImageFormatter`` has been updated (#928, PR#1245) -- Test suite switched to py.test, removed nose dependency (#1490) -- Reduce ``TeraTerm`` lexer score -- it used to match nearly all languages - (#1256) -- Treat ``Skylark``/``Starlark`` files as Python files (PR#1259) -- Image formatter: actually respect ``line_number_separator`` option - -- Add LICENSE file to wheel builds -- Agda: fix lambda highlighting -- Dart: support ``@`` annotations -- Dockerfile: accept ``FROM ... AS`` syntax -- Emacs Lisp: add more string functions -- GAS: accept registers in directive arguments -- Java: make structural punctuation (braces, parens, colon, comma) ``Punctuation``, not ``Operator`` (#987) -- Java: support ``var`` contextual keyword (#1101) -- Matlab: Fix recognition of ``function`` keyword (PR#1271) -- Python: recognize ``.jy`` filenames (#976) -- Python: recognize ``f`` string prefix (#1156) -- Ruby: support squiggly heredocs -- Shell sessions: recognize Virtualenv prompt (PR#1266) -- Velocity: support silent reference syntax - - -Version 2.4.2 -------------- -(released May 28, 2019) - -- Fix encoding error when guessing lexer with given ``encoding`` option - (#1438) - - -Version 2.4.1 -------------- -(released May 24, 2019) - -- Updated lexers: - - * Coq (#1430) - * MSDOS Session (PR#734) - * NASM (#1517) - * Objective-C (PR#813, #1508) - * Prolog (#1511) - * TypeScript (#1515) - -- Support CSS variables in stylesheets (PR#814, #1356) -- Fix F# lexer name (PR#709) -- Fix ``TerminalFormatter`` using bold for bright text (#1480) - - -Version 2.4.0 -------------- -(released May 8, 2019) - -- Added lexers: - - * Augeas (PR#807) - * BBC Basic (PR#806) - * Boa (PR#756) - * Charm++ CI (PR#788) - * DASM16 (PR#807) - * FloScript (PR#750) - * FreeFem++ (PR#785) - * Hspec (PR#790) - * Pony (PR#627) - * SGF (PR#780) - * Slash (PR#807) - * Slurm (PR#760) - * Tera Term Language (PR#749) - * TOML (PR#807) - * Unicon (PR#731) - * VBScript (PR#673) - -- Updated lexers: - - * Apache2 (PR#766) - * Cypher (PR#746) - * LLVM (PR#792) - * Makefiles (PR#766) - * PHP (#1482) - * Rust - * SQL (PR#672) - * Stan (PR#774) - * Stata (PR#800) - * Terraform (PR#787) - * YAML - -- Add solarized style (PR#708) -- Add support for Markdown reference-style links (PR#753) -- Add license information to generated HTML/CSS files (#1496) -- Change ANSI color names (PR#777) -- Fix catastrophic backtracking in the bash lexer (#1494) -- Fix documentation failing to build using Sphinx 2.0 (#1501) -- Fix incorrect links in the Lisp and R lexer documentation (PR#775) -- Fix rare unicode errors on Python 2.7 (PR#798, #1492) -- Fix lexers popping from an empty stack (#1506) -- TypoScript uses ``.typoscript`` now (#1498) -- Updated Trove classifiers and ``pip`` requirements (PR#799) - - - -Version 2.3.1 -------------- -(released Dec 16, 2018) - -- Updated lexers: - - * ASM (PR#784) - * Chapel (PR#735) - * Clean (PR#621) - * CSound (PR#684) - * Elm (PR#744) - * Fortran (PR#747) - * GLSL (PR#740) - * Haskell (PR#745) - * Hy (PR#754) - * Igor Pro (PR#764) - * PowerShell (PR#705) - * Python (PR#720, #1299, PR#715) - * SLexer (PR#680) - * YAML (PR#762, PR#724) - -- Fix invalid string escape sequences -- Fix `FutureWarning` introduced by regex changes in Python 3.7 - - -Version 2.3.0 -------------- -(released Nov 25, 2018) - -- Added lexers: - - * Fennel (PR#783) - * HLSL (PR#675) - -- Updated lexers: - - * Dockerfile (PR#714) - -- Minimum Python versions changed to 2.7 and 3.5 -- Added support for Python 3.7 generator changes (PR#772) -- Fix incorrect token type in SCSS for single-quote strings (#1322) -- Use `terminal256` formatter if `TERM` contains `256` (PR#666) -- Fix incorrect handling of GitHub style fences in Markdown (PR#741, #1389) -- Fix `%a` not being highlighted in Python3 strings (PR#727) - - -Version 2.2.0 -------------- -(released Jan 22, 2017) - -- Added lexers: - - * AMPL - * TypoScript (#1173) - * Varnish config (PR#554) - * Clean (PR#503) - * WDiff (PR#513) - * Flatline (PR#551) - * Silver (PR#537) - * HSAIL (PR#518) - * JSGF (PR#546) - * NCAR command language (PR#536) - * Extempore (PR#530) - * Cap'n Proto (PR#595) - * Whiley (PR#573) - * Monte (PR#592) - * Crystal (PR#576) - * Snowball (PR#589) - * CapDL (PR#579) - * NuSMV (PR#564) - * SAS, Stata (PR#593) - -- Added the ability to load lexer and formatter classes directly from files - with the `-x` command line option and the `lexers.load_lexer_from_file()` - and `formatters.load_formatter_from_file()` functions. (PR#559) - -- Added `lexers.find_lexer_class_by_name()`. (#1203) - -- Added new token types and lexing for magic methods and variables in Python - and PHP. - -- Added a new token type for string affixes and lexing for them in Python, C++ - and Postgresql lexers. - -- Added a new token type for heredoc (and similar) string delimiters and - lexing for them in C++, Perl, PHP, Postgresql and Ruby lexers. - -- Styles can now define colors with ANSI colors for use in the 256-color - terminal formatter. (PR#531) - -- Improved the CSS lexer. (#1083, #1130) - -- Added "Rainbow Dash" style. (PR#623) - -- Delay loading `pkg_resources`, which takes a long while to import. (PR#690) - - -Version 2.1.3 -------------- -(released Mar 2, 2016) - -- Fixed regression in Bash lexer (PR#563) - - -Version 2.1.2 -------------- -(released Feb 29, 2016) - -- Fixed Python 3 regression in image formatter (#1215) -- Fixed regression in Bash lexer (PR#562) - - -Version 2.1.1 -------------- -(relased Feb 14, 2016) - -- Fixed Jython compatibility (#1205) -- Fixed HTML formatter output with leading empty lines (#1111) -- Added a mapping table for LaTeX encodings and added utf8 (#1152) -- Fixed image formatter font searching on Macs (#1188) -- Fixed deepcopy-ing of Token instances (#1168) -- Fixed Julia string interpolation (#1170) -- Fixed statefulness of HttpLexer between get_tokens calls -- Many smaller fixes to various lexers - - -Version 2.1 ------------ -(released Jan 17, 2016) - -- Added lexers: - - * Emacs Lisp (PR#431) - * Arduino (PR#442) - * Modula-2 with multi-dialect support (#1090) - * Fortran fixed format (PR#213) - * Archetype Definition language (PR#483) - * Terraform (PR#432) - * Jcl, Easytrieve (PR#208) - * ParaSail (PR#381) - * Boogie (PR#420) - * Turtle (PR#425) - * Fish Shell (PR#422) - * Roboconf (PR#449) - * Test Anything Protocol (PR#428) - * Shen (PR#385) - * Component Pascal (PR#437) - * SuperCollider (PR#472) - * Shell consoles (Tcsh, PowerShell, MSDOS) (PR#479) - * Elm and J (PR#452) - * Crmsh (PR#440) - * Praat (PR#492) - * CSound (PR#494) - * Ezhil (PR#443) - * Thrift (PR#469) - * QVT Operational (PR#204) - * Hexdump (PR#508) - * CAmkES Configuration (PR#462) - -- Added styles: - - * Lovelace (PR#456) - * Algol and Algol-nu (#1090) - -- Added formatters: - - * IRC (PR#458) - * True color (24-bit) terminal ANSI sequences (#1142) - (formatter alias: "16m") - -- New "filename" option for HTML formatter (PR#527). - -- Improved performance of the HTML formatter for long lines (PR#504). - -- Updated autopygmentize script (PR#445). - -- Fixed style inheritance for non-standard token types in HTML output. - -- Added support for async/await to Python 3 lexer. - -- Rewrote linenos option for TerminalFormatter (it's better, but slightly - different output than before) (#1147). - -- Javascript lexer now supports most of ES6 (#1100). - -- Cocoa builtins updated for iOS 8.1 (PR#433). - -- Combined BashSessionLexer and ShellSessionLexer, new version should support - the prompt styles of either. - -- Added option to pygmentize to show a full traceback on exceptions. - -- Fixed incomplete output on Windows and Python 3 (e.g. when using iPython - Notebook) (#1153). - -- Allowed more traceback styles in Python console lexer (PR#253). - -- Added decorators to TypeScript (PR#509). - -- Fix highlighting of certain IRC logs formats (#1076). - - -Version 2.0.2 -------------- -(released Jan 20, 2015) - -- Fix Python tracebacks getting duplicated in the console lexer (#1068). - -- Backquote-delimited identifiers are now recognized in F# (#1062). - - -Version 2.0.1 -------------- -(released Nov 10, 2014) - -- Fix an encoding issue when using ``pygmentize`` with the ``-o`` option. - - -Version 2.0 ------------ -(released Nov 9, 2014) - -- Default lexer encoding is now "guess", i.e. UTF-8 / Locale / Latin1 is - tried in that order. - -- Major update to Swift lexer (PR#410). - -- Multiple fixes to lexer guessing in conflicting cases: - - * recognize HTML5 by doctype - * recognize XML by XML declaration - * don't recognize C/C++ as SystemVerilog - -- Simplified regexes and builtin lists. - - -Version 2.0rc1 --------------- -(released Oct 16, 2014) - -- Dropped Python 2.4 and 2.5 compatibility. This is in favor of single-source - compatibility between Python 2.6, 2.7 and 3.3+. - -- New website and documentation based on Sphinx (finally!) - -- Lexers added: - - * APL (#969) - * Agda and Literate Agda (PR#203) - * Alloy (PR#355) - * AmbientTalk - * BlitzBasic (PR#197) - * ChaiScript (PR#24) - * Chapel (PR#256) - * Cirru (PR#275) - * Clay (PR#184) - * ColdFusion CFC (PR#283) - * Cryptol and Literate Cryptol (PR#344) - * Cypher (PR#257) - * Docker config files - * EBNF (PR#193) - * Eiffel (PR#273) - * GAP (PR#311) - * Golo (PR#309) - * Handlebars (PR#186) - * Hy (PR#238) - * Idris and Literate Idris (PR#210) - * Igor Pro (PR#172) - * Inform 6/7 (PR#281) - * Intel objdump (PR#279) - * Isabelle (PR#386) - * Jasmin (PR#349) - * JSON-LD (PR#289) - * Kal (PR#233) - * Lean (PR#399) - * LSL (PR#296) - * Limbo (PR#291) - * Liquid (#977) - * MQL (PR#285) - * MaskJS (PR#280) - * Mozilla preprocessors - * Mathematica (PR#245) - * NesC (PR#166) - * Nit (PR#375) - * Nix (PR#267) - * Pan - * Pawn (PR#211) - * Perl 6 (PR#181) - * Pig (PR#304) - * Pike (PR#237) - * QBasic (PR#182) - * Red (PR#341) - * ResourceBundle (#1038) - * Rexx (PR#199) - * Rql (PR#251) - * Rsl - * SPARQL (PR#78) - * Slim (PR#366) - * Swift (PR#371) - * Swig (PR#168) - * TADS 3 (PR#407) - * Todo.txt todo lists - * Twig (PR#404) - -- Added a helper to "optimize" regular expressions that match one of many - literal words; this can save 20% and more lexing time with lexers that - highlight many keywords or builtins. - -- New styles: "xcode" and "igor", similar to the default highlighting of - the respective IDEs. - -- The command-line "pygmentize" tool now tries a little harder to find the - correct encoding for files and the terminal (#979). - -- Added "inencoding" option for lexers to override "encoding" analogous - to "outencoding" (#800). - -- Added line-by-line "streaming" mode for pygmentize with the "-s" option. - (PR#165) Only fully works for lexers that have no constructs spanning - lines! - -- Added an "envname" option to the LaTeX formatter to select a replacement - verbatim environment (PR#235). - -- Updated the Makefile lexer to yield a little more useful highlighting. - -- Lexer aliases passed to ``get_lexer_by_name()`` are now case-insensitive. - -- File name matching in lexers and formatters will now use a regex cache - for speed (PR#205). - -- Pygments will now recognize "vim" modelines when guessing the lexer for - a file based on content (PR#118). - -- Major restructure of the ``pygments.lexers`` module namespace. There are now - many more modules with less lexers per module. Old modules are still around - and re-export the lexers they previously contained. - -- The NameHighlightFilter now works with any Name.* token type (#790). - -- Python 3 lexer: add new exceptions from PEP 3151. - -- Opa lexer: add new keywords (PR#170). - -- Julia lexer: add keywords and underscore-separated number - literals (PR#176). - -- Lasso lexer: fix method highlighting, update builtins. Fix - guessing so that plain XML isn't always taken as Lasso (PR#163). - -- Objective C/C++ lexers: allow "@" prefixing any expression (#871). - -- Ruby lexer: fix lexing of Name::Space tokens (#860) and of symbols - in hashes (#873). - -- Stan lexer: update for version 2.4.0 of the language (PR#162, PR#255, PR#377). - -- JavaScript lexer: add the "yield" keyword (PR#196). - -- HTTP lexer: support for PATCH method (PR#190). - -- Koka lexer: update to newest language spec (PR#201). - -- Haxe lexer: rewrite and support for Haxe 3 (PR#174). - -- Prolog lexer: add different kinds of numeric literals (#864). - -- F# lexer: rewrite with newest spec for F# 3.0 (#842), fix a bug with - dotted chains (#948). - -- Kotlin lexer: general update (PR#271). - -- Rebol lexer: fix comment detection and analyse_text (PR#261). - -- LLVM lexer: update keywords to v3.4 (PR#258). - -- PHP lexer: add new keywords and binary literals (PR#222). - -- external/markdown-processor.py updated to newest python-markdown (PR#221). - -- CSS lexer: some highlighting order fixes (PR#231). - -- Ceylon lexer: fix parsing of nested multiline comments (#915). - -- C family lexers: fix parsing of indented preprocessor directives (#944). - -- Rust lexer: update to 0.9 language version (PR#270, PR#388). - -- Elixir lexer: update to 0.15 language version (PR#392). - -- Fix swallowing incomplete tracebacks in Python console lexer (#874). - - -Version 1.6 ------------ -(released Feb 3, 2013) - -- Lexers added: - - * Dylan console (PR#149) - * Logos (PR#150) - * Shell sessions (PR#158) - -- Fix guessed lexers not receiving lexer options (#838). - -- Fix unquoted HTML attribute lexing in Opa (#841). - -- Fixes to the Dart lexer (PR#160). - - -Version 1.6rc1 --------------- -(released Jan 9, 2013) - -- Lexers added: - - * AspectJ (PR#90) - * AutoIt (PR#122) - * BUGS-like languages (PR#89) - * Ceylon (PR#86) - * Croc (new name for MiniD) - * CUDA (PR#75) - * Dg (PR#116) - * IDL (PR#115) - * Jags (PR#89) - * Julia (PR#61) - * Kconfig (#711) - * Lasso (PR#95, PR#113) - * LiveScript (PR#84) - * Monkey (PR#117) - * Mscgen (PR#80) - * NSIS scripts (PR#136) - * OpenCOBOL (PR#72) - * QML (PR#123) - * Puppet (PR#133) - * Racket (PR#94) - * Rdoc (PR#99) - * Robot Framework (PR#137) - * RPM spec files (PR#124) - * Rust (PR#67) - * Smali (Dalvik assembly) - * SourcePawn (PR#39) - * Stan (PR#89) - * Treetop (PR#125) - * TypeScript (PR#114) - * VGL (PR#12) - * Visual FoxPro (#762) - * Windows Registry (#819) - * Xtend (PR#68) - -- The HTML formatter now supports linking to tags using CTags files, when the - python-ctags package is installed (PR#87). - -- The HTML formatter now has a "linespans" option that wraps every line in a - <span> tag with a specific id (PR#82). - -- When deriving a lexer from another lexer with token definitions, definitions - for states not in the child lexer are now inherited. If you override a state - in the child lexer, an "inherit" keyword has been added to insert the base - state at that position (PR#141). - -- The C family lexers now inherit token definitions from a common base class, - removing code duplication (PR#141). - -- Use "colorama" on Windows for console color output (PR#142). - -- Fix Template Haskell highlighting (PR#63). - -- Fix some S/R lexer errors (PR#91). - -- Fix a bug in the Prolog lexer with names that start with 'is' (#810). - -- Rewrite Dylan lexer, add Dylan LID lexer (PR#147). - -- Add a Java quickstart document (PR#146). - -- Add a "external/autopygmentize" file that can be used as .lessfilter (#802). - - -Version 1.5 ------------ -(codename Zeitdilatation, released Mar 10, 2012) - -- Lexers added: - - * Awk (#630) - * Fancy (#633) - * PyPy Log - * eC - * Nimrod - * Nemerle (#667) - * F# (#353) - * Groovy (#501) - * PostgreSQL (#660) - * DTD - * Gosu (#634) - * Octave (PR#22) - * Standard ML (PR#14) - * CFengine3 (#601) - * Opa (PR#37) - * HTTP sessions (PR#42) - * JSON (PR#31) - * SNOBOL (PR#30) - * MoonScript (PR#43) - * ECL (PR#29) - * Urbiscript (PR#17) - * OpenEdge ABL (PR#27) - * SystemVerilog (PR#35) - * Coq (#734) - * PowerShell (#654) - * Dart (#715) - * Fantom (PR#36) - * Bro (PR#5) - * NewLISP (PR#26) - * VHDL (PR#45) - * Scilab (#740) - * Elixir (PR#57) - * Tea (PR#56) - * Kotlin (PR#58) - -- Fix Python 3 terminal highlighting with pygmentize (#691). - -- In the LaTeX formatter, escape special &, < and > chars (#648). - -- In the LaTeX formatter, fix display problems for styles with token - background colors (#670). - -- Enhancements to the Squid conf lexer (#664). - -- Several fixes to the reStructuredText lexer (#636). - -- Recognize methods in the ObjC lexer (#638). - -- Fix Lua "class" highlighting: it does not have classes (#665). - -- Fix degenerate regex in Scala lexer (#671) and highlighting bugs (#713, 708). - -- Fix number pattern order in Ocaml lexer (#647). - -- Fix generic type highlighting in ActionScript 3 (#666). - -- Fixes to the Clojure lexer (PR#9). - -- Fix degenerate regex in Nemerle lexer (#706). - -- Fix infinite looping in CoffeeScript lexer (#729). - -- Fix crashes and analysis with ObjectiveC lexer (#693, #696). - -- Add some Fortran 2003 keywords. - -- Fix Boo string regexes (#679). - -- Add "rrt" style (#727). - -- Fix infinite looping in Darcs Patch lexer. - -- Lots of misc fixes to character-eating bugs and ordering problems in many - different lexers. - - -Version 1.4 ------------ -(codename Unschärfe, released Jan 03, 2011) - -- Lexers added: - - * Factor (#520) - * PostScript (#486) - * Verilog (#491) - * BlitzMax Basic (#478) - * Ioke (#465) - * Java properties, split out of the INI lexer (#445) - * Scss (#509) - * Duel/JBST - * XQuery (#617) - * Mason (#615) - * GoodData (#609) - * SSP (#473) - * Autohotkey (#417) - * Google Protocol Buffers - * Hybris (#506) - -- Do not fail in analyse_text methods (#618). - -- Performance improvements in the HTML formatter (#523). - -- With the ``noclasses`` option in the HTML formatter, some styles - present in the stylesheet were not added as inline styles. - -- Four fixes to the Lua lexer (#480, #481, #482, #497). - -- More context-sensitive Gherkin lexer with support for more i18n translations. - -- Support new OO keywords in Matlab lexer (#521). - -- Small fix in the CoffeeScript lexer (#519). - -- A bugfix for backslashes in ocaml strings (#499). - -- Fix unicode/raw docstrings in the Python lexer (#489). - -- Allow PIL to work without PIL.pth (#502). - -- Allow seconds as a unit in CSS (#496). - -- Support ``application/javascript`` as a JavaScript mime type (#504). - -- Support `Offload <https://offload.codeplay.com/>`_ C++ Extensions as - keywords in the C++ lexer (#484). - -- Escape more characters in LaTeX output (#505). - -- Update Haml/Sass lexers to version 3 (#509). - -- Small PHP lexer string escaping fix (#515). - -- Support comments before preprocessor directives, and unsigned/ - long long literals in C/C++ (#613, #616). - -- Support line continuations in the INI lexer (#494). - -- Fix lexing of Dylan string and char literals (#628). - -- Fix class/procedure name highlighting in VB.NET lexer (#624). - - -Version 1.3.1 -------------- -(bugfix release, released Mar 05, 2010) - -- The ``pygmentize`` script was missing from the distribution. - - -Version 1.3 ------------ -(codename Schneeglöckchen, released Mar 01, 2010) - -- Added the ``ensurenl`` lexer option, which can be used to suppress the - automatic addition of a newline to the lexer input. - -- Lexers added: - - * Ada - * Coldfusion - * Modula-2 - * Haxe - * R console - * Objective-J - * Haml and Sass - * CoffeeScript - -- Enhanced reStructuredText highlighting. - -- Added support for PHP 5.3 namespaces in the PHP lexer. - -- Added a bash completion script for `pygmentize`, to the external/ - directory (#466). - -- Fixed a bug in `do_insertions()` used for multi-lexer languages. - -- Fixed a Ruby regex highlighting bug (#476). - -- Fixed regex highlighting bugs in Perl lexer (#258). - -- Add small enhancements to the C lexer (#467) and Bash lexer (#469). - -- Small fixes for the Tcl, Debian control file, Nginx config, - Smalltalk, Objective-C, Clojure, Lua lexers. - -- Gherkin lexer: Fixed single apostrophe bug and added new i18n keywords. - - -Version 1.2.2 -------------- -(bugfix release, released Jan 02, 2010) - -* Removed a backwards incompatibility in the LaTeX formatter that caused - Sphinx to produce invalid commands when writing LaTeX output (#463). - -* Fixed a forever-backtracking regex in the BashLexer (#462). - - -Version 1.2.1 -------------- -(bugfix release, released Jan 02, 2010) - -* Fixed mishandling of an ellipsis in place of the frames in a Python - console traceback, resulting in clobbered output. - - -Version 1.2 ------------ -(codename Neujahr, released Jan 01, 2010) - -- Dropped Python 2.3 compatibility. - -- Lexers added: - - * Asymptote - * Go - * Gherkin (Cucumber) - * CMake - * Ooc - * Coldfusion - * Haxe - * R console - -- Added options for rendering LaTeX in source code comments in the - LaTeX formatter (#461). - -- Updated the Logtalk lexer. - -- Added `line_number_start` option to image formatter (#456). - -- Added `hl_lines` and `hl_color` options to image formatter (#457). - -- Fixed the HtmlFormatter's handling of noclasses=True to not output any - classes (#427). - -- Added the Monokai style (#453). - -- Fixed LLVM lexer identifier syntax and added new keywords (#442). - -- Fixed the PythonTracebackLexer to handle non-traceback data in header or - trailer, and support more partial tracebacks that start on line 2 (#437). - -- Fixed the CLexer to not highlight ternary statements as labels. - -- Fixed lexing of some Ruby quoting peculiarities (#460). - -- A few ASM lexer fixes (#450). - - -Version 1.1.1 -------------- -(bugfix release, released Sep 15, 2009) - -- Fixed the BBCode lexer (#435). - -- Added support for new Jinja2 keywords. - -- Fixed test suite failures. - -- Added Gentoo-specific suffixes to Bash lexer. - - -Version 1.1 ------------ -(codename Brillouin, released Sep 11, 2009) - -- Ported Pygments to Python 3. This needed a few changes in the way - encodings are handled; they may affect corner cases when used with - Python 2 as well. - -- Lexers added: - - * Antlr/Ragel, thanks to Ana Nelson - * (Ba)sh shell - * Erlang shell - * GLSL - * Prolog - * Evoque - * Modelica - * Rebol - * MXML - * Cython - * ABAP - * ASP.net (VB/C#) - * Vala - * Newspeak - -- Fixed the LaTeX formatter's output so that output generated for one style - can be used with the style definitions of another (#384). - -- Added "anchorlinenos" and "noclobber_cssfile" (#396) options to HTML - formatter. - -- Support multiline strings in Lua lexer. - -- Rewrite of the JavaScript lexer by Pumbaa80 to better support regular - expression literals (#403). - -- When pygmentize is asked to highlight a file for which multiple lexers - match the filename, use the analyse_text guessing engine to determine the - winner (#355). - -- Fixed minor bugs in the JavaScript lexer (#383), the Matlab lexer (#378), - the Scala lexer (#392), the INI lexer (#391), the Clojure lexer (#387) - and the AS3 lexer (#389). - -- Fixed three Perl heredoc lexing bugs (#379, #400, #422). - -- Fixed a bug in the image formatter which misdetected lines (#380). - -- Fixed bugs lexing extended Ruby strings and regexes. - -- Fixed a bug when lexing git diffs. - -- Fixed a bug lexing the empty commit in the PHP lexer (#405). - -- Fixed a bug causing Python numbers to be mishighlighted as floats (#397). - -- Fixed a bug when backslashes are used in odd locations in Python (#395). - -- Fixed various bugs in Matlab and S-Plus lexers, thanks to Winston Chang (#410, - #411, #413, #414) and fmarc (#419). - -- Fixed a bug in Haskell single-line comment detection (#426). - -- Added new-style reStructuredText directive for docutils 0.5+ (#428). - - -Version 1.0 ------------ -(codename Dreiundzwanzig, released Nov 23, 2008) - -- Don't use join(splitlines()) when converting newlines to ``\n``, - because that doesn't keep all newlines at the end when the - ``stripnl`` lexer option is False. - -- Added ``-N`` option to command-line interface to get a lexer name - for a given filename. - -- Added Tango style, written by Andre Roberge for the Crunchy project. - -- Added Python3TracebackLexer and ``python3`` option to - PythonConsoleLexer. - -- Fixed a few bugs in the Haskell lexer. - -- Fixed PythonTracebackLexer to be able to recognize SyntaxError and - KeyboardInterrupt (#360). - -- Provide one formatter class per image format, so that surprises like:: - - pygmentize -f gif -o foo.gif foo.py - - creating a PNG file are avoided. - -- Actually use the `font_size` option of the image formatter. - -- Fixed numpy lexer that it doesn't listen for `*.py` any longer. - -- Fixed HTML formatter so that text options can be Unicode - strings (#371). - -- Unified Diff lexer supports the "udiff" alias now. - -- Fixed a few issues in Scala lexer (#367). - -- RubyConsoleLexer now supports simple prompt mode (#363). - -- JavascriptLexer is smarter about what constitutes a regex (#356). - -- Add Applescript lexer, thanks to Andreas Amann (#330). - -- Make the codetags more strict about matching words (#368). - -- NginxConfLexer is a little more accurate on mimetypes and - variables (#370). - - -Version 0.11.1 --------------- -(released Aug 24, 2008) - -- Fixed a Jython compatibility issue in pygments.unistring (#358). - - -Version 0.11 ------------- -(codename Straußenei, released Aug 23, 2008) - -Many thanks go to Tim Hatch for writing or integrating most of the bug -fixes and new features. - -- Lexers added: - - * Nasm-style assembly language, thanks to delroth - * YAML, thanks to Kirill Simonov - * ActionScript 3, thanks to Pierre Bourdon - * Cheetah/Spitfire templates, thanks to Matt Good - * Lighttpd config files - * Nginx config files - * Gnuplot plotting scripts - * Clojure - * POV-Ray scene files - * Sqlite3 interactive console sessions - * Scala source files, thanks to Krzysiek Goj - -- Lexers improved: - - * C lexer highlights standard library functions now and supports C99 - types. - * Bash lexer now correctly highlights heredocs without preceding - whitespace. - * Vim lexer now highlights hex colors properly and knows a couple - more keywords. - * Irc logs lexer now handles xchat's default time format (#340) and - correctly highlights lines ending in ``>``. - * Support more delimiters for perl regular expressions (#258). - * ObjectiveC lexer now supports 2.0 features. - -- Added "Visual Studio" style. - -- Updated markdown processor to Markdown 1.7. - -- Support roman/sans/mono style defs and use them in the LaTeX - formatter. - -- The RawTokenFormatter is no longer registered to ``*.raw`` and it's - documented that tokenization with this lexer may raise exceptions. - -- New option ``hl_lines`` to HTML formatter, to highlight certain - lines. - -- New option ``prestyles`` to HTML formatter. - -- New option *-g* to pygmentize, to allow lexer guessing based on - filetext (can be slowish, so file extensions are still checked - first). - -- ``guess_lexer()`` now makes its decision much faster due to a cache - of whether data is xml-like (a check which is used in several - versions of ``analyse_text()``. Several lexers also have more - accurate ``analyse_text()`` now. - - -Version 0.10 ------------- -(codename Malzeug, released May 06, 2008) - -- Lexers added: - - * Io - * Smalltalk - * Darcs patches - * Tcl - * Matlab - * Matlab sessions - * FORTRAN - * XSLT - * tcsh - * NumPy - * Python 3 - * S, S-plus, R statistics languages - * Logtalk - -- In the LatexFormatter, the *commandprefix* option is now by default - 'PY' instead of 'C', since the latter resulted in several collisions - with other packages. Also, the special meaning of the *arg* - argument to ``get_style_defs()`` was removed. - -- Added ImageFormatter, to format code as PNG, JPG, GIF or BMP. - (Needs the Python Imaging Library.) - -- Support doc comments in the PHP lexer. - -- Handle format specifications in the Perl lexer. - -- Fix comment handling in the Batch lexer. - -- Add more file name extensions for the C++, INI and XML lexers. - -- Fixes in the IRC and MuPad lexers. - -- Fix function and interface name highlighting in the Java lexer. - -- Fix at-rule handling in the CSS lexer. - -- Handle KeyboardInterrupts gracefully in pygmentize. - -- Added BlackWhiteStyle. - -- Bash lexer now correctly highlights math, does not require - whitespace after semicolons, and correctly highlights boolean - operators. - -- Makefile lexer is now capable of handling BSD and GNU make syntax. - - -Version 0.9 ------------ -(codename Herbstzeitlose, released Oct 14, 2007) - -- Lexers added: - - * Erlang - * ActionScript - * Literate Haskell - * Common Lisp - * Various assembly languages - * Gettext catalogs - * Squid configuration - * Debian control files - * MySQL-style SQL - * MOOCode - -- Lexers improved: - - * Greatly improved the Haskell and OCaml lexers. - * Improved the Bash lexer's handling of nested constructs. - * The C# and Java lexers exhibited abysmal performance with some - input code; this should now be fixed. - * The IRC logs lexer is now able to colorize weechat logs too. - * The Lua lexer now recognizes multi-line comments. - * Fixed bugs in the D and MiniD lexer. - -- The encoding handling of the command line mode (pygmentize) was - enhanced. You shouldn't get UnicodeErrors from it anymore if you - don't give an encoding option. - -- Added a ``-P`` option to the command line mode which can be used to - give options whose values contain commas or equals signs. - -- Added 256-color terminal formatter. - -- Added an experimental SVG formatter. - -- Added the ``lineanchors`` option to the HTML formatter, thanks to - Ian Charnas for the idea. - -- Gave the line numbers table a CSS class in the HTML formatter. - -- Added a Vim 7-like style. - - -Version 0.8.1 -------------- -(released Jun 27, 2007) - -- Fixed POD highlighting in the Ruby lexer. - -- Fixed Unicode class and namespace name highlighting in the C# lexer. - -- Fixed Unicode string prefix highlighting in the Python lexer. - -- Fixed a bug in the D and MiniD lexers. - -- Fixed the included MoinMoin parser. - - -Version 0.8 ------------ -(codename Maikäfer, released May 30, 2007) - -- Lexers added: - - * Haskell, thanks to Adam Blinkinsop - * Redcode, thanks to Adam Blinkinsop - * D, thanks to Kirk McDonald - * MuPad, thanks to Christopher Creutzig - * MiniD, thanks to Jarrett Billingsley - * Vim Script, by Tim Hatch - -- The HTML formatter now has a second line-numbers mode in which it - will just integrate the numbers in the same ``<pre>`` tag as the - code. - -- The `CSharpLexer` now is Unicode-aware, which means that it has an - option that can be set so that it correctly lexes Unicode - identifiers allowed by the C# specs. - -- Added a `RaiseOnErrorTokenFilter` that raises an exception when the - lexer generates an error token, and a `VisibleWhitespaceFilter` that - converts whitespace (spaces, tabs, newlines) into visible - characters. - -- Fixed the `do_insertions()` helper function to yield correct - indices. - -- The ReST lexer now automatically highlights source code blocks in - ".. sourcecode:: language" and ".. code:: language" directive - blocks. - -- Improved the default style (thanks to Tiberius Teng). The old - default is still available as the "emacs" style (which was an alias - before). - -- The `get_style_defs` method of HTML formatters now uses the - `cssclass` option as the default selector if it was given. - -- Improved the ReST and Bash lexers a bit. - -- Fixed a few bugs in the Makefile and Bash lexers, thanks to Tim - Hatch. - -- Fixed a bug in the command line code that disallowed ``-O`` options - when using the ``-S`` option. - -- Fixed a bug in the `RawTokenFormatter`. - - -Version 0.7.1 -------------- -(released Feb 15, 2007) - -- Fixed little highlighting bugs in the Python, Java, Scheme and - Apache Config lexers. - -- Updated the included manpage. - -- Included a built version of the documentation in the source tarball. - - -Version 0.7 ------------ -(codename Faschingskrapfn, released Feb 14, 2007) - -- Added a MoinMoin parser that uses Pygments. With it, you get - Pygments highlighting in Moin Wiki pages. - -- Changed the exception raised if no suitable lexer, formatter etc. is - found in one of the `get_*_by_*` functions to a custom exception, - `pygments.util.ClassNotFound`. It is, however, a subclass of - `ValueError` in order to retain backwards compatibility. - -- Added a `-H` command line option which can be used to get the - docstring of a lexer, formatter or filter. - -- Made the handling of lexers and formatters more consistent. The - aliases and filename patterns of formatters are now attributes on - them. - -- Added an OCaml lexer, thanks to Adam Blinkinsop. - -- Made the HTML formatter more flexible, and easily subclassable in - order to make it easy to implement custom wrappers, e.g. alternate - line number markup. See the documentation. - -- Added an `outencoding` option to all formatters, making it possible - to override the `encoding` (which is used by lexers and formatters) - when using the command line interface. Also, if using the terminal - formatter and the output file is a terminal and has an encoding - attribute, use it if no encoding is given. - -- Made it possible to just drop style modules into the `styles` - subpackage of the Pygments installation. - -- Added a "state" keyword argument to the `using` helper. - -- Added a `commandprefix` option to the `LatexFormatter` which allows - to control how the command names are constructed. - -- Added quite a few new lexers, thanks to Tim Hatch: - - * Java Server Pages - * Windows batch files - * Trac Wiki markup - * Python tracebacks - * ReStructuredText - * Dylan - * and the Befunge esoteric programming language (yay!) - -- Added Mako lexers by Ben Bangert. - -- Added "fruity" style, another dark background originally vim-based - theme. - -- Added sources.list lexer by Dennis Kaarsemaker. - -- Added token stream filters, and a pygmentize option to use them. - -- Changed behavior of `in` Operator for tokens. - -- Added mimetypes for all lexers. - -- Fixed some problems lexing Python strings. - -- Fixed tickets: #167, #178, #179, #180, #185, #201. - - -Version 0.6 ------------ -(codename Zimtstern, released Dec 20, 2006) - -- Added option for the HTML formatter to write the CSS to an external - file in "full document" mode. - -- Added RTF formatter. - -- Added Bash and Apache configuration lexers (thanks to Tim Hatch). - -- Improved guessing methods for various lexers. - -- Added `@media` support to CSS lexer (thanks to Tim Hatch). - -- Added a Groff lexer (thanks to Tim Hatch). - -- License change to BSD. - -- Added lexers for the Myghty template language. - -- Added a Scheme lexer (thanks to Marek Kubica). - -- Added some functions to iterate over existing lexers, formatters and - lexers. - -- The HtmlFormatter's `get_style_defs()` can now take a list as an - argument to generate CSS with multiple prefixes. - -- Support for guessing input encoding added. - -- Encoding support added: all processing is now done with Unicode - strings, input and output are converted from and optionally to byte - strings (see the ``encoding`` option of lexers and formatters). - -- Some improvements in the C(++) lexers handling comments and line - continuations. - - -Version 0.5.1 -------------- -(released Oct 30, 2006) - -- Fixed traceback in ``pygmentize -L`` (thanks to Piotr Ozarowski). - - -Version 0.5 ------------ -(codename PyKleur, released Oct 30, 2006) - -- Initial public release. +Pygments changelog +================== + +Since 2.5.0, issue numbers refer to the tracker at +<https://github.com/pygments/pygments/issues>, +pull request numbers to the requests at +<https://github.com/pygments/pygments/pulls>. + + +Version 2.7.0 +------------- +(released September 12, 2020) + +- Added lexers: + + * Arrow (PR#1481, PR#1499) + * BARE (PR#1488) + * Devicetree (PR#1434) + * F* (PR#1409) + * GDScript (PR#1457) + * Pointless (PR#1494) + * PromQL (PR#1506) + * PsySH (PR#1438) + * Singularity (PR#1285) + * TiddlyWiki5 (PR#1390) + * TNT (PR#1414) + * YANG (PR#1408, PR#1428) + +- Updated lexers: + + * APL (PR#1503) + * C++ (PR#1350, which also fixes: #1222, #996, #906, #828, #1162, #1166, + #1396) + * Chapel (PR#1423) + * CMake (#1491) + * CSound (#1509) + * Cython (PR#1507) + * Dart (PR#1449) + * Fennel (PR#1535) + * Fortran (PR#1442) + * GAS (PR#1530) + * HTTP (PR#1432, #1520, PR#1521) + * Inform 6 (PR#1461) + * Javascript (PR#1533) + * JSON (#1065, PR#1528) + * Lean (PR#1415) + * Matlab (PR#1399) + * Markdown (#1492, PR#1495) + * MySQL (#975, #1063, #1453, PR#1527) + * NASM (PR#1465) + * Nim (PR#1426) + * PostgreSQL (PR#1513) + * PowerShell (PR#1398, PR#1497) + * Protobuf (PR#1505) + * Robot (PR#1480) + * SQL (PR#1402) + * SystemVerilog (PR#1436, PR#1452, PR#1454, PR#1460, PR#1462, PR#1463, PR#1464, PR#1471, #1496, PR#1504) + * TeraTerm (PR#1337) + * XML (#1502) + +- Added a new filter for math symbols (PR#1406) +- The Kconfig lexer will match Kconfig derivative names now (PR#1458) +- Improved HTML formatter output (PR#1500) +- ``.markdown`` is now recognized as an extension for Markdown files (PR#1476) +- Fixed line number colors for Solarized (PR#1477, #1356) +- Improvements to exception handling (PR#1478) +- Improvements to tests (PR#1532, PR#1533, PR#1539) +- Various code cleanups (PR#1536, PR#1537, PR#1538) + + +Version 2.6.1 +------------- +(released March 8, 2020) + +- This release fixes a packaging issue. No functional changes. + + +Version 2.6 +----------- +(released March 8, 2020) + +- Running Pygments on Python 2.x is no longer supported. + (The Python 2 lexer still exists.) + +- Added lexers: + + * Linux kernel logs (PR#1310) + * LLVM MIR (PR#1361) + * MiniScript (PR#1397) + * Mosel (PR#1287, PR#1326) + * Parsing Expression Grammar (PR#1336) + * ReasonML (PR#1386) + * Ride (PR#1319, PR#1321) + * Sieve (PR#1257) + * USD (PR#1290) + * WebIDL (PR#1309) + +- Updated lexers: + + * Apache2 (PR#1378) + * Chapel (PR#1357) + * CSound (PR#1383) + * D (PR#1375, PR#1362) + * Idris (PR#1360) + * Perl6/Raku lexer (PR#1344) + * Python3 (PR#1382, PR#1385) + * Rust: Updated lexer to cover more builtins (mostly macros) and miscellaneous + new syntax (PR#1320) + * SQL: Add temporal support keywords (PR#1402) + +- The 256-color/true-color terminal formatters now support the italic attribute + in styles (PR#1288) +- Support HTTP 2/3 header (PR#1308) +- Support missing reason in HTTP header (PR#1322) +- Boogie/Silver: support line continuations and triggers, move contract keywords + to separate category (PR#1299) +- GAS: support C-style comments (PR#1291) +- Fix names in S lexer (PR#1330, PR#1333) +- Fix numeric literals in Ada (PR#1334) +- Recognize ``.mjs`` files as Javascript (PR#1392) +- Recognize ``.eex`` files as Elixir (PR#1387) +- Fix ``re.MULTILINE`` usage (PR#1388) +- Recognize ``pipenv`` and ``poetry`` dependency & lock files (PR#1376) +- Improve font search on Windows (#1247) +- Remove unused script block (#1401) + + +Version 2.5.2 +------------- +(released November 29, 2019) + +- Fix incompatibility with some setuptools versions (PR#1316) + +- Fix lexing of ReST field lists (PR#1279) +- Fix lexing of Matlab keywords as field names (PR#1282) +- Recognize double-quoted strings in Matlab (PR#1278) +- Avoid slow backtracking in Vim lexer (PR#1312) +- Fix Scala highlighting of types (PR#1315) +- Highlight field lists more consistently in ReST (PR#1279) +- Fix highlighting Matlab keywords in field names (PR#1282) +- Recognize Matlab double quoted strings (PR#1278) +- Add some Terraform keywords +- Update Modelica lexer to 3.4 +- Update Crystal examples + + +Version 2.5.1 +------------- +(released November 26, 2019) + +- This release fixes a packaging issue. No functional changes. + + +Version 2.5.0 +------------- +(released November 26, 2019) + +- Added lexers: + + * Email (PR#1246) + * Erlang, Elixir shells (PR#823, #1521) + * Notmuch (PR#1264) + * `Scdoc <https://git.sr.ht/~sircmpwn/scdoc>`_ (PR#1268) + * `Solidity <https://solidity.readthedocs.io/>`_ (#1214) + * `Zeek <https://www.zeek.org>`_ (new name for Bro) (PR#1269) + * `Zig <https://ziglang.org/>`_ (PR#820) + +- Updated lexers: + + * Apache2 Configuration (PR#1251) + * Bash sessions (#1253) + * CSound (PR#1250) + * Dart + * Dockerfile + * Emacs Lisp + * Handlebars (PR#773) + * Java (#1101, #987) + * Logtalk (PR#1261) + * Matlab (PR#1271) + * Praat (PR#1277) + * Python3 (PR#1255, PR#1400) + * Ruby + * YAML (#1528) + * Velocity + +- Added styles: + + * Inkpot (PR#1276) + +- The ``PythonLexer`` class is now an alias for the former ``Python3Lexer``. + The old ``PythonLexer`` is available as ``Python2Lexer``. Same change has + been done for the ``PythonTracebackLexer``. The ``python3`` option for + the ``PythonConsoleLexer`` is now true by default. + +- Bump ``NasmLexer`` priority over ``TasmLexer`` for ``.asm`` files + (fixes #1326) +- Default font in the ``ImageFormatter`` has been updated (#928, PR#1245) +- Test suite switched to py.test, removed nose dependency (#1490) +- Reduce ``TeraTerm`` lexer score -- it used to match nearly all languages + (#1256) +- Treat ``Skylark``/``Starlark`` files as Python files (PR#1259) +- Image formatter: actually respect ``line_number_separator`` option + +- Add LICENSE file to wheel builds +- Agda: fix lambda highlighting +- Dart: support ``@`` annotations +- Dockerfile: accept ``FROM ... AS`` syntax +- Emacs Lisp: add more string functions +- GAS: accept registers in directive arguments +- Java: make structural punctuation (braces, parens, colon, comma) ``Punctuation``, not ``Operator`` (#987) +- Java: support ``var`` contextual keyword (#1101) +- Matlab: Fix recognition of ``function`` keyword (PR#1271) +- Python: recognize ``.jy`` filenames (#976) +- Python: recognize ``f`` string prefix (#1156) +- Ruby: support squiggly heredocs +- Shell sessions: recognize Virtualenv prompt (PR#1266) +- Velocity: support silent reference syntax + + +Version 2.4.2 +------------- +(released May 28, 2019) + +- Fix encoding error when guessing lexer with given ``encoding`` option + (#1438) + + +Version 2.4.1 +------------- +(released May 24, 2019) + +- Updated lexers: + + * Coq (#1430) + * MSDOS Session (PR#734) + * NASM (#1517) + * Objective-C (PR#813, #1508) + * Prolog (#1511) + * TypeScript (#1515) + +- Support CSS variables in stylesheets (PR#814, #1356) +- Fix F# lexer name (PR#709) +- Fix ``TerminalFormatter`` using bold for bright text (#1480) + + +Version 2.4.0 +------------- +(released May 8, 2019) + +- Added lexers: + + * Augeas (PR#807) + * BBC Basic (PR#806) + * Boa (PR#756) + * Charm++ CI (PR#788) + * DASM16 (PR#807) + * FloScript (PR#750) + * FreeFem++ (PR#785) + * Hspec (PR#790) + * Pony (PR#627) + * SGF (PR#780) + * Slash (PR#807) + * Slurm (PR#760) + * Tera Term Language (PR#749) + * TOML (PR#807) + * Unicon (PR#731) + * VBScript (PR#673) + +- Updated lexers: + + * Apache2 (PR#766) + * Cypher (PR#746) + * LLVM (PR#792) + * Makefiles (PR#766) + * PHP (#1482) + * Rust + * SQL (PR#672) + * Stan (PR#774) + * Stata (PR#800) + * Terraform (PR#787) + * YAML + +- Add solarized style (PR#708) +- Add support for Markdown reference-style links (PR#753) +- Add license information to generated HTML/CSS files (#1496) +- Change ANSI color names (PR#777) +- Fix catastrophic backtracking in the bash lexer (#1494) +- Fix documentation failing to build using Sphinx 2.0 (#1501) +- Fix incorrect links in the Lisp and R lexer documentation (PR#775) +- Fix rare unicode errors on Python 2.7 (PR#798, #1492) +- Fix lexers popping from an empty stack (#1506) +- TypoScript uses ``.typoscript`` now (#1498) +- Updated Trove classifiers and ``pip`` requirements (PR#799) + + + +Version 2.3.1 +------------- +(released Dec 16, 2018) + +- Updated lexers: + + * ASM (PR#784) + * Chapel (PR#735) + * Clean (PR#621) + * CSound (PR#684) + * Elm (PR#744) + * Fortran (PR#747) + * GLSL (PR#740) + * Haskell (PR#745) + * Hy (PR#754) + * Igor Pro (PR#764) + * PowerShell (PR#705) + * Python (PR#720, #1299, PR#715) + * SLexer (PR#680) + * YAML (PR#762, PR#724) + +- Fix invalid string escape sequences +- Fix `FutureWarning` introduced by regex changes in Python 3.7 + + +Version 2.3.0 +------------- +(released Nov 25, 2018) + +- Added lexers: + + * Fennel (PR#783) + * HLSL (PR#675) + +- Updated lexers: + + * Dockerfile (PR#714) + +- Minimum Python versions changed to 2.7 and 3.5 +- Added support for Python 3.7 generator changes (PR#772) +- Fix incorrect token type in SCSS for single-quote strings (#1322) +- Use `terminal256` formatter if `TERM` contains `256` (PR#666) +- Fix incorrect handling of GitHub style fences in Markdown (PR#741, #1389) +- Fix `%a` not being highlighted in Python3 strings (PR#727) + + +Version 2.2.0 +------------- +(released Jan 22, 2017) + +- Added lexers: + + * AMPL + * TypoScript (#1173) + * Varnish config (PR#554) + * Clean (PR#503) + * WDiff (PR#513) + * Flatline (PR#551) + * Silver (PR#537) + * HSAIL (PR#518) + * JSGF (PR#546) + * NCAR command language (PR#536) + * Extempore (PR#530) + * Cap'n Proto (PR#595) + * Whiley (PR#573) + * Monte (PR#592) + * Crystal (PR#576) + * Snowball (PR#589) + * CapDL (PR#579) + * NuSMV (PR#564) + * SAS, Stata (PR#593) + +- Added the ability to load lexer and formatter classes directly from files + with the `-x` command line option and the `lexers.load_lexer_from_file()` + and `formatters.load_formatter_from_file()` functions. (PR#559) + +- Added `lexers.find_lexer_class_by_name()`. (#1203) + +- Added new token types and lexing for magic methods and variables in Python + and PHP. + +- Added a new token type for string affixes and lexing for them in Python, C++ + and Postgresql lexers. + +- Added a new token type for heredoc (and similar) string delimiters and + lexing for them in C++, Perl, PHP, Postgresql and Ruby lexers. + +- Styles can now define colors with ANSI colors for use in the 256-color + terminal formatter. (PR#531) + +- Improved the CSS lexer. (#1083, #1130) + +- Added "Rainbow Dash" style. (PR#623) + +- Delay loading `pkg_resources`, which takes a long while to import. (PR#690) + + +Version 2.1.3 +------------- +(released Mar 2, 2016) + +- Fixed regression in Bash lexer (PR#563) + + +Version 2.1.2 +------------- +(released Feb 29, 2016) + +- Fixed Python 3 regression in image formatter (#1215) +- Fixed regression in Bash lexer (PR#562) + + +Version 2.1.1 +------------- +(relased Feb 14, 2016) + +- Fixed Jython compatibility (#1205) +- Fixed HTML formatter output with leading empty lines (#1111) +- Added a mapping table for LaTeX encodings and added utf8 (#1152) +- Fixed image formatter font searching on Macs (#1188) +- Fixed deepcopy-ing of Token instances (#1168) +- Fixed Julia string interpolation (#1170) +- Fixed statefulness of HttpLexer between get_tokens calls +- Many smaller fixes to various lexers + + +Version 2.1 +----------- +(released Jan 17, 2016) + +- Added lexers: + + * Emacs Lisp (PR#431) + * Arduino (PR#442) + * Modula-2 with multi-dialect support (#1090) + * Fortran fixed format (PR#213) + * Archetype Definition language (PR#483) + * Terraform (PR#432) + * Jcl, Easytrieve (PR#208) + * ParaSail (PR#381) + * Boogie (PR#420) + * Turtle (PR#425) + * Fish Shell (PR#422) + * Roboconf (PR#449) + * Test Anything Protocol (PR#428) + * Shen (PR#385) + * Component Pascal (PR#437) + * SuperCollider (PR#472) + * Shell consoles (Tcsh, PowerShell, MSDOS) (PR#479) + * Elm and J (PR#452) + * Crmsh (PR#440) + * Praat (PR#492) + * CSound (PR#494) + * Ezhil (PR#443) + * Thrift (PR#469) + * QVT Operational (PR#204) + * Hexdump (PR#508) + * CAmkES Configuration (PR#462) + +- Added styles: + + * Lovelace (PR#456) + * Algol and Algol-nu (#1090) + +- Added formatters: + + * IRC (PR#458) + * True color (24-bit) terminal ANSI sequences (#1142) + (formatter alias: "16m") + +- New "filename" option for HTML formatter (PR#527). + +- Improved performance of the HTML formatter for long lines (PR#504). + +- Updated autopygmentize script (PR#445). + +- Fixed style inheritance for non-standard token types in HTML output. + +- Added support for async/await to Python 3 lexer. + +- Rewrote linenos option for TerminalFormatter (it's better, but slightly + different output than before) (#1147). + +- Javascript lexer now supports most of ES6 (#1100). + +- Cocoa builtins updated for iOS 8.1 (PR#433). + +- Combined BashSessionLexer and ShellSessionLexer, new version should support + the prompt styles of either. + +- Added option to pygmentize to show a full traceback on exceptions. + +- Fixed incomplete output on Windows and Python 3 (e.g. when using iPython + Notebook) (#1153). + +- Allowed more traceback styles in Python console lexer (PR#253). + +- Added decorators to TypeScript (PR#509). + +- Fix highlighting of certain IRC logs formats (#1076). + + +Version 2.0.2 +------------- +(released Jan 20, 2015) + +- Fix Python tracebacks getting duplicated in the console lexer (#1068). + +- Backquote-delimited identifiers are now recognized in F# (#1062). + + +Version 2.0.1 +------------- +(released Nov 10, 2014) + +- Fix an encoding issue when using ``pygmentize`` with the ``-o`` option. + + +Version 2.0 +----------- +(released Nov 9, 2014) + +- Default lexer encoding is now "guess", i.e. UTF-8 / Locale / Latin1 is + tried in that order. + +- Major update to Swift lexer (PR#410). + +- Multiple fixes to lexer guessing in conflicting cases: + + * recognize HTML5 by doctype + * recognize XML by XML declaration + * don't recognize C/C++ as SystemVerilog + +- Simplified regexes and builtin lists. + + +Version 2.0rc1 +-------------- +(released Oct 16, 2014) + +- Dropped Python 2.4 and 2.5 compatibility. This is in favor of single-source + compatibility between Python 2.6, 2.7 and 3.3+. + +- New website and documentation based on Sphinx (finally!) + +- Lexers added: + + * APL (#969) + * Agda and Literate Agda (PR#203) + * Alloy (PR#355) + * AmbientTalk + * BlitzBasic (PR#197) + * ChaiScript (PR#24) + * Chapel (PR#256) + * Cirru (PR#275) + * Clay (PR#184) + * ColdFusion CFC (PR#283) + * Cryptol and Literate Cryptol (PR#344) + * Cypher (PR#257) + * Docker config files + * EBNF (PR#193) + * Eiffel (PR#273) + * GAP (PR#311) + * Golo (PR#309) + * Handlebars (PR#186) + * Hy (PR#238) + * Idris and Literate Idris (PR#210) + * Igor Pro (PR#172) + * Inform 6/7 (PR#281) + * Intel objdump (PR#279) + * Isabelle (PR#386) + * Jasmin (PR#349) + * JSON-LD (PR#289) + * Kal (PR#233) + * Lean (PR#399) + * LSL (PR#296) + * Limbo (PR#291) + * Liquid (#977) + * MQL (PR#285) + * MaskJS (PR#280) + * Mozilla preprocessors + * Mathematica (PR#245) + * NesC (PR#166) + * Nit (PR#375) + * Nix (PR#267) + * Pan + * Pawn (PR#211) + * Perl 6 (PR#181) + * Pig (PR#304) + * Pike (PR#237) + * QBasic (PR#182) + * Red (PR#341) + * ResourceBundle (#1038) + * Rexx (PR#199) + * Rql (PR#251) + * Rsl + * SPARQL (PR#78) + * Slim (PR#366) + * Swift (PR#371) + * Swig (PR#168) + * TADS 3 (PR#407) + * Todo.txt todo lists + * Twig (PR#404) + +- Added a helper to "optimize" regular expressions that match one of many + literal words; this can save 20% and more lexing time with lexers that + highlight many keywords or builtins. + +- New styles: "xcode" and "igor", similar to the default highlighting of + the respective IDEs. + +- The command-line "pygmentize" tool now tries a little harder to find the + correct encoding for files and the terminal (#979). + +- Added "inencoding" option for lexers to override "encoding" analogous + to "outencoding" (#800). + +- Added line-by-line "streaming" mode for pygmentize with the "-s" option. + (PR#165) Only fully works for lexers that have no constructs spanning + lines! + +- Added an "envname" option to the LaTeX formatter to select a replacement + verbatim environment (PR#235). + +- Updated the Makefile lexer to yield a little more useful highlighting. + +- Lexer aliases passed to ``get_lexer_by_name()`` are now case-insensitive. + +- File name matching in lexers and formatters will now use a regex cache + for speed (PR#205). + +- Pygments will now recognize "vim" modelines when guessing the lexer for + a file based on content (PR#118). + +- Major restructure of the ``pygments.lexers`` module namespace. There are now + many more modules with less lexers per module. Old modules are still around + and re-export the lexers they previously contained. + +- The NameHighlightFilter now works with any Name.* token type (#790). + +- Python 3 lexer: add new exceptions from PEP 3151. + +- Opa lexer: add new keywords (PR#170). + +- Julia lexer: add keywords and underscore-separated number + literals (PR#176). + +- Lasso lexer: fix method highlighting, update builtins. Fix + guessing so that plain XML isn't always taken as Lasso (PR#163). + +- Objective C/C++ lexers: allow "@" prefixing any expression (#871). + +- Ruby lexer: fix lexing of Name::Space tokens (#860) and of symbols + in hashes (#873). + +- Stan lexer: update for version 2.4.0 of the language (PR#162, PR#255, PR#377). + +- JavaScript lexer: add the "yield" keyword (PR#196). + +- HTTP lexer: support for PATCH method (PR#190). + +- Koka lexer: update to newest language spec (PR#201). + +- Haxe lexer: rewrite and support for Haxe 3 (PR#174). + +- Prolog lexer: add different kinds of numeric literals (#864). + +- F# lexer: rewrite with newest spec for F# 3.0 (#842), fix a bug with + dotted chains (#948). + +- Kotlin lexer: general update (PR#271). + +- Rebol lexer: fix comment detection and analyse_text (PR#261). + +- LLVM lexer: update keywords to v3.4 (PR#258). + +- PHP lexer: add new keywords and binary literals (PR#222). + +- external/markdown-processor.py updated to newest python-markdown (PR#221). + +- CSS lexer: some highlighting order fixes (PR#231). + +- Ceylon lexer: fix parsing of nested multiline comments (#915). + +- C family lexers: fix parsing of indented preprocessor directives (#944). + +- Rust lexer: update to 0.9 language version (PR#270, PR#388). + +- Elixir lexer: update to 0.15 language version (PR#392). + +- Fix swallowing incomplete tracebacks in Python console lexer (#874). + + +Version 1.6 +----------- +(released Feb 3, 2013) + +- Lexers added: + + * Dylan console (PR#149) + * Logos (PR#150) + * Shell sessions (PR#158) + +- Fix guessed lexers not receiving lexer options (#838). + +- Fix unquoted HTML attribute lexing in Opa (#841). + +- Fixes to the Dart lexer (PR#160). + + +Version 1.6rc1 +-------------- +(released Jan 9, 2013) + +- Lexers added: + + * AspectJ (PR#90) + * AutoIt (PR#122) + * BUGS-like languages (PR#89) + * Ceylon (PR#86) + * Croc (new name for MiniD) + * CUDA (PR#75) + * Dg (PR#116) + * IDL (PR#115) + * Jags (PR#89) + * Julia (PR#61) + * Kconfig (#711) + * Lasso (PR#95, PR#113) + * LiveScript (PR#84) + * Monkey (PR#117) + * Mscgen (PR#80) + * NSIS scripts (PR#136) + * OpenCOBOL (PR#72) + * QML (PR#123) + * Puppet (PR#133) + * Racket (PR#94) + * Rdoc (PR#99) + * Robot Framework (PR#137) + * RPM spec files (PR#124) + * Rust (PR#67) + * Smali (Dalvik assembly) + * SourcePawn (PR#39) + * Stan (PR#89) + * Treetop (PR#125) + * TypeScript (PR#114) + * VGL (PR#12) + * Visual FoxPro (#762) + * Windows Registry (#819) + * Xtend (PR#68) + +- The HTML formatter now supports linking to tags using CTags files, when the + python-ctags package is installed (PR#87). + +- The HTML formatter now has a "linespans" option that wraps every line in a + <span> tag with a specific id (PR#82). + +- When deriving a lexer from another lexer with token definitions, definitions + for states not in the child lexer are now inherited. If you override a state + in the child lexer, an "inherit" keyword has been added to insert the base + state at that position (PR#141). + +- The C family lexers now inherit token definitions from a common base class, + removing code duplication (PR#141). + +- Use "colorama" on Windows for console color output (PR#142). + +- Fix Template Haskell highlighting (PR#63). + +- Fix some S/R lexer errors (PR#91). + +- Fix a bug in the Prolog lexer with names that start with 'is' (#810). + +- Rewrite Dylan lexer, add Dylan LID lexer (PR#147). + +- Add a Java quickstart document (PR#146). + +- Add a "external/autopygmentize" file that can be used as .lessfilter (#802). + + +Version 1.5 +----------- +(codename Zeitdilatation, released Mar 10, 2012) + +- Lexers added: + + * Awk (#630) + * Fancy (#633) + * PyPy Log + * eC + * Nimrod + * Nemerle (#667) + * F# (#353) + * Groovy (#501) + * PostgreSQL (#660) + * DTD + * Gosu (#634) + * Octave (PR#22) + * Standard ML (PR#14) + * CFengine3 (#601) + * Opa (PR#37) + * HTTP sessions (PR#42) + * JSON (PR#31) + * SNOBOL (PR#30) + * MoonScript (PR#43) + * ECL (PR#29) + * Urbiscript (PR#17) + * OpenEdge ABL (PR#27) + * SystemVerilog (PR#35) + * Coq (#734) + * PowerShell (#654) + * Dart (#715) + * Fantom (PR#36) + * Bro (PR#5) + * NewLISP (PR#26) + * VHDL (PR#45) + * Scilab (#740) + * Elixir (PR#57) + * Tea (PR#56) + * Kotlin (PR#58) + +- Fix Python 3 terminal highlighting with pygmentize (#691). + +- In the LaTeX formatter, escape special &, < and > chars (#648). + +- In the LaTeX formatter, fix display problems for styles with token + background colors (#670). + +- Enhancements to the Squid conf lexer (#664). + +- Several fixes to the reStructuredText lexer (#636). + +- Recognize methods in the ObjC lexer (#638). + +- Fix Lua "class" highlighting: it does not have classes (#665). + +- Fix degenerate regex in Scala lexer (#671) and highlighting bugs (#713, 708). + +- Fix number pattern order in Ocaml lexer (#647). + +- Fix generic type highlighting in ActionScript 3 (#666). + +- Fixes to the Clojure lexer (PR#9). + +- Fix degenerate regex in Nemerle lexer (#706). + +- Fix infinite looping in CoffeeScript lexer (#729). + +- Fix crashes and analysis with ObjectiveC lexer (#693, #696). + +- Add some Fortran 2003 keywords. + +- Fix Boo string regexes (#679). + +- Add "rrt" style (#727). + +- Fix infinite looping in Darcs Patch lexer. + +- Lots of misc fixes to character-eating bugs and ordering problems in many + different lexers. + + +Version 1.4 +----------- +(codename Unschärfe, released Jan 03, 2011) + +- Lexers added: + + * Factor (#520) + * PostScript (#486) + * Verilog (#491) + * BlitzMax Basic (#478) + * Ioke (#465) + * Java properties, split out of the INI lexer (#445) + * Scss (#509) + * Duel/JBST + * XQuery (#617) + * Mason (#615) + * GoodData (#609) + * SSP (#473) + * Autohotkey (#417) + * Google Protocol Buffers + * Hybris (#506) + +- Do not fail in analyse_text methods (#618). + +- Performance improvements in the HTML formatter (#523). + +- With the ``noclasses`` option in the HTML formatter, some styles + present in the stylesheet were not added as inline styles. + +- Four fixes to the Lua lexer (#480, #481, #482, #497). + +- More context-sensitive Gherkin lexer with support for more i18n translations. + +- Support new OO keywords in Matlab lexer (#521). + +- Small fix in the CoffeeScript lexer (#519). + +- A bugfix for backslashes in ocaml strings (#499). + +- Fix unicode/raw docstrings in the Python lexer (#489). + +- Allow PIL to work without PIL.pth (#502). + +- Allow seconds as a unit in CSS (#496). + +- Support ``application/javascript`` as a JavaScript mime type (#504). + +- Support `Offload <https://offload.codeplay.com/>`_ C++ Extensions as + keywords in the C++ lexer (#484). + +- Escape more characters in LaTeX output (#505). + +- Update Haml/Sass lexers to version 3 (#509). + +- Small PHP lexer string escaping fix (#515). + +- Support comments before preprocessor directives, and unsigned/ + long long literals in C/C++ (#613, #616). + +- Support line continuations in the INI lexer (#494). + +- Fix lexing of Dylan string and char literals (#628). + +- Fix class/procedure name highlighting in VB.NET lexer (#624). + + +Version 1.3.1 +------------- +(bugfix release, released Mar 05, 2010) + +- The ``pygmentize`` script was missing from the distribution. + + +Version 1.3 +----------- +(codename Schneeglöckchen, released Mar 01, 2010) + +- Added the ``ensurenl`` lexer option, which can be used to suppress the + automatic addition of a newline to the lexer input. + +- Lexers added: + + * Ada + * Coldfusion + * Modula-2 + * Haxe + * R console + * Objective-J + * Haml and Sass + * CoffeeScript + +- Enhanced reStructuredText highlighting. + +- Added support for PHP 5.3 namespaces in the PHP lexer. + +- Added a bash completion script for `pygmentize`, to the external/ + directory (#466). + +- Fixed a bug in `do_insertions()` used for multi-lexer languages. + +- Fixed a Ruby regex highlighting bug (#476). + +- Fixed regex highlighting bugs in Perl lexer (#258). + +- Add small enhancements to the C lexer (#467) and Bash lexer (#469). + +- Small fixes for the Tcl, Debian control file, Nginx config, + Smalltalk, Objective-C, Clojure, Lua lexers. + +- Gherkin lexer: Fixed single apostrophe bug and added new i18n keywords. + + +Version 1.2.2 +------------- +(bugfix release, released Jan 02, 2010) + +* Removed a backwards incompatibility in the LaTeX formatter that caused + Sphinx to produce invalid commands when writing LaTeX output (#463). + +* Fixed a forever-backtracking regex in the BashLexer (#462). + + +Version 1.2.1 +------------- +(bugfix release, released Jan 02, 2010) + +* Fixed mishandling of an ellipsis in place of the frames in a Python + console traceback, resulting in clobbered output. + + +Version 1.2 +----------- +(codename Neujahr, released Jan 01, 2010) + +- Dropped Python 2.3 compatibility. + +- Lexers added: + + * Asymptote + * Go + * Gherkin (Cucumber) + * CMake + * Ooc + * Coldfusion + * Haxe + * R console + +- Added options for rendering LaTeX in source code comments in the + LaTeX formatter (#461). + +- Updated the Logtalk lexer. + +- Added `line_number_start` option to image formatter (#456). + +- Added `hl_lines` and `hl_color` options to image formatter (#457). + +- Fixed the HtmlFormatter's handling of noclasses=True to not output any + classes (#427). + +- Added the Monokai style (#453). + +- Fixed LLVM lexer identifier syntax and added new keywords (#442). + +- Fixed the PythonTracebackLexer to handle non-traceback data in header or + trailer, and support more partial tracebacks that start on line 2 (#437). + +- Fixed the CLexer to not highlight ternary statements as labels. + +- Fixed lexing of some Ruby quoting peculiarities (#460). + +- A few ASM lexer fixes (#450). + + +Version 1.1.1 +------------- +(bugfix release, released Sep 15, 2009) + +- Fixed the BBCode lexer (#435). + +- Added support for new Jinja2 keywords. + +- Fixed test suite failures. + +- Added Gentoo-specific suffixes to Bash lexer. + + +Version 1.1 +----------- +(codename Brillouin, released Sep 11, 2009) + +- Ported Pygments to Python 3. This needed a few changes in the way + encodings are handled; they may affect corner cases when used with + Python 2 as well. + +- Lexers added: + + * Antlr/Ragel, thanks to Ana Nelson + * (Ba)sh shell + * Erlang shell + * GLSL + * Prolog + * Evoque + * Modelica + * Rebol + * MXML + * Cython + * ABAP + * ASP.net (VB/C#) + * Vala + * Newspeak + +- Fixed the LaTeX formatter's output so that output generated for one style + can be used with the style definitions of another (#384). + +- Added "anchorlinenos" and "noclobber_cssfile" (#396) options to HTML + formatter. + +- Support multiline strings in Lua lexer. + +- Rewrite of the JavaScript lexer by Pumbaa80 to better support regular + expression literals (#403). + +- When pygmentize is asked to highlight a file for which multiple lexers + match the filename, use the analyse_text guessing engine to determine the + winner (#355). + +- Fixed minor bugs in the JavaScript lexer (#383), the Matlab lexer (#378), + the Scala lexer (#392), the INI lexer (#391), the Clojure lexer (#387) + and the AS3 lexer (#389). + +- Fixed three Perl heredoc lexing bugs (#379, #400, #422). + +- Fixed a bug in the image formatter which misdetected lines (#380). + +- Fixed bugs lexing extended Ruby strings and regexes. + +- Fixed a bug when lexing git diffs. + +- Fixed a bug lexing the empty commit in the PHP lexer (#405). + +- Fixed a bug causing Python numbers to be mishighlighted as floats (#397). + +- Fixed a bug when backslashes are used in odd locations in Python (#395). + +- Fixed various bugs in Matlab and S-Plus lexers, thanks to Winston Chang (#410, + #411, #413, #414) and fmarc (#419). + +- Fixed a bug in Haskell single-line comment detection (#426). + +- Added new-style reStructuredText directive for docutils 0.5+ (#428). + + +Version 1.0 +----------- +(codename Dreiundzwanzig, released Nov 23, 2008) + +- Don't use join(splitlines()) when converting newlines to ``\n``, + because that doesn't keep all newlines at the end when the + ``stripnl`` lexer option is False. + +- Added ``-N`` option to command-line interface to get a lexer name + for a given filename. + +- Added Tango style, written by Andre Roberge for the Crunchy project. + +- Added Python3TracebackLexer and ``python3`` option to + PythonConsoleLexer. + +- Fixed a few bugs in the Haskell lexer. + +- Fixed PythonTracebackLexer to be able to recognize SyntaxError and + KeyboardInterrupt (#360). + +- Provide one formatter class per image format, so that surprises like:: + + pygmentize -f gif -o foo.gif foo.py + + creating a PNG file are avoided. + +- Actually use the `font_size` option of the image formatter. + +- Fixed numpy lexer that it doesn't listen for `*.py` any longer. + +- Fixed HTML formatter so that text options can be Unicode + strings (#371). + +- Unified Diff lexer supports the "udiff" alias now. + +- Fixed a few issues in Scala lexer (#367). + +- RubyConsoleLexer now supports simple prompt mode (#363). + +- JavascriptLexer is smarter about what constitutes a regex (#356). + +- Add Applescript lexer, thanks to Andreas Amann (#330). + +- Make the codetags more strict about matching words (#368). + +- NginxConfLexer is a little more accurate on mimetypes and + variables (#370). + + +Version 0.11.1 +-------------- +(released Aug 24, 2008) + +- Fixed a Jython compatibility issue in pygments.unistring (#358). + + +Version 0.11 +------------ +(codename Straußenei, released Aug 23, 2008) + +Many thanks go to Tim Hatch for writing or integrating most of the bug +fixes and new features. + +- Lexers added: + + * Nasm-style assembly language, thanks to delroth + * YAML, thanks to Kirill Simonov + * ActionScript 3, thanks to Pierre Bourdon + * Cheetah/Spitfire templates, thanks to Matt Good + * Lighttpd config files + * Nginx config files + * Gnuplot plotting scripts + * Clojure + * POV-Ray scene files + * Sqlite3 interactive console sessions + * Scala source files, thanks to Krzysiek Goj + +- Lexers improved: + + * C lexer highlights standard library functions now and supports C99 + types. + * Bash lexer now correctly highlights heredocs without preceding + whitespace. + * Vim lexer now highlights hex colors properly and knows a couple + more keywords. + * Irc logs lexer now handles xchat's default time format (#340) and + correctly highlights lines ending in ``>``. + * Support more delimiters for perl regular expressions (#258). + * ObjectiveC lexer now supports 2.0 features. + +- Added "Visual Studio" style. + +- Updated markdown processor to Markdown 1.7. + +- Support roman/sans/mono style defs and use them in the LaTeX + formatter. + +- The RawTokenFormatter is no longer registered to ``*.raw`` and it's + documented that tokenization with this lexer may raise exceptions. + +- New option ``hl_lines`` to HTML formatter, to highlight certain + lines. + +- New option ``prestyles`` to HTML formatter. + +- New option *-g* to pygmentize, to allow lexer guessing based on + filetext (can be slowish, so file extensions are still checked + first). + +- ``guess_lexer()`` now makes its decision much faster due to a cache + of whether data is xml-like (a check which is used in several + versions of ``analyse_text()``. Several lexers also have more + accurate ``analyse_text()`` now. + + +Version 0.10 +------------ +(codename Malzeug, released May 06, 2008) + +- Lexers added: + + * Io + * Smalltalk + * Darcs patches + * Tcl + * Matlab + * Matlab sessions + * FORTRAN + * XSLT + * tcsh + * NumPy + * Python 3 + * S, S-plus, R statistics languages + * Logtalk + +- In the LatexFormatter, the *commandprefix* option is now by default + 'PY' instead of 'C', since the latter resulted in several collisions + with other packages. Also, the special meaning of the *arg* + argument to ``get_style_defs()`` was removed. + +- Added ImageFormatter, to format code as PNG, JPG, GIF or BMP. + (Needs the Python Imaging Library.) + +- Support doc comments in the PHP lexer. + +- Handle format specifications in the Perl lexer. + +- Fix comment handling in the Batch lexer. + +- Add more file name extensions for the C++, INI and XML lexers. + +- Fixes in the IRC and MuPad lexers. + +- Fix function and interface name highlighting in the Java lexer. + +- Fix at-rule handling in the CSS lexer. + +- Handle KeyboardInterrupts gracefully in pygmentize. + +- Added BlackWhiteStyle. + +- Bash lexer now correctly highlights math, does not require + whitespace after semicolons, and correctly highlights boolean + operators. + +- Makefile lexer is now capable of handling BSD and GNU make syntax. + + +Version 0.9 +----------- +(codename Herbstzeitlose, released Oct 14, 2007) + +- Lexers added: + + * Erlang + * ActionScript + * Literate Haskell + * Common Lisp + * Various assembly languages + * Gettext catalogs + * Squid configuration + * Debian control files + * MySQL-style SQL + * MOOCode + +- Lexers improved: + + * Greatly improved the Haskell and OCaml lexers. + * Improved the Bash lexer's handling of nested constructs. + * The C# and Java lexers exhibited abysmal performance with some + input code; this should now be fixed. + * The IRC logs lexer is now able to colorize weechat logs too. + * The Lua lexer now recognizes multi-line comments. + * Fixed bugs in the D and MiniD lexer. + +- The encoding handling of the command line mode (pygmentize) was + enhanced. You shouldn't get UnicodeErrors from it anymore if you + don't give an encoding option. + +- Added a ``-P`` option to the command line mode which can be used to + give options whose values contain commas or equals signs. + +- Added 256-color terminal formatter. + +- Added an experimental SVG formatter. + +- Added the ``lineanchors`` option to the HTML formatter, thanks to + Ian Charnas for the idea. + +- Gave the line numbers table a CSS class in the HTML formatter. + +- Added a Vim 7-like style. + + +Version 0.8.1 +------------- +(released Jun 27, 2007) + +- Fixed POD highlighting in the Ruby lexer. + +- Fixed Unicode class and namespace name highlighting in the C# lexer. + +- Fixed Unicode string prefix highlighting in the Python lexer. + +- Fixed a bug in the D and MiniD lexers. + +- Fixed the included MoinMoin parser. + + +Version 0.8 +----------- +(codename Maikäfer, released May 30, 2007) + +- Lexers added: + + * Haskell, thanks to Adam Blinkinsop + * Redcode, thanks to Adam Blinkinsop + * D, thanks to Kirk McDonald + * MuPad, thanks to Christopher Creutzig + * MiniD, thanks to Jarrett Billingsley + * Vim Script, by Tim Hatch + +- The HTML formatter now has a second line-numbers mode in which it + will just integrate the numbers in the same ``<pre>`` tag as the + code. + +- The `CSharpLexer` now is Unicode-aware, which means that it has an + option that can be set so that it correctly lexes Unicode + identifiers allowed by the C# specs. + +- Added a `RaiseOnErrorTokenFilter` that raises an exception when the + lexer generates an error token, and a `VisibleWhitespaceFilter` that + converts whitespace (spaces, tabs, newlines) into visible + characters. + +- Fixed the `do_insertions()` helper function to yield correct + indices. + +- The ReST lexer now automatically highlights source code blocks in + ".. sourcecode:: language" and ".. code:: language" directive + blocks. + +- Improved the default style (thanks to Tiberius Teng). The old + default is still available as the "emacs" style (which was an alias + before). + +- The `get_style_defs` method of HTML formatters now uses the + `cssclass` option as the default selector if it was given. + +- Improved the ReST and Bash lexers a bit. + +- Fixed a few bugs in the Makefile and Bash lexers, thanks to Tim + Hatch. + +- Fixed a bug in the command line code that disallowed ``-O`` options + when using the ``-S`` option. + +- Fixed a bug in the `RawTokenFormatter`. + + +Version 0.7.1 +------------- +(released Feb 15, 2007) + +- Fixed little highlighting bugs in the Python, Java, Scheme and + Apache Config lexers. + +- Updated the included manpage. + +- Included a built version of the documentation in the source tarball. + + +Version 0.7 +----------- +(codename Faschingskrapfn, released Feb 14, 2007) + +- Added a MoinMoin parser that uses Pygments. With it, you get + Pygments highlighting in Moin Wiki pages. + +- Changed the exception raised if no suitable lexer, formatter etc. is + found in one of the `get_*_by_*` functions to a custom exception, + `pygments.util.ClassNotFound`. It is, however, a subclass of + `ValueError` in order to retain backwards compatibility. + +- Added a `-H` command line option which can be used to get the + docstring of a lexer, formatter or filter. + +- Made the handling of lexers and formatters more consistent. The + aliases and filename patterns of formatters are now attributes on + them. + +- Added an OCaml lexer, thanks to Adam Blinkinsop. + +- Made the HTML formatter more flexible, and easily subclassable in + order to make it easy to implement custom wrappers, e.g. alternate + line number markup. See the documentation. + +- Added an `outencoding` option to all formatters, making it possible + to override the `encoding` (which is used by lexers and formatters) + when using the command line interface. Also, if using the terminal + formatter and the output file is a terminal and has an encoding + attribute, use it if no encoding is given. + +- Made it possible to just drop style modules into the `styles` + subpackage of the Pygments installation. + +- Added a "state" keyword argument to the `using` helper. + +- Added a `commandprefix` option to the `LatexFormatter` which allows + to control how the command names are constructed. + +- Added quite a few new lexers, thanks to Tim Hatch: + + * Java Server Pages + * Windows batch files + * Trac Wiki markup + * Python tracebacks + * ReStructuredText + * Dylan + * and the Befunge esoteric programming language (yay!) + +- Added Mako lexers by Ben Bangert. + +- Added "fruity" style, another dark background originally vim-based + theme. + +- Added sources.list lexer by Dennis Kaarsemaker. + +- Added token stream filters, and a pygmentize option to use them. + +- Changed behavior of `in` Operator for tokens. + +- Added mimetypes for all lexers. + +- Fixed some problems lexing Python strings. + +- Fixed tickets: #167, #178, #179, #180, #185, #201. + + +Version 0.6 +----------- +(codename Zimtstern, released Dec 20, 2006) + +- Added option for the HTML formatter to write the CSS to an external + file in "full document" mode. + +- Added RTF formatter. + +- Added Bash and Apache configuration lexers (thanks to Tim Hatch). + +- Improved guessing methods for various lexers. + +- Added `@media` support to CSS lexer (thanks to Tim Hatch). + +- Added a Groff lexer (thanks to Tim Hatch). + +- License change to BSD. + +- Added lexers for the Myghty template language. + +- Added a Scheme lexer (thanks to Marek Kubica). + +- Added some functions to iterate over existing lexers, formatters and + lexers. + +- The HtmlFormatter's `get_style_defs()` can now take a list as an + argument to generate CSS with multiple prefixes. + +- Support for guessing input encoding added. + +- Encoding support added: all processing is now done with Unicode + strings, input and output are converted from and optionally to byte + strings (see the ``encoding`` option of lexers and formatters). + +- Some improvements in the C(++) lexers handling comments and line + continuations. + + +Version 0.5.1 +------------- +(released Oct 30, 2006) + +- Fixed traceback in ``pygmentize -L`` (thanks to Piotr Ozarowski). + + +Version 0.5 +----------- +(codename PyKleur, released Oct 30, 2006) + +- Initial public release.