Syntax highlighting and utilities for mise configuration files in Zed IDE.
- 🎨 Syntax Highlighting for
.mise.tomlandmise.tomlfiles - 📝 Support for all mise sections:
[tools],[env],[tasks],[vars],[hooks],[plugins],[settings] - 🏷️ Task property highlighting:
run,depends,description,sources,dir,env, etc. - 🔤 Environment variable detection (UPPERCASE identifiers)
- 🎯 Tera template syntax highlighting (
{{ env.VAR }},{{ cwd }}) - ⚡ Performance-optimized with
#any-of?predicates
- Open Zed
- Open Extensions (
Cmd+Shift+X) - Search for "mise"
- Click Install
mise.toml.mise.tomlmise.local.toml.mise.local.toml
[tools]
python = "3.12"
node = "22"
uv = "latest"
[env]
NODE_ENV = "development"
DATABASE_URL = "{{ env.DATABASE_URL }}"
[tasks.dev]
description = "Start development server"
run = "uv run python -m uvicorn main:app --reload"
depends = ["install"]
[hooks.enter]
run = "uv sync --quiet"# Build the extension
cargo build
# Build for release (optimized)
cargo build --release
# Run tests (when added)
cargo testsrc/lib.rs # Main extension logic with slash commands
languages/mise/
├── config.toml # Language configuration
└── highlights.scm # Tree-sitter highlighting rules
Cargo.toml # Rust dependencies
extension.toml # Zed extension manifest
This extension provides helpful utilities for working with mise:
- /mise-init [language...] - Generate mise.toml templates for specific stacks (python, node, nextjs, go, rust, deno, bun, docker, terraform)
- /mise-task create [stack...] - Add task templates to mise.toml
- /mise-env - Display mise environment information
To test the extension:
- Build:
cargo build - Open Zed and press
Cmd+Shift+P→ "Reload Extensions" or restart Zed - Create a test file:
test.mise.toml - Verify syntax highlighting works
- Try slash commands: type
/and look formise-init,mise-task,mise-env
The extension uses Zed's extension API to provide:
- Syntax Highlighting - Tree-sitter based via
highlights.scm - Slash Commands - Interactive utilities for generating mise configurations
- Command Completion - Smart argument suggestions for each command
Contributions are welcome! Please ensure:
- Code compiles without warnings:
cargo build --release - Syntax highlighting improvements in
languages/mise/highlights.scm - New slash commands follow the existing pattern in
src/lib.rs
Found a bug or have a feature idea? Open an issue on GitHub.
MIT License - Copyright (c) 2024-2026 Franco Tampieri - TTlab