summaryrefslogtreecommitdiff
path: root/ale_linters/nix
diff options
context:
space:
mode:
authorjD91mZM2 <me@krake.one>2021-01-22 17:29:51 +0100
committerjD91mZM2 <me@krake.one>2021-01-23 13:23:14 +0100
commitc1b6628425a87a7466c09afbd5f6c90217aa9ab0 (patch)
treed5d568fde678ce58878b00553995d2f6d07ee282 /ale_linters/nix
parent9a1e91e075abf386e8c6fd620ec0835e566a7db1 (diff)
downloadale-c1b6628425a87a7466c09afbd5f6c90217aa9ab0.zip
Add rnix-lsp for Nix diagnostics and completion
Diffstat (limited to 'ale_linters/nix')
-rw-r--r--ale_linters/nix/rnix_lsp.vim16
1 files changed, 16 insertions, 0 deletions
diff --git a/ale_linters/nix/rnix_lsp.vim b/ale_linters/nix/rnix_lsp.vim
new file mode 100644
index 00000000..949bed1c
--- /dev/null
+++ b/ale_linters/nix/rnix_lsp.vim
@@ -0,0 +1,16 @@
+" Author: jD91mZM2 <me@krake.one>
+" Description: rnix-lsp language client
+
+function! ale_linters#nix#rnix_lsp#GetProjectRoot(buffer) abort
+ " rnix-lsp does not yet use the project root, so getting it right is not
+ " important
+ return fnamemodify(a:buffer, ':h')
+endfunction
+
+call ale#linter#Define('nix', {
+\ 'name': 'rnix_lsp',
+\ 'lsp': 'stdio',
+\ 'executable': 'rnix-lsp',
+\ 'command': '%e',
+\ 'project_root': function('ale_linters#nix#rnix_lsp#GetProjectRoot'),
+\})