diff options
author | Baitinq <manuelpalenzuelamerino@gmail.com> | 2024-10-27 01:29:11 +0200 |
---|---|---|
committer | Baitinq <manuelpalenzuelamerino@gmail.com> | 2024-10-27 01:38:17 +0200 |
commit | 8d10713d89b40a6b47359c8bad8453bc6470d94c (patch) | |
tree | 37fb90eccdb365b75ed0237692503aa8211d3fae /dotfiles | |
parent | dotfiles: nvim: dont autoinstall lsps (diff) | |
download | nixos-config-8d10713d89b40a6b47359c8bad8453bc6470d94c.tar.gz nixos-config-8d10713d89b40a6b47359c8bad8453bc6470d94c.tar.bz2 nixos-config-8d10713d89b40a6b47359c8bad8453bc6470d94c.zip |
dotfiles: nvim: update settings for nvim 0.10
Diffstat (limited to 'dotfiles')
-rw-r--r-- | dotfiles/nvim/init.lua | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/dotfiles/nvim/init.lua b/dotfiles/nvim/init.lua index 88586ef..ba6243c 100644 --- a/dotfiles/nvim/init.lua +++ b/dotfiles/nvim/init.lua @@ -111,9 +111,12 @@ vim.opt.mouse = 'a' vim.opt.showmode = false -- Sync clipboard between OS and Neovim. +-- Schedule the setting after `UiEnter` because it can increase startup-time. -- Remove this option if you want your OS clipboard to remain independent. -- See `:help 'clipboard'` -vim.opt.clipboard = 'unnamedplus' +vim.schedule(function() + vim.opt.clipboard = 'unnamedplus' +end) -- Enable break indent vim.opt.breakindent = true @@ -162,8 +165,6 @@ vim.opt.hlsearch = true vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>') -- Diagnostic keymaps -vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous [D]iagnostic message' }) -vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'Go to next [D]iagnostic message' }) vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, { desc = 'Show diagnostic [E]rror messages' }) vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' }) @@ -207,7 +208,7 @@ vim.api.nvim_create_autocmd('TextYankPost', { -- [[ Install `lazy.nvim` plugin manager ]] -- See `:help lazy.nvim.txt` or https://github.com/folke/lazy.nvim for more info local lazypath = vim.fn.stdpath 'data' .. '/lazy/lazy.nvim' -if not vim.loop.fs_stat(lazypath) then +if not vim.uv.fs_stat(lazypath) then local lazyrepo = 'https://github.com/folke/lazy.nvim.git' vim.fn.system { 'git', 'clone', '--filter=blob:none', '--branch=stable', lazyrepo, lazypath } end ---@diagnostic disable-next-line: undefined-field @@ -265,12 +266,6 @@ require('lazy').setup({ -- -- Use `opts = {}` to force a plugin to be loaded. - -- - -- This is equivalent to: - -- require('Comment').setup({}) - -- "gc" to comment visual regions/lines - { 'numToStr/Comment.nvim', opts = {} }, - -- Here is a more advanced example where we pass configuration -- options to `gitsigns.nvim`. This is equivalent to the following lua: -- require('gitsigns').setup({ ... }) @@ -314,12 +309,12 @@ require('lazy').setup({ require('which-key').setup() -- Document existing key chains - require('which-key').register { - ['<leader>c'] = { name = '[C]ode', _ = 'which_key_ignore' }, - ['<leader>d'] = { name = '[D]ocument', _ = 'which_key_ignore' }, - ['<leader>r'] = { name = '[R]ename', _ = 'which_key_ignore' }, - ['<leader>s'] = { name = '[S]earch', _ = 'which_key_ignore' }, - ['<leader>w'] = { name = '[W]orkspace', _ = 'which_key_ignore' }, + require('which-key').add { + { '<leader>c', group = '[C]ode' }, + { '<leader>d', group = '[D]ocument' }, + { '<leader>r', group = '[R]ename' }, + { '<leader>s', group = '[S]earch' }, + { '<leader>w', group = '[W]orkspace' }, } end, }, @@ -570,10 +565,10 @@ require('lazy').setup({ -- -- When you move your cursor, the highlights will be cleared (the second autocommand). local client = vim.lsp.get_client_by_id(event.data.client_id) - if client and client.server_capabilities.inlayHintProvider then - vim.lsp.inlay_hint.enable(true) + if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_inlayHint) then + vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled { bufnr = event.buf }) end - if client and client.server_capabilities.documentHighlightProvider then + if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_documentHighlight) then vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, { buffer = event.buf, callback = vim.lsp.buf.document_highlight, |