Compare commits

...

6 commits

Author SHA1 Message Date
3394d5bed5
feat(neovim): enable signature help, inlay hints and virtual lines
Signature help messages will be shown automatically, for example, in the
context of you calling a method it will show a floating window above
with the signature of that specific method, i.e.
`SomeClass.SomeMethod(string firstParameter)`.

Inlay hints are extra information that the LSP may provide; in C# for
example, methods and classes will have an inlay hint showing the amount
of references that particular method/class has.

Finally, virtual lines are exactly what they sound - fake lines added
onto your editor, which are used to display diagnostics. I've also added
the community recipe that makes so virtual lines are only shown when the
active line has a diagnostic.
2025-04-23 17:01:31 -03:00
79cfc08e30
feat(neovim): add icon for razor files 2025-04-23 16:42:52 -03:00
350ad7f145
fix(neovim): remove roslyn.nvim hack
Roslyn finally implements `textDocument/semanticTokens/full` by itself.
2025-04-23 16:40:04 -03:00
c4f9fbb936
chore: flake update 2025-04-23 16:38:36 -03:00
9a7d83b45f
chore(shared/home-manager): comment protonvpn-gui package as it's broken 2025-04-23 16:38:25 -03:00
2b551e1887
chore(wizdesk/caddy): add x-robots-tag header to certain hosts 2025-04-23 16:37:37 -03:00
7 changed files with 50 additions and 80 deletions

48
flake.lock generated
View file

@ -40,11 +40,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1744741087,
"narHash": "sha256-TzMey3Su7uNxUS5DOdDuk7tE2ULuzKhm233qHM8ObnA=",
"lastModified": 1745432946,
"narHash": "sha256-6JNCfG67V5muUwEGdv5HmnbW6UlGrjcblVObvJCVXy4=",
"owner": "Saghen",
"repo": "blink.cmp",
"rev": "e16586c49309c29f238e1068546e7ba64cc15a78",
"rev": "5d90bfc6245eb89b6c6f22f4fa3a7202df17cb24",
"type": "github"
},
"original": {
@ -158,11 +158,11 @@
]
},
"locked": {
"lastModified": 1744812667,
"narHash": "sha256-2AJZwXMO82YGw6B/RRCPz8Wz2zSRCZIdjhdFuiw7Ymg=",
"lastModified": 1745427103,
"narHash": "sha256-J4v65MKoXt95nmCYr6a7Cdiyl9QmPp6u3+7aJ71zxbk=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "5d48f3ded3b55ef32d5853c9022fb4df29b3fc45",
"rev": "6d1f834ca63700604a96d8c38aa8ac272d95071a",
"type": "github"
},
"original": {
@ -178,11 +178,11 @@
"utils": "utils"
},
"locked": {
"lastModified": 1736510643,
"narHash": "sha256-z6qvPOIr4Rl4wA6U5g8Aj3npdeTNiR3AXFIOy7e2IJs=",
"lastModified": 1744867268,
"narHash": "sha256-MZxEEq9FNJKtLg3Yz4e0Pf+8TRySj8xJ6vBszqt3fjg=",
"owner": "hydractify",
"repo": "hydractify-bot",
"rev": "69759c7adcb2102dbb8d3e8a657dc5a47686dc46",
"rev": "263b8552a4dd161de58eb13dad93ec758718c828",
"type": "github"
},
"original": {
@ -236,11 +236,11 @@
]
},
"locked": {
"lastModified": 1743953322,
"narHash": "sha256-prQ5JKopXtzCMX2eT3dXbaVvGmzjMRE2bXStQDdazpM=",
"lastModified": 1745015490,
"narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=",
"owner": "hyprwm",
"repo": "hyprgraphics",
"rev": "9d7f2687c84c729afbc3b13f7937655570f2978d",
"rev": "60754910946b4e2dc1377b967b7156cb989c5873",
"type": "github"
},
"original": {
@ -265,11 +265,11 @@
"xdph": "xdph"
},
"locked": {
"lastModified": 1744807781,
"narHash": "sha256-zwLztVgpc0Txwvy662USwYVEKkNZiJd5GdqacnKyp18=",
"lastModified": 1745328209,
"narHash": "sha256-eP3x+JNE1T6RjXhimaEnoc4GvNJcyzppW1vpAs287Zg=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "1ae7e2164c25ad4c22698b0ac12969f1e2a1b8ca",
"rev": "241a4935a244f403fa7108259075b04c81ed258f",
"type": "github"
},
"original": {
@ -527,11 +527,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1744463964,
"narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
"lastModified": 1744932701,
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef",
"type": "github"
},
"original": {
@ -543,11 +543,11 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1744463964,
"narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
"lastModified": 1745234285,
"narHash": "sha256-GfpyMzxwkfgRVN0cTGQSkTC0OHhEkv3Jf6Tcjm//qZ0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
"rev": "c11863f1e964833214b767f4a369c6e6a7aba141",
"type": "github"
},
"original": {
@ -616,11 +616,11 @@
"systems": "systems_3"
},
"locked": {
"lastModified": 1744682091,
"narHash": "sha256-zudMf0YW3mB0f2XnWPAjYdKioJPaJQchhO4bCeBOZAI=",
"lastModified": 1745151211,
"narHash": "sha256-qFXfTdO1yvW6DmUPfVLIJgDHfkSd5yimZWvBMrlP/ow=",
"owner": "Gerg-L",
"repo": "spicetify-nix",
"rev": "44ed9eb751a6966ffb291edbda2e9bebd3ebcd4a",
"rev": "1dd4328f82115887901a685ecd9fa6e1d1db2d0c",
"type": "github"
},
"original": {

View file

@ -11,16 +11,19 @@
virtualHosts."jellyfin.thewizard.link".extraConfig = ''
encode gzip
header X-Robots-Tag "none"
reverse_proxy 127.0.0.1:8096 {
flush_interval -1
}
'';
virtualHosts."jellyseerr.thewizard.link".extraConfig = ''
header X-Robots-Tag "none"
reverse_proxy http://127.0.0.1:5055
'';
virtualHosts."foundry.thewizard.link".extraConfig = ''
header X-Robots-Tag "none"
reverse_proxy 127.0.0.1:30000 {
flush_interval -1
}
@ -32,18 +35,22 @@
virtualHosts."files.thewizard.link".extraConfig = ''
root * /srv/files
header X-Robots-Tag "none"
file_server
'';
virtualHosts."torrent.thewizard.link".extraConfig = ''
header X-Robots-Tag "none"
reverse_proxy 127.0.0.1:8144
'';
virtualHosts."shoko.thewizard.link".extraConfig = ''
header X-Robots-Tag "none"
reverse_proxy 127.0.0.1:8111
'';
virtualHosts."nixbin.thewizard.link".extraConfig = ''
header X-Robots-Tag "none"
reverse_proxy 127.0.0.1:7373
'';
};

