Zine
Editor Support
Zine uses three languages that you will want to add support for in your editor:
There are two main components for each that you will want to setup:
- Syntax highlighting
(mostly provided through tree sitter grammars) - Language Server support
(mostly provided through CLI tools)
Both Tree Sitter grammars and prebuilt releases of each language’s CLI tool are available at the links above, but first make sure to follow the instructions specific to your editor.
Note
The SuperHTML CLI tool is also a language server for regular HTML files.
Troubleshooting
If you encounter issues while setting up your editor, join the community and ask for help.
Ziggy Schemas
When you run zine init, Zine will add two files:
.ziggy-schema(forzine.ziggy)content/.ziggy-schema(for content files frontmatter data)
These hidden files contain the schema that the Ziggy LSP will be able to use to provide code intelligence features.
To create these files in a pre-existing project, or to update them when updating Zine version, run zine update.
Editors
VSCode
VSCode extensions don’t require you to install the Ziggy CLI tool as they will use an internal WASM build of the language server.
Neovim
See the Neovim dedicated page.
Helix
Flow Control
Flow Control has native support for all Zine file formats.
Make sure to have all the CLI tools available in your PATH to enable LSP support.
Other editors
Any editor that supports Tree Sitter for syntax highlighting and the Language Server Protocol can be setup to support Ziggy, SuperMD, and SuperHTML.
We welcome contributions that add support for Zine file formats to editors (or just instructions of how to perform manual setup).