From 19f6f0642156c347768d0563b0b34c0ddf385ac4 Mon Sep 17 00:00:00 2001 From: "flyingscorpio@clevo" Date: Sat, 13 Aug 2022 23:47:49 +0200 Subject: [PATCH] Add global on_attach function to avoid duplicate code --- roles/neovim/files/lua/lsp/ansible.lua | 12 +----------- roles/neovim/files/lua/lsp/bash.lua | 12 +----------- roles/neovim/files/lua/lsp/latex.lua | 12 +----------- roles/neovim/files/lua/lsp/lua.lua | 12 +----------- roles/neovim/files/lua/lsp/markdown.lua | 12 +----------- roles/neovim/files/lua/plugins/options/lsp.lua | 12 ++++++++++++ 6 files changed, 17 insertions(+), 55 deletions(-) diff --git a/roles/neovim/files/lua/lsp/ansible.lua b/roles/neovim/files/lua/lsp/ansible.lua index 2294d5e..12df9eb 100644 --- a/roles/neovim/files/lua/lsp/ansible.lua +++ b/roles/neovim/files/lua/lsp/ansible.lua @@ -4,15 +4,5 @@ local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protoco require'lspconfig'.ansiblels.setup { capabilities = capabilities, - on_attach = function() - vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) - vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) - end, + on_attach = global_attach, } diff --git a/roles/neovim/files/lua/lsp/bash.lua b/roles/neovim/files/lua/lsp/bash.lua index c5bb423..426701f 100644 --- a/roles/neovim/files/lua/lsp/bash.lua +++ b/roles/neovim/files/lua/lsp/bash.lua @@ -4,15 +4,5 @@ local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protoco require'lspconfig'.bashls.setup { capabilities = capabilities, - on_attach = function() - vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) - vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) - end, + on_attach = global_attach, } diff --git a/roles/neovim/files/lua/lsp/latex.lua b/roles/neovim/files/lua/lsp/latex.lua index 9e7418b..bb9b86f 100644 --- a/roles/neovim/files/lua/lsp/latex.lua +++ b/roles/neovim/files/lua/lsp/latex.lua @@ -4,17 +4,7 @@ local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protoco require'lspconfig'.texlab.setup { capabilities = capabilities, - on_attach = function() - vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) - vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) - end, + on_attach = global_attach, settings = { texlab = { chktex = { diff --git a/roles/neovim/files/lua/lsp/lua.lua b/roles/neovim/files/lua/lsp/lua.lua index 5bf8861..17f725c 100644 --- a/roles/neovim/files/lua/lsp/lua.lua +++ b/roles/neovim/files/lua/lsp/lua.lua @@ -4,17 +4,7 @@ local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protoco require'lspconfig'.sumneko_lua.setup { capabilities = capabilities, - on_attach = function() - vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) - vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) - end, + on_attach = global_attach, settings = { Lua = { runtime = { diff --git a/roles/neovim/files/lua/lsp/markdown.lua b/roles/neovim/files/lua/lsp/markdown.lua index f1cfc26..d52d420 100644 --- a/roles/neovim/files/lua/lsp/markdown.lua +++ b/roles/neovim/files/lua/lsp/markdown.lua @@ -4,15 +4,5 @@ local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protoco require'lspconfig'.marksman.setup { capabilities = capabilities, - on_attach = function() - vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) - vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) - vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) - vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) - vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) - end, + on_attach = global_attach, } diff --git a/roles/neovim/files/lua/plugins/options/lsp.lua b/roles/neovim/files/lua/plugins/options/lsp.lua index 22f1465..87f5eda 100644 --- a/roles/neovim/files/lua/plugins/options/lsp.lua +++ b/roles/neovim/files/lua/plugins/options/lsp.lua @@ -1,5 +1,17 @@ -- LSP Servers +global_attach = function() + vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false }) + vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false }) + vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = 0, remap = false }) + vim.keymap.set('n', 'gT', vim.lsp.buf.type_definition, { buffer = 0, remap = false }) + vim.keymap.set('n', 'r', vim.lsp.buf.rename, { buffer = 0, remap = false }) + vim.keymap.set('n', 'dj', vim.diagnostic.goto_next, { buffer = 0, remap = false }) + vim.keymap.set('n', 'dk', vim.diagnostic.goto_prev, { buffer = 0, remap = false }) + vim.keymap.set('n', 'vd', vim.diagnostic.open_float, { buffer = 0, remap = false }) + vim.keymap.set('n', 'dl', 'Telescope diagnostics', { buffer = 0, remap = false }) +end + require('lsp.ansible') require('lsp.bash') require('lsp.latex')