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.

SYNC NVIM

+295 -121
+16 -34
nvim/init.lua
··· 36 36 vim.opt.list = true 37 37 vim.opt.textwidth = 88 38 38 39 - -- No sexp wrapping parens 40 - vim.g.sexp_enable_insert_mode_mappings = 1 41 - 42 39 -- LuaLine Config 43 40 require("lualine").setup({options = {icons_enabled = true, theme = "auto"}}) 44 41 ··· 72 69 end 73 70 vim.api.nvim_create_user_command("ConjureChicken", set_chicken, {}) 74 71 75 - -- Neoformat 76 - vim.g.neoformat_run_all_formatters = 1 77 - vim.g.neoformat_enabled_python = {"black", "docformatter", "isort"} 78 - vim.g.neoformat_python_black = { 79 - exe = "ruff", 80 - stdin = 1, 81 - args = {'format', '-q', '-'} 82 - } 83 - 84 72 -- KEYMAPS 85 - 86 - local keymap = vim.api.nvim_set_keymap 73 + local keymap = vim.keymap.set 87 74 local noremap = {noremap = true} 88 75 local silentnoremap = {noremap = true, silent = true} 89 76 -- Easier breaking from edit modes ··· 136 123 keymap("n", "<Left>", "zh", silentnoremap) 137 124 keymap("n", "<Right>", "zl", silentnoremap) 138 125 126 + -- Telescope 127 + keymap({"n", "i", "v"}, "<C-t>", "<cmd>Telescope<CR>", silentnoremap) 128 + 139 129 -- LSP Documentation viewer 140 130 keymap("n", "K", "<cmd>lua vim.lsp.buf.hover()<CR>", silentnoremap) 141 131 142 132 -- Autoformat! 143 - keymap("n", "<C-n>", "<cmd>Neoformat<cr>", silentnoremap) 133 + vim.api.nvim_create_user_command("Format", function(args) 134 + local range = nil 135 + if args.count ~= -1 then 136 + local end_line = vim.api.nvim_buf_get_lines(0, args.line2 - 1, args.line2, true)[1] 137 + range = { 138 + start = { args.line1, 0 }, 139 + ["end"] = { args.line2, end_line:len() }, 140 + } 141 + end 142 + require("conform").format({ async = true, lsp_format = "fallback", range = range }) 143 + end, { range = true }) 144 + keymap("n", "<C-n>", "<cmd>Format<CR>", silentnoremap) 144 145 145 146 -- Python Specific 146 147 vim.g.python3_host_prog = vim.fn.expand("~/.envs/nvim/bin/python3") 147 148 148 - -- Set up Treesitter 149 - require("nvim-treesitter.configs").setup({ 150 - highlight = {enable = true, disable = {}}, 151 - indent = {enable = true, disable = {}}, 152 - ensure_installed = { 153 - "c", "cpp", "capnp", "cmake", "bash", "dockerfile", "diff", 154 - "devicetree", "dot", "ebnf", "elixir", "erlang", "clojure", "fortran", 155 - "go", "gomod", "gosum", "graphql", "git_config", "git_rebase", 156 - "gitcommit", "gitignore", "gleam", "julia", "fish", "toml", "haskell", 157 - "hare", "http", "html", "ini", "json", "jq", "latex", "llvm", "mermaid", 158 - "make", "meson", "ninja", "yaml", "python", "proto", "racket", "rst", 159 - "scala", "html", "tsx", "rust", "scheme", "fennel", "lua", "markdown", 160 - "markdown_inline", "sql", "thrift", "typescript", "verilog", "vim", 161 - "zig", "uxntal", "kdl" 162 - } 163 - }) 164 - 165 - -- Set up Which Key? 166 - require("which-key").setup({}) 167 149 -- ######################## 168 150 -- # Require other configs # 169 151 -- ########################
+12 -7
nvim/lua/completion.lua
··· 16 16 ['<C-f>'] = cmp.mapping.scroll_docs(4), 17 17 ['<C-Space>'] = cmp.mapping.complete(), 18 18 ['<C-e>'] = cmp.mapping.abort(), 19 - ['<CR>'] = cmp.mapping.confirm({select = true}) -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. 19 + ['<CR>'] = cmp.mapping.confirm({ select = true }) -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. 20 20 }), 21 21 sources = cmp.config.sources({ 22 - {name = 'nvim_lsp'}, {name = 'vsnip'} -- For vsnip users. 23 - }, {{name = 'buffer'}}) 22 + { name = 'lazydev', group_index = 0}, 23 + { name = 'nvim_lsp' }, 24 + { name = 'vsnip' }, -- For vsnip users. 25 + { name = 'supermaven' }, 26 + { name = 'conjure' }, 27 + }, 28 + {{ name = 'buffer' }}) 24 29 }) 25 30 require("cmp_git").setup() 26 31 -- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore). 27 - cmp.setup.cmdline({'/', '?'}, { 32 + cmp.setup.cmdline({ '/', '?' }, { 28 33 mapping = cmp.mapping.preset.cmdline(), 29 - sources = {{name = 'buffer'}} 34 + sources = { { name = 'buffer' } } 30 35 }) 31 36 32 37 -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). 33 38 cmp.setup.cmdline(':', { 34 39 mapping = cmp.mapping.preset.cmdline(), 35 - sources = cmp.config.sources({{name = 'path'}}, {{name = 'cmdline'}}), 36 - matching = {disallow_symbol_nonprefix_matching = false} 40 + sources = cmp.config.sources({ { name = 'path' } }, { { name = 'cmdline' } }), 41 + matching = { disallow_symbol_nonprefix_matching = false } 37 42 })
+15 -2
nvim/lua/lsp.lua
··· 39 39 } 40 40 } 41 41 42 + nvim_lsp.janet_lsp.setup { 43 + cmd = { 44 + "janet", 45 + "/home/noah/repos/janet-lsp/src/main.janet", 46 + "--stdio" 47 + } 48 + } 49 + 42 50 -- LSPs that just use default config 43 51 local simple_lsps = { 44 - "fennel_ls", "nil_ls", "htmx", "bzl", "bufls", "crystalline", "dockerls", 52 + "nil_ls", "htmx", "bzl", "bufls", "crystalline", "dockerls", 45 53 "erlangls", "elixirls", "fortls", "gleam", "gopls", "hls", "jsonls", 46 54 "vimls", "asm_lsp", "ccls", "pyright", -- ruff", idk if this is wrong? 47 55 "ruff_lsp", "clojure_lsp", "guile_ls", ··· 49 57 "kotlin_language_server", "java_language_server", "jsonls", "pest_ls", 50 58 "ocamllsp", "reason_ls", "racket_langserver", "rust_analyzer", 51 59 "scheme_langserver", "sqls", "thriftls", "typst_lsp", "vhdl_ls", "yamlls", 52 - "zls", "tsserver", "eslint", "metals" 60 + "zls", "tsserver", "eslint", "metals", "futhark_lsp", "roc_ls", 53 61 -- disabled because it's broken 54 62 -- "scheme_langserver", 55 63 } ··· 57 65 for _, v in pairs(simple_lsps) do nvim_lsp[v].setup { 58 66 capabilities = capabilities 59 67 } end 68 + 69 + nvim_lsp.fennel_ls.setup({ 70 + capabilities = capabilities, 71 + root_dir = nvim_lsp.util.root_pattern(".git", "fnl") 72 + }) 60 73 61 74 -- Whenever an LSP is attached to a buffer 62 75 local on_attach = function(ev)
+252 -78
nvim/lua/plugins.lua
··· 19 19 "shaunsingh/nord.nvim", "shaunsingh/moonlight.nvim", 20 20 "folke/tokyonight.nvim", "cranberry-clockworks/coal.nvim", 21 21 "hardselius/warlock", 22 - {"catppuccin/nvim", name = "catppuccin", priority = 1000}, { 22 + { "catppuccin/nvim", name = "catppuccin", priority = 1000 }, 23 + { 23 24 "neanias/everforest-nvim", 24 25 version = false, 25 26 lazy = false, 26 27 priority = 500, -- make sure to load this before all the other start plugins 27 28 main = "everforest", 28 - opts = {background = "hard"} 29 - }, {"rebelot/kanagawa.nvim", opts = {compile = true}}, 29 + opts = { background = "hard" } 30 + }, 31 + { "rebelot/kanagawa.nvim", opts = { compile = true } }, 30 32 -- show indents and whitespace characters 31 33 "lukas-reineke/indent-blankline.nvim", -- Completion 32 34 -- Completion 33 35 { 34 36 "hrsh7th/nvim-cmp", 35 37 dependencies = { 36 - "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-buffer", "hrsh7th/cmp-path", 37 - "hrsh7th/cmp-vsnip", "hrsh7th/vim-vsnip", "petertriho/cmp-git", 38 + "hrsh7th/cmp-nvim-lsp", 39 + "hrsh7th/cmp-buffer", 40 + "hrsh7th/cmp-path", 41 + "hrsh7th/cmp-vsnip", 42 + "hrsh7th/vim-vsnip", 43 + "petertriho/cmp-git", 38 44 "hrsh7th/cmp-cmdline" 39 45 } 40 46 }, -- nvim lsp plugins 41 - "neovim/nvim-lspconfig", { 47 + { 48 + "neovim/nvim-lspconfig", 49 + }, 50 + { 42 51 "nvimdev/lspsaga.nvim", 43 52 dependencies = { 44 53 "nvim-tree/nvim-web-devicons", "nvim-treesitter/nvim-treesitter" 45 54 }, 46 - opts = {lightbulb = {enable = false}}, 55 + opts = { lightbulb = { enable = false } }, 47 56 event = "LspAttach" 48 - }, -- Syntax Highlighting from the future 57 + }, 49 58 { 59 + -- Syntax Highlighting from the future 50 60 "nvim-treesitter/nvim-treesitter", 51 - init = function() vim.cmd([[":TSUpdate"]]) end 52 - }, -- Git stuff 61 + --init = function() vim.cmd([[":TSUpdate"]]) end, 62 + main = "nvim-treesitter.configs", 63 + opts = { 64 + ensure_installed = 'all', 65 + ignore_install = { 'norg' }, 66 + sync_intall = true, 67 + highlight = { 68 + enable = true, 69 + }, 70 + indent = { 71 + enable = false, 72 + }, 73 + }, 74 + build = ":TSUpdate", 75 + version = false, 76 + dependencies = { 77 + "nvim-treesitter/nvim-treesitter-textobjects", 78 + }, 79 + }, -- Git stuff 53 80 -- GitGutter, shows inline difs 54 81 "airblade/vim-gitgutter", -- "tpope/vim-fugitive", -- old git command 55 82 { 56 83 "NeogitOrg/neogit", 57 84 dependencies = { 58 - "nvim-lua/plenary.nvim", -- required 85 + "nvim-lua/plenary.nvim", -- required 59 86 "sindrets/diffview.nvim", -- optional - Diff integration 60 87 "nvim-telescope/telescope.nvim" 88 + }, 89 + config = true 90 + }, 91 + -- Auto format tool 92 + { 93 + "stevearc/conform.nvim", 94 + lazy = true, 95 + opt = { 96 + python = { "isort", "black" }, 97 + lua = { "lua-format" }, 98 + clojure = { "cljfmt" }, 99 + rust = { "rustfmt" }, 100 + haskell = { "ormolu", "stylish-haskell" }, 101 + go = { "goimports", "gofmt" }, 102 + java = { "google-java-format" }, 103 + javascript = { "prettier" }, 104 + html = { "prettier" }, 105 + yaml = { "prettier" }, 106 + sh = { "shfmt" }, 107 + c = { "clang-format" }, 61 108 } 62 - }, -- surround with pairs )))))) 63 - -- "tpope/vim-surround", 64 - -- Auto format tool 65 - {"sbdchd/neoformat", lazy = true, cmd = "Neoformat"}, 66 - -- Distraction free writing: GoYo + Limelight 67 - {"junegunn/limelight.vim", lazy = true, ft = "markdown"}, 68 - {"junegunn/goyo.vim", lazy = true, ft = "markdown"}, -- Golang plugins 69 - -- use {"fatih/vim-go", run = ":GoUpdateBinaries", lazy = true, ft = "go"} 109 + }, 110 + { 111 + "hedyhli/outline.nvim", 112 + lazy = true, 113 + cmd = { "Outline", "OutlineOpen" }, 114 + config = true, 115 + keys = { 116 + { "<leader>o", "<cmd>Outline<cr>", desc = "Toggle outline" }, 117 + }, 118 + }, 70 119 { 71 120 "ray-x/go.nvim", 72 121 ft = "go", ··· 78 127 }, 79 128 { 80 129 "nvim-lualine/lualine.nvim", 81 - dependencies = {"nvim-tree/nvim-web-devicons"} 82 - }, "junegunn/fzf.vim", { 130 + dependencies = { "nvim-tree/nvim-web-devicons" } 131 + }, 132 + "junegunn/fzf.vim", 133 + { 83 134 dir = "~/.fzf", 84 135 build = function() vim.fn["fzf#install"](0) end, 85 - dependencies = {"junegunn/fzf.vim"} 86 - }, -- Polyglot 87 - "sheerun/vim-polyglot", -- Telescope, find anything fast 136 + dependencies = { "junegunn/fzf.vim" } 137 + }, 138 + -- Telescope, find anything fast 88 139 "nvim-lua/plenary.nvim", 89 - {"nvim-telescope/telescope.nvim", dependencies = {"nvim-lua/plenary.nvim"}}, 90 - "nvim-telescope/telescope-symbols.nvim", 91 - {"folke/trouble.nvim", dependencies = "nvim-tree/nvim-web-devicons"}, 140 + { 141 + "nvim-telescope/telescope.nvim", 142 + dependencies = { 143 + "nvim-lua/plenary.nvim", 144 + "nvim-telescope/telescope-symbols.nvim", 145 + } 146 + }, 147 + { 148 + "folke/trouble.nvim", 149 + dependencies = "nvim-tree/nvim-web-devicons" 150 + }, 92 151 -- Which key is bound? 93 - "folke/which-key.nvim", -- literally the best plugin ever 152 + -- literally the best plugin ever 153 + { 154 + "folke/which-key.nvim", 155 + init = function() 156 + vim.o.timeout = true 157 + vim.o.timeoutlen = 300 158 + end, 159 + config = true 160 + }, 94 161 -- Developing my neovim 95 - { "folke/neodev.nvim", opts = {}}, 162 + { 163 + "folke/lazydev.nvim", 164 + config = true, 165 + ft = "lua", 166 + opts = { 167 + library = { 168 + path = "luvit-meta/library", words = { "vim%.uv" }, 169 + }, 170 + }, 171 + dependencies = { 172 + "Bilal2453/luvit-meta" 173 + }, 174 + }, 96 175 -- Lithsps 97 - {"guns/vim-sexp", ft = {"hy", "scheme", "clojure"}}, -- )))))) 98 - {"hiphish/rainbow-delimiters.nvim"}, 99 - -- {"gpanders/nvim-parinfer", ft = {"scheme", "lisp", "fennel", "clojure", "lua"}}, 100 - -- { 101 - -- "eraserhd/parinfer-rust", 102 - -- build = "RUSTFLAGS='-C target-feature=+crt-static' cargo build --release", 103 - -- ft = {"scheme", "lisp", "fennel", "clojure", "lua"}, 104 - -- }, 176 + --{ "m4xshen/autoclose.nvim" }, 177 + { 178 + "windwp/nvim-autopairs", 179 + event = "InsertEnter", 180 + config = function() 181 + local pairs = require("nvim-autopairs") 182 + 183 + pairs.setup({ 184 + check_ts = true, 185 + enable_check_bracket_line = false, 186 + }) 187 + 188 + pairs.get_rules("`")[1].not_filetypes = { "clojure", "scheme", "scm", "janet" } 189 + pairs.get_rules("'")[1].not_filetypes = { "clojure", "scheme", "scm", "janet", "rust" } 190 + end, 191 + }, 192 + { 193 + "gpanders/nvim-parinfer", 194 + ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" }, 195 + config = function() 196 + vim.g.parinfer_comment_chars = { ";", "#" } 197 + vim.g.parinfer_force_balance = true 198 + end 199 + }, 200 + -- )))))) 201 + { 202 + "julienvincent/nvim-paredit", 203 + config = function() 204 + local paredit = require('nvim-paredit') 205 + paredit.setup({ 206 + indent = { 207 + enabled = true, 208 + }, 209 + --filetypes = {"clojure", "fennel", "janet"}, 210 + keys = { 211 + ["<localleader>w"] = { 212 + function() 213 + -- place cursor and set mode to `insert` 214 + paredit.cursor.place_cursor( 215 + -- wrap element under cursor with `( ` and `)` 216 + paredit.wrap.wrap_element_under_cursor("( ", ")"), 217 + -- cursor placement opts 218 + { placement = "inner_start", mode = "insert" } 219 + ) 220 + end, 221 + "Wrap element insert head", 222 + }, 223 + 224 + ["<localleader>W"] = { 225 + function() 226 + paredit.cursor.place_cursor( 227 + paredit.wrap.wrap_element_under_cursor("(", ")"), 228 + { placement = "inner_end", mode = "insert" } 229 + ) 230 + end, 231 + "Wrap element insert tail", 232 + }, 233 + -- same as above but for enclosing form 234 + ["<localleader>i"] = { 235 + function() 236 + paredit.cursor.place_cursor( 237 + paredit.wrap.wrap_enclosing_form_under_cursor("( ", ")"), 238 + { placement = "inner_start", mode = "insert" } 239 + ) 240 + end, 241 + "Wrap form insert head", 242 + }, 243 + ["<localleader>I"] = { 244 + function() 245 + paredit.cursor.place_cursor( 246 + paredit.wrap.wrap_enclosing_form_under_cursor("(", ")"), 247 + { placement = "inner_end", mode = "insert" } 248 + ) 249 + end, 250 + "Wrap form insert tail", 251 + }, 252 + ["<localleader>["] = { 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 + }, 260 + ["<localleader>{"] = { 261 + function() 262 + paredit.cursor.place_cursor( 263 + paredit.wrap.wrap_enclosing_form_under_cursor("{", "}"), 264 + { placement = "inner_end", mode = "insert" } 265 + ) 266 + end, 267 + }, 268 + }, 269 + }) 270 + end, 271 + ft = { "hy", "scheme", "scm", "clojure", "fennel", "janet", "lisp", "python", "lua" } 272 + }, 273 + { 274 + "chiefnoah/nvim-paredit-janet", 275 + dependencies = { "julienvincent/nvim-paredit" }, 276 + lazy = true, 277 + ft = { "janet" }, 278 + config = function() 279 + require("nvim-paredit-janet").setup() 280 + end, 281 + }, 282 + { 283 + "julienvincent/nvim-paredit-fennel", 284 + dependencies = { "julienvincent/nvim-paredit" }, 285 + ft = { "fennel" }, 286 + config = true, 287 + }, 288 + { "hiphish/rainbow-delimiters.nvim" }, 289 + --{ "gpanders/nvim-parinfer", ft = { "scheme", "scm", "lisp", "fennel", "clojure", "lua", "janet" } }, 105 290 -- Conjure, lisp is magical 106 291 { 107 292 "Olical/conjure", 108 - ft = {"scheme", "lisp", "fennel", "clojure", "lua"}, 293 + ft = { "scheme", "scm", "lisp", "fennel", "clojure", "lua", "janet" }, 109 294 config = function() 110 295 vim.g["conjure#client#scheme#stdio#command"] = "gxi" 111 296 vim.g["conjure#client#scheme#stdio#prompt_pattern"] = "%d*> $?" 112 - end 113 - }, {"p1xelHer0/gerbil.nvim", ft = "scheme"}, -- Fennel, Luasthp 114 - {"jaawerth/fennel.vim", lazy = true, ft = "fennel"}, 115 - {"rktjmp/hotpot.nvim", lazy = true, ft = "fennel"}, 116 - {"Olical/nfnl", ft = "fennel"}, -- Rust stuff 297 + end, 298 + dependencies = { "PaterJason/cmp-conjure" } 299 + }, 300 + { "PaterJason/cmp-conjure", lazy = true }, 301 + { "p1xelHer0/gerbil.nvim", ft = "scheme" }, -- Fennel, Luasthp 302 + { "jaawerth/fennel.vim", lazy = true, ft = "fennel" }, 303 + { "rktjmp/hotpot.nvim", lazy = true, ft = "fennel" }, 304 + { "Olical/nfnl", ft = "fennel" }, -- Rust stuff 117 305 { 118 306 "simrat39/rust-tools.nvim", 119 - ft = {"rust"}, 307 + ft = { "rust" }, 120 308 config = function() 121 309 local rt = require("rust-tools") 122 310 rt.setup({ ··· 124 312 on_attach = function(_, bufnr) 125 313 -- Hover actions 126 314 vim.keymap.set("n", "<C-space>", 127 - rt.hover_actions.hover_actions, 128 - {buffer = bufnr}) 315 + rt.hover_actions.hover_actions, 316 + { buffer = bufnr }) 129 317 -- Code action groups 130 318 vim.keymap.set("n", "<Leader>a", 131 - rt.code_action_group.code_action_group, 132 - {buffer = bufnr}) 319 + rt.code_action_group.code_action_group, 320 + { buffer = bufnr }) 133 321 end 134 322 } 135 323 }) 136 324 end, 137 - dependencies = {"nvim-lua/plenary.nvim"} 138 - }, {"mfussenegger/nvim-dap", lazy = true, ft = {"c", "rust"}}, { 325 + dependencies = { "nvim-lua/plenary.nvim" } 326 + }, 327 + { "mfussenegger/nvim-dap", lazy = true, ft = { "c", "rust" } }, 328 + { 139 329 "saecki/crates.nvim", 140 330 tag = "v0.4.0", 141 - dependencies = {"nvim-lua/plenary.nvim"}, 331 + dependencies = { "nvim-lua/plenary.nvim" }, 142 332 config = function() require("crates").setup() end, 143 - ft = {"rust"} 144 - }, -- RISC-V Assembly syntax highlighting 145 - {"kylelaker/riscv.vim", ft = "riscv"}, -- Hare Stuff 333 + ft = { "rust" } 334 + }, -- RISC-V Assembly syntax highlighting 335 + { "kylelaker/riscv.vim", ft = "riscv" }, -- Hare Stuff 146 336 -- Haredoc 147 337 { 148 338 url = "https://git.sr.ht/~torresjrjr/vim-haredoc", 149 - ft = {"hare"}, 339 + ft = { "hare" }, 150 340 branch = "dev" 151 - }, -- Hare.vim 152 - {url = "https://git.sr.ht/~sircmpwn/hare.vim", ft = {"hare"}}, -- TCL 153 - {"lewis6991/tree-sitter-tcl", build = "make"}, -- LF 154 - {"ptzz/lf.vim", cmd = {"Lf"}, dependencies = {"voldikss/vim-floaterm"}}, 155 - -- Copilot 156 - -- use {"github/copilot.vim", lazy = true, cmd = {"Copilot"}} 341 + }, -- Hare.vim 342 + { url = "https://git.sr.ht/~sircmpwn/hare.vim", ft = { "hare" } }, -- TCL 343 + { "lewis6991/tree-sitter-tcl", build = "make" }, -- LF 344 + { "ptzz/lf.vim", cmd = { "Lf" }, dependencies = { "voldikss/vim-floaterm" } }, 157 345 -- SuperMaven, another AI coding tool 158 346 { 159 347 "supermaven-inc/supermaven-nvim", 160 - opts = {keymaps = {accept_suggestion = "<C-f>"}}, 348 + opts = { keymaps = { accept_suggestion = "<C-f>" } }, 161 349 lazy = true, 162 - cmd = "SupermavenActivate" 163 - }, -- Mason 164 - -- { 165 - -- "williamboman/mason.nvim", 166 - -- init = function() 167 - -- vim.cmd([[":MasonUpdate"]]) 168 - -- end, 169 - -- dependencies = { 170 - -- "williamboman/mason-lspconfig.nvim", 171 - -- "mfussenegger/nvim-dap", 172 - -- "jose-elias-alvarez/null-ls.nvim" 173 - -- }, 174 - -- config = function() 175 - -- require("mason").setup() 176 - -- end 177 - -- }, 350 + cmd = "SupermavenStart" 351 + }, 178 352 "imsnif/kdl.vim" 179 353 }, nil)