arborium-theme 2.3.1

Theme support for arborium syntax highlighting
Documentation

arborium-theme

Theme and highlight definitions for arborium syntax highlighting.

This crate provides:

  • Highlight definitions: Mapping from tree-sitter capture names to short HTML tags (e.g., keyword -> <a-k>)
  • Theme types: Theme, Color, Style for representing syntax highlighting themes
  • Built-in themes: 32 popular color schemes ready to use

Usage

use arborium_theme::{Theme, builtin, HIGHLIGHTS};

// Use a built-in theme
let theme = builtin::catppuccin_mocha();

// Generate CSS for the theme
let css = theme.to_css("[data-theme=\"mocha\"]");

// Access highlight definitions
for def in HIGHLIGHTS {
    println!("{} -> <a-{}>", def.name, def.tag);
}

Built-in Themes

This crate includes 32 themes from popular color schemes. We are grateful to the original theme authors:

Theme Variant Source
Alabaster light tonsky/vscode-theme-alabaster
Ayu Dark dark ayu-theme/ayu-colors
Ayu Light light ayu-theme/ayu-colors
Catppuccin Frappé dark catppuccin/catppuccin
Catppuccin Latte light catppuccin/catppuccin
Catppuccin Macchiato dark catppuccin/catppuccin
Catppuccin Mocha dark catppuccin/catppuccin
Cobalt2 dark wesbos/cobalt2-vscode
Dayfox light EdenEast/nightfox.nvim
Desert256 dark vim-scripts/desert256.vim
Dracula dark draculatheme.com
EF Melissa Dark dark protesilaos.com/emacs/ef-themes
GitHub Dark dark primer/github-vscode-theme
GitHub Light light primer/github-vscode-theme
Gruvbox Dark dark morhetz/gruvbox
Gruvbox Light light morhetz/gruvbox
Kanagawa Dragon dark rebelot/kanagawa.nvim
Light Owl light sdras/night-owl-vscode-theme
Lucius Light light jonathanfilip/vim-lucius
Melange Dark dark savq/melange-nvim
Melange Light light savq/melange-nvim
Monokai dark monokai.pro
Nord dark www.nordtheme.com
One Dark dark atom/one-dark-syntax
Rosé Pine Moon dark rosepinetheme.com
Rustdoc Ayu dark rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/ayu.css
Rustdoc Dark dark rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/dark.css
Rustdoc Light light rust-lang/rust/blob/master/src/librustdoc/html/static/css/themes/light.css
Solarized Dark dark ethanschoonover.com/solarized
Solarized Light light ethanschoonover.com/solarized
Tokyo Night dark enkia/tokyo-night-vscode-theme
Zenburn dark jnurmine/Zenburn

License

This crate is licensed under MIT OR Apache-2.0.

The built-in themes are adaptations of color schemes from their respective projects. Please see each project's repository for their specific licensing terms.