Neovim support for the Conops language: native
tree-sitter syntax highlighting and on-save diagnostics from the conops checker. No
plugin dependencies.
{ "sstoehrm/conops.nvim", build = "make", opts = {} }build = "make" compiles the tree-sitter parser into parser/conops.so and downloads the
prebuilt conops binary for your platform from the latest
release.
use { "sstoehrm/conops.nvim", run = "make", config = function() require("conops").setup() end }- Neovim 0.10+ (uses
vim.system,vim.diagnostic, and native tree-sitter). - A C compiler (
cc) to build the parser. - The
conopsbinary — fetched bybuild, by:ConopsInstall, or supplied on yourPATH. Highlighting works without it; diagnostics need it.
- Highlighting — native tree-sitter, no
nvim-treesitterdependency. - Diagnostics — on
:w/ open, the buffer is checked withconops check --jsonand the results shown viavim.diagnostic(errors with their codes:name-conflict,undefined-name,arity,enum-member,union-conformance,import-*, …).
require("conops").setup({
cmd = nil, -- path to the conops binary (default: bundled bin/, then PATH)
enabled = true, -- run diagnostics on save / read
}):ConopsInstall— (re)download theconopsbinary from the latest release.:checkhealth conops— reports parser and binary status.
The tree-sitter parser is vendored under src/ (generated from the grammar in the main
repo). After the grammar changes, refresh it with:
./scripts/sync-parser.sh /path/to/conops # default: ../conops