From 29a8def57246ac235f467f907b1cf035a23aeb69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Schr=C3=B6ter?= Date: Tue, 3 May 2022 21:48:38 +0200 Subject: [PATCH] refactor(neovim): switch to new vim.api.nvim_create_autocmd API --- home/editors/neovim/lsp/lsp.lua | 23 +++++++++++++++++------ home/editors/neovim/lsp/mappings.lua | 1 + 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/home/editors/neovim/lsp/lsp.lua b/home/editors/neovim/lsp/lsp.lua index 7b46b09..793c448 100644 --- a/home/editors/neovim/lsp/lsp.lua +++ b/home/editors/neovim/lsp/lsp.lua @@ -1,19 +1,30 @@ local pid = vim.fn.getpid() -- lightbulb -vim.cmd [[autocmd CursorHold,CursorHoldI * lua require'nvim-lightbulb'.update_lightbulb()]] +vim.api.nvim_create_autocmd({"CursorHold", "CursorHoldI"}, { + pattern = "*", + callback = require"nvim-lightbulb".update_lightbulb, +}) -local on_attach = function(_, bufnr) +local on_attach = function(client, bufnr) -- codelens - vim.api.nvim_command [[autocmd CursorHold,CursorHoldI,InsertLeave lua vim.lsp.codelens.refresh()]] - vim.keymap.set("n", "l", vim.lsp.codelens.run, { silent = true, buffer = bufnr }) + if client.resolved_capabilities.code_lens then + vim.api.nvim_create_autocmd({"CursorHold", "CursorHoldI", "InsertLeave"}, { + callback = vim.lsp.codelens.refresh, + buffer = bufnr, + }) + end end -- format on save local diagnosticls_on_attach = function(_, bufnr) on_attach(_, bufnr) - vim.api.nvim_command( - "au BufWritePre lua vim.lsp.buf.formatting_seq_sync(nil, nil, { 'tsserver', 'diagnosticls' })") + vim.api.nvim_create_autocmd("BufWritePre", { + callback = function() + vim.lsp.buf.formatting_seq_sync(nil, nil, { "tsserver", "diagnosticls" }) + end, + buffer = bufnr, + }) end diff --git a/home/editors/neovim/lsp/mappings.lua b/home/editors/neovim/lsp/mappings.lua index 0ceed0e..e03b7ea 100644 --- a/home/editors/neovim/lsp/mappings.lua +++ b/home/editors/neovim/lsp/mappings.lua @@ -13,3 +13,4 @@ vim.keymap.set("n", "f", function() end, { silent = true }) vim.keymap.set("n", "a", vim.lsp.buf.code_action, { silent = true }) vim.keymap.set("n", "r", vim.lsp.buf.rename, { silent = true }) +vim.keymap.set("n", "l", vim.lsp.codelens.run, { silent = true })