From 1f2f336b64752ff00c095d582bde479c11ba98d3 Mon Sep 17 00:00:00 2001 From: Rahsheen Porter Date: Sun, 1 Jan 2023 16:30:32 -0500 Subject: [PATCH] revamped nvim config with lsp.zero --- .config/nvim/after/plugin/fugitive.lua | 21 ++ .config/nvim/after/plugin/lsp.lua | 333 +++++++---------------- .config/nvim/after/plugin/telescope.lua | 15 + .config/nvim/after/plugin/treesitter.lua | 2 +- .config/nvim/lua/rahcodes/init.lua | 2 +- .config/nvim/lua/rahcodes/packer.lua | 81 ++++-- .config/nvim/lua/rahcodes/remap.lua | 99 +++---- .config/nvim/lua/rahcodes/set.lua | 31 ++- .config/nvim/plugin/packer_compiled.lua | 45 +-- 9 files changed, 281 insertions(+), 348 deletions(-) create mode 100644 .config/nvim/after/plugin/fugitive.lua diff --git a/.config/nvim/after/plugin/fugitive.lua b/.config/nvim/after/plugin/fugitive.lua new file mode 100644 index 00000000..5b2ad56d --- /dev/null +++ b/.config/nvim/after/plugin/fugitive.lua @@ -0,0 +1,21 @@ +vim.keymap.set("n", "gs", ":G") +vim.keymap.set("n", "gh", ":diffget //3") +vim.keymap.set("n", "gu", ":diffget //2") +vim.keymap.set("n", "gc", ":GCheckout") +vim.keymap.set("n", "ga", ":G add %:p") +vim.keymap.set("n", "gc", ":G commit -v -q") +vim.keymap.set("n", "gt", ":G commit -v -q %:p") +vim.keymap.set("n", "gca", ":G commit --amend --no-edit") +vim.keymap.set("n", "gff", ":G ff") +vim.keymap.set("n", "gfo", ":G fetch origin") +vim.keymap.set("n", "gd", ":Gdiff") +vim.keymap.set("n", "ge", ":Gedit") +vim.keymap.set("n", "gr", ":Gread") +vim.keymap.set("n", "gw", ":Gwrite") +vim.keymap.set("n", "gl", ":silent! Glog:bot copen") +vim.keymap.set("n", "gp", ":Ggrep") +vim.keymap.set("n", "gm", ":Gmove") +-- vim.keymap.set("n", "gb", ":G branch") +vim.keymap.set("n", "go", ":G checkout") +vim.keymap.set("n", "gps", ":Dispatch! git push") +vim.keymap.set("n", "gpl", ":Dispatch! git pull") diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua index 5b8781c9..52a5ba35 100644 --- a/.config/nvim/after/plugin/lsp.lua +++ b/.config/nvim/after/plugin/lsp.lua @@ -1,245 +1,112 @@ +local lsp = require("lsp-zero") + +lsp.preset("recommended") + +lsp.ensure_installed({ + "tsserver", + "eslint", + "sumneko_lua", + "rust_analyzer", +}) + +-- see documentation of null-null-ls for more configuration options! +local mason_nullls = require("mason-null-ls") +mason_nullls.setup({ + automatic_installation = true, + automatic_setup = true, +}) +mason_nullls.setup_handlers({}) + local Remap = require("rahcodes.keymap") local nnoremap = Remap.nnoremap local inoremap = Remap.inoremap -local sumneko_root_path = "/usr/lib/lua-language-server" -local sumneko_binary = "/usr/local/bin/lua-language-server" - -- Setup nvim-cmp. local cmp = require("cmp") -local source_mapping = { - youtube = "[Suck it YT]", - buffer = "[Buffer]", - nvim_lsp = "[LSP]", - nvim_lua = "[Lua]", - -- cmp_tabnine = "[TN]", - path = "[Path]", -} -local lspkind = require("lspkind") - -cmp.setup({ - snippet = { - expand = function(args) - -- For `vsnip` user. - -- vim.fn["vsnip#anonymous"](args.body) - - -- For `luasnip` user. - require("luasnip").lsp_expand(args.body) - - -- For `ultisnips` user. - -- vim.fn["UltiSnips#Anon"](args.body) - end, - }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.complete(), - [""] = cmp.mapping.confirm({ select = true }), - }), - - formatting = { - format = function(entry, vim_item) - vim_item.kind = lspkind.presets.default[vim_item.kind] - local menu = source_mapping[entry.source.name] - -- if entry.source.name == "cmp_tabnine" then - -- if entry.completion_item.data ~= nil and entry.completion_item.data.detail ~= nil then - -- menu = entry.completion_item.data.detail .. " " .. menu - -- end - -- vim_item.kind = "" - -- end - vim_item.menu = menu - return vim_item - end, - }, - - sources = { - -- tabnine completion? yayaya - -- { name = "cmp_tabnine" }, - - { name = "nvim_lsp" }, - - -- For vsnip user. - -- { name = 'vsnip' }, - - -- For luasnip user. - { name = "luasnip" }, - - -- For ultisnips user. - -- { name = 'ultisnips' }, - - { name = "buffer" }, - - { name = "youtube" }, - }, +local cmp_select = { behavior = cmp.SelectBehavior.Select } +local cmp_mappings = lsp.defaults.cmp_mappings({ + [""] = cmp.mapping.scroll_docs(-4), + [""] = cmp.mapping.scroll_docs(4), + [""] = cmp.mapping.select_next_item(cmp_select), + [""] = cmp.mapping.select_prev_item(cmp_select), + [""] = cmp.mapping.confirm({ select = true }), + [""] = cmp.mapping.complete(), }) - ---[[ -local tabnine = require("cmp_tabnine.config") -tabnine:setup({ - max_lines = 1000, - max_num_results = 20, - sort = true, - run_on_every_keystroke = true, - snippet_placeholder = "..", +lsp.setup_nvim_cmp({ + mapping = cmp_mappings, }) -]] --- -local function config(_config) - return vim.tbl_deep_extend("force", { - on_attach = function() - nnoremap("gD", function() - vim.lsp.buf.definition() - end) - nnoremap("gd", function() - vim.lsp.buf.definition() - end) - nnoremap("K", function() - vim.lsp.buf.hover() - end) - nnoremap("gi", function() - vim.lsp.buf.implementation() - end) - nnoremap("wa", function() - vim.lsp.buf.add_workspace_folder() - end) - nnoremap("wr", function() - vim.lsp.buf.remove_workspace_folder() - end) - nnoremap("wl", function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end) - nnoremap("vws", function() - vim.lsp.buf.workspace_symbol() - end) - nnoremap("vd", function() - vim.diagnostic.open_float() - end) - nnoremap("[d", function() - vim.diagnostic.goto_next() - end) - nnoremap("]d", function() - vim.diagnostic.goto_prev() - end) - nnoremap("ca", function() - vim.lsp.buf.code_action() - end) - nnoremap("vco", function() - vim.lsp.buf.code_action({ - filter = function(code_action) - if not code_action or not code_action.data then - return false - end - - local data = code_action.data.id - return string.sub(data, #data - 1, #data) == ":0" - end, - apply = true, - }) - end) - nnoremap("gr", function() - vim.lsp.buf.references() - end) - nnoremap("rn", function() - vim.lsp.buf.rename() - end) - inoremap("", function() - vim.lsp.buf.signature_help() - end) - nnoremap("f", function() - vim.lsp.buf.format({ async = true }) - end) - end, - }, _config or {}) -end - -require("lspconfig").solargraph.setup(config()) -require("lspconfig").zls.setup(config()) - -require("lspconfig").tsserver.setup(config()) - -require("lspconfig").ccls.setup(config()) - -require("lspconfig").jedi_language_server.setup(config()) - -require("lspconfig").svelte.setup(config()) - -require("lspconfig").solang.setup(config()) - -require("lspconfig").cssls.setup(config()) - -require("lspconfig").gopls.setup(config({ - cmd = { "gopls", "serve" }, - settings = { - gopls = { - analyses = { - unusedparams = true, - }, - staticcheck = true, - }, - }, -})) - --- who even uses this? -require("lspconfig").rust_analyzer.setup(config({ - cmd = { "rustup", "run", "nightly", "rust-analyzer" }, -})) - -require("lspconfig").sumneko_lua.setup(config({ - cmd = { sumneko_binary, "-E", sumneko_root_path .. "/main.lua" }, - settings = { - Lua = { - runtime = { - -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) - version = "LuaJIT", - -- Setup your lua path - path = vim.split(package.path, ";"), - }, - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = { "vim" }, - }, - workspace = { - -- Make the server aware of Neovim runtime files - library = { - [vim.fn.expand("$VIMRUNTIME/lua")] = true, - [vim.fn.expand("$VIMRUNTIME/lua/vim/lsp")] = true, - }, - }, - }, - }, -})) - -local opts = { - -- whether to highlight the currently hovered symbol - -- disable if your cpu usage is higher than you want it - -- or you just hate the highlight - -- default: true - highlight_hovered_item = true, - - -- whether to show outline guides - -- default: true - show_guides = true, -} - -require("symbols-outline").setup(opts) - -local snippets_paths = function() - local plugins = { "friendly-snippets" } - local paths = {} - local path - local root_path = vim.env.HOME .. "/.vim/plugged/" - for _, plug in ipairs(plugins) do - path = root_path .. plug - if vim.fn.isdirectory(path) ~= 0 then - table.insert(paths, path) - end +lsp.on_attach = function(client, bufnr) + -- Disable LSP server formatting, to prevent formatting twice. + -- Once by the LSP server, second time by NULL-ls. + if client.name == "volar" or client.name == "tsserver" then + client.server_capabilities.documentFormattingProvider = false + client.server_capabilities.documentFormattingRangeProvider = false end - return paths + + local opts = { buffer = bufnr, remap = false } + + nnoremap("gd", function() + vim.lsp.buf.definition() + end, opts) + nnoremap("gD", function() + vim.lsp.buf.definition() + end, opts) + nnoremap("K", function() + vim.lsp.buf.hover() + end, opts) + nnoremap("gi", function() + vim.lsp.buf.implementation() + end, opts) + nnoremap("wa", function() + vim.lsp.buf.add_workspace_folder() + end, opts) + nnoremap("wr", function() + vim.lsp.buf.remove_workspace_folder() + end, opts) + nnoremap("wl", function() + print(vim.inspect(vim.lsp.buf.list_workspace_folders())) + end, opts) + nnoremap("vws", function() + vim.lsp.buf.workspace_symbol() + end, opts) + nnoremap("vd", function() + vim.diagnostic.open_float() + end, opts) + nnoremap("[d", function() + vim.diagnostic.goto_next() + end, opts) + nnoremap("]d", function() + vim.diagnostic.goto_prev() + end, opts) + nnoremap("ca", function() + vim.lsp.buf.code_action() + end, opts) + nnoremap("vco", function() + vim.lsp.buf.code_action({ + filter = function(code_action) + if not code_action or not code_action.data then + return false + end + + local data = code_action.data.id + return string.sub(data, #data - 1, #data) == ":0" + end, + apply = true, + }) + end, opts) + nnoremap("gr", function() + vim.lsp.buf.references() + end, opts) + nnoremap("rn", function() + vim.lsp.buf.rename() + end, opts) + inoremap("", function() + vim.lsp.buf.signature_help() + end, opts) + nnoremap("f", function() + vim.lsp.buf.format({ async = true }) + end, opts) end -require("luasnip.loaders.from_vscode").lazy_load({ - paths = snippets_paths(), - include = nil, -- Load all languages - exclude = {}, -}) +lsp.setup() diff --git a/.config/nvim/after/plugin/telescope.lua b/.config/nvim/after/plugin/telescope.lua index f14b0b82..8206f3e9 100644 --- a/.config/nvim/after/plugin/telescope.lua +++ b/.config/nvim/after/plugin/telescope.lua @@ -13,4 +13,19 @@ telescope.setup({ }, }) +local builtin = require("telescope.builtin") +vim.keymap.set("n", "ff", builtin.find_files, {}) +vim.keymap.set("n", "/", builtin.live_grep, {}) +vim.keymap.set("n", "*", builtin.grep_string, {}) +vim.keymap.set("n", "fb", builtin.buffers, {}) +vim.keymap.set("n", "fh", builtin.help_tags, {}) + +vim.keymap.set("n", "m", builtin.oldfiles, {}) +vim.keymap.set("n", "gb", builtin.git_branches, {}) +-- vim.keymap.set('n', 'gs', builtin.git_status, {}) +vim.keymap.set("n", "", builtin.git_files, {}) +vim.keymap.set("n", "ps", function() + builtin.grep_string({ search = vim.fn.input("Grep > ") }) +end) + telescope.load_extension("fzf") diff --git a/.config/nvim/after/plugin/treesitter.lua b/.config/nvim/after/plugin/treesitter.lua index d8ffff57..09adc49a 100644 --- a/.config/nvim/after/plugin/treesitter.lua +++ b/.config/nvim/after/plugin/treesitter.lua @@ -1,6 +1,6 @@ require("nvim-treesitter.configs").setup({ -- A list of parser names, or "all" - ensure_installed = { "ruby", "typescript", "javascript", "lua", "rust" }, + ensure_installed = { "ruby", "typescript", "javascript", "lua", "rust", "typescript" }, -- Install parsers synchronously (only applied to `ensure_installed`) sync_install = false, diff --git a/.config/nvim/lua/rahcodes/init.lua b/.config/nvim/lua/rahcodes/init.lua index 2466e67b..f2cf2f8a 100644 --- a/.config/nvim/lua/rahcodes/init.lua +++ b/.config/nvim/lua/rahcodes/init.lua @@ -1,3 +1,3 @@ +require("rahcodes.packer") require("rahcodes.set") require("rahcodes.remap") -require("rahcodes.packer") diff --git a/.config/nvim/lua/rahcodes/packer.lua b/.config/nvim/lua/rahcodes/packer.lua index ce702e6a..a23a878d 100644 --- a/.config/nvim/lua/rahcodes/packer.lua +++ b/.config/nvim/lua/rahcodes/packer.lua @@ -1,18 +1,12 @@ --- This file can be loaded by calling `lua require('plugins')` from your init.vim -local ensure_packer = function() - local fn = vim.fn - local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" - if fn.empty(fn.glob(install_path)) > 0 then - fn.system({ "git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path }) - vim.cmd([[packadd packer.nvim]]) - return true - end - return false +local install_path = vim.fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" +local is_bootstrap = false +if vim.fn.empty(vim.fn.glob(install_path)) > 0 then + is_bootstrap = true + vim.fn.system({ "git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path }) + vim.cmd([[packadd packer.nvim]]) end -local packer_bootstrap = ensure_packer() - -return require("packer").startup(function(use) +require("packer").startup(function(use) -- Packer can manage itself use("wbthomason/packer.nvim") use("folke/tokyonight.nvim") @@ -35,21 +29,29 @@ return require("packer").startup(function(use) ts_update() end, }) - use({ "williamboman/mason.nvim" }) - use({ "williamboman/mason-lspconfig.nvim" }) - -- configure lsp servers - use("neovim/nvim-lspconfig") - use("hrsh7th/cmp-nvim-lsp") - use("hrsh7th/cmp-buffer") - use("hrsh7th/nvim-cmp") - -- use("tzachar/cmp-tabnine", { run = "./install.sh" }) - use("onsails/lspkind-nvim") - use("nvim-lua/lsp_extensions.nvim") - use("glepnir/lspsaga.nvim") - use("simrat39/symbols-outline.nvim") - use("L3MON4D3/LuaSnip") - use("saadparwaiz1/cmp_luasnip") + -- LSP + use({ + "VonHeikemen/lsp-zero.nvim", + requires = { + -- LSP Support + { "neovim/nvim-lspconfig" }, + { "williamboman/mason.nvim" }, + { "williamboman/mason-lspconfig.nvim" }, + + -- Autocompletion + { "hrsh7th/nvim-cmp" }, + { "hrsh7th/cmp-buffer" }, + { "hrsh7th/cmp-path" }, + { "saadparwaiz1/cmp_luasnip" }, + { "hrsh7th/cmp-nvim-lsp" }, + { "hrsh7th/cmp-nvim-lua" }, + + -- Snippets + { "L3MON4D3/LuaSnip" }, + { "rafamadriz/friendly-snippets" }, + }, + }) -- formatting & linting use("jose-elias-alvarez/null-ls.nvim") @@ -92,9 +94,32 @@ return require("packer").startup(function(use) end, }) + use("theprimeagen/harpoon") + -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins - if packer_bootstrap then + if is_bootstrap then require("packer").sync() end end) + +-- When we are bootstrapping a configuration, it doesn't +-- make sense to execute the rest of the init.lua. +-- +-- You'll need to restart nvim, and then it will work. +if is_bootstrap then + print("==================================") + print(" Plugins are being installed") + print(" Wait until Packer completes,") + print(" then restart nvim") + print("==================================") + return +end + +-- Automatically source and re-compile packer whenever you save this init.lua +local packer_group = vim.api.nvim_create_augroup("Packer", { clear = true }) +vim.api.nvim_create_autocmd("BufWritePost", { + command = "source | silent! LspStop | silent! LspStart | PackerCompile", + group = packer_group, + pattern = vim.fn.expand("$MYVIMRC"), +}) diff --git a/.config/nvim/lua/rahcodes/remap.lua b/.config/nvim/lua/rahcodes/remap.lua index 6a15b4bd..12c838a2 100644 --- a/.config/nvim/lua/rahcodes/remap.lua +++ b/.config/nvim/lua/rahcodes/remap.lua @@ -1,74 +1,61 @@ local Remap = require("rahcodes.keymap") -local nnoremap = Remap.nnoremap -local vnoremap = Remap.vnoremap -local inoremap = Remap.inoremap local nmap = Remap.nmap -nnoremap("pv", "Ex") -local builtin = require("telescope.builtin") -vim.keymap.set("n", "ff", builtin.find_files, {}) -vim.keymap.set("n", "/", builtin.live_grep, {}) -vim.keymap.set("n", "*", builtin.grep_string, {}) -vim.keymap.set("n", "fb", builtin.buffers, {}) -vim.keymap.set("n", "fh", builtin.help_tags, {}) +vim.keymap.set("n", "pv", vim.cmd.Ex) -vim.keymap.set("n", "m", builtin.oldfiles, {}) -vim.keymap.set("n", "gb", builtin.git_branches, {}) --- vim.keymap.set('n', 'gs', builtin.git_status, {}) -vim.keymap.set("n", "", builtin.git_files, {}) +vim.keymap.set("v", "J", ":m '>+1gv=gv") +vim.keymap.set("v", "K", ":m '<-2gv=gv") --- Null Ls -nnoremap("lf", ":lua vim.lsp.buf.format({ timeout_ms = 10000 })") -nnoremap("lF", ":lua vim.lsp.buf.range_format({ timeout_ms = 2000 })") +vim.keymap.set("n", "", "zz") +vim.keymap.set("n", "", "zz") --- Git Fugitive -nnoremap("gs", ":G") -nnoremap("gh", ":diffget //3") -nnoremap("gu", ":diffget //2") -nnoremap("gc", ":GCheckout") -nnoremap("ga", ":G add %:p") -nnoremap("gc", ":G commit -v -q") -nnoremap("gt", ":G commit -v -q %:p") -nnoremap("gca", ":G commit --amend --no-edit") -nnoremap("gff", ":G ff") -nnoremap("gfo", ":G fetch origin") -nnoremap("gd", ":Gdiff") -nnoremap("ge", ":Gedit") -nnoremap("gr", ":Gread") -nnoremap("gw", ":Gwrite") -nnoremap("gl", ":silent! Glog:bot copen") -nnoremap("gp", ":Ggrep") -nnoremap("gm", ":Gmove") --- nnoremap("gb", ":G branch") -nnoremap("go", ":G checkout") -nnoremap("gps", ":Dispatch! git push") -nnoremap("gpl", ":Dispatch! git pull") +vim.keymap.set("n", "n", "nzzzv") +vim.keymap.set("n", "N", "Nzzzv") -vnoremap("J", ":m '>+1gv=gv") -vnoremap("K", ":m '<-2gv=gv") +-- don't bork paste buffer when pasting +vim.keymap.set("x", "p", '"_dP') --- nnoremap("/", "/\v") --- vnoremap("/", "/\v") -nnoremap("`", ":noh") +vim.keymap.set("i", "", "") + +-- vim.keymap.set("n", "/", "/\v") +-- vim.keymap.set("v", "/", "/\v") +vim.keymap.set("n", "`", ":noh") -- No Cheating -nnoremap("", "") -nnoremap("", "") -nnoremap("", "") -nnoremap("", "") -inoremap("", "") -inoremap("", "") -inoremap("", "") -inoremap("", "") +vim.keymap.set("n", "", "") +vim.keymap.set("n", "", "") +vim.keymap.set("n", "", "") +vim.keymap.set("n", "", "") +vim.keymap.set("i", "", "") +vim.keymap.set("i", "", "") +vim.keymap.set("i", "", "") +vim.keymap.set("i", "", "") -- No weird line jumps -nnoremap("j", "gj") -nnoremap("k", "gk") +vim.keymap.set("n", "j", "gj") +vim.keymap.set("n", "k", "gk") -- Copy to system clipboard -vnoremap("y", '"*y') -vnoremap("yy", '"+y') +vim.keymap.set("n", "y", '"*y') +vim.keymap.set("v", "y", '"*y') +vim.keymap.set("n", "yy", '"+y') +vim.keymap.set("v", "yy", '"+y') + +vim.keymap.set("n", "", "silent !tmux neww tmux-sessionizer") -- Move buffers nmap("sp", ":bprev") nmap("sn", ":bnext") + +vim.keymap.set("n", "f", function() + vim.lsp.buf.format() +end) +vim.keymap.set("n", "F", function() + vim.lsp.buf.range_format() +end) + +-- Quickfix list navigation +vim.keymap.set("n", "", "cnextzz") +vim.keymap.set("n", "", "cprevzz") +vim.keymap.set("n", "k", "lnextzz") +vim.keymap.set("n", "j", "lprevzz") diff --git a/.config/nvim/lua/rahcodes/set.lua b/.config/nvim/lua/rahcodes/set.lua index 93762f1f..af0a6633 100644 --- a/.config/nvim/lua/rahcodes/set.lua +++ b/.config/nvim/lua/rahcodes/set.lua @@ -3,20 +3,33 @@ vim.opt.guicursor = "" vim.opt.nu = true vim.opt.relativenumber = true -vim.opt.tabstop = 2 -vim.opt.softtabstop = 2 -vim.opt.shiftwidth = 2 +vim.opt.tabstop = 4 +vim.opt.softtabstop = 4 +vim.opt.shiftwidth = 4 vim.opt.expandtab = true -vim.opt.hlsearch = false -vim.opt.incsearch = true vim.opt.smartindent = true vim.opt.wrap = false -vim.g.mapleader = " " +vim.opt.swapfile = false +vim.opt.backup = false +vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir" +vim.opt.undofile = true + +vim.opt.hlsearch = false +vim.opt.incsearch = true -vim.g.netrw_browse_split = 0 -vim.g.netrw_banner = 0 -vim.g.netrw_winsize = 25 +vim.opt.termguicolors = true +vim.opt.scrolloff = 8 +vim.opt.signcolumn = "yes" +vim.opt.isfname:append("@-@") + +vim.opt.updatetime = 50 + +vim.opt.colorcolumn = "80" + +vim.opt.mouse = "" + +vim.g.mapleader = " " diff --git a/.config/nvim/plugin/packer_compiled.lua b/.config/nvim/plugin/packer_compiled.lua index 4ecd151a..71b942e8 100644 --- a/.config/nvim/plugin/packer_compiled.lua +++ b/.config/nvim/plugin/packer_compiled.lua @@ -89,31 +89,41 @@ _G.packer_plugins = { path = "/home/striderz/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp", url = "https://github.com/hrsh7th/cmp-nvim-lsp" }, + ["cmp-nvim-lua"] = { + loaded = true, + path = "/home/striderz/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua", + url = "https://github.com/hrsh7th/cmp-nvim-lua" + }, + ["cmp-path"] = { + loaded = true, + path = "/home/striderz/.local/share/nvim/site/pack/packer/start/cmp-path", + url = "https://github.com/hrsh7th/cmp-path" + }, cmp_luasnip = { loaded = true, path = "/home/striderz/.local/share/nvim/site/pack/packer/start/cmp_luasnip", url = "https://github.com/saadparwaiz1/cmp_luasnip" }, + ["friendly-snippets"] = { + loaded = true, + path = "/home/striderz/.local/share/nvim/site/pack/packer/start/friendly-snippets", + url = "https://github.com/rafamadriz/friendly-snippets" + }, ["gitsigns.nvim"] = { config = { "\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0" }, loaded = true, path = "/home/striderz/.local/share/nvim/site/pack/packer/start/gitsigns.nvim", url = "https://github.com/lewis6991/gitsigns.nvim" }, - ["lsp_extensions.nvim"] = { - loaded = true, - path = "/home/striderz/.local/share/nvim/site/pack/packer/start/lsp_extensions.nvim", - url = "https://github.com/nvim-lua/lsp_extensions.nvim" - }, - ["lspkind-nvim"] = { + harpoon = { loaded = true, - path = "/home/striderz/.local/share/nvim/site/pack/packer/start/lspkind-nvim", - url = "https://github.com/onsails/lspkind-nvim" + path = "/home/striderz/.local/share/nvim/site/pack/packer/start/harpoon", + url = "https://github.com/theprimeagen/harpoon" }, - ["lspsaga.nvim"] = { + ["lsp-zero.nvim"] = { loaded = true, - path = "/home/striderz/.local/share/nvim/site/pack/packer/start/lspsaga.nvim", - url = "https://github.com/glepnir/lspsaga.nvim" + path = "/home/striderz/.local/share/nvim/site/pack/packer/start/lsp-zero.nvim", + url = "https://github.com/VonHeikemen/lsp-zero.nvim" }, ["lualine.nvim"] = { loaded = true, @@ -177,11 +187,6 @@ _G.packer_plugins = { path = "/home/striderz/.local/share/nvim/site/pack/packer/start/plenary.nvim", url = "https://github.com/nvim-lua/plenary.nvim" }, - ["symbols-outline.nvim"] = { - loaded = true, - path = "/home/striderz/.local/share/nvim/site/pack/packer/start/symbols-outline.nvim", - url = "https://github.com/simrat39/symbols-outline.nvim" - }, ["telescope-fzf-native.nvim"] = { loaded = true, path = "/home/striderz/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim", @@ -217,14 +222,14 @@ _G.packer_plugins = { } time([[Defining packer_plugins]], false) --- Config for: nvim-surround -time([[Config for nvim-surround]], true) -try_loadstring("\27LJ\2\n?\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\18nvim-surround\frequire\0", "config", "nvim-surround") -time([[Config for nvim-surround]], false) -- Config for: gitsigns.nvim time([[Config for gitsigns.nvim]], true) try_loadstring("\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0", "config", "gitsigns.nvim") time([[Config for gitsigns.nvim]], false) +-- Config for: nvim-surround +time([[Config for nvim-surround]], true) +try_loadstring("\27LJ\2\n?\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\18nvim-surround\frequire\0", "config", "nvim-surround") +time([[Config for nvim-surround]], false) -- Config for: trouble.nvim time([[Config for trouble.nvim]], true) try_loadstring("\27LJ\2\n9\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\ftrouble\frequire\0", "config", "trouble.nvim")