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

View file

@ -93,6 +93,7 @@ vim.opt.grepformat = vim.opt.grepformat ^ { "%f:%l:%c:%m" }
-- Diagnostics -- Diagnostics
vim.diagnostic.config { vim.diagnostic.config {
float = { border = "rounded" },
severity_sort = true, severity_sort = true,
signs = { signs = {
linehl = { linehl = {
@ -114,11 +115,12 @@ vim.diagnostic.config {
[vim.diagnostic.severity.HINT] = "", [vim.diagnostic.severity.HINT] = "",
}, },
}, },
virtual_lines = { current_line = true }, virtual_lines = false,
} }
vim.keymap.set('n', '<Space>ud', function() vim.keymap.set('n', '<Space>ud', function()
if vim.diagnostic.config().virtual_lines == true then 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 else
vim.diagnostic.config({ virtual_lines = true }) vim.diagnostic.config({ virtual_lines = true })
end 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><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>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>/', "<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.open_float, opts("Show diagnostics for line"))
vim.keymap.set("n", "<Leader>D", vim.diagnostic.setloclist, { desc = "Diagnostics to location list" }) 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>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<cr>", opts("Open file picker CWD"))
vim.keymap.set('n', '<Leader>f', "<cmd>Pick files_root<cr>", opts("Open file picker")) vim.keymap.set('n', '<Leader>f', "<cmd>Pick files_root<cr>", opts("Open file picker"))

View file

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