Configuration for my NixOS based systems and Home Manager
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Update lazy spec

+360 -356
+360 -356
nvim/lua/plugins.lua
··· 15 15 if lazy_bootstrap then print("Bootstrapped lazy.nvim") end 16 16 17 17 require("lazy").setup({ 18 - -- Color themes 19 - { "shaunsingh/nord.nvim", priority = 1000, lazy = true }, 20 - { "shaunsingh/moonlight.nvim", priority = 1000, lazy = true }, 21 - { "folke/tokyonight.nvim", priority = 1000, lazy = true }, 22 - { "cranberry-clockworks/coal.nvim", priority = 1000, lazy = true }, 23 - { "hardselius/warlock", priority = 1000, lazy = true }, 24 - { "sontungexpt/witch", priority = 1000, lazy = true, config = true }, 25 - { "catppuccin/nvim", name = "catppuccin", priority = 1000, lazy = true }, 26 - { 27 - "neanias/everforest-nvim", 28 - version = false, 29 - lazy = true, 30 - priority = 1000, -- make sure to load this before all the other start plugins 31 - main = "everforest", 32 - opts = { background = "hard" } 33 - }, 34 - { "rebelot/kanagawa.nvim", opts = { compile = true }, priority = 1000, lazy = true }, 35 - { 36 - 'jesseleite/nvim-noirbuddy', 37 - dependencies = { 38 - 'tjdevries/colorbuddy.nvim', 18 + install = { colorscheme = { "noirbuddy" } }, 19 + checker = { enabled = true }, 20 + spec = { 21 + -- Color themes 22 + { "shaunsingh/nord.nvim", priority = 1000, lazy = true }, 23 + { "shaunsingh/moonlight.nvim", priority = 1000, lazy = true }, 24 + { "folke/tokyonight.nvim", priority = 1000, lazy = true }, 25 + { "cranberry-clockworks/coal.nvim", priority = 1000, lazy = true }, 26 + { "hardselius/warlock", priority = 1000, lazy = true }, 27 + { "sontungexpt/witch", priority = 1000, lazy = true, config = true }, 28 + { "catppuccin/nvim", name = "catppuccin", priority = 1000, lazy = true }, 29 + { 30 + "neanias/everforest-nvim", 31 + version = false, 32 + lazy = true, 33 + priority = 1000, -- make sure to load this before all the other start plugins 34 + main = "everforest", 35 + opts = { background = "hard" } 39 36 }, 40 - lazy = true, 41 - --priority = 1000, 42 - opts = { 43 - -- All of your `setup(opts)` will go here 44 - preset = "slate", 37 + { "rebelot/kanagawa.nvim", opts = { compile = true }, priority = 1000, lazy = true }, 38 + { 39 + 'jesseleite/nvim-noirbuddy', 40 + dependencies = { 41 + 'tjdevries/colorbuddy.nvim', 42 + }, 43 + lazy = true, 44 + --priority = 1000, 45 + opts = { 46 + -- All of your `setup(opts)` will go here 47 + preset = "slate", 48 + }, 45 49 }, 46 - }, 47 - -- Completion 48 - { 49 - "hrsh7th/nvim-cmp", 50 - dependencies = { 51 - "hrsh7th/cmp-nvim-lsp", 52 - "hrsh7th/cmp-buffer", 53 - "hrsh7th/cmp-path", 54 - "hrsh7th/cmp-vsnip", 55 - "hrsh7th/vim-vsnip", 56 - "petertriho/cmp-git", 57 - "hrsh7th/cmp-cmdline" 58 - } 59 - }, -- nvim lsp plugins 60 - { 61 - "neovim/nvim-lspconfig", 62 - }, 63 - -- LSP Goodness 64 - { 65 - "ray-x/navigator.lua", 66 - dependencies = { 67 - { 'ray-x/guihua.lua', build = 'cd lua/fzy && make' }, 68 - { 'neovim/nvim-lspconfig' }, 69 - } 50 + -- Completion 51 + { 52 + "hrsh7th/nvim-cmp", 53 + dependencies = { 54 + "hrsh7th/cmp-nvim-lsp", 55 + "hrsh7th/cmp-buffer", 56 + "hrsh7th/cmp-path", 57 + "hrsh7th/cmp-vsnip", 58 + "hrsh7th/vim-vsnip", 59 + "petertriho/cmp-git", 60 + "hrsh7th/cmp-cmdline" 61 + } 62 + }, -- nvim lsp plugins 63 + { 64 + "neovim/nvim-lspconfig", 65 + }, 66 + -- LSP Goodness 67 + { 68 + "ray-x/navigator.lua", 69 + dependencies = { 70 + { 'ray-x/guihua.lua', build = 'cd lua/fzy && make' }, 71 + { 'neovim/nvim-lspconfig' }, 72 + } 70 73 71 - }, 72 - { 73 - -- Syntax Highlighting from the future 74 - "nvim-treesitter/nvim-treesitter", 75 - --init = function() vim.cmd([[":TSUpdate"]]) end, 76 - main = "nvim-treesitter.configs", 77 - opts = { 78 - ensure_installed = 'all', 79 - ignore_install = { 'norg' }, 80 - sync_intall = true, 81 - highlight = { 82 - enable = true, 74 + }, 75 + { 76 + -- Syntax Highlighting from the future 77 + "nvim-treesitter/nvim-treesitter", 78 + --init = function() vim.cmd([[":TSUpdate"]]) end, 79 + main = "nvim-treesitter.configs", 80 + opts = { 81 + ensure_installed = 'all', 82 + ignore_install = { 'norg' }, 83 + sync_intall = true, 84 + highlight = { 85 + enable = true, 86 + }, 87 + indent = { 88 + enable = false, 89 + }, 90 + }, 91 + build = ":TSUpdate", 92 + version = false, 93 + dependencies = { 94 + "nvim-treesitter/nvim-treesitter-textobjects", 95 + "nvim-treesitter/nvim-treesitter-context", 83 96 }, 84 - indent = { 85 - enable = false, 97 + }, -- Git stuff 98 + -- GitGutter, shows inline difs 99 + "airblade/vim-gitgutter", 100 + -- "tpope/vim-fugitive", -- old git command 101 + { 102 + "NeogitOrg/neogit", 103 + dependencies = { 104 + "nvim-lua/plenary.nvim", -- required 105 + "sindrets/diffview.nvim", -- optional - Diff integration 106 + "nvim-telescope/telescope.nvim" 86 107 }, 108 + config = true 87 109 }, 88 - build = ":TSUpdate", 89 - version = false, 90 - dependencies = { 91 - "nvim-treesitter/nvim-treesitter-textobjects", 92 - "nvim-treesitter/nvim-treesitter-context", 110 + -- Auto format tool 111 + { 112 + "stevearc/conform.nvim", 113 + lazy = true, 114 + opts = { 115 + python = { "isort", "black" }, 116 + lua = { "lua-format" }, 117 + clojure = { "cljfmt" }, 118 + rust = { "rustfmt" }, 119 + haskell = { "ormolu", "stylish-haskell" }, 120 + go = { "goimports", "gofmt" }, 121 + java = { "google-java-format" }, 122 + javascript = { "prettier" }, 123 + html = { "prettier" }, 124 + yaml = { "prettier" }, 125 + sh = { "shfmt" }, 126 + c = { "clang-format" }, 127 + } 93 128 }, 94 - }, -- Git stuff 95 - -- GitGutter, shows inline difs 96 - "airblade/vim-gitgutter", 97 - -- "tpope/vim-fugitive", -- old git command 98 - { 99 - "NeogitOrg/neogit", 100 - dependencies = { 101 - "nvim-lua/plenary.nvim", -- required 102 - "sindrets/diffview.nvim", -- optional - Diff integration 103 - "nvim-telescope/telescope.nvim" 129 + { 130 + "hedyhli/outline.nvim", 131 + lazy = true, 132 + cmd = { "Outline", "OutlineOpen" }, 133 + config = true, 134 + keys = { 135 + { "<leader>o", "<cmd>Outline<cr>", desc = "Toggle outline" }, 136 + }, 104 137 }, 105 - config = true 106 - }, 107 - -- Auto format tool 108 - { 109 - "stevearc/conform.nvim", 110 - lazy = true, 111 - opts = { 112 - python = { "isort", "black" }, 113 - lua = { "lua-format" }, 114 - clojure = { "cljfmt" }, 115 - rust = { "rustfmt" }, 116 - haskell = { "ormolu", "stylish-haskell" }, 117 - go = { "goimports", "gofmt" }, 118 - java = { "google-java-format" }, 119 - javascript = { "prettier" }, 120 - html = { "prettier" }, 121 - yaml = { "prettier" }, 122 - sh = { "shfmt" }, 123 - c = { "clang-format" }, 124 - } 125 - }, 126 - { 127 - "hedyhli/outline.nvim", 128 - lazy = true, 129 - cmd = { "Outline", "OutlineOpen" }, 130 - config = true, 131 - keys = { 132 - { "<leader>o", "<cmd>Outline<cr>", desc = "Toggle outline" }, 138 + { 139 + "ray-x/go.nvim", 140 + ft = "go", 141 + lazy = true, 142 + dependencies = { 143 + "ray-x/guihua.lua", "neovim/nvim-lspconfig", 144 + "nvim-treesitter/nvim-treesitter" 145 + } 133 146 }, 134 - }, 135 - { 136 - "ray-x/go.nvim", 137 - ft = "go", 138 - lazy = true, 139 - dependencies = { 140 - "ray-x/guihua.lua", "neovim/nvim-lspconfig", 141 - "nvim-treesitter/nvim-treesitter" 142 - } 143 - }, 144 - { 145 - "nvim-lualine/lualine.nvim", 146 - dependencies = { "nvim-tree/nvim-web-devicons" } 147 - }, 148 - -- Fuzzy finding stuff 149 - "junegunn/fzf.vim", 150 - { 151 - dir = "~/.fzf", 152 - build = function() vim.fn["fzf#install"](0) end, 153 - dependencies = { "junegunn/fzf.vim" } 154 - }, 155 - -- Telescope, find anything fast 156 - "nvim-lua/plenary.nvim", 157 - { 158 - "nvim-telescope/telescope.nvim", 159 - dependencies = { 160 - "nvim-lua/plenary.nvim", 161 - "nvim-telescope/telescope-symbols.nvim", 162 - } 163 - }, 164 - { 165 - "folke/trouble.nvim", 166 - dependencies = "nvim-tree/nvim-web-devicons" 167 - }, 168 - -- Which key is bound? 169 - -- literally the best plugin ever 170 - { 171 - "folke/which-key.nvim", 172 - init = function() 173 - vim.o.timeout = true 174 - vim.o.timeoutlen = 300 175 - end, 176 - config = true 177 - }, 178 - -- Developing my neovim 179 - { 180 - "folke/lazydev.nvim", 181 - config = true, 182 - ft = "lua", 183 - lazy = true, 184 - opts = { 185 - library = { 186 - path = "luvit-meta/library", words = { "vim%.uv" }, 147 + { 148 + "nvim-lualine/lualine.nvim", 149 + dependencies = { "nvim-tree/nvim-web-devicons" } 150 + }, 151 + -- Fuzzy finding stuff 152 + "junegunn/fzf.vim", 153 + { 154 + dir = "~/.fzf", 155 + build = function() vim.fn["fzf#install"](0) end, 156 + dependencies = { "junegunn/fzf.vim" } 157 + }, 158 + -- Telescope, find anything fast 159 + "nvim-lua/plenary.nvim", 160 + { 161 + "nvim-telescope/telescope.nvim", 162 + dependencies = { 163 + "nvim-lua/plenary.nvim", 164 + "nvim-telescope/telescope-symbols.nvim", 165 + } 166 + }, 167 + { 168 + "folke/trouble.nvim", 169 + dependencies = "nvim-tree/nvim-web-devicons" 170 + }, 171 + -- Which key is bound? 172 + -- literally the best plugin ever 173 + { 174 + "folke/which-key.nvim", 175 + init = function() 176 + vim.o.timeout = true 177 + vim.o.timeoutlen = 300 178 + end, 179 + config = true 180 + }, 181 + -- Developing my neovim 182 + { 183 + "folke/lazydev.nvim", 184 + config = true, 185 + ft = "lua", 186 + lazy = true, 187 + opts = { 188 + library = { 189 + path = "luvit-meta/library", words = { "vim%.uv" }, 190 + }, 191 + }, 192 + dependencies = { 193 + "Bilal2453/luvit-meta" 187 194 }, 188 195 }, 189 - dependencies = { 190 - "Bilal2453/luvit-meta" 191 - }, 192 - }, 193 - -- Lithsps 194 - { 195 - "windwp/nvim-autopairs", 196 - event = "InsertEnter", 197 - config = function() 198 - local pairs = require("nvim-autopairs") 196 + -- Lithsps 197 + { 198 + "windwp/nvim-autopairs", 199 + event = "InsertEnter", 200 + config = function() 201 + local pairs = require("nvim-autopairs") 199 202 200 - pairs.setup({ 201 - check_ts = true, 202 - enable_check_bracket_line = false, 203 - }) 203 + pairs.setup({ 204 + check_ts = true, 205 + enable_check_bracket_line = false, 206 + }) 204 207 205 - pairs.get_rules("`")[1].not_filetypes = { "clojure", "scheme", "scm", "janet" } 206 - pairs.get_rules("'")[1].not_filetypes = { "clojure", "scheme", "scm", "janet", "rust" } 207 - end, 208 - }, 209 - -- This gives me the paredit engine, it's pretty nifty 210 - { 211 - "gpanders/nvim-parinfer", 212 - ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" }, 213 - config = function() 214 - vim.g.parinfer_comment_chars = { ";", "#" } 215 - vim.g.parinfer_force_balance = true 216 - end 217 - }, -- )))))) 218 - -- This one gives me vim-sexp like structural editing 219 - { 220 - "julienvincent/nvim-paredit", 221 - config = function() 222 - local paredit = require('nvim-paredit') 223 - paredit.setup({ 224 - indent = { 225 - enabled = true, 226 - }, 227 - --filetypes = {"clojure", "fennel", "janet"}, 228 - keys = { 229 - ["<localleader>w"] = { 230 - function() 231 - -- place cursor and set mode to `insert` 232 - paredit.cursor.place_cursor( 233 - -- wrap element under cursor with `( ` and `)` 234 - paredit.wrap.wrap_element_under_cursor("( ", ")"), 235 - -- cursor placement opts 236 - { placement = "inner_start", mode = "insert" } 237 - ) 238 - end, 239 - "Wrap element insert head", 208 + pairs.get_rules("`")[1].not_filetypes = { "clojure", "scheme", "scm", "janet" } 209 + pairs.get_rules("'")[1].not_filetypes = { "clojure", "scheme", "scm", "janet", "rust" } 210 + end, 211 + }, 212 + -- This gives me the paredit engine, it's pretty nifty 213 + { 214 + "gpanders/nvim-parinfer", 215 + ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" }, 216 + config = function() 217 + vim.g.parinfer_comment_chars = { ";", "#" } 218 + vim.g.parinfer_force_balance = true 219 + end 220 + }, -- )))))) 221 + -- This one gives me vim-sexp like structural editing 222 + { 223 + "julienvincent/nvim-paredit", 224 + config = function() 225 + local paredit = require('nvim-paredit') 226 + paredit.setup({ 227 + indent = { 228 + enabled = true, 240 229 }, 230 + --filetypes = {"clojure", "fennel", "janet"}, 231 + keys = { 232 + ["<localleader>w"] = { 233 + function() 234 + -- place cursor and set mode to `insert` 235 + paredit.cursor.place_cursor( 236 + -- wrap element under cursor with `( ` and `)` 237 + paredit.wrap.wrap_element_under_cursor("( ", ")"), 238 + -- cursor placement opts 239 + { placement = "inner_start", mode = "insert" } 240 + ) 241 + end, 242 + "Wrap element insert head", 243 + }, 241 244 242 - ["<localleader>W"] = { 243 - function() 244 - paredit.cursor.place_cursor( 245 - paredit.wrap.wrap_element_under_cursor("(", ")"), 246 - { placement = "inner_end", mode = "insert" } 247 - ) 248 - end, 249 - "Wrap element insert tail", 245 + ["<localleader>W"] = { 246 + function() 247 + paredit.cursor.place_cursor( 248 + paredit.wrap.wrap_element_under_cursor("(", ")"), 249 + { placement = "inner_end", mode = "insert" } 250 + ) 251 + end, 252 + "Wrap element insert tail", 253 + }, 254 + -- same as above but for enclosing form 255 + ["<localleader>i"] = { 256 + function() 257 + paredit.cursor.place_cursor( 258 + paredit.wrap.wrap_enclosing_form_under_cursor("( ", ")"), 259 + { placement = "inner_start", mode = "insert" } 260 + ) 261 + end, 262 + "Wrap form insert head", 263 + }, 264 + ["<localleader>I"] = { 265 + function() 266 + paredit.cursor.place_cursor( 267 + paredit.wrap.wrap_enclosing_form_under_cursor("(", ")"), 268 + { placement = "inner_end", mode = "insert" } 269 + ) 270 + end, 271 + "Wrap form insert tail", 272 + }, 273 + ["<localleader>["] = { 274 + function() 275 + paredit.cursor.place_cursor( 276 + paredit.wrap.wrap_enclosing_form_under_cursor("[", "]"), 277 + { placement = "inner_start", mode = "insert" } 278 + ) 279 + end, 280 + }, 281 + ["<localleader>{"] = { 282 + function() 283 + paredit.cursor.place_cursor( 284 + paredit.wrap.wrap_enclosing_form_under_cursor("{", "}"), 285 + { placement = "inner_end", mode = "insert" } 286 + ) 287 + end, 288 + }, 250 289 }, 251 - -- same as above but for enclosing form 252 - ["<localleader>i"] = { 253 - function() 254 - paredit.cursor.place_cursor( 255 - paredit.wrap.wrap_enclosing_form_under_cursor("( ", ")"), 256 - { placement = "inner_start", mode = "insert" } 257 - ) 258 - end, 259 - "Wrap form insert head", 260 - }, 261 - ["<localleader>I"] = { 262 - function() 263 - paredit.cursor.place_cursor( 264 - paredit.wrap.wrap_enclosing_form_under_cursor("(", ")"), 265 - { placement = "inner_end", mode = "insert" } 266 - ) 267 - end, 268 - "Wrap form insert tail", 269 - }, 270 - ["<localleader>["] = { 271 - function() 272 - paredit.cursor.place_cursor( 273 - paredit.wrap.wrap_enclosing_form_under_cursor("[", "]"), 274 - { placement = "inner_start", mode = "insert" } 275 - ) 276 - end, 277 - }, 278 - ["<localleader>{"] = { 279 - function() 280 - paredit.cursor.place_cursor( 281 - paredit.wrap.wrap_enclosing_form_under_cursor("{", "}"), 282 - { placement = "inner_end", mode = "insert" } 283 - ) 284 - end, 285 - }, 286 - }, 287 - }) 288 - end, 289 - ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" } 290 - }, 291 - { 292 - "chiefnoah/nvim-paredit-janet", 293 - dependencies = { "julienvincent/nvim-paredit" }, 294 - lazy = true, 295 - ft = { "janet" }, 296 - config = function() 297 - require("nvim-paredit-janet").setup() 298 - end, 299 - }, 300 - { 301 - "julienvincent/nvim-paredit-fennel", 302 - dependencies = { "julienvincent/nvim-paredit" }, 303 - ft = { "fennel" }, 304 - config = true, 305 - }, 306 - { 307 - "ekaitz-zarraga/nvim-paredit-scheme", 308 - lazy = true, 309 - ft = { "scheme" }, 310 - config = function() 311 - require("nvim-paredit-scheme").setup(require("nvim-paredit")) 312 - end, 313 - }, 314 - { "hiphish/rainbow-delimiters.nvim" }, 315 - -- Conjure, lisp is magical 316 - { 317 - "Olical/conjure", 318 - ft = { "scheme", "scm", "lisp", "fennel", "clojure", "lua", "janet" }, 319 - config = function() 320 - vim.g["conjure#client#scheme#stdio#command"] = "gxi" 321 - vim.g["conjure#client#scheme#stdio#prompt_pattern"] = "%d*> $?" 322 - end, 323 - dependencies = { "PaterJason/cmp-conjure" } 324 - }, 325 - { "PaterJason/cmp-conjure", lazy = true }, 326 - { "p1xelHer0/gerbil.nvim", ft = "scheme" }, -- Fennel, Luasthp 327 - { "jaawerth/fennel.vim", lazy = true, ft = "fennel" }, 328 - { "rktjmp/hotpot.nvim", lazy = true, ft = "fennel" }, 329 - { "Olical/nfnl", ft = "fennel" }, -- Rust stuff 330 - { 331 - "simrat39/rust-tools.nvim", 332 - ft = { "rust" }, 333 - config = function() 334 - local rt = require("rust-tools") 335 - rt.setup({ 336 - server = { 337 - on_attach = function(_, bufnr) 338 - -- Hover actions 339 - vim.keymap.set("n", "<C-space>", 340 - rt.hover_actions.hover_actions, 341 - { buffer = bufnr }) 342 - -- Code action groups 343 - vim.keymap.set("n", "<Leader>a", 344 - rt.code_action_group.code_action_group, 345 - { buffer = bufnr }) 346 - end 290 + }) 291 + end, 292 + ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" } 293 + }, 294 + { 295 + "chiefnoah/nvim-paredit-janet", 296 + dependencies = { "julienvincent/nvim-paredit" }, 297 + lazy = true, 298 + ft = { "janet" }, 299 + config = function() 300 + require("nvim-paredit-janet").setup() 301 + end, 302 + }, 303 + { 304 + "julienvincent/nvim-paredit-fennel", 305 + dependencies = { "julienvincent/nvim-paredit" }, 306 + ft = { "fennel" }, 307 + config = true, 308 + }, 309 + { 310 + "ekaitz-zarraga/nvim-paredit-scheme", 311 + lazy = true, 312 + ft = { "scheme" }, 313 + config = function() 314 + require("nvim-paredit-scheme").setup(require("nvim-paredit")) 315 + end, 316 + }, 317 + { "hiphish/rainbow-delimiters.nvim" }, 318 + -- Conjure, lisp is magical 319 + { 320 + "Olical/conjure", 321 + ft = { "scheme", "scm", "lisp", "fennel", "clojure", "lua", "janet" }, 322 + config = function() 323 + vim.g["conjure#client#scheme#stdio#command"] = "gxi" 324 + vim.g["conjure#client#scheme#stdio#prompt_pattern"] = "%d*> $?" 325 + end, 326 + dependencies = { "PaterJason/cmp-conjure" } 327 + }, 328 + { "PaterJason/cmp-conjure", lazy = true }, 329 + { "p1xelHer0/gerbil.nvim", ft = "scheme" }, -- Fennel, Luasthp 330 + { "jaawerth/fennel.vim", lazy = true, ft = "fennel" }, 331 + { "rktjmp/hotpot.nvim", lazy = true, ft = "fennel" }, 332 + { "Olical/nfnl", ft = "fennel" }, -- Rust stuff 333 + { 334 + "simrat39/rust-tools.nvim", 335 + ft = { "rust" }, 336 + config = function() 337 + local rt = require("rust-tools") 338 + rt.setup({ 339 + server = { 340 + on_attach = function(_, bufnr) 341 + -- Hover actions 342 + vim.keymap.set("n", "<C-space>", 343 + rt.hover_actions.hover_actions, 344 + { buffer = bufnr }) 345 + -- Code action groups 346 + vim.keymap.set("n", "<Leader>a", 347 + rt.code_action_group.code_action_group, 348 + { buffer = bufnr }) 349 + end 350 + } 351 + }) 352 + end, 353 + dependencies = { "nvim-lua/plenary.nvim" } 354 + }, 355 + { "mfussenegger/nvim-dap", lazy = true, ft = { "c", "rust" } }, 356 + { 357 + "saecki/crates.nvim", 358 + tag = "v0.4.0", 359 + dependencies = { "nvim-lua/plenary.nvim" }, 360 + config = function() require("crates").setup() end, 361 + ft = { "rust" } 362 + }, -- RISC-V Assembly syntax highlighting 363 + { "kylelaker/riscv.vim", ft = "riscv" }, -- Hare Stuff 364 + -- Haredoc 365 + { 366 + url = "https://git.sr.ht/~torresjrjr/vim-haredoc", 367 + ft = { "hare" }, 368 + branch = "dev" 369 + }, -- Hare.vim 370 + { url = "https://git.sr.ht/~sircmpwn/hare.vim", ft = { "hare" } }, -- TCL 371 + { "lewis6991/tree-sitter-tcl", build = "make" }, -- LF 372 + { "ptzz/lf.vim", cmd = { "Lf" }, dependencies = { "voldikss/vim-floaterm" } }, 373 + -- SuperMaven, another AI coding tool 374 + { 375 + "supermaven-inc/supermaven-nvim", 376 + opts = { keymaps = { accept_suggestion = "<C-f>" } }, 377 + lazy = true, 378 + cmd = "SupermavenStart" 379 + }, 380 + { "imsnif/kdl.vim", lazy = true, ft = "kdl" }, 381 + { 382 + "epwalsh/obsidian.nvim", 383 + lazy = true, 384 + ft = "markdown", 385 + dependencies = { "nvim-lua/plenary.nvim" }, 386 + opts = { 387 + workspaces = { 388 + { name = "athenaeum", path = "~/Documents/Athenaeum" }, 389 + -- Mage, the Awakening and other Chronicles of Darkness 390 + { name = "Celestial Grimoire", path = "~/Documents/Celestial Grimoire" } 347 391 } 348 - }) 349 - end, 350 - dependencies = { "nvim-lua/plenary.nvim" } 351 - }, 352 - { "mfussenegger/nvim-dap", lazy = true, ft = { "c", "rust" } }, 353 - { 354 - "saecki/crates.nvim", 355 - tag = "v0.4.0", 356 - dependencies = { "nvim-lua/plenary.nvim" }, 357 - config = function() require("crates").setup() end, 358 - ft = { "rust" } 359 - }, -- RISC-V Assembly syntax highlighting 360 - { "kylelaker/riscv.vim", ft = "riscv" }, -- Hare Stuff 361 - -- Haredoc 362 - { 363 - url = "https://git.sr.ht/~torresjrjr/vim-haredoc", 364 - ft = { "hare" }, 365 - branch = "dev" 366 - }, -- Hare.vim 367 - { url = "https://git.sr.ht/~sircmpwn/hare.vim", ft = { "hare" } }, -- TCL 368 - { "lewis6991/tree-sitter-tcl", build = "make" }, -- LF 369 - { "ptzz/lf.vim", cmd = { "Lf" }, dependencies = { "voldikss/vim-floaterm" } }, 370 - -- SuperMaven, another AI coding tool 371 - { 372 - "supermaven-inc/supermaven-nvim", 373 - opts = { keymaps = { accept_suggestion = "<C-f>" } }, 374 - lazy = true, 375 - cmd = "SupermavenStart" 376 - }, 377 - { "imsnif/kdl.vim", lazy = true, ft = "kdl" }, 378 - { 379 - "epwalsh/obsidian.nvim", 380 - lazy = true, 381 - ft = "markdown", 382 - dependencies = { "nvim-lua/plenary.nvim" }, 383 - opts = { 384 - workspaces = { 385 - { name = "athenaeum", path = "~/Documents/Athenaeum" }, 386 - -- Mage, the Awakening and other Chronicles of Darkness 387 - { name = "Celestial Grimoire", path = "~/Documents/Celestial Grimoire" } 388 392 } 389 - } 390 - }, 391 - }, nil) 393 + }, 394 + } 395 + })