Spintax 1.3.0
Added
- Nesting shades. Braces and brackets carry a cycling
.depth-1….depth-4
scope suffix (depth 5 wearsdepth-1again), so a colour scheme can shade
pairs by nesting level the way Spintax Studio does. The suffix extends the
existing scopes, so every current selector and theme keeps matching and
default schemes look unchanged; README shows the customization snippet.
Fixed
Divergences from the engine, found by comparing against Spintax Studio's
differentially-tested tokenizer (SpxTokens):
- A trailing separator must stand before
|: the<br>in[a|b<br>]sits
before the closing], belongs to the last element, and is now left as text. - A trailing-separator candidate may not contain
|,{,},[or]—
those end the element before any separator is looked for.[a< | >|b]is
three options to the engine, and its pipes are now painted as the separators
they are instead of being swallowed by a phantom< | >separator. The empty
separator<>is now recognised, as the engine renders it. {plural x|y: z}is no longer mis-highlighted as a plural: the engine gives
up on the head at the first|, so the:must come before any pipe.- Blanks between
[and a leading config no longer disable it: the engine
left-trims the first part, so[ <minsize=2>a|b]is config and highlights
as config. - The gap after
#includeaccepts VT and FF as well as space and tab, matching
the engine's include anchor — deliberately wider than the#set/#defone.
Spelled\s, which is line-local in a sublime-syntax pattern (\x0B/\f
escapes break Sublime's regex compiler, silently disabling the context they
appear in).
Changed
/#glued to preceding text no longer opens a multi-line comment, so a bare
URL fragment (https://example.com/#top) does not grey out the rest of the
document. The engine (v0.5.0) opens a comment only when a#/occurs later in
the document; a line-based grammar cannot see other lines, so the rule is
approximated:/#…#/closed on its own line is always a comment, and a
multi-line comment must open at line start or after a blank. Both residual
errors under-claim (miss a real comment) rather than paint a phantom one.- Pushing a version tag now publishes the GitHub Release automatically, with
notes taken from this file's matching section; a tag with no section fails the
job instead of publishing an empty release. The three newest releases are kept
and older entries removed — tags are never deleted, since Package Control
resolves installable versions from them. - CI uses
actions/checkout@v5; v4 targets the deprecated Node.js 20. - README: new Nesting shades section with the colour-scheme snippet, and
Spintax Studio joins the Related list.