nvim: Nicer diagnostics

This commit is contained in:
Daniel Lundin 2025-04-07 16:05:06 +02:00
parent 87a97f822a
commit 98006874b8
Signed by: dln
SSH key fingerprint: SHA256:dQy1Xj3UiqJYpKR5ggQ2bxgz4jCH8IF+k3AB8o0kmdI
3 changed files with 33 additions and 25 deletions

42
flake.lock generated
View file

@ -148,11 +148,11 @@
]
},
"locked": {
"lastModified": 1744008831,
"narHash": "sha256-g3mHJLB8ShKuMaBBZxiGuoftJ22f7Boegiw5xBUnS8E=",
"lastModified": 1744400600,
"narHash": "sha256-qYhUgA98mhq1QK13r9qVY+sG1ri6FBgyp+GApX6wS20=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "f463902a3f03e15af658e48bcc60b39188ddf734",
"rev": "b74b22bb6167e8dff083ec6988c98798bf8954d3",
"type": "github"
},
"original": {
@ -172,11 +172,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1744003175,
"narHash": "sha256-b0b/qxiqf2G2/UrmcyP9aYr0Ni5NpdCY6GEF8KgnmCU=",
"lastModified": 1744447706,
"narHash": "sha256-8bkAMTy5A6IEEBrr8fGyBrpRNvHMBttsjmTS3IHO/3w=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "f7f5a474c38e3e41827b067f741e12ecbbe5cf18",
"rev": "8479d0e1c0b9274c25001432169c0056633bf63a",
"type": "github"
},
"original": {
@ -188,11 +188,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1743931206,
"narHash": "sha256-Dl6kHmsN6AZBWEgEbQGpKYy+qvg+oPbBrK/CFQsWmZM=",
"lastModified": 1744372015,
"narHash": "sha256-Aith8tgE4jRYDpFa9JqPsA4beTimLmqgwl6PLNlJHyU=",
"owner": "neovim",
"repo": "neovim",
"rev": "2d11b981bfbb7816d88a69b43b758f3a3f515b96",
"rev": "4a706a70928231643e1a3f3fcf785de7aa930f8b",
"type": "github"
},
"original": {
@ -223,11 +223,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1743814133,
"narHash": "sha256-drDyYyUmjeYGiHmwB9eOPTQRjmrq3Yz26knwmMPLZFk=",
"lastModified": 1744316434,
"narHash": "sha256-lzFCg/1C39pyY2hMB2gcuHV79ozpOz/Vu15hdjiFOfI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "250b695f41e0e2f5afbf15c6b12480de1fe0001b",
"rev": "d19cf9dfc633816a437204555afeb9e722386b76",
"type": "github"
},
"original": {
@ -239,11 +239,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1743813633,
"narHash": "sha256-BgkBz4NpV6Kg8XF7cmHDHRVGZYnKbvG0Y4p+jElwxaM=",
"lastModified": 1744309437,
"narHash": "sha256-QZnNHM823am8apCqKSPdtnzPGTy2ZB4zIXOVoBp5+W0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "7819a0d29d1dd2bc331bec4b327f0776359b1fa6",
"rev": "f9ebe33a928b5d529c895202263a5ce46bdf12f7",
"type": "github"
},
"original": {
@ -255,11 +255,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1743938762,
"narHash": "sha256-UgFYn8sGv9B8PoFpUfCa43CjMZBl1x/ShQhRDHBFQdI=",
"lastModified": 1744347518,
"narHash": "sha256-4Y0ByuP4NEz2Zyso9Ozob8yR6kKuaunJ5OARv+tFLPI=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "74a40410369a1c35ee09b8a1abee6f4acbedc059",
"rev": "642c54c23609fefb5708b0e2be261446c59138f6",
"type": "github"
},
"original": {
@ -271,11 +271,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1743827369,
"narHash": "sha256-rpqepOZ8Eo1zg+KJeWoq1HAOgoMCDloqv5r2EAa9TSA=",
"lastModified": 1744232761,
"narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "42a1c966be226125b48c384171c44c651c236c22",
"rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14",
"type": "github"
},
"original": {

View file

@ -93,6 +93,7 @@ vim.opt.grepformat = vim.opt.grepformat ^ { "%f:%l:%c:%m" }
-- Diagnostics
vim.diagnostic.config {
float = { border = "rounded" },
severity_sort = true,
signs = {
linehl = {
@ -114,11 +115,12 @@ vim.diagnostic.config {
[vim.diagnostic.severity.HINT] = "",
},
},
virtual_lines = { current_line = true },
virtual_lines = false,
}
vim.keymap.set('n', '<Space>ud', function()
if vim.diagnostic.config().virtual_lines == true then
vim.diagnostic.config({ virtual_lines = { current_line = true } })
-- vim.diagnostic.config({ virtual_lines = { current_line = true } })
vim.diagnostic.config({ virtual_lines = false })
else
vim.diagnostic.config({ virtual_lines = true })
end
@ -176,8 +178,13 @@ end, opts("Format Buffer"))
vim.keymap.set('n', '<Leader><Leader>', "<cmd>Pick visit_paths cwd=''<cr>", opts("Visits"))
vim.keymap.set('n', '<Leader>b', "<cmd>Pick buffers<cr>", opts("Open buffer picker"))
vim.keymap.set('n', '<Leader>/', "<cmd>Pick grep_live_root<cr>", opts("Search workspace files"))
vim.keymap.set('n', '<Leader>d', "<cmd>Pick diagnostic<cr>", opts("Open diagnostics picker"))
vim.keymap.set("n", "<Leader>D", vim.diagnostic.setloclist, { desc = "Diagnostics to location list" })
vim.keymap.set('n', '<Leader>d', vim.diagnostic.open_float, opts("Show diagnostics for line"))
vim.keymap.set('n', '<m-d>', vim.diagnostic.open_float, opts("Show diagnostics for line"))
vim.keymap.set('n', '<Leader>D', function()
local width = vim.o.columns - 8
MiniExtra.pickers.diagnostic({ scope = "current" }, { window = { config = { width = width } } })
end, opts("Open diagnostics picker"))
vim.keymap.set("n", "<Leader>r", vim.lsp.buf.rename, opts("Rename Symbol"))
vim.keymap.set('n', '<Leader>F', "<cmd>Pick files<cr>", opts("Open file picker CWD"))
vim.keymap.set('n', '<Leader>f', "<cmd>Pick files_root<cr>", opts("Open file picker"))

View file

@ -16,6 +16,7 @@
pavucontrol
plexamp
signal-desktop
spotify
];
xdg.desktopEntries = {