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
set number
set relativenumber
" Always show filename and modified marker in status line
set statusline=%f\ %m
@ -76,13 +77,7 @@ xnoremap <expr> gp (v:register ==# '"' ? '"+' : '') . 'p'
xnoremap <expr> gP (v:register ==# '"' ? '"+' : '') . 'P'
" Press Enter to clear search highlighting
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>
" nnoremap <silent><CR> :nohlsearch<CR>
" Fix terminal cursor after exiting
" au VimLeave * set guicursor=a:ver100

View file

@ -1,20 +1,20 @@
{
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
"LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" },
"auto-session": { "branch": "main", "commit": "00334ee24b9a05001ad50221c8daffbeedaa0842" },
"catppuccin": { "branch": "main", "commit": "56a9dfd1e05868cf3189369aad87242941396563" },
"claudecode.nvim": { "branch": "main", "commit": "c1cdcd5a61d5a18f262d5c8c53929e3a27cb7821" },
"LuaSnip": { "branch": "master", "commit": "fb525166ccc30296fb3457441eb979113de46b00" },
"auto-session": { "branch": "main", "commit": "fffb13dcbe8731b8650e5bf1caa749a485d20556" },
"catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" },
"claudecode.nvim": { "branch": "main", "commit": "2603ec0b59857bb9329223f18705241dd615bbef" },
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
"code_runner.nvim": { "branch": "main", "commit": "386bcaa8aa7ae8703281afce4465ecfdb7c44e65" },
"gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" },
"code_runner.nvim": { "branch": "main", "commit": "65c8d11f507073b915f10faa88ea05bd4fbf69ce" },
"gitsigns.nvim": { "branch": "main", "commit": "88205953bd748322b49b26e1dfb0389932520dc9" },
"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" },
"neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" },
"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-lspconfig": { "branch": "master", "commit": "b8e7957bde4cbb3cb25a13a62548f7c273b026e9" },
"nvim-lspconfig": { "branch": "master", "commit": "314b35335cc84bc2a085c84c69da955ba22da163" },
"nvim-scrollbar": { "branch": "main", "commit": "5b103ef0fd2e8b9b4be3878ed38d224522192c6c" },
"nvim-toggleterm.lua": { "branch": "main", "commit": "a5638b2206c3930a16a24e5c184dddd572f8cd34" },
"nvim-tree.lua": { "branch": "master", "commit": "e14989c0eaa6f9c299d48f7e45ce1ed04b21180f" },
@ -22,9 +22,9 @@
"nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
"supermaven-nvim": { "branch": "main", "commit": "07d20fce48a5629686aefb0a7cd4b25e33947d50" },
"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-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
"windsurf.vim": { "branch": "main", "commit": "272c6e2755e8faa90e26bcdcd9fde6b9e61751ea" }
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }
}

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", "gh", "<cmd>lua vim.diagnostic.open_float()<cr>", opts)
vim.keymap.set("n", "grr", "<cmd>Telescope lsp_references<cr>", opts)
end,
})
-- Close quickfix menu after selecting choice
vim.api.nvim_create_autocmd("FileType", {
pattern = { "qf" },
command = [[nnoremap <buffer> <CR> <CR>:cclose<CR>]],
})
end,
},
@ -117,6 +124,7 @@ require("lazy").setup({
}),
null_ls.builtins.formatting.black,
null_ls.builtins.formatting.stylua,
null_ls.builtins.formatting.gofmt,
},
on_attach = function(client, bufnr)
if client.supports_method("textDocument/formatting") then
@ -162,14 +170,17 @@ require("lazy").setup({
-- AI autocompletion
{
"Exafunction/windsurf.vim",
event = "BufEnter",
"supermaven-inc/supermaven-nvim",
config = function()
vim.api.nvim_create_user_command("CPE", "CodeiumEnable", {})
vim.api.nvim_create_user_command("CPD", "CodeiumDisable", {})
vim.api.nvim_create_user_command("CPE", "SupermavenStart", {})
vim.api.nvim_create_user_command("CPD", "SupermavenStop", {})
require("supermaven-nvim").setup({})
-- Disable on startup
vim.cmd("CodeiumDisable")
local api = require("supermaven-nvim.api")
api.stop()
end,
},
@ -181,17 +192,32 @@ require("lazy").setup({
},
opts = {
terminal = {
provider = "snacks",
split_side = "right",
split_width_percentage = 0.4,
},
},
config = true,
keys = {
{ "<C-,>", "<cmd>ClaudeCode<cr>", mode = { "n", "v", "i", "t" }, desc = "Toggle Claude" },
-- Temporarily disabled because it's buggy
-- { "<C-.>", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
{ "<C-,>", "<cmd>ClaudeCodeFocus<cr>", mode = { "n", "v", "i", "t" }, desc = "Toggle Claude" },
{ "<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
@ -238,7 +264,7 @@ require("lazy").setup({
-- Fuzzy finder for files, buffers, etc.
{
"nvim-telescope/telescope.nvim",
tag = "0.1.4",
tag = "0.1.8",
dependencies = {
"nvim-lua/plenary.nvim",
{ "nvim-telescope/telescope-fzf-native.nvim", build = "make" },