feat: add syntax highlighting for 9 additional languages

- Cargo.toml: Add tree-sitter grammars for Nix, Python, JavaScript,
  TypeScript, Go, C, CSS, HTML, YAML. Upgrade tree-sitter-highlight
  to 0.26 for language version 15 compatibility.

- src/highlight.rs: Add Language enum variants and get_config()
  match arms for all new languages. Update render() callback for
  0.26 API (writes attributes to buffer). Add tests for Nix and
  Python highlighting.

TOML excluded due to incompatible API (tree-sitter 0.20 vs 0.26).
This commit is contained in:
Timothy DeHerrera
2026-01-25 17:20:00 -07:00
parent a73359098e
commit acb0ff3e15
3 changed files with 234 additions and 45 deletions

View File

@@ -13,10 +13,19 @@ thiserror = "2"
walkdir = "2"
# Syntax highlighting
tree-sitter-bash = "0.23"
tree-sitter-highlight = "0.24"
tree-sitter-json = "0.24"
tree-sitter-rust = "0.23"
tree-sitter-bash = "0.23"
tree-sitter-c = "0.24"
tree-sitter-css = "0.25"
tree-sitter-go = "0.25"
tree-sitter-highlight = "0.26"
tree-sitter-html = "0.23"
tree-sitter-javascript = "0.25"
tree-sitter-json = "0.24"
tree-sitter-nix = "0.3"
tree-sitter-python = "0.25"
tree-sitter-rust = "0.23"
tree-sitter-typescript = "0.23"
tree-sitter-yaml = "0.7"
# CSS processing
lightningcss = "1.0.0-alpha.70"