Log message:
Update to skylighting-0.12.2
0.12.2
* Parser: handle context shift to external context, e.g.,
BashOneLine##Bash. Closes #139 (issue with Dockerfile).
* Update xml files from upstream: bash, cmake, markdown, objectivecpp, php,
sql-postgresql, sql, stan, zshr
* Fix formatting in Color doc-comment (Janek Spaderna).
* Add stan.xml (Brian Ward).
0.12.1
* Update syntax definitions: bash, cmake, dockerfile, gnuassembler,
markdown, spdx-comments.
* Support hex escapes using \x in regex char classes (#135). These occur in
a number of syntax definitions and weren't correctly interpreted
before. Thanks to @Agnishom.
* Support regex property syntax, e.g. \p{Lu}.
* Regex: support \B (non-word-boundary).
0.12
* Properly handle include elements in keyword lists (#124). A number of
syntaxes (e.g. typescript, scala) include keyword lists from other
syntaxe,s and previously we weren't able to handle this.
* There are several pieces to this change. We need to store lists where
other Syntaxes can look them up, so we add an sLists field to Syntax [API
change], and modify the parser to fill this. We change lists so that
their values are not just a Text, but a ListItem that can either be a
textual value or an include directive, specifying a ListName (syntax name
and list name).
* The Keyword constructor for Matcher now takes, instead of a WordSet,
Either a ListName or a WordSet (API change).
* Skylighting.Parser now exports resolveKeywords (API change), which
modifies all Keyword matchers in a syntax so that Left values with a
ListName become Right values with resolved WordSets. The tokenizer
applies this function automatically to the SyntaxMap given in Config. But
it is more efficient to do this conversion just once, rather than every
time tokenize is called. So we have loadSyntaxesFromDir call it on the
SyntaxMap. With this optimization, there is not an appreciable
performance cost to the changes described above.
* Skylighting.Regex: Fix bug with regexes like a{10}b (#133). This requires
exactly 10 a's; previously we interpreted it as "at least 10."
* skylighting-extract: take a directory as argument rather than files. This
allows us to use loadSyntaxesFromDir.
* Update xml syntax definitions from upstream: julia, cmake, cpp, isocpp,
markdown, python, toml.
0.11
* Skylighting.Regex: Support regex subroutines (#118). For example, (?1) is
replaced by the regex in the first capturing group. So far we only
support this simple, absolute form, not the relative form (?-1) supported
by some engines (but not used, I think, in KDE's syntax
highlighters). This change involves an API change: Regex in
Skylighting.Regex has a new Subroutine constructor, and the Recurse
constructor has been removed. Instead of Recurse we use Subroutine 0,
which unifies the code.
* Skylighting.Regex: handle e.g. [\1] and [\123] (without initial 0) as
octal escapes (#118). These occur in the zsh.xml syntax definition.
* Pull xml definitions for bash, cmake, python, zsh from upstream.
* README: Add a note about pulling syntax definitions from upstream
(#138). Update build instructions for recent cabal versions (#131).
0.10.5.2
* Added swift grammar definition (Igor Ranieri).
* Simplify README.md instructions for two-step build.
* Fix link to KDE documentation.
|