From 05880571a5b21a3fe69b716c6ff2d95975419a9b Mon Sep 17 00:00:00 2001 From: cubernetes Date: Thu, 27 Jul 2023 04:30:10 +0200 Subject: [PATCH] NVIM CONFIG YEAAA --- .config/nvim/after/plugin/c-formatter-42.lua | 2 + .config/nvim/after/plugin/colors.lua | 9 + .config/nvim/after/plugin/fugitive.lua | 1 + .config/nvim/after/plugin/harpoon.lua | 10 + .config/nvim/after/plugin/lastplace.lua | 45 ++++ .config/nvim/after/plugin/lsp.lua | 82 ++++++++ .config/nvim/after/plugin/telescope.lua | 6 + .config/nvim/after/plugin/treesitter.lua | 24 +++ .config/nvim/after/plugin/undotree.lua | 1 + .config/nvim/after/plugin/vim-airline.lua | 42 ++++ .config/nvim/init.lua | 2 + .config/nvim/lua/tosu/init.lua | 2 + .config/nvim/lua/tosu/packer.lua | 52 +++++ .config/nvim/lua/tosu/remap.lua | 35 ++++ .config/nvim/lua/tosu/set.lua | 38 ++++ .config/nvim/plugin/packer_compiled.lua | 209 +++++++++++++++++++ 16 files changed, 560 insertions(+) create mode 100644 .config/nvim/after/plugin/c-formatter-42.lua create mode 100644 .config/nvim/after/plugin/colors.lua create mode 100644 .config/nvim/after/plugin/fugitive.lua create mode 100644 .config/nvim/after/plugin/harpoon.lua create mode 100644 .config/nvim/after/plugin/lastplace.lua create mode 100644 .config/nvim/after/plugin/lsp.lua create mode 100644 .config/nvim/after/plugin/telescope.lua create mode 100644 .config/nvim/after/plugin/treesitter.lua create mode 100644 .config/nvim/after/plugin/undotree.lua create mode 100644 .config/nvim/after/plugin/vim-airline.lua create mode 100644 .config/nvim/init.lua create mode 100644 .config/nvim/lua/tosu/init.lua create mode 100644 .config/nvim/lua/tosu/packer.lua create mode 100644 .config/nvim/lua/tosu/remap.lua create mode 100644 .config/nvim/lua/tosu/set.lua create mode 100644 .config/nvim/plugin/packer_compiled.lua diff --git a/.config/nvim/after/plugin/c-formatter-42.lua b/.config/nvim/after/plugin/c-formatter-42.lua new file mode 100644 index 0000000..5b21198 --- /dev/null +++ b/.config/nvim/after/plugin/c-formatter-42.lua @@ -0,0 +1,2 @@ +vim.g.c_formatter_42_set_equalprg = 0 +vim.g.c_formatter_42_format_on_save = 1 diff --git a/.config/nvim/after/plugin/colors.lua b/.config/nvim/after/plugin/colors.lua new file mode 100644 index 0000000..56d23fc --- /dev/null +++ b/.config/nvim/after/plugin/colors.lua @@ -0,0 +1,9 @@ +function ColorMyPencils(color) + color = color or "rose-pine" + vim.cmd.colorscheme(color) + + vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) + vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) +end + +ColorMyPencils("gruvbox") diff --git a/.config/nvim/after/plugin/fugitive.lua b/.config/nvim/after/plugin/fugitive.lua new file mode 100644 index 0000000..73b78b8 --- /dev/null +++ b/.config/nvim/after/plugin/fugitive.lua @@ -0,0 +1 @@ +vim.keymap.set("n", "gs", vim.cmd.Git); diff --git a/.config/nvim/after/plugin/harpoon.lua b/.config/nvim/after/plugin/harpoon.lua new file mode 100644 index 0000000..d1126f3 --- /dev/null +++ b/.config/nvim/after/plugin/harpoon.lua @@ -0,0 +1,10 @@ +local mark = require("harpoon.mark") +local ui = require("harpoon.ui") + +vim.keymap.set("n", "a", mark.add_file) +vim.keymap.set("n", "e", ui.toggle_quick_menu) + +vim.keymap.set("n", "", function() ui.nav_file(1) end) +vim.keymap.set("n", "", function() ui.nav_file(2) end) +vim.keymap.set("n", "", function() ui.nav_file(3) end) +vim.keymap.set("n", "", function() ui.nav_file(4) end) diff --git a/.config/nvim/after/plugin/lastplace.lua b/.config/nvim/after/plugin/lastplace.lua new file mode 100644 index 0000000..06cd694 --- /dev/null +++ b/.config/nvim/after/plugin/lastplace.lua @@ -0,0 +1,45 @@ +-- adapted from https://github.com/ethanholz/nvim-lastplace/blob/main/lua/nvim-lastplace/init.lua +local ignore_buftype = { "quickfix", "nofile", "help" } +local ignore_filetype = { "gitcommit", "gitrebase", "svn", "hgcommit" } + +local function run() + if vim.tbl_contains(ignore_buftype, vim.bo.buftype) then + return + end + + if vim.tbl_contains(ignore_filetype, vim.bo.filetype) then + -- reset cursor to first line + vim.cmd[[normal! gg]] + return + end + + -- If a line has already been specified on the command line, we are done + -- nvim file +num + if vim.fn.line(".") > 1 then + return + end + + local last_line = vim.fn.line([['"]]) + local buff_last_line = vim.fn.line("$") + + -- If the last line is set and the less than the last line in the buffer + if last_line > 0 and last_line <= buff_last_line then + local win_last_line = vim.fn.line("w$") + local win_first_line = vim.fn.line("w0") + -- Check if the last line of the buffer is the same as the win + if win_last_line == buff_last_line then + -- Set line to last line edited + vim.cmd[[normal! g`"]] + -- Try to center + elseif buff_last_line - last_line > ((win_last_line - win_first_line) / 2) - 1 then + vim.cmd[[normal! g`"zz]] + else + vim.cmd[[normal! G'"]] + end + end +end + +vim.api.nvim_create_autocmd({'BufWinEnter', 'FileType'}, { + group = vim.api.nvim_create_augroup('nvim-lastplace', {}), + callback = run +}) diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua new file mode 100644 index 0000000..76a7d03 --- /dev/null +++ b/.config/nvim/after/plugin/lsp.lua @@ -0,0 +1,82 @@ +-- local lsp = require('lsp-zero').preset({}) +lsp = require('lsp-zero').preset({ + name = 'minimal', + set_lsp_keymaps = true, + manage_nvim_cmp = true, + suggest_lsp_servers = false, +}) + +lsp.on_attach(function(client, bufnr) + -- see :help lsp-zero-keybindings + -- to learn the available actions + lsp.default_keymaps({ buffer = bufnr }) +end) + +-- (Optional) Configure lua language server for neovim +require('lspconfig').lua_ls.setup(lsp.nvim_lua_ls()) + +lsp.ensure_installed({ + 'clangd', + 'tsserver', + 'eslint', + 'lua_ls', + 'rust_analyzer', +}) + +local cmp = require('cmp') +local cmp_select = { behavior = cmp.SelectBehavior.Select } +local cmp_mappings = lsp.defaults.cmp_mappings({ + [''] = cmp.mapping.select_prev_item(cmp_select), + [''] = cmp.mapping.select_next_item(cmp_select), + [''] = cmp.mapping.confirm({ select = true }), + [''] = cmp.mapping.complete(), +}) + +lsp.set_preferences({ + sign_icons = {} +}) + +lsp.setup_nvim_cmp({ + mapping = cmp_mappings +}) + +lsp.on_attach(function(client, bufnr) + local opts = { buffer = bufnr, remap = false } + + vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts) + vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, opts) + vim.keymap.set("n", "vws", function() vim.lsp.buf.workspace_symbol() end, opts) + vim.keymap.set("n", "vd", function() vim.lsp.buf.open_float() end, opts) + vim.keymap.set("n", "[d", function() vim.lsp.buf.goto_next() end, opts) + vim.keymap.set("n", "]d", function() vim.lsp.buf.goto_prev() end, opts) + vim.keymap.set("n", "vca", function() vim.lsp.buf.code_action() end, opts) + vim.keymap.set("n", "vrr", function() vim.lsp.buf.references() end, opts) + vim.keymap.set("n", "vrn", function() vim.lsp.buf.rename() end, opts) + vim.keymap.set("i", "", function() vim.lsp.buf.signature_help() end, opts) +end) + +lsp.setup() + + +local null_ls = require('null-ls') +local null_opts = lsp.build_options('null-ls', {}) + +null_ls.setup({ + on_attach = function(client, bufnr) + null_opts.on_attach(client, bufnr) + --- + -- you can add other stuff here.... + --- + end, + sources = { + -- Replace these with the tools you have installed + -- null_ls.builtins.formatting.prettier, + -- null_ls.builtins.diagnostics.eslint, + -- null_ls.builtins.formatting.stylua, + } +}) + +require("norme").setup({ + -- Your configuration + cmd = os.getenv('HOME') .. '/.local/bin/norminette' +}) diff --git a/.config/nvim/after/plugin/telescope.lua b/.config/nvim/after/plugin/telescope.lua new file mode 100644 index 0000000..4806008 --- /dev/null +++ b/.config/nvim/after/plugin/telescope.lua @@ -0,0 +1,6 @@ +local builtin = require('telescope.builtin') +vim.keymap.set('n', 'pf', builtin.find_files, {}) +vim.keymap.set('n', '', builtin.git_files, {}) +vim.keymap.set('n', 'ps', function() + builtin.grep_string({ search = vim.fn.input("Grep > ") }); +end) diff --git a/.config/nvim/after/plugin/treesitter.lua b/.config/nvim/after/plugin/treesitter.lua new file mode 100644 index 0000000..da313b9 --- /dev/null +++ b/.config/nvim/after/plugin/treesitter.lua @@ -0,0 +1,24 @@ +require'nvim-treesitter.configs'.setup { + -- A list of parser names, or "all" (the five listed parsers should always be installed) + ensure_installed = { "vimdoc", "javascript", "typescript", "python", "bash", "c", "lua", "vim", "vimdoc", "query" }, + + -- Install parsers synchronously (only applied to `ensure_installed`) + sync_install = false, + + -- Automatically install missing parsers when entering buffer + -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally + auto_install = true, + + -- List of parsers to ignore installing (for "all") + ignore_install = { "help" }, + + highlight = { + enable = true, + + -- Setting this to true will run `:h syntax` and tree-sitter at the same time. + -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). + -- Using this option may slow down your editor, and you may see some duplicate highlights. + -- Instead of true it can also be a list of languages + additional_vim_regex_highlighting = false, + }, +} diff --git a/.config/nvim/after/plugin/undotree.lua b/.config/nvim/after/plugin/undotree.lua new file mode 100644 index 0000000..b6b9276 --- /dev/null +++ b/.config/nvim/after/plugin/undotree.lua @@ -0,0 +1 @@ +vim.keymap.set("n", "u", vim.cmd.UndotreeToggle) diff --git a/.config/nvim/after/plugin/vim-airline.lua b/.config/nvim/after/plugin/vim-airline.lua new file mode 100644 index 0000000..5909166 --- /dev/null +++ b/.config/nvim/after/plugin/vim-airline.lua @@ -0,0 +1,42 @@ +vim.g.airline_theme = 'blood_red' +vim.g.airline_powerline_fonts = 1 +vim.g['airline#extensions#tabline#enabled'] = 1 +vim.g['airline#extensions#tabline#formatter'] = 'unique_tail' +vim.g.airline_highlighting_cache = 1 + +-- unicode symbols +vim.g.airline_left_sep = '»' +vim.g.airline_left_sep = '▶' +vim.g.airline_right_sep = '«' +vim.g.airline_right_sep = '◀' +vim.g.airline_symbols.colnr = ' ㏇:' +vim.g.airline_symbols.colnr = ' ℅:' +vim.g.airline_symbols.crypt = '🔒' +vim.g.airline_symbols.linenr = '☰' +vim.g.airline_symbols.linenr = ' ␊:' +vim.g.airline_symbols.linenr = ' ␤:' +vim.g.airline_symbols.linenr = '¶' +vim.g.airline_symbols.maxlinenr = '' +vim.g.airline_symbols.maxlinenr = '㏑' +vim.g.airline_symbols.branch = '⎇' +vim.g.airline_symbols.paste = 'ρ' +vim.g.airline_symbols.paste = 'Þ' +vim.g.airline_symbols.paste = '∥' +vim.g.airline_symbols.spell = 'Ꞩ' +vim.g.airline_symbols.notexists = 'Ɇ' +vim.g.airline_symbols.notexists = '∄' +vim.g.airline_symbols.whitespace = 'Ξ' + +-- powerline symbols +vim.g.airline_left_sep = '' +vim.g.airline_left_alt_sep = '' +vim.g.airline_right_sep = '' +vim.g.airline_right_alt_sep = '' +vim.g.airline_symbols.branch = '' +vim.g.airline_symbols.colnr = ' ℅:' +vim.g.airline_symbols.readonly = '' +vim.g.airline_symbols.linenr = ' :' +vim.g.airline_symbols.maxlinenr = '☰ ' +vim.g.airline_symbols.dirty='⚡' + +vim.cmd [[autocmd VimEnter * AirlineRefresh]] diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua new file mode 100644 index 0000000..e679e2f --- /dev/null +++ b/.config/nvim/init.lua @@ -0,0 +1,2 @@ +require("tosu") +vim.cmd('source /home/tosuman/.vim/plugin/stdheader.vim') diff --git a/.config/nvim/lua/tosu/init.lua b/.config/nvim/lua/tosu/init.lua new file mode 100644 index 0000000..b4d67fd --- /dev/null +++ b/.config/nvim/lua/tosu/init.lua @@ -0,0 +1,2 @@ +require("tosu.set") +require("tosu.remap") diff --git a/.config/nvim/lua/tosu/packer.lua b/.config/nvim/lua/tosu/packer.lua new file mode 100644 index 0000000..f2b64be --- /dev/null +++ b/.config/nvim/lua/tosu/packer.lua @@ -0,0 +1,52 @@ +-- This file can be loaded by calling `lua require('plugins')` from your init.vim + +-- Only required if you have packer configured as `opt` +vim.cmd [[packadd packer.nvim]] + +return require('packer').startup(function(use) + -- Packer can manage itself + use 'wbthomason/packer.nvim' + + use { + 'nvim-telescope/telescope.nvim', tag = '0.1.2', + -- or , branch = '0.1.x', + requires = { { 'nvim-lua/plenary.nvim' } } + } + + use({ 'rose-pine/neovim', as = 'rose-pine' }) + use({ 'ellisonleao/gruvbox.nvim', as = 'gruvbox' }) + use({ 'patstockwell/vim-monokai-tasty', as = 'monokai' }) + + use('nvim-treesitter/nvim-treesitter', { run = ':TSUpdate' }) + use('nvim-treesitter/playground') + use('ThePrimeagen/harpoon') + use('mbbill/undotree') + use('tpope/vim-fugitive') + use('vim-airline/vim-airline') + use('vim-airline/vim-airline-themes') + use('cacharle/c_formatter_42.vim') + use({ + 'VonHeikemen/lsp-zero.nvim', + branch = 'v2.x', + requires = { + -- LSP Support + { 'neovim/nvim-lspconfig' }, -- Required + { -- Optional + 'williamboman/mason.nvim', + run = function() + pcall(vim.api.nvim_command, 'MasonUpdate') + end, + }, + { 'williamboman/mason-lspconfig.nvim' }, -- Optional + + -- Autocompletion + { 'hrsh7th/nvim-cmp' }, -- Required + { 'hrsh7th/cmp-nvim-lsp' }, -- Required + { 'L3MON4D3/LuaSnip' }, -- Required + } + }) + use({ + 'vinicius507/norme.nvim', + requires = { 'jose-elias-alvarez/null-ls.nvim' } + }) +end) diff --git a/.config/nvim/lua/tosu/remap.lua b/.config/nvim/lua/tosu/remap.lua new file mode 100644 index 0000000..4ca543d --- /dev/null +++ b/.config/nvim/lua/tosu/remap.lua @@ -0,0 +1,35 @@ +vim.keymap.set("n", "pv", vim.cmd.Ex) +vim.keymap.set("n", "ca\"", "ci\"") +vim.keymap.set("n", "ca'", "ci'") + +vim.keymap.set("v", "J", ":m '>+1gv=gv") +vim.keymap.set("v", "K", ":m '<-2gv=gv") + +vim.keymap.set("n", "J", "mzJ`z") +vim.keymap.set("n", "", "zz") +vim.keymap.set("n", "", "zz") +vim.keymap.set("n", "n", "nzzzv") +vim.keymap.set("n", "N", "Nzzzv") + +vim.keymap.set("x", "p", "\"_dP") + +vim.keymap.set("n", "y", "\"+y") +vim.keymap.set("v", "y", "\"+y") +vim.keymap.set("n", "Y", "\"+Y") + +vim.keymap.set("n", "d", "\"_d") +vim.keymap.set("v", "d", "\"_d") + +vim.keymap.set("n", "Q", "") +vim.keymap.set("n", "f", function() + vim.lsp.buf.format() +end) + +-- vims quickfix feature, no idea how it works +-- vim.keymap.set("n", "", "cnextzz") +-- vim.keymap.set("n", "", "cprevzz") +-- vim.keymap.set("n", "k", "lnextzz") +-- vim.keymap.set("n", "j", "lprevzz") + +vim.keymap.set("n", "s", ":%s/\\<\\>//gI") +vim.keymap.set("n", "x", "!chmod +x %") diff --git a/.config/nvim/lua/tosu/set.lua b/.config/nvim/lua/tosu/set.lua new file mode 100644 index 0000000..d540767 --- /dev/null +++ b/.config/nvim/lua/tosu/set.lua @@ -0,0 +1,38 @@ +vim.opt.number = true +vim.opt.relativenumber = true + +vim.opt.ignorecase = true +vim.opt.smartcase = true + +vim.opt.tabstop = 4 +vim.opt.softtabstop = 4 +vim.opt.shiftwidth = 4 +vim.opt.expandtab = false + +vim.opt.smartindent = true + +vim.opt.wrap = false + +vim.opt.swapfile = false +vim.opt.backup = false +vim.opt.undodir = os.getenv('HOME') .. '/.vim/undodir' +vim.opt.undofile = true + +vim.opt.hlsearch = true +vim.opt.incsearch = true + +vim.opt.termguicolors = true + +vim.opt.scrolloff = 5 +vim.opt.signcolumn = 'yes' +vim.opt.isfname:append('@-@') + +vim.opt.list = true +-- optionally add ",eol:$" +vim.opt.listchars = 'tab:> ,trail:-' + +vim.opt.updatetime = 50 + +vim.opt.colorcolumn = '80' + +vim.g.mapleader = ' ' diff --git a/.config/nvim/plugin/packer_compiled.lua b/.config/nvim/plugin/packer_compiled.lua new file mode 100644 index 0000000..2298544 --- /dev/null +++ b/.config/nvim/plugin/packer_compiled.lua @@ -0,0 +1,209 @@ +-- Automatically generated packer.nvim plugin loader code + +if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then + vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"') + return +end + +vim.api.nvim_command('packadd packer.nvim') + +local no_errors, error_msg = pcall(function() + +_G._packer = _G._packer or {} +_G._packer.inside_compile = true + +local time +local profile_info +local should_profile = false +if should_profile then + local hrtime = vim.loop.hrtime + profile_info = {} + time = function(chunk, start) + if start then + profile_info[chunk] = hrtime() + else + profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 + end + end +else + time = function(chunk, start) end +end + +local function save_profiles(threshold) + local sorted_times = {} + for chunk_name, time_taken in pairs(profile_info) do + sorted_times[#sorted_times + 1] = {chunk_name, time_taken} + end + table.sort(sorted_times, function(a, b) return a[2] > b[2] end) + local results = {} + for i, elem in ipairs(sorted_times) do + if not threshold or threshold and elem[2] > threshold then + results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms' + end + end + if threshold then + table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)') + end + + _G._packer.profile_output = results +end + +time([[Luarocks path setup]], true) +local package_path_str = "/home/tosuman/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/tosuman/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/tosuman/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/tosuman/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/tosuman/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" +if not string.find(package.path, package_path_str, 1, true) then + package.path = package.path .. ';' .. package_path_str +end + +if not string.find(package.cpath, install_cpath_pattern, 1, true) then + package.cpath = package.cpath .. ';' .. install_cpath_pattern +end + +time([[Luarocks path setup]], false) +time([[try_loadstring definition]], true) +local function try_loadstring(s, component, name) + local success, result = pcall(loadstring(s), name, _G.packer_plugins[name]) + if not success then + vim.schedule(function() + vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {}) + end) + end + return result +end + +time([[try_loadstring definition]], false) +time([[Defining packer_plugins]], true) +_G.packer_plugins = { + LuaSnip = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/LuaSnip", + url = "https://github.com/L3MON4D3/LuaSnip" + }, + ["c_formatter_42.vim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/c_formatter_42.vim", + url = "https://github.com/cacharle/c_formatter_42.vim" + }, + ["cmp-nvim-lsp"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp", + url = "https://github.com/hrsh7th/cmp-nvim-lsp" + }, + gruvbox = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/gruvbox", + url = "https://github.com/ellisonleao/gruvbox.nvim" + }, + harpoon = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/harpoon", + url = "https://github.com/ThePrimeagen/harpoon" + }, + ["lsp-zero.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/lsp-zero.nvim", + url = "https://github.com/VonHeikemen/lsp-zero.nvim" + }, + ["mason-lspconfig.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim", + url = "https://github.com/williamboman/mason-lspconfig.nvim" + }, + ["mason.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/mason.nvim", + url = "https://github.com/williamboman/mason.nvim" + }, + monokai = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/monokai", + url = "https://github.com/patstockwell/vim-monokai-tasty" + }, + ["norme.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/norme.nvim", + url = "https://github.com/vinicius507/norme.nvim" + }, + ["null-ls.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/null-ls.nvim", + url = "https://github.com/jose-elias-alvarez/null-ls.nvim" + }, + ["nvim-cmp"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/nvim-cmp", + url = "https://github.com/hrsh7th/nvim-cmp" + }, + ["nvim-lspconfig"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", + url = "https://github.com/neovim/nvim-lspconfig" + }, + ["nvim-treesitter"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/nvim-treesitter", + url = "https://github.com/nvim-treesitter/nvim-treesitter" + }, + ["packer.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/packer.nvim", + url = "https://github.com/wbthomason/packer.nvim" + }, + playground = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/playground", + url = "https://github.com/nvim-treesitter/playground" + }, + ["plenary.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/plenary.nvim", + url = "https://github.com/nvim-lua/plenary.nvim" + }, + ["rose-pine"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/rose-pine", + url = "https://github.com/rose-pine/neovim" + }, + ["telescope.nvim"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/telescope.nvim", + url = "https://github.com/nvim-telescope/telescope.nvim" + }, + undotree = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/undotree", + url = "https://github.com/mbbill/undotree" + }, + ["vim-airline"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/vim-airline", + url = "https://github.com/vim-airline/vim-airline" + }, + ["vim-airline-themes"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/vim-airline-themes", + url = "https://github.com/vim-airline/vim-airline-themes" + }, + ["vim-fugitive"] = { + loaded = true, + path = "/home/tosuman/.local/share/nvim/site/pack/packer/start/vim-fugitive", + url = "https://github.com/tpope/vim-fugitive" + } +} + +time([[Defining packer_plugins]], false) + +_G._packer.inside_compile = false +if _G._packer.needs_bufread == true then + vim.cmd("doautocmd BufRead") +end +_G._packer.needs_bufread = false + +if should_profile then save_profiles() end + +end) + +if not no_errors then + error_msg = error_msg:gsub('"', '\\"') + vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') +end