]> src.twobees.de Git - dotfiles.git/blobdiff - stow/nvim/.config/nvim/after/plugin/lspsetup.lua
../..
[dotfiles.git] / stow / nvim / .config / nvim / after / plugin / lspsetup.lua
index 367011f7173d3bbf849aa7fdbbf61556947d0aa2..6a1fcb6ddc82da7608f23b99bc4251daad696d65 100644 (file)
@@ -1,7 +1,7 @@
 local lsp = require('lsp-zero')
-
 lsp.preset('recommended')
-lsp.configure('sumneko_lua', {
+
+lsp.configure('lua_ls', {
     settings = {
         Lua = {
             diagnostics = {
@@ -11,18 +11,32 @@ lsp.configure('sumneko_lua', {
     }
 })
 
-lsp.on_attach = function (_, bufnr)
-    local options = { buffer = bufnr, remap = false }
-    vim.keymap.set ("n", "K", vim.lsp.buf.hover, options) -- buffer=0 -> only in current buffer
-    vim.keymap.set ("n", "gd", vim.lsp.buf.definition, options) -- goto definition
-    vim.keymap.set ("n", "gT", vim.lsp.buf.type_definition, options) -- goto typedefinition
-    vim.keymap.set ("n", "gi", vim.lsp.buf.implementation, options) -- goto implementation
-    vim.keymap.set ("n", "dj", vim.diagnostic.goto_next, options) -- goto dignostic next
-    vim.keymap.set ("n", "dk", vim.diagnostic.goto_prev, options) -- goto diognostic prev
-    vim.keymap.set ("n", "dl", "<cmd>Telescope diagnostic", options) -- goto list failure
-    vim.keymap.set ("n", "<leader>r", vim.lsp.buf.rename, options)
-    vim.keymap.set ("n", "<leader>f", vim.lsp.buf.code_action, options)
-end
+
+lsp.on_attach(function(client, bufnr)
+  lsp.default_keymaps({buffer = bufnr})
+     vim.keymap.set ("n", "<leader>r", vim.lsp.buf.rename, options)
+     vim.keymap.set ("n", "<leader>f", vim.lsp.buf.code_action, options)
+end)
+
+lsp.set_sign_icons({
+  error = '✘',
+  warn = '▲',
+  hint = '⚑',
+  info = '»'
+})
+-- lsp.on_attach = function (_, bufnr)
+--     print "attached"
+--     local options = { buffer = bufnr, remap = false }
+--     vim.keymap.set ("n", "K", vim.lsp.buf.hover, options) -- buffer=0 -> only in current buffer
+--     vim.keymap.set ("n", "gd", vim.lsp.buf.definition, options) -- goto definition
+--     vim.keymap.set ("n", "gT", vim.lsp.buf.type_definition, options) -- goto typedefinition
+--     vim.keymap.set ("n", "gi", vim.lsp.buf.implementation, options) -- goto implementation
+--     vim.keymap.set ("n", "dj", vim.diagnostic.goto_next, options) -- goto dignostic next
+--     vim.keymap.set ("n", "dk", vim.diagnostic.goto_prev, options) -- goto diognostic prev
+--     vim.keymap.set ("n", "dl", "<cmd>Telescope diagnostic", options) -- goto list failure
+--     vim.keymap.set ("n", "<leader>r", vim.lsp.buf.rename, options)
+--     vim.keymap.set ("n", "<leader>f", vim.lsp.buf.code_action, options)
+-- end
 
 local cmp = require('cmp')
 local cmp_select = {behavior = cmp.SelectBehavior.Select}
@@ -41,6 +55,17 @@ cmp.setup({
     experimental = { ghost_text = true },
 });
 
+
 lsp.setup()
 
-vim.diagnostic.config( { virtual_text = true } )
+vim.diagnostic.config({
+  virtual_text = {
+    -- source = "always",  -- Or "if_many"
+    prefix = '●', -- Could be '■', '▎', 'x'
+  },
+  severity_sort = true,
+  float = {
+    source = "always",  -- Or "if_many"
+  },
+})
+