diff options
author | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2023-01-05 02:52:05 +0100 |
---|---|---|
committer | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2023-01-05 02:52:05 +0100 |
commit | e3ef0791e7462c95c77ec9014d92ec97484789c8 (patch) | |
tree | 0094f9d2da11f34075187813f5c991e5ce4e037d /fnl/config/lsp/diagnostics.fnl | |
parent | be463a40d7ec811a02732ba0a2f2c657b12bd73c (diff) |
Refactor lsp
Diffstat (limited to 'fnl/config/lsp/diagnostics.fnl')
-rw-r--r-- | fnl/config/lsp/diagnostics.fnl | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/fnl/config/lsp/diagnostics.fnl b/fnl/config/lsp/diagnostics.fnl new file mode 100644 index 0000000..adf098d --- /dev/null +++ b/fnl/config/lsp/diagnostics.fnl @@ -0,0 +1,32 @@ +;; Handlers for the requests and responses from and to the lsp server. +(module config.lsp.handlers {autoload {util config.util nvim aniseed.nvim}}) + +(def- signs [{:name :DiagnosticSignError :text ""} + {:name :DiagnosticSignWarn :text ""} + {:name :DiagnosticSignHint :text ""} + {:name :DiagnosticSignInfo :text ""}]) + +(defn- apply-signs [] (each [_ sign (ipairs signs)] + (vim.fn.sign_define sign.name + {:texthl sign.name + :text sign.text + :numhl ""}))) + +(def- config {:virtual_text false + :signs {:active signs} + :update_in_insert false + :underline true + :severity_sort true + :float {:focusable false + :style :minimal + :border :rounded + :source :always + :header "" + :prefix ""}}) + +(defn setup [] (apply-signs) (vim.diagnostic.config config) + (set vim.lsp.handlers.textDocument/hover + (vim.lsp.with {:border :rounded :width 60})) + (set vim.lsp.handlers.textDocument/signatureHelp + (vim.lsp.with vim.lsp.handlers.signature_help + {:border :rounded :width 60}))) |