aboutsummaryrefslogtreecommitdiff
path: root/vim-plugin
diff options
context:
space:
mode:
Diffstat (limited to 'vim-plugin')
-rw-r--r--vim-plugin/ftplugin/nix.vim8
-rw-r--r--vim-plugin/plugin/statix.vim14
2 files changed, 22 insertions, 0 deletions
diff --git a/vim-plugin/ftplugin/nix.vim b/vim-plugin/ftplugin/nix.vim
new file mode 100644
index 0000000..885857f
--- /dev/null
+++ b/vim-plugin/ftplugin/nix.vim
@@ -0,0 +1,8 @@
1setlocal makeprg=statix\ check\ -o\ errfmt\ %
2setlocal errorformat=%f>%l:%c:%t:%n:%m
3
4augroup StatixCheck
5 autocmd!
6 autocmd! BufWritePost *.nix | silent make! | silent redraw!
7 autocmd QuickFixCmdPost [^l]* cwindow
8augroup END
diff --git a/vim-plugin/plugin/statix.vim b/vim-plugin/plugin/statix.vim
new file mode 100644
index 0000000..736cce2
--- /dev/null
+++ b/vim-plugin/plugin/statix.vim
@@ -0,0 +1,14 @@
1function! ApplyStatixSuggestion()
2 let l:l = line('.')
3 let l:c = col('.')
4 let l:filter = "%!statix single -p " . l . "," . c . ""
5 execute l:filter
6
7 silent if v:shell_error == 1
8 undo
9 endif
10
11 call cursor(l, c)
12endfunction
13
14nnoremap gf :call ApplyStatixSuggestion()<cr>