ReefVision syntax TOML (Kate model)
Languages are TOML files, not XML. The engine is a per-line context stack
(Kate conceptually; MIT data only). Color schemes supply roles; language
files name those roles from item_data.
Search path
$REEF_HOME/reef-stdlib/reefvision/syntax.d(when set)- Directories registered with
add_syntax_dir(later same-idwins)
App-specific paths are not loaded by the library. Apps register their
own with add_syntax_dir at startup. For example, an editor app called
myapp might register /etc/myapp/syntax.d and ~/.myapp/syntax.d by
default, or an exclusive [syntax] dirs list from its own layered TOML
config.
Later files replace an earlier language with the same id. Unknown
extensions stay unhighlighted.
Bundled languages: Reef, TOML, shell, C, C++, Python, Ruby, Crystal, OCaml, Assembly, JavaScript, XML, HTML, CSS, YAML, V, D.
Color schemes
Editor palettes are independent of the UI theme. Built-ins: Default, Darcula, High Contrast, Paper, Monokai, Solarized Dark, Solarized Light, Twilight, Vibrant Ink, Dracula, One Dark, Tokyo Night, Gruvbox, Catppuccin, Everforest, Gruvbox Light, Synthwave '84.
Roles
normal, keyword, type, string, comment, number, operator,
function, preprocessor, variable, constant, alert, error,
others, special, attribute, builtin.
Rules (v1)
detect_char, detect2, string_detect, word_detect, keyword,
detect_identifier, number, hex. next is stay, pop, or a
context name. line_end is stay or pop.
RegExpr is not implemented yet.