Skip to content

Releases: markup-carve/sublime-carve

0.1.2

Choose a tag to compare

@dereuromark dereuromark released this 20 Jul 12:09

Beyond highlighting: embedded code languages, a symbol outline, commands, a build system, and snippets - plus three mis-scoping bugs fixed.

Fixes

  • Raw fences (=FORMAT) were parsed as code blocks with a language literally named =html, while %%% - which is a block comment - was treated as a raw block.
  • Block comment fences of four or more percent signs were mis-scoped as raw blocks.
  • Cross-references (</#id>), inline footnotes (^[note]) and caption lines (^ text under an image or quote) had no rules at all. Captions were additionally mis-scoped as table captions.
  • Fenced code embedded source.embedded.carve, a placeholder scope no syntax defines, so code got one flat colour and Sublime logged an embed error.

Improvements

  • Code inside a fence is highlighted with Sublime's own syntax for that language - python, js/ts, rust, go, php, ruby, sql, shell, yaml, json, html, css and ~35 more.
  • Frontmatter is highlighted with its declared format (yaml/toml/json).
  • Headings feed the symbol list, so Goto Symbol (ctrl+r) and the breadcrumb navigate by section.
  • Commands: Carve: Go to Cross-Reference Target (jumps </#id> to its heading) and Carve: Format Buffer (carve fmt over the buffer, with optional format-on-save).
  • Build system: ctrl+b lints with clickable results; variants for project lint, fmt --check, fmt -w, HTML, and an ANSI preview.
  • Snippets and completions for admonitions, tables, list-table, code-group, figure with caption, definition lists, footnotes, cross-references, frontmatter, math, spoiler, tabs, toc, mermaid, chart.

Breaking (scopes)

All captions now use markup.caption.carve. The old markup.table.caption.carve and string.unquoted.caption.carve scopes are gone - update colour schemes that targeted them.

The carve CLI is optional and only needed for formatting and the build system.

Full Changelog: 0.1.1...0.1.2

0.1.1

Choose a tag to compare

@dereuromark dereuromark released this 19 Jul 10:59

Fixes

  • Add .gitattributes with export-ignore entries so the shipped package contains only the package files (excludes the syntax test file, .github/, and .gitattributes itself).

Full Changelog: 0.1.0...0.1.1

0.1.0

Choose a tag to compare

@dereuromark dereuromark released this 15 Jul 14:40
aef2c7c

First release of the Carve syntax for Sublime Text.

Features

  • Syntax highlighting for Carve (.crv): headings, inline markup, links, code fences with headers/labels, tables (including alignment colons), definition lists (term + definition), fenced divs and admonitions, list and continuation markers, math, footnotes, citations, code callouts, and critic markup.
  • Scope names mirror the canonical text.carve TextMate grammar, so existing color schemes light it up.

Install via Package Control (once listed) or add this repository manually.