diff --git a/ftdetect/rasi.lua b/ftdetect/rasi.lua new file mode 100644 index 0000000..d7b8199 --- /dev/null +++ b/ftdetect/rasi.lua @@ -0,0 +1,5 @@ +vim.filetype.add({ + extension = { + rasi = "rasi", + }, +}) diff --git a/lazy-lock.json b/lazy-lock.json index 36982ea..c5ea1d7 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -3,38 +3,31 @@ "FixCursorHold.nvim": { "branch": "master", "commit": "1900f89dc17c603eec29960f57c00bd9ae696495" }, "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, "bigfile.nvim": { "branch": "main", "commit": "33eb067e3d7029ac77e081cfe7c45361887a311a" }, - "catppuccin.nvim": { "branch": "main", "commit": "faf15ab0201b564b6368ffa47b56feefc92ce3f4" }, + "blink-ripgrep.nvim": { "branch": "main", "commit": "8a47d404a359c70c796cb0979ddde4c788fd44e5" }, + "blink.cmp": { "branch": "main", "commit": "5f442681df24fe705d1ee7ce5b4d435aa4b4dee4" }, + "blink.compat": { "branch": "main", "commit": "78f3f7187ff4a1444e952548c556d936da8f72fc" }, + "catppuccin.nvim": { "branch": "main", "commit": "5d9582dbbe37e465f7f93ca6e3dd60cd20eea44f" }, "ccc.nvim": { "branch": "main", "commit": "7c639042583c7bdc7ce2e37e5a0e0aa6d0659c6a" }, "cellular-automaton.nvim": { "branch": "main", "commit": "11aea08aa084f9d523b0142c2cd9441b8ede09ed" }, "cheatsheet.nvim": { "branch": "master", "commit": "8ee4d76b6f902c4017dc28eddd79d925dfc55066" }, "cloak.nvim": { "branch": "main", "commit": "648aca6d33ec011dc3166e7af3b38820d01a71e4" }, - "cmake-tools.nvim": { "branch": "master", "commit": "53bc5261e1e0b0d28be465d2b2b07a6f0646e1eb" }, - "cmp-async-path": { "branch": "main", "commit": "9d581eec5acf812316913565c135b0d1ee2c9a71" }, - "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-calc": { "branch": "main", "commit": "5947b412da67306c5b68698a02a846760059be2e" }, - "cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, + "cmake-tools.nvim": { "branch": "master", "commit": "4e134ed5532e5fc3c0331d1b38b7acaa4bb31894" }, "cmp-conventionalcommits": { "branch": "master", "commit": "a4dfacf0601130b7f8afa7c948d735c27802fb7f" }, "cmp-dbee": { "branch": "main", "commit": "1650f67b9bf43c029fc37570665ca895a33cdf5a" }, - "cmp-dotenv": { "branch": "main", "commit": "4dd53aab60982f1f75848aec5e6214986263325e" }, "cmp-git": { "branch": "main", "commit": "ec049036e354ed8ed0215f2427112882e1ea7051" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, - "cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, - "cmp-pypi": { "branch": "main", "commit": "a73411e5935caa23c6feab34980bb435deadd482" }, - "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, "code-playground.nvim": { "branch": "main", "commit": "7b257911268ecf7ee11d6fe806193bda2c889e86" }, "codeium.nvim": { "branch": "main", "commit": "d3b88eb3aa1de6da33d325c196b8a41da2bcc825" }, - "conform.nvim": { "branch": "master", "commit": "f4e8837878fc5712d053ba3091a73d27d96a09e2" }, - "copilot-cmp": { "branch": "master", "commit": "15fc12af3d0109fa76b60b5cffa1373697e261d1" }, + "conform.nvim": { "branch": "master", "commit": "339b3e4519ec49312d34fcfa275aa15bfaa67025" }, "crates.nvim": { "branch": "main", "commit": "1c924d5a9ea3496c4e1a02d0d51388ba809f8468" }, "cratesearch.nvim": { "branch": "master", "commit": "9d09625d017f6b2e116503f935bc6862961313fa" }, - "curl.nvim": { "branch": "main", "commit": "6b64f67cf033b12b4e8249afe03def55ffc9b6cb" }, + "curl.nvim": { "branch": "main", "commit": "fe07677a2a24bc8793b90fa2c0da626ea6c9e47d" }, "darkplus.nvim": { "branch": "master", "commit": "c7fff5ce62406121fc6c9e4746f118b2b2499c4c" }, "darkvoid.nvim": { "branch": "master", "commit": "45be993a5617e05811b6b293c05e6aded7003cc9" }, "decisive.nvim": { "branch": "main", "commit": "a7251adebccbc9c899cff39a524b20d06e2b78b5" }, "demicolon.nvim": { "branch": "main", "commit": "ee6e3008c7e70abe3f58103dde49145699700fc5" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, "dracula.nvim": { "branch": "main", "commit": "515acae4fd294fcefa5b15237a333c2606e958d1" }, - "flow.nvim": { "branch": "main", "commit": "9005b613fc31d8334db2f1687c594f0b7e29823d" }, + "flow.nvim": { "branch": "main", "commit": "e1791cf20969e07e52e44d1f3e40bcfda2521e6a" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "garbage-day.nvim": { "branch": "main", "commit": "750ef08ae6031ee3683014c5349144340c08ead6" }, "git-worktree.nvim": { "branch": "master", "commit": "f247308e68dab9f1133759b05d944569ad054546" }, @@ -52,11 +45,12 @@ "in-and-out.nvim": { "branch": "master", "commit": "ab24cafadc3418dffb0c7e9b0621cff60b9ac551" }, "indent-blankline.nvim": { "branch": "master", "commit": "259357fa4097e232730341fa60988087d189193a" }, "inlay-hint.nvim": { "branch": "main", "commit": "eb5f0579537db271dfedd7f38460cdacb238176f" }, - "inlay-hints.nvim": { "branch": "master", "commit": "af84dee42cd118af6d592b06c1c0e45d6432a6c0" }, + "inlay-hints.nvim": { "branch": "master", "commit": "3259b54f3b954b4d8260f3ee49ceabe978ea5636" }, "jq.nvim": { "branch": "main", "commit": "3a736044a9ff4d2b39919c43e66c8148ce85b6a5" }, - "kanagawa.nvim": { "branch": "master", "commit": "ad3dddecd606746374ba4807324a08331dfca23c" }, + "kanagawa.nvim": { "branch": "master", "commit": "2d54b56242a6f03c74864d118d61afa1acb5918e" }, "lackluster.nvim": { "branch": "main", "commit": "6d206a3af7dd2e8389eecebab858e7d97813fc0c" }, "lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" }, + "lazydev.nvim": { "branch": "main", "commit": "8620f82ee3f59ff2187647167b6b47387a13a018" }, "lua-utils.nvim": { "branch": "main", "commit": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd" }, "lualine-lsp-progress": { "branch": "master", "commit": "56842d097245a08d77912edf5f2a69ba29f275d7" }, "lualine-lsp-status": { "branch": "main", "commit": "1218d51d4d0b8881a598a77e5d9f334ac31c6cc7" }, @@ -69,9 +63,9 @@ "mason-nvim-dap.nvim": { "branch": "main", "commit": "8b9363d83b5d779813cdd2819b8308651cec2a09" }, "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "melange.nvim": { "branch": "master", "commit": "9252c78c7bffd3126b0c9e47e51e0b5211acffb1" }, - "neoconf.nvim": { "branch": "main", "commit": "a9562ad062a1611a10cc81815b220a4450fb2cad" }, + "mini.icons": { "branch": "main", "commit": "44c0160526f7ae17ca8e8eab9ab235d047fcf7a6" }, + "neoconf.nvim": { "branch": "main", "commit": "427d64540ef2a3f4d758106a49a6aadfe2bd50b2" }, "neocord": { "branch": "main", "commit": "4d55d8dab2d5f2f272192add7a2c21982039c699" }, - "neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" }, "neogen": { "branch": "main", "commit": "dc50715c009f89b8111197fd2f282f6042daa7ea" }, "neogit": { "branch": "master", "commit": "43fa47fb61773b0d90a78ebc2521ea8faaeebd86" }, "neorg": { "branch": "main", "commit": "81ee90cb2d72ac43bfadb7dd276646f34c8f85be" }, @@ -86,27 +80,26 @@ "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nvim-autopairs": { "branch": "master", "commit": "b464658e9b880f463b9f7e6ccddd93fb0013f559" }, "nvim-cmp": { "branch": "main", "commit": "b555203ce4bd7ff6192e759af3362f9d217e8c89" }, - "nvim-cmp-lsp-rs": { "branch": "main", "commit": "57f29333e6d2b655d5b0edb999b0006d49fde0ca" }, - "nvim-colorizer.lua": { "branch": "master", "commit": "4acf88d31b3a7a1a7f31e9c30bf2b23c6313abdb" }, - "nvim-dap": { "branch": "master", "commit": "04ce47fc5a6ef2b717f33c320fc003091cebac40" }, + "nvim-colorizer.lua": { "branch": "master", "commit": "b8ed35bf2c5c350ee84699adb2f797a453d60c5f" }, + "nvim-dap": { "branch": "master", "commit": "665d3569a86395fe0dab85efbdb26d7d2ee57e49" }, "nvim-dap-python": { "branch": "master", "commit": "34282820bb713b9a5fdb120ae8dd85c2b3f49b51" }, "nvim-dap-ui": { "branch": "master", "commit": "ffa89839f97bad360e78428d5c740fdad9a0ff02" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "76d80c3d171224315b61c006502a1e30c213a9ab" }, "nvim-dbee": { "branch": "master", "commit": "21d2cc0844a16262bb6ea93ab3d0a0f20bd87853" }, "nvim-lint": { "branch": "master", "commit": "1fea92f1d9908eaa5eb8bafe08b4293d7aadaa55" }, - "nvim-lspconfig": { "branch": "master", "commit": "040001d85e9190a904d0e35ef5774633e14d8475" }, + "nvim-lspconfig": { "branch": "master", "commit": "c580f34bc5fdca8aaf737a9ab8a5d775cb940e57" }, "nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "nvim-silicon": { "branch": "main", "commit": "9fe6001dc8cad4d9c53bcfc8649e3dc76ffa169c" }, "nvim-surround": { "branch": "main", "commit": "9f0cb495f25bff32c936062d85046fbda0c43517" }, - "nvim-treesitter": { "branch": "master", "commit": "2405274937718d520a40e03df92030dca6b4f0fd" }, - "nvim-treesitter-context": { "branch": "master", "commit": "8fd989b6b457a448606b4a2e51f9161700f609a7" }, + "nvim-treesitter": { "branch": "master", "commit": "50947387c20ec3fb8c30b8c1c1a1c39f68deb970" }, + "nvim-treesitter-context": { "branch": "master", "commit": "2bcf700b59bc92850ca83a1c02e86ba832e0fae0" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" }, "nvim-ts-autotag": { "branch": "main", "commit": "1cca23c9da708047922d3895a71032bc0449c52d" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" }, "nvim-ufo": { "branch": "main", "commit": "270ca542dae992ffe40274718c63645217ebc8bf" }, - "nvim-web-devicons": { "branch": "master", "commit": "0eb18da56e2ba6ba24de7130a12bcc4e31ad11cb" }, + "nvim-web-devicons": { "branch": "master", "commit": "15c7d0f616ebf88960ce5c4221828f62789d36d9" }, "ohne-accidents": { "branch": "main", "commit": "832b942a928e74b537a2526eacc6285e26af9589" }, - "oil.nvim": { "branch": "master", "commit": "dba037598843973b8c54bc5ce0318db4a0da439d" }, + "oil.nvim": { "branch": "master", "commit": "ba858b662599eab8ef1cba9ab745afded99cb180" }, "onedark.nvim": { "branch": "master", "commit": "67a74c275d1116d575ab25485d1bfa6b2a9c38a6" }, "otter.nvim": { "branch": "main", "commit": "7edd39c920f7a28ac711a7c658a7cfdfb804bc82" }, "pathlib.nvim": { "branch": "main", "commit": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1" }, @@ -127,17 +120,18 @@ "tagbar": { "branch": "master", "commit": "5e090da54bf999c657608b6c8ec841ef968d923d" }, "tailwind-fold.nvim": { "branch": "main", "commit": "30b8c04eec28628fbe554fb4f3a26984c4455176" }, "telescope-bibtex.nvim": { "branch": "master", "commit": "289a6f86ebec06e8ae1590533b732b9981d84900" }, - "telescope-frecency.nvim": { "branch": "master", "commit": "a358728043a429d69ecfb317937df66f7cec40d5" }, + "telescope-frecency.nvim": { "branch": "master", "commit": "77829eda3451ef81200b9c61696af0d64372ea85" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, "telescope-git-diffs.nvim": { "branch": "main", "commit": "b8e5c9e13b9e27f8ccfd14430d04739b9996ae76" }, "telescope-heading.nvim": { "branch": "main", "commit": "e85c0f69cb64048f56e76548dcb2f10277576df9" }, - "telescope-import.nvim": { "branch": "main", "commit": "6ccc0ad05b2906e04c5ba415a7f973229efc6dbc" }, + "telescope-import.nvim": { "branch": "main", "commit": "6fd69447679a99b463025e7f2f787e8b185dd740" }, "telescope-lazy.nvim": { "branch": "main", "commit": "810f7859c98e88b9c4e45de16cb5317207c9b3e8" }, "telescope-luasnip.nvim": { "branch": "master", "commit": "07a2a2936a7557404c782dba021ac0a03165b343" }, "telescope-media-files.nvim": { "branch": "master", "commit": "0826c7a730bc4d36068f7c85cf4c5b3fd9fb570a" }, "telescope-software-licenses.nvim": { "branch": "master", "commit": "fb5fc33b6afc994756e2f372423c365bf66f2256" }, "telescope-symbols.nvim": { "branch": "master", "commit": "a6d0127a53d39b9fc2af75bd169d288166118aec" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, + "tmux-compile.nvim": { "branch": "main", "commit": "7513d0c8780d1c92afa79a4f8370adeb7aba56cb" }, "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, "tokyonight.nvim": { "branch": "main", "commit": "45d22cf0e1b93476d3b6d362d720412b3d34465c" }, "tree-sitter-bruno": { "branch": "main", "commit": "5f35d5970be9e583eabdd1c22911953180729f84" }, diff --git a/lua/plugins/blink.lua b/lua/plugins/blink.lua new file mode 100644 index 0000000..d863757 --- /dev/null +++ b/lua/plugins/blink.lua @@ -0,0 +1,140 @@ +return { + { + + "saghen/blink.cmp", + dependencies = { + "folke/lazydev.nvim", + "echasnovski/mini.icons", + "L3MON4D3/LuaSnip", + "Saecki/crates.nvim", + "davidsierradz/cmp-conventionalcommits", + "petertriho/cmp-git", -- TODO: make this work + "mikavilpas/blink-ripgrep.nvim", + { + "MattiasMTS/cmp-dbee", + dependencies = { + { "kndndrj/nvim-dbee" }, + }, + ft = { "sql", "mysql", "plsql" }, + opts = {}, + }, + }, + version = "*", + -- build = "cargo build --release", -- build from source + + opts = { + -- 'default' for mappings similar to built-in completion + -- 'super-tab' for mappings similar to vscode (tab to accept, arrow keys to navigate) + -- 'enter' for mappings similar to 'super-tab' but with 'enter' to accept + -- See the full "keymap" documentation for information on defining your own keymap. + keymap = { + preset = "default", + [""] = { "hide", "show", "fallback" }, + [""] = { "select_and_accept", "fallback" }, + [""] = { "scroll_documentation_up", "fallback" }, + [""] = { "scroll_documentation_down", "fallback" }, + [""] = { + function() + require("blink-cmp").show({ sources = { "ripgrep" } }) + end, + }, + [""] = {}, + [""] = {}, + }, + + appearance = { + use_nvim_cmp_as_default = true, + nerd_font_variant = "mono", + }, + + -- Default list of enabled providers defined so that you can extend it + -- elsewhere in your config, without redefining it, due to `opts_extend` + sources = { + default = { "lazydev", "crates", "lsp", "path", "luasnip", "buffer", "dbee" }, + providers = { + lazydev = { + name = "LazyDev", + module = "lazydev.integrations.blink", + score_offset = 100, + }, + crates = { + name = "crates", + module = "blink.compat.source", + score_offset = 10, + }, + git = { + name = "git", + module = "blink.compat.source", + score_offset = 10, + }, + dbee = { + name = "cmp-dbee", + module = "blink.compat.source", + score_offset = 50, + }, + ripgrep = { + module = "blink-ripgrep", + name = "Ripgrep", + opts = { + prefix_min_len = 3, + context_size = 5, + max_filesize = "1M", + project_root_marker = { ".git", "package.json", ".root" }, + search_casing = "--smart-case", + additional_rg_options = {}, + fallback_to_regex_highlighting = true, + }, + }, + }, + }, + completion = { + documentation = { window = { border = "single" }, auto_show = true }, + ghost_text = { enabled = true }, + menu = { + border = "single", + auto_show = function(ctx) + return ctx.mode ~= "cmdline" + end, + draw = { + components = { + kind_icon = { + ellipsis = false, + text = function(ctx) + local kind_icon, _, _ = require("mini.icons").get("lsp", ctx.kind) + return kind_icon + end, + -- Optionally, you may also use the highlights from mini.icons + highlight = function(ctx) + local _, hl, _ = require("mini.icons").get("lsp", ctx.kind) + return hl + end, + }, + }, + }, + }, + }, + signature = { enabled = true, window = { border = "single" } }, + snippets = { + expand = function(snippet) + require("luasnip").lsp_expand(snippet) + end, + active = function(filter) + if filter and filter.direction then + return require("luasnip").jumpable(filter.direction) + end + return require("luasnip").in_snippet() + end, + jump = function(direction) + require("luasnip").jump(direction) + end, + }, + }, + opts_extend = { "sources.default" }, + }, + { + "saghen/blink.compat", + version = "*", + lazy = true, + opts = {}, + }, +} diff --git a/lua/plugins/cmp-git.lua b/lua/plugins/cmp-git.lua index 9f4a104..83f830d 100644 --- a/lua/plugins/cmp-git.lua +++ b/lua/plugins/cmp-git.lua @@ -7,7 +7,7 @@ return { require("cmp_git").setup({ -- defaults - filetypes = { "gitcommit", "octo", "NeogitCommitMessage" }, + filetypes = { "gitcommit", "octo" }, remotes = { "upstream", "origin" }, -- in order of most to least prioritized enableRemoteUrlRewrites = false, -- enable git url rewrites, see https://git-scm.com/docs/git-config#Documentation/git-config.txt-urlltbasegtinsteadOf git = { @@ -41,7 +41,9 @@ return { }, }, gitlab = { - hosts = {}, -- list of private instances of gitlab + hosts = { + "git.modulation.lv", + }, -- list of private instances of gitlab issues = { limit = 100, state = "opened", -- opened, closed, all diff --git a/lua/plugins/cmp.lua b/lua/plugins/cmp.lua deleted file mode 100644 index bce9db7..0000000 --- a/lua/plugins/cmp.lua +++ /dev/null @@ -1,164 +0,0 @@ -return { - "hrsh7th/nvim-cmp", - event = { "InsertEnter", "CmdlineEnter" }, - dependencies = { - "hrsh7th/cmp-buffer", -- buffer completions - "hrsh7th/cmp-cmdline", - "FelipeLema/cmp-async-path", -- path completions - "hrsh7th/cmp-nvim-lua", - "hrsh7th/cmp-nvim-lsp", - { "Saecki/crates.nvim", event = { "BufRead Cargo.toml" } }, - { - "vrslev/cmp-pypi", - dependencies = { "nvim-lua/plenary.nvim" }, - event = { "BufRead pyproject.toml" }, - }, - "SergioRibera/cmp-dotenv", - "L3MON4D3/LuaSnip", - "saadparwaiz1/cmp_luasnip", - "hrsh7th/cmp-calc", - "Exafunction/codeium.nvim", - "zbirenbaum/copilot-cmp", - "petertriho/cmp-git", - "davidsierradz/cmp-conventionalcommits", - "supermaven-inc/supermaven-nvim", - "zjp-CN/nvim-cmp-lsp-rs", - { - "MattiasMTS/cmp-dbee", - dependencies = { - { "kndndrj/nvim-dbee" }, - }, - ft = { "sql", "mysql", "plsql" }, - opts = {}, - }, - }, - opts = function(_, opts) - local cmp = require("cmp") - local luasnip = require("luasnip") - local cmp_lsp_rs = require("cmp_lsp_rs") - local comparators = cmp_lsp_rs.comparators - local compare = require("cmp").config.compare - local kind_icons = { - Text = "󰉿", - Method = "󰆧", - Function = "󰊕", - Constructor = "", - Field = "󰜢", - Variable = "󰀫", - Class = "󰠱", - Interface = "", - Module = "", - Property = "󰜢", - Unit = "󰑭", - Value = "󰎠", - Enum = "", - Keyword = "󰌋", - Snippet = "", - Color = "󰏘", - File = "󰈙", - Reference = "󰈇", - Folder = "󰉋", - EnumMember = "", - Constant = "󰏿", - Struct = "󰙅", - Event = "", - Operator = "󰆕", - TypeParameter = "", - Copilot = "", - Codeium = "", - Supermaven = "", - } - opts = { - mapping = { - [""] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }), - [""] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }), - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.complete(), - [""] = cmp.mapping({ - i = cmp.mapping.abort(), - c = cmp.mapping.close(), - }), - -- Accept currently selected item. If none selected, `select` first item. - -- Set `select` to `false` to only confirm explicitly selected items. - [""] = cmp.mapping.confirm({ select = true }), - }, - sources = { - { name = "nvim_lua" }, - { name = "nvim_lsp" }, - { name = "crates" }, - { name = "async_path" }, - { name = "cmp-dbee" }, - { name = "buffer", keyword_length = 4 }, - { name = "luasnip" }, - { name = "neorg" }, - { name = "pypi" }, - { name = "dotenv" }, - { name = "calc" }, - { name = "git" }, - { name = "conventionalcommits" }, - { name = "supermaven" }, - -- { name = "copilot" }, - -- { name = "codeium" }, - }, - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - formatting = { - fields = { "abbr", "kind", "menu" }, - format = function(entry, vim_item) - vim_item.kind = kind_icons[vim_item.kind] - vim_item.menu = ({ - git = "[git]", - conventionalcommits = "[CC]", - calc = "[calc]", - nvim_lsp = "[LSP]", - nvim_lua = "[lua]", - async_path = "[path]", - codeium = "[codeium]", - copilot = "[copilot]", - luasnip = "[snip]", - neorg = "[neorg]", - crates = "[crates]", - pypi = "[pypi]", - dotenv = "[env]", - buffer = "[buf]", - supermaven = "[AI]", - ["cmp-dbee"] = "[DB]", - })[entry.source.name] - return vim_item - end, - expandable_indicator = true, - }, - experimental = { - ghost_text = true, - }, - window = { - completion = cmp.config.window.bordered(), - documentation = cmp.config.window.bordered(), - }, - confirm_opts = { - behavior = cmp.ConfirmBehavior.Replace, - select = false, - }, - sorting = { - comparators = { - compare.exact, - compare.score, - -- comparators.inherent_import_inscope, - comparators.inscope_inherent_import, - comparators.sort_by_label_but_underscore_last, - }, - }, - } - for _, source in ipairs(opts.sources) do - cmp_lsp_rs.filter_out.entry_filter(source) - end - return opts - end, - config = function(_, opts) - require("cmp").setup(opts) - end, -} diff --git a/lua/plugins/colorscheme.lua b/lua/plugins/colorscheme.lua index b4d4aae..8cfc154 100644 --- a/lua/plugins/colorscheme.lua +++ b/lua/plugins/colorscheme.lua @@ -1,7 +1,7 @@ return { { "folke/tokyonight.nvim", - --[[ lazy = false, + lazy = false, priority = 1000, opts = { style = "night", @@ -15,8 +15,8 @@ return { }, config = function(_, opts) require("tokyonight").setup(opts) - vim.cmd.colorscheme("tokyonight") - end, ]] + -- vim.cmd.colorscheme("tokyonight") + end, }, { "lunarvim/darkplus.nvim" }, { "catppuccin/nvim", name = "catppuccin.nvim" }, diff --git a/lua/plugins/crates.lua b/lua/plugins/crates.lua index fe6f9ca..68d3a6c 100644 --- a/lua/plugins/crates.lua +++ b/lua/plugins/crates.lua @@ -13,6 +13,11 @@ return { }, }, opts = { + completion = { + cmp = { + enabled = true, + }, + }, smart_insert = true, insert_closing_quote = true, autoload = true, diff --git a/lua/plugins/dap.lua b/lua/plugins/dap.lua index d8cec93..a02f50a 100644 --- a/lua/plugins/dap.lua +++ b/lua/plugins/dap.lua @@ -5,7 +5,6 @@ return { "williamboman/mason.nvim", "rcarriga/nvim-dap-ui", "mfussenegger/nvim-dap", - -- { "simrat39/rust-tools.nvim", ft = "rust" }, "nvim-neotest/nvim-nio", { "mfussenegger/nvim-dap-python", ft = "python" }, "theHamsta/nvim-dap-virtual-text", diff --git a/lua/plugins/dbee.lua b/lua/plugins/dbee.lua index ab80184..3c72006 100644 --- a/lua/plugins/dbee.lua +++ b/lua/plugins/dbee.lua @@ -5,17 +5,13 @@ return { }, keys = { { - "od", - function() - require("dbee").toggle() - end, + require("dbee").toggle, desc = "Toggle Dbee", }, }, - cmd = "Dbee", + cmd = { "Dbee" }, build = function() - -- go install github.com/kndndrj/nvim-dbee/dbee@latest require("dbee").install("go") end, opts = { diff --git a/lua/plugins/garbage_day.lua b/lua/plugins/garbage_day.lua deleted file mode 100644 index ebdb1f1..0000000 --- a/lua/plugins/garbage_day.lua +++ /dev/null @@ -1,11 +0,0 @@ -return { - "zeioth/garbage-day.nvim", - dependencies = { "neovim/nvim-lspconfig" }, - event = "VeryLazy", - opts = { - aggressive_mode = false, - excluded_lsp_clients = { "rust_analyzer" }, - grace_period = 60 * 15, - wakeup_delay = 0, - }, -} diff --git a/lua/plugins/lazydev.lua b/lua/plugins/lazydev.lua new file mode 100644 index 0000000..72ebd73 --- /dev/null +++ b/lua/plugins/lazydev.lua @@ -0,0 +1,11 @@ +return { + "folke/lazydev.nvim", + ft = "lua", -- only load on lua files + opts = { + library = { + -- See the configuration section for more details + -- Load luvit types when the `vim.uv` word is found + { path = "${3rd}/luv/library", words = { "vim%.uv" } }, + }, + }, +} diff --git a/lua/plugins/lsp/basedpyright.lua b/lua/plugins/lsp/basedpyright.lua deleted file mode 100644 index 7f8d6e3..0000000 --- a/lua/plugins/lsp/basedpyright.lua +++ /dev/null @@ -1,16 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.basedpyright.setup({ - capabilities = capabilities, - basedpyright = { - analysis = { - autoSearchPaths = true, - diagnosticMode = "openFilesOnly", - useLibraryCodeForTypes = true, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/bash.lua b/lua/plugins/lsp/bash.lua deleted file mode 100644 index e8f3b8f..0000000 --- a/lua/plugins/lsp/bash.lua +++ /dev/null @@ -1,14 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.bashls.setup({ - capabilities = capabilities, - filetypes = { - "sh", - "bash", - "zsh", - }, - }) -end - -return M diff --git a/lua/plugins/lsp/clangd.lua b/lua/plugins/lsp/clangd.lua deleted file mode 100644 index e769daa..0000000 --- a/lua/plugins/lsp/clangd.lua +++ /dev/null @@ -1,21 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - capabilities = capabilities - lsp.clangd.setup({ - capabilities = capabilities, - settings = { - clangd = { - InlayHints = { - Designators = true, - Enabled = true, - ParameterNames = true, - DeducedTypes = true, - }, - fallbackFlags = { "-std=c++20" }, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/emmet.lua b/lua/plugins/lsp/emmet.lua deleted file mode 100644 index a9a0413..0000000 --- a/lua/plugins/lsp/emmet.lua +++ /dev/null @@ -1,20 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.emmet_ls.setup({ - capabilities = capabilities, - filetypes = { - "html", - "htmldjango", - "typescriptreact", - "javascriptreact", - "css", - "sass", - "scss", - "less", - "eruby", - }, - }) -end - -return M diff --git a/lua/plugins/lsp/gopls.lua b/lua/plugins/lsp/gopls.lua deleted file mode 100644 index 48dce82..0000000 --- a/lua/plugins/lsp/gopls.lua +++ /dev/null @@ -1,20 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.gopls.setup({ - capabilities = capabilities, - settings = { - hints = { - rangeVariableTypes = true, - parameterNames = true, - constantValues = true, - assignVariableTypes = true, - compositeLiteralFields = true, - compositeLiteralTypes = true, - functionTypeParameters = true, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/html.lua b/lua/plugins/lsp/html.lua deleted file mode 100644 index 25df39c..0000000 --- a/lua/plugins/lsp/html.lua +++ /dev/null @@ -1,17 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.html.setup({ - capabilities = capabilities, - filetypes = { - "html", - "htmldjango", - "templ", - }, - init_options = { - provideFormatter = false, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/lua.lua b/lua/plugins/lsp/lua.lua deleted file mode 100644 index cf2f0bf..0000000 --- a/lua/plugins/lsp/lua.lua +++ /dev/null @@ -1,45 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.lua_ls.setup({ - capabilities = capabilities, - settings = { - Lua = { - runtime = { - -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) - version = "LuaJIT", - }, - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = { "vim", "awesome", "client" }, - }, - -- workspace = { - -- Make the server aware of Neovim runtime files - -- library = vim.api.nvim_get_runtime_file("", true), - -- }, - -- Do not send telemetry data containing a randomized but unique identifier - telemetry = { - enable = false, - }, - root_pattern = { - ".stylua.toml", - ".luarc.json", - ".luarc.jsonc", - ".luacheckrc", - "stylua.toml", - "selene.toml", - "selene.yml", - ".git", - }, - format = { - enable = false, - }, - hint = { - enable = true, - }, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/pylsp.lua b/lua/plugins/lsp/pylsp.lua deleted file mode 100644 index cb0ef35..0000000 --- a/lua/plugins/lsp/pylsp.lua +++ /dev/null @@ -1,29 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.pylsp.setup({ - capabilities = capabilities, - settings = { - pylsp = { - plugins = { - autopep8 = { enabled = false }, - flake8 = { enabled = false }, - pylint = { enabled = false }, - yapf = { enabled = false }, - pydocstyle = { enabled = false }, - mccabe = { enabled = false }, - rope_autoimport = { enabled = true }, - rope_completion = { - enabled = true, - eager = true, - }, - pycodestyle = { - maxLineLength = nil, - }, - }, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/pylyzer.lua b/lua/plugins/lsp/pylyzer.lua deleted file mode 100644 index 07d5078..0000000 --- a/lua/plugins/lsp/pylyzer.lua +++ /dev/null @@ -1,17 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.pylyzer.setup({ - capabilities = capabilities, - settings = { - python = { - diagnostics = true, - inlayHints = true, - smartCompletion = true, - checkOnType = true, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/tex.lua b/lua/plugins/lsp/tex.lua deleted file mode 100644 index 7e7728c..0000000 --- a/lua/plugins/lsp/tex.lua +++ /dev/null @@ -1,32 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.texlab.setup({ - capabilities = capabilities, - texlab = { - auxDirectory = ".", - bibtexFormatter = "texlab", - build = { - args = { "-pdf", "-interaction=nonstopmode", "-synctex=1", "%f" }, - executable = "xelatex", - forwardSearchAfter = false, - onSave = false, - }, - chktex = { - onEdit = false, - onOpenAndSave = false, - }, - diagnosticsDelay = 0, - formatterLineLength = 120, - forwardSearch = { - args = {}, - }, - latexFormatter = "latexindent", - latexindent = { - modifyLineBreaks = false, - }, - }, - }) -end - -return M diff --git a/lua/plugins/lsp/tinymist.lua b/lua/plugins/lsp/tinymist.lua deleted file mode 100644 index c3e4d2f..0000000 --- a/lua/plugins/lsp/tinymist.lua +++ /dev/null @@ -1,14 +0,0 @@ -local M = {} - -M.setup = function(lsp, capabilities) - lsp.tinymist.setup({ - capabilities = capabilities, - offset_encoding = "utf-8", - settings = { - exportPdf = "onType", - outputPath = "$root/target/$dir/$name", - }, - }) -end - -return M diff --git a/lua/plugins/lspconfig.lua b/lua/plugins/lspconfig.lua index cf460af..3c3027e 100644 --- a/lua/plugins/lspconfig.lua +++ b/lua/plugins/lspconfig.lua @@ -3,34 +3,43 @@ return { dependencies = { "williamboman/mason.nvim", "williamboman/mason-lspconfig.nvim", - "hrsh7th/cmp-nvim-lsp", - "folke/neodev.nvim", + "saghen/blink.cmp", "nvim-telescope/telescope.nvim", "folke/trouble.nvim", "folke/neoconf.nvim", "piersolenski/telescope-import.nvim", "mrcjkb/rustaceanvim", }, - - config = function() + opts = function() + return require("solo.lspconfig-opts") + end, + config = function(_, opts) require("mason").setup() - local lsp = require("lspconfig") - local lsp_capabilities = require("cmp_nvim_lsp").default_capabilities() - lsp_capabilities = vim.tbl_deep_extend("keep", lsp_capabilities, { - textDocument = { - foldingRange = { - dynamicRegistration = false, - lineFoldingOnly = true, - }, - }, - }) + local lspconfig = require("lspconfig") - local default_setup = function(server) - lsp[server].setup({ - capabilities = lsp_capabilities, + local function extend_capabilities(capabilities) + return vim.tbl_deep_extend("keep", capabilities, { + textDocument = { + foldingRange = { + dynamicRegistration = false, + lineFoldingOnly = true, + }, + }, }) end + for server, config in pairs(opts.servers) do + local capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities) + config.capabilities = extend_capabilities(capabilities) + lspconfig[server].setup(config) + end + + local default_setup = function(server) + local capabilities = require("blink.cmp").get_lsp_capabilities() + lspconfig[server].setup({ + capabilities = extend_capabilities(capabilities), + }) + end vim.api.nvim_create_autocmd("LspAttach", { desc = "LSP actions", callback = function(event) @@ -43,6 +52,7 @@ return { end vim.keymap.set("n", keys, func, { buffer = event.buf, desc = desc }) end + local trouble = require("trouble") nmap("gD", vim.lsp.buf.declaration, "[G]oto [D]eclaration") nmap("gd", vim.lsp.buf.definition, "[G]oto [D]efinition") @@ -66,11 +76,9 @@ return { nmap("lj", vim.diagnostic.goto_next, "Diagnostic Next") nmap("lk", vim.diagnostic.goto_prev, "Diagnostic Prev") nmap("]d", function() - local trouble = require("trouble") trouble.next({ mode = "diagnostics", skip_groups = true, jump = true }) end, "LSP: Trouble Next") nmap("[d", function() - local trouble = require("trouble") trouble.prev({ mode = "diagnostics", skip_groups = true, jump = true }) end, "Trouble Prev") vim.keymap.set( @@ -120,9 +128,6 @@ return { vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, { border = "rounded", }) - local html_opts = { - filetypes = { "html", "htmldjango", "templ" }, - } require("mason-lspconfig").setup({ automatic_installation = true, @@ -139,46 +144,11 @@ return { "lua_ls", "tailwindcss", "texlab", - -- "tinymist", + "tinymist", "ts_ls", }, handlers = { default_setup, - clangd = function() - lsp_capabilities.offsetEncoding = { "utf-16" } - require("plugins.lsp.clangd").setup(lsp, lsp_capabilities) - end, - bashls = function() - require("plugins.lsp.bash").setup(lsp, lsp_capabilities) - end, - emmet_ls = function() - require("plugins.lsp.emmet").setup(lsp, lsp_capabilities) - end, - texlab = function() - require("plugins.lsp.tex").setup(lsp, lsp_capabilities) - end, - lua_ls = function() - require("plugins.lsp.lua").setup(lsp, lsp_capabilities) - end, - htmx = function() - lsp.htmx.setup(html_opts) - end, - pylyzer = function() - require("plugins.lsp.pylyzer").setup(lsp, lsp_capabilities) - end, - basedpyright = function() - require("plugins.lsp.basedpyright").setup(lsp, lsp_capabilities) - end, - jinja_lsp = function() - lsp.jinja_lsp.setup(html_opts) - end, - html = function() - require("plugins.lsp.html").setup(lsp, lsp_capabilities) - end, - tinymist = function() - require("plugins.lsp.tinymist").setup(lsp, lsp_capabilities) - end, - ts_ls = function() end, }, }) end, diff --git a/lua/plugins/luasnip.lua b/lua/plugins/luasnip.lua index 73e30ce..e70ec96 100644 --- a/lua/plugins/luasnip.lua +++ b/lua/plugins/luasnip.lua @@ -5,7 +5,7 @@ return { version = "*", dependencies = { "rafamadriz/friendly-snippets", -- a bunch of snippets to use - "saadparwaiz1/cmp_luasnip", + -- "saadparwaiz1/cmp_luasnip", }, opts = {}, config = function(_, opts) diff --git a/lua/plugins/neodev.lua b/lua/plugins/neodev.lua deleted file mode 100644 index 2c1e9a0..0000000 --- a/lua/plugins/neodev.lua +++ /dev/null @@ -1,27 +0,0 @@ -return { - "folke/neodev.nvim", - dependencies = { "rcarriga/nvim-dap-ui" }, - opts = { - library = { - enabled = true, -- when not enabled, neodev will not change any settings to the LSP server - -- these settings will be used for your Neovim config directory - runtime = true, -- runtime path - types = true, -- full signature, docs and completion of vim.api, vim.treesitter, vim.lsp and others - -- plugins = true, -- installed opt or start plugins in packpath - -- you can also specify the list of plugins to make available as a workspace library - plugins = { "nvim-treesitter", "plenary.nvim", "telescope.nvim", "nvim-dap-ui" }, - }, - setup_jsonls = true, -- configures jsonls to provide completion for project specific .luarc.json files - -- for your Neovim config directory, the config.library settings will be used as is - -- for plugin directories (root_dirs having a /lua directory), config.library.plugins will be disabled - -- for any other directory, config.library.enabled will be set to false - override = function(root_dir, options) end, - -- With lspconfig, Neodev will automatically setup your lua-language-server - -- If you disable this, then you have to set {before_init=require("neodev.lsp").before_init} - -- in your lsp start options - lspconfig = true, - -- much faster, but needs a recent built of lua-language-server - -- needs lua-language-server >= 3.6.0 - pathStrict = true, - }, -} diff --git a/lua/plugins/todo-comments.lua b/lua/plugins/todo-comments.lua index cec6b13..ca7d876 100644 --- a/lua/plugins/todo-comments.lua +++ b/lua/plugins/todo-comments.lua @@ -23,6 +23,7 @@ return { fg = "NONE", -- The gui style to use for the fg highlight group. bg = "BOLD", -- The gui style to use for the bg highlight group. }, + merge_keywords = true, -- when true, custom keywords will be merged with the defaults -- highlighting of the line containing the todo comment -- * before: highlights before the keyword (typically comment characters) diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index 35aacda..d7041ea 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -112,12 +112,12 @@ return { ["[M"] = "@function.outer", ["[]"] = "@class.outer", }, - -- goto_next = { - -- [']i'] = "@conditional.inner", - -- }, - -- goto_previous = { - -- ['[i'] = "@conditional.inner", - -- } + goto_next = { + ["]i"] = "@conditional.inner", + }, + goto_previous = { + ["[i"] = "@conditional.inner", + }, }, swap = { enable = true, diff --git a/lua/plugins/trouble.lua b/lua/plugins/trouble.lua index 04ffba6..3321928 100644 --- a/lua/plugins/trouble.lua +++ b/lua/plugins/trouble.lua @@ -1,7 +1,6 @@ return { "folke/trouble.nvim", dependencies = { "nvim-tree/nvim-web-devicons" }, - -- version = "*", cmd = "Trouble", keys = { { diff --git a/lua/solo/lspconfig-opts.lua b/lua/solo/lspconfig-opts.lua new file mode 100644 index 0000000..06ea908 --- /dev/null +++ b/lua/solo/lspconfig-opts.lua @@ -0,0 +1,181 @@ +return { + servers = { + gopls = { + settings = { + hints = { + rangeVariableTypes = true, + parameterNames = true, + constantValues = true, + assignVariableTypes = true, + compositeLiteralFields = true, + compositeLiteralTypes = true, + functionTypeParameters = true, + }, + }, + }, + lua_ls = { + settings = { + Lua = { + runtime = { + -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) + version = "LuaJIT", + }, + diagnostics = { + -- Get the language server to recognize the `vim` global + globals = { "vim", "awesome", "client" }, + }, + -- workspace = { + -- Make the server aware of Neovim runtime files + -- library = vim.api.nvim_get_runtime_file("", true), + -- }, + -- Do not send telemetry data containing a randomized but unique identifier + telemetry = { + enable = false, + }, + root_pattern = { + ".stylua.toml", + ".luarc.json", + ".luarc.jsonc", + ".luacheckrc", + "stylua.toml", + "selene.toml", + "selene.yml", + ".git", + }, + format = { + enable = false, + }, + hint = { + enable = true, + }, + }, + }, + }, + clangd = { + capabilities = { + offsetEncoding = { "utf-16" }, + }, + settings = { + clangd = { + InlayHints = { + Designators = true, + Enabled = true, + ParameterNames = true, + DeducedTypes = true, + }, + fallbackFlags = { "-std=c++20" }, + }, + }, + }, + bashls = { + filetypes = { + "sh", + "bash", + "zsh", + }, + }, + emmet_ls = { + filetypes = { + "html", + "htmldjango", + "typescriptreact", + "javascriptreact", + "css", + "sass", + "scss", + "less", + "eruby", + }, + }, + texlab = { + texlab = { + auxDirectory = ".", + bibtexFormatter = "texlab", + build = { + args = { "-pdf", "-interaction=nonstopmode", "-synctex=1", "%f" }, + executable = "xelatex", + forwardSearchAfter = false, + onSave = false, + }, + chktex = { + onEdit = false, + onOpenAndSave = false, + }, + diagnosticsDelay = 0, + formatterLineLength = 120, + forwardSearch = { + args = {}, + }, + latexFormatter = "latexindent", + latexindent = { + modifyLineBreaks = false, + }, + }, + }, + htmx = { + filetypes = { "html", "htmldjango", "templ" }, + }, + --[[ pylyzer = { + settings = { + python = { + diagnostics = true, + inlayHints = true, + smartCompletion = true, + checkOnType = true, + }, + }, + }, ]] + --[[ basedpyright = { + basedpyright = { + analysis = { + autoSearchPaths = true, + diagnosticMode = "openFilesOnly", + useLibraryCodeForTypes = true, + }, + }, + }, ]] + --[[ pylsp = { + settings = { + pylsp = { + plugins = { + autopep8 = { enabled = false }, + flake8 = { enabled = false }, + pylint = { enabled = false }, + yapf = { enabled = false }, + pydocstyle = { enabled = false }, + mccabe = { enabled = false }, + rope_autoimport = { enabled = true }, + rope_completion = { + enabled = true, + eager = true, + }, + pycodestyle = { + maxLineLength = nil, + }, + }, + }, + }, + }, ]] + jinja_lsp = { + filetypes = { "html", "htmldjango", "templ" }, + }, + html = { + filetypes = { + "html", + "htmldjango", + "templ", + }, + init_options = { + provideFormatter = false, + }, + }, + tinymist = { + offset_encoding = "utf-8", + settings = { + exportPdf = "onType", + outputPath = "$root/target/$dir/$name", + }, + }, + ts_ls = {}, + }, +} diff --git a/plugin/menu.lua b/plugin/menu.lua index a496c3b..5adaaa7 100644 --- a/plugin/menu.lua +++ b/plugin/menu.lua @@ -1,11 +1,11 @@ vim.cmd([[ aunmenu PopUp anoremenu PopUp.Inspect Inspect - amenu PopUp.-1- Inspect + amenu PopUp.-1- anoremenu PopUp.Definition lua vim.lsp.buf.definition() anoremenu PopUp.References Telescope lsp_references nnoremenu PopUp.Back - amenu PopUp.-2- Inspect + amenu PopUp.-2- amenu PopUp.URL gx ]]) @@ -27,12 +27,12 @@ vim.api.nvim_create_autocmd("MenuPopup", { amenu enable PopUp.References ]]) end - local urls = require("vim.ui")._get_urls() - if vim.startswith(urls[1], "http") then - vim.cmd([[ - amenu disable Popup.-2- - amentu enable PopUp.URL - ]]) - end + -- local urls = require("vim.ui")._get_urls() + -- if vim.startswith(urls[1], "http") then + -- vim.cmd([[ + -- amenu disable Popup.-2- + -- amentu enable PopUp.URL + -- ]]) + -- end end, })