mirror of
https://github.com/oxalica/nil.git
synced 2024-11-23 12:03:30 +03:00
Yet another language server for Nix
lsp | ||
src | ||
syntax | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md | ||
rustfmt.toml | ||
shell.nix |
nil: Language server of Nix Expression Language
🚧 This project is under development, but be happy to try it out!
Super fast incremental analysis! Scans all-packages.nix
in less then 0.1s and completes with no delay!
Features
- Goto definition.
textDocument/definition
- Find references.
textDocument/reference
- Completion.
textDocument/completion
- Builtin names.
- Local bindings.
- Attrset fields.
- Cross-file analysis.
- Multi-threaded.
Installation
- Have the latest stable version of Rust installed.
cargo install --git https://github.com/oxalica/nil.git
For neovim nvim-lspconfig
user
Add the following vimscript to your configuration.
lua <<EOF
require('lspconfig').rnix.setup {
autostart = true,
-- Set to the path to `nil` binary you installed.
cmd = { vim.env.HOME .. "/.local/bin/nil" },
}
EOF
License
"nil" is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.