View file

@ -15,6 +15,8 @@ return {
{ import = "astrocommunity.motion.mini-ai" },
{ import = "astrocommunity.motion.mini-surround" },
{ import = "astrocommunity.recipes.diagnostic-virtual-lines-current-line" },
{ import = "astrocommunity.test.neotest" },
{ import = "astrocommunity.pack.cmake" },

View file

@ -16,11 +16,13 @@ return {
diagnostics_mode = 3, -- diagnostic mode on start (0 = off, 1 = no signs/virtual text, 2 = no virtual text, 3 = on)
highlighturl = true, -- highlight URLs at start
notifications = true, -- enable notifications at start
signature_help = true, -- enable automatically showing signature help
inlay_hints = true, -- enable inlay hints globally
},
-- Diagnostics configuration (for vim.diagnostics.config({...})) when diagnostics are on
diagnostics = {
virtual_text = true,
virtual_lines = false,
virtual_lines = { current_line = true },
},
-- vim options can be configured here
options = {

View file

@ -0,0 +1,13 @@
---@type LazySpec
return {
"echasnovski/mini.icons",
lazy = true,
opts = {
extension = {
cshtml = {
glyph = "󱦗",
hl = "MiniIconsPurple",
},
},
},
}

View file

@ -56,60 +56,6 @@ return {
dotnet_enable_references_code_lens = true,
},
},
---@class RoslynPatchedClient: vim.lsp.Client
---@field patched boolean?
---@param client RoslynPatchedClient
---@param bufnr integer
on_attach = function(client, bufnr)
-- Call AstroLSP's on_attach so it registers mappings, formatting, etc.
require("astrolsp").on_attach(client, bufnr)
-- HACK: Patch out the `roslyn-ls` LSP client to have proper
-- semantic tokens.
-- This is a snippet of code taken and modified from:
-- https://github.com/seblyng/roslyn.nvim/wiki#semantic-tokens
if client.patched then
return
else
client.patched = true
end
-- let the runtime know the server can do semanticTokens/full now
client.server_capabilities = vim.tbl_deep_extend("force", client.server_capabilities, {
semanticTokensProvider = {
full = true,
},
})
local lsp_request = client.request
client.request = function(method, params, handler, req_bufnr)
if method ~= vim.lsp.protocol.Methods.textDocument_semanticTokens_full then
return lsp_request(method, params, handler, req_bufnr)
end
local target_bufnr = vim.uri_to_bufnr(params.textDocument.uri)
local line_count = vim.api.nvim_buf_line_count(target_bufnr)
local last_line =
vim.api.nvim_buf_get_lines(target_bufnr, line_count - 1, line_count, true)[1]
local returnvalue = lsp_request("textDocument/semanticTokens/range", {
textDocument = params.textDocument,
range = {
["start"] = {
line = 0,
character = 0,
},
["end"] = {
line = line_count - 1,
character = string.len(last_line) - 1,
},
},
}, handler, req_bufnr)
return returnvalue
end
end,
},
}

View file

@ -82,7 +82,7 @@
fastfetch
firefox
pavucontrol
protonvpn-gui
# protonvpn-gui # WARNING: Marked as broken https://github.com/NixOS/nixpkgs/commit/84faa614a5256a84e3dd4e445053ff76f4c0a5d4
qbittorrent
qdirstat
speedcrunch