Update Neovim config

This commit is contained in:
Mikkel Svartveit 2025-09-16 14:08:11 +02:00
parent 7cc312b3b3
commit 7a953eb240
3 changed files with 50 additions and 29 deletions

View file

@ -12,6 +12,7 @@ set shortmess+=I
" Enable line numbers " Enable line numbers
set number set number
set relativenumber
" Always show filename and modified marker in status line " Always show filename and modified marker in status line
set statusline=%f\ %m set statusline=%f\ %m
@ -76,13 +77,7 @@ xnoremap <expr> gp (v:register ==# '"' ? '"+' : '') . 'p'
xnoremap <expr> gP (v:register ==# '"' ? '"+' : '') . 'P' xnoremap <expr> gP (v:register ==# '"' ? '"+' : '') . 'P'
" Press Enter to clear search highlighting " Press Enter to clear search highlighting
nnoremap <silent><CR> :nohlsearch<CR> " nnoremap <silent><CR> :nohlsearch<CR>
" Disable arrow keys in normal mode - enforce hjkl instead
nnoremap <Left> :echoe "Use h"<CR>
nnoremap <Right> :echoe "Use l"<CR>
nnoremap <Up> :echoe "Use k"<CR>
nnoremap <Down> :echoe "Use j"<CR>
" Fix terminal cursor after exiting " Fix terminal cursor after exiting
" au VimLeave * set guicursor=a:ver100 " au VimLeave * set guicursor=a:ver100

View file

@ -1,20 +1,20 @@
{ {
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, "Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
"LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" }, "LuaSnip": { "branch": "master", "commit": "fb525166ccc30296fb3457441eb979113de46b00" },
"auto-session": { "branch": "main", "commit": "00334ee24b9a05001ad50221c8daffbeedaa0842" }, "auto-session": { "branch": "main", "commit": "fffb13dcbe8731b8650e5bf1caa749a485d20556" },
"catppuccin": { "branch": "main", "commit": "56a9dfd1e05868cf3189369aad87242941396563" }, "catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" },
"claudecode.nvim": { "branch": "main", "commit": "c1cdcd5a61d5a18f262d5c8c53929e3a27cb7821" }, "claudecode.nvim": { "branch": "main", "commit": "2603ec0b59857bb9329223f18705241dd615bbef" },
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, "cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
"code_runner.nvim": { "branch": "main", "commit": "386bcaa8aa7ae8703281afce4465ecfdb7c44e65" }, "code_runner.nvim": { "branch": "main", "commit": "65c8d11f507073b915f10faa88ea05bd4fbf69ce" },
"gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" }, "gitsigns.nvim": { "branch": "main", "commit": "88205953bd748322b49b26e1dfb0389932520dc9" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "67da97f8c2fd12d05427bb485ce07ee6418e0a51" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "f54e3c11fc9ebfcfc27e696182b0295b071d0811" },
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
"neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" }, "neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" },
"none-ls.nvim": { "branch": "main", "commit": "db2a48b79cfcdab8baa5d3f37f21c78b6705c62e" }, "none-ls.nvim": { "branch": "main", "commit": "db2a48b79cfcdab8baa5d3f37f21c78b6705c62e" },
"nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" }, "nvim-autopairs": { "branch": "master", "commit": "2647cce4cb64fb35c212146663384e05ae126bdf" },
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
"nvim-lspconfig": { "branch": "master", "commit": "b8e7957bde4cbb3cb25a13a62548f7c273b026e9" }, "nvim-lspconfig": { "branch": "master", "commit": "314b35335cc84bc2a085c84c69da955ba22da163" },
"nvim-scrollbar": { "branch": "main", "commit": "5b103ef0fd2e8b9b4be3878ed38d224522192c6c" }, "nvim-scrollbar": { "branch": "main", "commit": "5b103ef0fd2e8b9b4be3878ed38d224522192c6c" },
"nvim-toggleterm.lua": { "branch": "main", "commit": "a5638b2206c3930a16a24e5c184dddd572f8cd34" }, "nvim-toggleterm.lua": { "branch": "main", "commit": "a5638b2206c3930a16a24e5c184dddd572f8cd34" },
"nvim-tree.lua": { "branch": "master", "commit": "e14989c0eaa6f9c299d48f7e45ce1ed04b21180f" }, "nvim-tree.lua": { "branch": "master", "commit": "e14989c0eaa6f9c299d48f7e45ce1ed04b21180f" },
@ -22,9 +22,9 @@
"nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" }, "nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
"supermaven-nvim": { "branch": "main", "commit": "07d20fce48a5629686aefb0a7cd4b25e33947d50" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
"telescope.nvim": { "branch": "master", "commit": "7011eaae0ac1afe036e30c95cf80200b8dc3f21a" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" }, "vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }, "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }
"windsurf.vim": { "branch": "main", "commit": "272c6e2755e8faa90e26bcdcd9fde6b9e61751ea" }
} }

