1
1
mirror of https://github.com/oxalica/nil.git synced 2024-10-27 12:30:52 +03:00
nil/README.md
2022-08-02 12:03:47 +08:00

1.1 KiB

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

  1. Have the latest stable version of Rust installed.
  2. 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.