diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index 5edaeac..e479000 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -29,6 +29,7 @@ "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, "ui": { "branch": "v3.0", "commit": "03b9718140375e7f3f5e4f3e04bc2b6c907440ec" }, + "vim-highlightedyank": { "branch": "master", "commit": "285a61425e79742997bbde76a91be6189bc988fb" }, "volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" }, "which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" } } diff --git a/nvim/lua/configs/lspconfig.lua b/nvim/lua/configs/lspconfig.lua index 7695ae3..676d38f 100644 --- a/nvim/lua/configs/lspconfig.lua +++ b/nvim/lua/configs/lspconfig.lua @@ -4,7 +4,7 @@ local on_attach = require("nvchad.configs.lspconfig").on_attach local on_init = require("nvchad.configs.lspconfig").on_init local capabilities = require("nvchad.configs.lspconfig").capabilities --- Новый способ настройки LSP для Neovim 0.11+ +-- clangd lsp server vim.lsp.config('clangd', { on_attach = on_attach, on_init = on_init, @@ -13,11 +13,22 @@ vim.lsp.config('clangd', { "clangd", "--background-index", "--clang-tidy", - "--header-insertion=iwyu", + "--experemental-modules-support", + "--all-scopes-completion", "--completion-style=detailed", - "--function-arg-placeholders=1", + "--header-insertion=iwyu", + "--limit-references=5", + "--malloc-trim", + "--pch-storage=disk", }, filetypes = { "c", "cpp", "objc", "objcpp" }, + init_options = { + fallbackFlags = {'-std=c++20'}, + } +}) + +vim.diagnostic.config({ + virtual_text = false, }) vim.lsp.enable('clangd') diff --git a/nvim/lua/mappings.lua b/nvim/lua/mappings.lua index 95e9011..ccd94d3 100644 --- a/nvim/lua/mappings.lua +++ b/nvim/lua/mappings.lua @@ -15,3 +15,9 @@ map('n', 'di', 'DapStepInto', { desc = 'Step into' }) map('n', 'do', 'DapStepOut', { desc = 'Step out' }) map('n', 'dq', 'DapTerminate', { desc = 'Stop debug' }) map('n', 'du', 'lua require("dapui").toggle()', { desc = 'Toggle DAP UI' }) + +-- LSP +map('n', 'lo', 'lua vim.diagnostic.open_float()', { noremap = true, silent = true, desc = 'Open diagnostic' }) +map('n', '[l', 'DapContinue', { noremap = true, silent = true, desc = 'Go to prev diagnostic' }) +map('n', ']l', 'DapStepOver', { noremap = true, silent = true, desc = 'Go to next diagnostic' }) +map('n', 'lt', 'DapStepInto', { noremap = true, silent = true, desc = 'Open toggle' }) diff --git a/nvim/lua/plugins/init.lua b/nvim/lua/plugins/init.lua index 0ae3db7..25311d0 100644 --- a/nvim/lua/plugins/init.lua +++ b/nvim/lua/plugins/init.lua @@ -12,7 +12,11 @@ return { require "configs.lspconfig" end, }, - + -- Yank highlight + { + "machakann/vim-highlightedyank", + event = "VeryLazy", + }, -- These are for C/C++ Debbuger { "nvim-neotest/nvim-nio",