diff options
Diffstat (limited to 'fnl/conf/pkgs/null-ls.fnl')
| -rw-r--r-- | fnl/conf/pkgs/null-ls.fnl | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/fnl/conf/pkgs/null-ls.fnl b/fnl/conf/pkgs/null-ls.fnl index 858d0d3..9908823 100644 --- a/fnl/conf/pkgs/null-ls.fnl +++ b/fnl/conf/pkgs/null-ls.fnl @@ -1,12 +1,21 @@ -(let [null-ls (require :null-ls) - lsp-conf (require :conf.lsp)] - (null-ls.setup {:update_on_insert false - :on_attach (fn [client buf] - (lsp-conf.attach client buf true)) - :sources [null-ls.builtins.formatting.black - null-ls.builtins.formatting.goimports - null-ls.builtins.formatting.gofumpt - null-ls.builtins.formatting.raco_fmt - null-ls.builtins.formatting.alejandra - null-ls.builtins.formatting.terraform_fmt - null-ls.builtins.formatting.fnlfmt]})) +(local lsp-conf (require :conf.lsp)) +(local null-ls (require :null-ls)) + +(local fmt null-ls.builtins.formatting) +(local diag null-ls.builtins.diagnostics) + +(fn executable? [program] + (fn [] + (= 1 (vim.fn.executable program)))) + +(null-ls.setup {:update_in_insert false + :debug true + :on_attach (fn [client buf] + (lsp-conf.attach client buf true)) + :sources [fmt.alejandra + fmt.fnlfmt + (fmt.black.with {:condition (executable? :black)}) + (fmt.goimports.with {:condition (executable? :goimports)}) + (fmt.gofumpt.with {:condition (executable? :gofumpt)}) + (fmt.raco_fmt.with {:condition (executable? :raco)}) + (fmt.terraform_fmt.with {:condition (executable? :terraform)})]}) |
