From d0c9af58aa9791b9845f5dc403436cc2ce06e7c8 Mon Sep 17 00:00:00 2001 From: Holger Preu Date: Wed, 22 Oct 2025 17:50:07 +0200 Subject: [PATCH] apply josean patches --- lua/holger/lsp.lua | 68 ++++++++++++++++++++++++++ lua/holger/plugins/nvim-ts-autotag.lua | 4 ++ 2 files changed, 72 insertions(+) create mode 100644 lua/holger/lsp.lua create mode 100644 lua/holger/plugins/nvim-ts-autotag.lua diff --git a/lua/holger/lsp.lua b/lua/holger/lsp.lua new file mode 100644 index 0000000..1031d33 --- /dev/null +++ b/lua/holger/lsp.lua @@ -0,0 +1,68 @@ +local keymap = vim.keymap -- for conciseness +vim.api.nvim_create_autocmd("LspAttach", { + group = vim.api.nvim_create_augroup("UserLspConfig", {}), + callback = function(ev) + -- Buffer local mappings. + -- See `:help vim.lsp.*` for documentation on any of the below functions + local opts = { buffer = ev.buf, silent = true } + + -- set keybinds + opts.desc = "Show LSP references" + keymap.set("n", "gR", "Telescope lsp_references", opts) -- show definition, references + + opts.desc = "Go to declaration" + keymap.set("n", "gD", vim.lsp.buf.declaration, opts) -- go to declaration + + opts.desc = "Show LSP definition" + keymap.set("n", "gd", vim.lsp.buf.definition, opts) -- show lsp definition + + opts.desc = "Show LSP implementations" + keymap.set("n", "gi", "Telescope lsp_implementations", opts) -- show lsp implementations + + opts.desc = "Show LSP type definitions" + keymap.set("n", "gt", "Telescope lsp_type_definitions", opts) -- show lsp type definitions + + opts.desc = "See available code actions" + keymap.set({ "n", "v" }, "ca", vim.lsp.buf.code_action, opts) -- see available code actions, in visual mode will apply to selection + + opts.desc = "Smart rename" + keymap.set("n", "rn", vim.lsp.buf.rename, opts) -- smart rename + + opts.desc = "Show buffer diagnostics" + keymap.set("n", "D", "Telescope diagnostics bufnr=0", opts) -- show diagnostics for file + + opts.desc = "Show line diagnostics" + keymap.set("n", "d", vim.diagnostic.open_float, opts) -- show diagnostics for line + + opts.desc = "Go to previous diagnostic" + keymap.set("n", "[d", function() + vim.diagnostic.jump({ count = -1, float = true }) + end, opts) -- jump to previous diagnostic in buffer + -- + opts.desc = "Go to next diagnostic" + keymap.set("n", "]d", function() + vim.diagnostic.jump({ count = 1, float = true }) + end, opts) -- jump to next diagnostic in buffer + + opts.desc = "Show documentation for what is under cursor" + keymap.set("n", "K", vim.lsp.buf.hover, opts) -- show documentation for what is under cursor + + opts.desc = "Restart LSP" + keymap.set("n", "rs", ":LspRestart", opts) -- mapping to restart lsp if necessary + end, +}) + +-- vim.lsp.inlay_hint.enable(true) + +local severity = vim.diagnostic.severity + +vim.diagnostic.config({ + signs = { + text = { + [severity.ERROR] = " ", + [severity.WARN] = " ", + [severity.HINT] = "󰠠 ", + [severity.INFO] = " ", + }, + }, +}) diff --git a/lua/holger/plugins/nvim-ts-autotag.lua b/lua/holger/plugins/nvim-ts-autotag.lua new file mode 100644 index 0000000..617439f --- /dev/null +++ b/lua/holger/plugins/nvim-ts-autotag.lua @@ -0,0 +1,4 @@ +return { + "windwp/nvim-ts-autotag", + opts = {}, +}