| author | |
| committer | |
| log | 4c139f1a7a3fc1e1cd9297d9c09fe17986b75f6e |
| tree | dbfdad24b5dc1ce080b53e95efaafe2c30bfccf6 |
| parent | e6df94da34173479bbe43e8a3035538c0493d396 |
| signature | Commit is signed but in an unrecognized format. |
7 files changed, 62 insertions(+), 131 deletions(-)
modules/neovim/default.nix+52-2| ... | @@ -17,6 +17,24 @@ | ... | @@ -17,6 +17,24 @@ |
| 17 | theme = { | 17 | theme = { |
| 18 | enable = true; | 18 | enable = true; |
| 19 | }; | 19 | }; |
| 20 | |||
| 21 | options = { | ||
| 22 | tabstop = 2; | ||
| 23 | softtabstop = 2; | ||
| 24 | shiftwidth = 2; | ||
| 25 | undofile = true; | ||
| 26 | swapfile = false; | ||
| 27 | showmode = false; | ||
| 28 | foldlevel = 99; | ||
| 29 | foldcolumn = "1"; | ||
| 30 | foldlevelstart = 99; | ||
| 31 | foldenable = true; | ||
| 32 | foldmethod = "expr"; | ||
| 33 | #Default to treesitter folding | ||
| 34 | foldexpr = "v:lua.vim.treesitter.foldexpr()"; | ||
| 35 | }; | ||
| 36 | |||
| 37 | |||
| 20 | visuals = { | 38 | visuals = { |
| 21 | # notification system | 39 | # notification system |
| 22 | # https://github.com/j-hui/fidget.nvim | 40 | # https://github.com/j-hui/fidget.nvim |
| ... | @@ -26,7 +44,7 @@ | ... | @@ -26,7 +44,7 @@ |
| 26 | highlight-undo.enable = true; | 44 | highlight-undo.enable = true; |
| 27 | # indentation guides | 45 | # indentation guides |
| 28 | # https://github.com/lukas-reineke/indent-blankline.nvim | 46 | # https://github.com/lukas-reineke/indent-blankline.nvim |
| 29 | indent-blankline.enable = false; | 47 | indent-blankline.enable = true; |
| 30 | # extra icons | 48 | # extra icons |
| 31 | nvim-web-devicons.enable = true; | 49 | nvim-web-devicons.enable = true; |
| 32 | # https://github.com/petertriho/nvim-scrollbar | 50 | # https://github.com/petertriho/nvim-scrollbar |
| ... | @@ -35,16 +53,41 @@ | ... | @@ -35,16 +53,41 @@ |
| 35 | lsp = { | 53 | lsp = { |
| 36 | # Must be enabled for language modules to hook into the LSP API. | 54 | # Must be enabled for language modules to hook into the LSP API. |
| 37 | enable = true; | 55 | enable = true; |
| 56 | # enable debug adapter protocal by default | ||
| 57 | enableDAP = true; | ||
| 58 | |||
| 38 | formatOnSave = true; | 59 | formatOnSave = true; |
| 39 | # show errors inline | 60 | # show errors inline |
| 40 | # https://github.com/folke/trouble.nvim | 61 | # https://github.com/folke/trouble.nvim |
| 41 | trouble.enable = true; | 62 | trouble.enable = true; |
| 42 | # show lightbulb icon in gutter to indicate code actions | 63 | # show lightbulb icon in gutter to indicate code actions |
| 43 | # https://github.com/kosayoda/nvim-lightbulb | 64 | # https://github.com/kosayoda/nvim-lightbulb |
| 44 | lightbulb.enable = true; | 65 | lightbulb.enable = false; |
| 45 | # show icons in auto-completion menu | 66 | # show icons in auto-completion menu |
| 46 | # https://github.com/onsails/lspkind.nvim | 67 | # https://github.com/onsails/lspkind.nvim |
| 47 | lspkind.enable = config.vim.autocomplete.blink-cmp.enable; | 68 | lspkind.enable = config.vim.autocomplete.blink-cmp.enable; |
| 69 | # Enables inlay hints (types info in rust and shit) | ||
| 70 | inlayHints.enable = true; | ||
| 71 | #Nice mappings that i use :3 | ||
| 72 | mappings = { | ||
| 73 | codeAction = "<leader>ca"; | ||
| 74 | goToDeclaration = "gD"; | ||
| 75 | goToDefinition = "gd"; | ||
| 76 | listReferences = "gr"; | ||
| 77 | goToType = "gy"; | ||
| 78 | hover = "K"; | ||
| 79 | nextDiagnostic = "<leader>d"; | ||
| 80 | openDiagnosticFloat = "<leader>df"; | ||
| 81 | renameSymbol = "rn"; | ||
| 82 | documentHighlight = null; | ||
| 83 | listDocumentSymbols = null; | ||
| 84 | listImplementations = null; | ||
| 85 | listWorkspaceFolders = null; | ||
| 86 | previousDiagnostic = null; | ||
| 87 | removeWorkspaceFolder = null; | ||
| 88 | signatureHelp = null; | ||
| 89 | toggleFormatOnSave = null; | ||
| 90 | }; | ||
| 48 | }; | 91 | }; |
| 49 | treesitter = { | 92 | treesitter = { |
| 50 | enable = true; | 93 | enable = true; |
| ... | @@ -73,6 +116,7 @@ | ... | @@ -73,6 +116,7 @@ |
| 73 | rust.enable = true; | 116 | rust.enable = true; |
| 74 | ts.enable = true; | 117 | ts.enable = true; |
| 75 | zig.enable = true; | 118 | zig.enable = true; |
| 119 | lua.enable = true; | ||
| 76 | # sort-lines: off | 120 | # sort-lines: off |
| 77 | 121 | ||
| 78 | ts.format.enable = false; # deno fmt is enabled elsewhere | 122 | ts.format.enable = false; # deno fmt is enabled elsewhere |
| ... | @@ -207,5 +251,11 @@ | ... | @@ -207,5 +251,11 @@ |
| 207 | gitsigns.enable = true; | 251 | gitsigns.enable = true; |
| 208 | gitsigns.codeActions.enable = false; # throws an annoying debug message | 252 | gitsigns.codeActions.enable = false; # throws an annoying debug message |
| 209 | }; | 253 | }; |
| 254 | # Better help docs | ||
| 255 | lazy.plugins."helpview.nvim" = { | ||
| 256 | enabled = true; | ||
| 257 | package = pkgs.vimPlugins.helpview-nvim; | ||
| 258 | lazy = false; | ||
| 259 | }; | ||
| 210 | }; | 260 | }; |
| 211 | } | 261 | } |
users/chloe/vim.nix-16| ... | @@ -1,17 +1,6 @@ | ... | @@ -1,17 +1,6 @@ |
| 1 | _: { | 1 | _: { |
| 2 | vim = { | 2 | vim = { |
| 3 | languages.astro.enable = true; | ||
| 4 | options = { | 3 | options = { |
| 5 | tabstop = 2; | ||
| 6 | softtabstop = 2; | ||
| 7 | shiftwidth = 2; | ||
| 8 | undofile = true; | ||
| 9 | swapfile = false; | ||
| 10 | showmode = false; | ||
| 11 | foldlevel = 99; | ||
| 12 | foldcolumn = "1"; | ||
| 13 | foldlevelstart = 99; | ||
| 14 | foldenable = true; | ||
| 15 | linebreak = true; | 4 | linebreak = true; |
| 16 | }; | 5 | }; |
| 17 | git = { | 6 | git = { |
| ... | @@ -41,11 +30,6 @@ _: { | ... | @@ -41,11 +30,6 @@ _: { |
| 41 | # Find Files | 30 | # Find Files |
| 42 | (n "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files") | 31 | (n "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files") |
| 43 | (n "<leader>f" ":lua require('snacks').picker.grep()<CR>" "Grep Files") | 32 | (n "<leader>f" ":lua require('snacks').picker.grep()<CR>" "Grep Files") |
| 44 | # Lsp | ||
| 45 | (n "K" ":Lspsaga hover_doc<CR>" "Hover docs") | ||
| 46 | (n "lr" ":lua vim.lsp.buf.rename()<CR>" "Rename") | ||
| 47 | (n "gd" ":lua vim.lsp.buf.definition()<CR>" "Go to Definition") | ||
| 48 | (n "gD" ":lua vim.lsp.buf.declaration()<CR>" "Go to Declaration") | ||
| 49 | ]; | 33 | ]; |
| 50 | }; | 34 | }; |
| 51 | } | 35 | } |
users/julia/vim.nix-18| ... | @@ -1,21 +1,3 @@ | ... | @@ -1,21 +1,3 @@ |
| 1 | { ... }: | 1 | { ... }: |
| 2 | { | 2 | { |
| 3 | vim.languages.astro.enable = true; | ||
| 4 | vim.theme.extraConfig = '' | ||
| 5 | if vim.g.neovide then | ||
| 6 | vim.g.neovide_cursor_trail_size = 0.3 | ||
| 7 | vim.g.neovide_scroll_animation_length = 0.1; | ||
| 8 | |||
| 9 | vim.keymap.set('n', '<D-s>', ':w<CR>') -- Save | ||
| 10 | vim.keymap.set('v', '<D-c>', '"+y') -- Copy | ||
| 11 | vim.keymap.set('n', '<D-v>', '"+P') -- Paste normal mode | ||
| 12 | vim.keymap.set('v', '<D-v>', '"+P') -- Paste visual mode | ||
| 13 | vim.keymap.set('c', '<D-v>', '<C-R>+') -- Paste command mode | ||
| 14 | vim.keymap.set('i', '<D-v>', '<ESC>l"+Pli') -- Paste insert mode | ||
| 15 | end | ||
| 16 | vim.api.nvim_set_keymap("", '<D-v>', '+p<CR>', { noremap = true, silent = true}) | ||
| 17 | vim.api.nvim_set_keymap('!', '<D-v>', '<C-R>+', { noremap = true, silent = true}) | ||
| 18 | vim.api.nvim_set_keymap('t', '<D-v>', '<C-R>+', { noremap = true, silent = true}) | ||
| 19 | vim.api.nvim_set_keymap('v', '<D-v>', '<C-R>+', { noremap = true, silent = true}) | ||
| 20 | ''; | ||
| 21 | } | 3 | } |
users/natalie/vim.nix-34| ... | @@ -9,21 +9,6 @@ | ... | @@ -9,21 +9,6 @@ |
| 9 | withPython3 = true; | 9 | withPython3 = true; |
| 10 | python3Packages = [ "pynvim" ]; | 10 | python3Packages = [ "pynvim" ]; |
| 11 | 11 | ||
| 12 | options = { | ||
| 13 | tabstop = 2; | ||
| 14 | softtabstop = 2; | ||
| 15 | shiftwidth = 2; | ||
| 16 | undofile = true; | ||
| 17 | swapfile = false; | ||
| 18 | showmode = false; | ||
| 19 | foldlevel = 99; | ||
| 20 | foldcolumn = "1"; | ||
| 21 | foldlevelstart = 99; | ||
| 22 | foldenable = true; | ||
| 23 | foldmethod = "expr"; | ||
| 24 | #Default to treesitter folding | ||
| 25 | foldexpr = "v:lua.vim.treesitter.foldexpr()"; | ||
| 26 | }; | ||
| 27 | 12 | ||
| 28 | autocmds = [ | 13 | autocmds = [ |
| 29 | #Autocommand to fall back to treesitter folding if LSP doesnt support it | 14 | #Autocommand to fall back to treesitter folding if LSP doesnt support it |
| ... | @@ -44,28 +29,9 @@ | ... | @@ -44,28 +29,9 @@ |
| 44 | tabline = { | 29 | tabline = { |
| 45 | nvimBufferline.enable = true; | 30 | nvimBufferline.enable = true; |
| 46 | }; | 31 | }; |
| 47 | # nvf versions is VERY outdated | ||
| 48 | # pluginOverrides = { | ||
| 49 | # hardtime-nvim = pkgs.fetchFromGitHub { | ||
| 50 | # owner = "m4xshen"; | ||
| 51 | # repo = "hardtime.nvim"; | ||
| 52 | # rev = "v1.0.1"; | ||
| 53 | # hash = "sha256-5tqiSuGvBJcr8l6anEBojXEaaxFS1P5T1ROr46ylVhk="; | ||
| 54 | # }; | ||
| 55 | # }; | ||
| 56 | startPlugins = [ | 32 | startPlugins = [ |
| 57 | "nui-nvim" | 33 | "nui-nvim" |
| 58 | ]; | 34 | ]; |
| 59 | binds = { | ||
| 60 | hardtime-nvim = { | ||
| 61 | enable = false; | ||
| 62 | setupOpts = { | ||
| 63 | disable_mouse = false; | ||
| 64 | restriction_mode = "warn"; | ||
| 65 | }; | ||
| 66 | }; | ||
| 67 | }; | ||
| 68 | |||
| 69 | theme = { | 35 | theme = { |
| 70 | name = "catppuccin"; | 36 | name = "catppuccin"; |
| 71 | style = "mocha"; | 37 | style = "mocha"; |
users/natalie/vim/keybinds.nix+10-17| ... | @@ -1,26 +1,19 @@ | ... | @@ -1,26 +1,19 @@ |
| 1 | { ... }: | 1 | { ... }: |
| 2 | let | 2 | let |
| 3 | mkKeymap = mode: key: action: desc: { | 3 | mkKeymap = mode: key: action: desc: { |
| 4 | inherit | 4 | inherit mode; |
| 5 | mode | 5 | inherit key action desc; |
| 6 | key | 6 | }; |
| 7 | action | 7 | n = mkKeymap "n"; # normal mode |
| 8 | desc | ||
| 9 | ; | ||
| 10 | }; | ||
| 11 | in | 8 | in |
| 12 | { | 9 | { |
| 13 | vim = { | 10 | vim = { |
| 14 | keymaps = [ | 11 | keymaps = [ |
| 15 | (mkKeymap "n" "<leader>e" ":lua require('snacks').explorer()<CR>" "File Explorer") | 12 | (n "<leader>e" ":lua require('snacks').explorer()<CR>" "File Explorer") |
| 16 | |||
| 17 | # Snacks Picker Replaces Telescope!? | 13 | # Snacks Picker Replaces Telescope!? |
| 18 | (mkKeymap "n" "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files") | 14 | (n "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files") |
| 19 | (mkKeymap "n" "<leader>ff" ":lua require('snacks').picker.files()<CR>" "Find File") | 15 | (n "<leader>ff" ":lua require('snacks').picker.files()<CR>" "Find File") |
| 20 | (mkKeymap "n" "<leader>fg" ":lua require('snacks').picker.grep()<CR>" "Grep Files") | 16 | (n "<leader>fg" ":lua require('snacks').picker.grep()<CR>" "Grep Files") |
| 21 | # Lsp | ||
| 22 | (mkKeymap "n" "lr" ":lua vim.lsp.buf.rename()<CR>" "Rename") | ||
| 23 | # (mkKeymap "n" "<leader>th" ":lua function() vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) end<CR>" "Toggle Inlay Hints") | ||
| 24 | ]; | 17 | ]; |
| 25 | }; | 18 | }; |
| 26 | } | 19 | } |
users/natalie/vim/languages.nix-33| ... | @@ -12,17 +12,6 @@ | ... | @@ -12,17 +12,6 @@ |
| 12 | nixd | 12 | nixd |
| 13 | ]; | 13 | ]; |
| 14 | lsp = { | 14 | lsp = { |
| 15 | formatOnSave = true; | ||
| 16 | lightbulb.enable = false; | ||
| 17 | # lspsaga = { | ||
| 18 | # enable = true; | ||
| 19 | # setupOpts = { | ||
| 20 | # lightbulb = { | ||
| 21 | # virtual_text = false; | ||
| 22 | # }; | ||
| 23 | # }; | ||
| 24 | # }; | ||
| 25 | inlayHints.enable = true; | ||
| 26 | servers = { | 15 | servers = { |
| 27 | nil = { | 16 | nil = { |
| 28 | settings.nil.nix.flake = { | 17 | settings.nil.nix.flake = { |
| ... | @@ -58,30 +47,8 @@ | ... | @@ -58,30 +47,8 @@ |
| 58 | }; | 47 | }; |
| 59 | }; | 48 | }; |
| 60 | }; | 49 | }; |
| 61 | mappings = { | ||
| 62 | codeAction = "<leader>ca"; | ||
| 63 | goToDeclaration = "gD"; | ||
| 64 | goToDefinition = "gd"; | ||
| 65 | listReferences = "gr"; | ||
| 66 | goToType = "gy"; | ||
| 67 | hover = "K"; | ||
| 68 | nextDiagnostic = "<leader>d"; | ||
| 69 | openDiagnosticFloat = "<leader>df"; | ||
| 70 | renameSymbol = "rn"; | ||
| 71 | documentHighlight = null; | ||
| 72 | listDocumentSymbols = null; | ||
| 73 | listImplementations = null; | ||
| 74 | listWorkspaceFolders = null; | ||
| 75 | previousDiagnostic = null; | ||
| 76 | removeWorkspaceFolder = null; | ||
| 77 | signatureHelp = null; | ||
| 78 | toggleFormatOnSave = null; | ||
| 79 | }; | ||
| 80 | }; | 50 | }; |
| 81 | languages = { | 51 | languages = { |
| 82 | enableDAP = true; | ||
| 83 | lua.enable = true; | ||
| 84 | python.enable = true; | ||
| 85 | python.format.type = "ruff"; | 52 | python.format.type = "ruff"; |
| 86 | markdown = { | 53 | markdown = { |
| 87 | enable = true; | 54 | enable = true; |
users/natalie/vim/visuals.nix-11| ... | @@ -1,11 +1,6 @@ | ... | @@ -1,11 +1,6 @@ |
| 1 | { pkgs, ... }: | 1 | { pkgs, ... }: |
| 2 | { | 2 | { |
| 3 | vim = { | 3 | vim = { |
| 4 | visuals = { | ||
| 5 | indent-blankline = { | ||
| 6 | enable = true; | ||
| 7 | }; | ||
| 8 | }; | ||
| 9 | ui = { | 4 | ui = { |
| 10 | noice = { | 5 | noice = { |
| 11 | enable = true; | 6 | enable = true; |
| ... | @@ -28,11 +23,5 @@ | ... | @@ -28,11 +23,5 @@ |
| 28 | }; | 23 | }; |
| 29 | }; | 24 | }; |
| 30 | 25 | ||
| 31 | # Better help docs | ||
| 32 | lazy.plugins."helpview.nvim" = { | ||
| 33 | enabled = true; | ||
| 34 | package = pkgs.vimPlugins.helpview-nvim; | ||
| 35 | lazy = false; | ||
| 36 | }; | ||
| 37 | }; | 26 | }; |
| 38 | } | 27 | } |