From 5aac7916890297693cfb3be596eccda6e113ffb6 Mon Sep 17 00:00:00 2001 From: Cristian Gora Date: Wed, 8 Apr 2026 01:54:42 +0200 Subject: [PATCH] [neovim] Initial LSP configuration --- neovim/.config/nvim/init.lua | 48 ++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 7 deletions(-) diff --git a/neovim/.config/nvim/init.lua b/neovim/.config/nvim/init.lua index 0d9b27c..d028e7f 100644 --- a/neovim/.config/nvim/init.lua +++ b/neovim/.config/nvim/init.lua @@ -119,8 +119,15 @@ map("n", "lc", function() vim.wo.list = not vim.wo.list end) +-- Hightlight copied text +vim.api.nvim_create_autocmd("TextYankPost", { + callback = function() vim.highlight.on_yank() end +}) + + -- [[ PLUGINS ]] -- +-- Install plugins vim.pack.add({ -- Colorscheme "https://github.com/blazkowolf/gruber-darker.nvim", @@ -131,9 +138,6 @@ vim.pack.add({ -- Fuzzy finder "https://github.com/echasnovski/mini.pick", - -- Advanced undo tree - "https://github.com/mbbill/undotree", - -- Git integration "https://github.com/tpope/vim-fugitive", "https://github.com/lewis6991/gitsigns.nvim", @@ -154,10 +158,17 @@ vim.pack.add({ { src = "https://github.com/nvim-neo-tree/neo-tree.nvim", version = vim.version.range("3") }, "https://github.com/nvim-lua/plenary.nvim", "https://github.com/MunifTanjim/nui.nvim", - "https://github.com/nvim-tree/nvim-web-devicons" -}) + "https://github.com/nvim-tree/nvim-web-devicons", --- Load plugins + -- LSP + "https://github.com/neovim/nvim-lspconfig", + "https://github.com/mason-org/mason.nvim", + "https://github.com/mason-org/mason-lspconfig.nvim", +}) +vim.cmd.packadd("nvim.undotree") +vim.cmd.packadd("nvim.difftool") + +-- Configure plugins cmd.colorscheme("gruber-darker") require("mini.pick").setup() require("multiple-cursors").setup() @@ -173,12 +184,35 @@ require("neo-tree").setup({ width = 32 } }) +require("mason").setup() +require("mason-lspconfig").setup() +vim.lsp.config("lua_ls", { + settings = { + Lua = { + runtime = { + version = "LuaJIT", + }, + diagnostics = { + globals = { + "vim", + "require" + }, + }, + workspace = { + library = vim.api.nvim_get_runtime_file("", true), + }, + telemetry = { + enable = false, + } + } + } +}) -- Plugin keymaps map("n", "f", ":Pick files") map("n", "b", ":Pick buffers") -map("n", "u", ":UndotreeToggle") +map("n", "u", ":Undotree") map("n", "gs", ":Git") map("n", "gt", ":Gitsigns toggle_signs")