View file

@ -98,8 +98,15 @@ require("lazy").setup({
vim.keymap.set("n", "gd", "<cmd>lua vim.lsp.buf.definition()<cr>", opts) vim.keymap.set("n", "gd", "<cmd>lua vim.lsp.buf.definition()<cr>", opts)
vim.keymap.set("n", "gh", "<cmd>lua vim.diagnostic.open_float()<cr>", opts) vim.keymap.set("n", "gh", "<cmd>lua vim.diagnostic.open_float()<cr>", opts)
vim.keymap.set("n", "grr", "<cmd>Telescope lsp_references<cr>", opts)
end, end,
}) })
-- Close quickfix menu after selecting choice
vim.api.nvim_create_autocmd("FileType", {
pattern = { "qf" },
command = [[nnoremap <buffer> <CR> <CR>:cclose<CR>]],
})
end, end,
}, },
@ -117,6 +124,7 @@ require("lazy").setup({
}), }),
null_ls.builtins.formatting.black, null_ls.builtins.formatting.black,
null_ls.builtins.formatting.stylua, null_ls.builtins.formatting.stylua,
null_ls.builtins.formatting.gofmt,
}, },
on_attach = function(client, bufnr) on_attach = function(client, bufnr)
if client.supports_method("textDocument/formatting") then if client.supports_method("textDocument/formatting") then
@ -162,14 +170,17 @@ require("lazy").setup({
-- AI autocompletion -- AI autocompletion
{ {
"Exafunction/windsurf.vim", "supermaven-inc/supermaven-nvim",
event = "BufEnter",
config = function() config = function()
vim.api.nvim_create_user_command("CPE", "CodeiumEnable", {}) vim.api.nvim_create_user_command("CPE", "SupermavenStart", {})
vim.api.nvim_create_user_command("CPD", "CodeiumDisable", {}) vim.api.nvim_create_user_command("CPD", "SupermavenStop", {})
require("supermaven-nvim").setup({})
-- Disable on startup -- Disable on startup
vim.cmd("CodeiumDisable") local api = require("supermaven-nvim.api")
api.stop()
end, end,
}, },
@ -181,17 +192,32 @@ require("lazy").setup({
}, },
opts = { opts = {
terminal = { terminal = {
provider = "snacks",
split_side = "right", split_side = "right",
split_width_percentage = 0.4, split_width_percentage = 0.4,
}, },
}, },
config = true, config = true,
keys = { keys = {
{ "<C-,>", "<cmd>ClaudeCode<cr>", mode = { "n", "v", "i", "t" }, desc = "Toggle Claude" }, { "<C-,>", "<cmd>ClaudeCodeFocus<cr>", mode = { "n", "v", "i", "t" }, desc = "Toggle Claude" },
{ "<C-.>", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
-- Temporarily disabled because it's buggy
-- { "<C-.>", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
}, },
init = function()
-- Update buffer when Claude Code has made changes
vim.api.nvim_create_autocmd({
"BufEnter",
"BufWinEnter",
}, {
group = augroup,
pattern = "*",
callback = function()
if vim.fn.filereadable(vim.fn.expand("%")) == 1 then
vim.cmd("checktime")
end
end,
desc = "Check for file changes on disk",
})
end,
}, },
-- Auto-restore session when opening Neovim -- Auto-restore session when opening Neovim
@ -238,7 +264,7 @@ require("lazy").setup({
-- Fuzzy finder for files, buffers, etc. -- Fuzzy finder for files, buffers, etc.
{ {
"nvim-telescope/telescope.nvim", "nvim-telescope/telescope.nvim",
tag = "0.1.4", tag = "0.1.8",
dependencies = { dependencies = {
"nvim-lua/plenary.nvim", "nvim-lua/plenary.nvim",
{ "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, { "nvim-telescope/telescope-fzf-native.nvim", build = "make" },