diff --git a/nvim/.config/nvim/init.vim b/nvim/.config/nvim/init.vim index d07451ca..91cde661 100644 --- a/nvim/.config/nvim/init.vim +++ b/nvim/.config/nvim/init.vim @@ -1,9 +1,3 @@ -function! s:LoadPlugins() - call plug#begin('~/.local/share/nvim/plugins') - source ~/.config/nvim/plugins.vim - call plug#end() -endfunction - function! s:SourceConfigFilesIn(directory) let directory_splat = '~/.config/nvim/' . a:directory . '/*' for config_file in split(glob(directory_splat), '\n') @@ -13,8 +7,6 @@ function! s:SourceConfigFilesIn(directory) endfor endfunction -call s:LoadPlugins() -call s:SourceConfigFilesIn('plugins') - lua require("opdavies") +call s:SourceConfigFilesIn('plugins') diff --git a/nvim/.config/nvim/lua/opdavies/init.lua b/nvim/.config/nvim/lua/opdavies/init.lua index bf8d6717..c0a8c4dd 100644 --- a/nvim/.config/nvim/lua/opdavies/init.lua +++ b/nvim/.config/nvim/lua/opdavies/init.lua @@ -56,6 +56,60 @@ vim.api.nvim_set_keymap('v', '', '', options) vim.api.nvim_set_keymap('v', '', '', options) vim.api.nvim_set_keymap('n', 'k', ':nohlsearch', options) + +require('packer').startup(function() + -- Utilities + use 'cakebaker/scss-syntax.vim' + use 'christoomey/vim-sort-motion' + use 'christoomey/vim-tmux-navigator' + use 'editorconfig/editorconfig-vim' + use 'icatalina/vim-case-change' + use 'lewis6991/gitsigns.nvim' + use 'lukas-reineke/indent-blankline.nvim' + use 'machakann/vim-highlightedyank' + use 'mattn/emmet-vim' + use 'miyakogi/seiya.vim' + use 'norcalli/nvim-colorizer.lua' + use 'nvim-lua/plenary.nvim' + use 'nvim-lua/popup.nvim' + use 'preservim/nerdcommenter' + use 'sheerun/vim-polyglot' + use 'tpope/vim-surround' + use 'vim-test/vim-test' + use 'voldikss/vim-floaterm' + use { 'mg979/vim-visual-multi', branch = 'master' } + + -- Themes + use 'arcticicestudio/nord-vim' + use 'nanotech/jellybeans.vim' + use 'tjdevries/colorbuddy.vim' + use 'tjdevries/gruvbuddy.nvim' + + -- Navigation + use 'ThePrimeagen/harpoon' + + -- Treesitter + use 'JoosepAlviste/nvim-ts-context-commentstring' + use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' } + + -- Completion + use 'L3MON4D3/LuaSnip' + use 'hrsh7th/cmp-buffer' + use 'hrsh7th/cmp-nvim-lsp' + use 'hrsh7th/cmp-path' + use 'hrsh7th/nvim-cmp' + use 'onsails/lspkind-nvim' + use 'saadparwaiz1/cmp_luasnip' + use { 'tzachar/cmp-tabnine', run = './install.sh' } + + -- LSP + use 'neovim/nvim-lspconfig' + + -- Telescope + use 'nvim-telescope/telescope.nvim' + use { 'nvim-telescope/telescope-fzf-native.nvim', run = 'make' } +end) + require "opdavies.plugins.colours" require "opdavies.plugins.completion" require "opdavies.plugins.floaterm" diff --git a/nvim/.config/nvim/plugin/packer_compiled.lua b/nvim/.config/nvim/plugin/packer_compiled.lua new file mode 100644 index 00000000..1fa61d55 --- /dev/null +++ b/nvim/.config/nvim/plugin/packer_compiled.lua @@ -0,0 +1,229 @@ +-- 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() + + 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 + + _G._packer = _G._packer or {} + _G._packer.profile_output = results +end + +time([[Luarocks path setup]], true) +local package_path_str = "/home/opdavies/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/opdavies/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/opdavies/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/opdavies/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/opdavies/.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)) + 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/opdavies/.local/share/nvim/site/pack/packer/start/LuaSnip" + }, + ["cmp-buffer"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/cmp-buffer" + }, + ["cmp-nvim-lsp"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp" + }, + ["cmp-path"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/cmp-path" + }, + ["cmp-tabnine"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/cmp-tabnine" + }, + cmp_luasnip = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/cmp_luasnip" + }, + ["colorbuddy.vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/colorbuddy.vim" + }, + ["editorconfig-vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/editorconfig-vim" + }, + ["emmet-vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/emmet-vim" + }, + ["gitsigns.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/gitsigns.nvim" + }, + ["gruvbuddy.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/gruvbuddy.nvim" + }, + harpoon = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/harpoon" + }, + ["indent-blankline.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim" + }, + ["jellybeans.vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/jellybeans.vim" + }, + ["lspkind-nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/lspkind-nvim" + }, + nerdcommenter = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nerdcommenter" + }, + ["nord-vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nord-vim" + }, + ["nvim-cmp"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nvim-cmp" + }, + ["nvim-colorizer.lua"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua" + }, + ["nvim-lspconfig"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nvim-lspconfig" + }, + ["nvim-treesitter"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nvim-treesitter" + }, + ["nvim-ts-context-commentstring"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring" + }, + ["plenary.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/plenary.nvim" + }, + ["popup.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/popup.nvim" + }, + ["scss-syntax.vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/scss-syntax.vim" + }, + ["seiya.vim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/seiya.vim" + }, + ["telescope-fzf-native.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim" + }, + ["telescope.nvim"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/telescope.nvim" + }, + ["vim-case-change"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-case-change" + }, + ["vim-floaterm"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-floaterm" + }, + ["vim-highlightedyank"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-highlightedyank" + }, + ["vim-polyglot"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-polyglot" + }, + ["vim-sort-motion"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-sort-motion" + }, + ["vim-surround"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-surround" + }, + ["vim-test"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-test" + }, + ["vim-tmux-navigator"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator" + }, + ["vim-visual-multi"] = { + loaded = true, + path = "/home/opdavies/.local/share/nvim/site/pack/packer/start/vim-visual-multi" + } +} + +time([[Defining packer_plugins]], false) +if should_profile then save_profiles() end + +end) + +if not no_errors then + vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') +end diff --git a/nvim/.config/nvim/plugins.vim b/nvim/.config/nvim/plugins.vim deleted file mode 100644 index da39303d..00000000 --- a/nvim/.config/nvim/plugins.vim +++ /dev/null @@ -1,51 +0,0 @@ -" Utilities -Plug 'cakebaker/scss-syntax.vim' -Plug 'christoomey/vim-sort-motion' -Plug 'christoomey/vim-tmux-navigator' -Plug 'editorconfig/editorconfig-vim' -Plug 'icatalina/vim-case-change' -Plug 'lewis6991/gitsigns.nvim' -Plug 'lukas-reineke/indent-blankline.nvim' -Plug 'machakann/vim-highlightedyank' -Plug 'mattn/emmet-vim' -Plug 'mg979/vim-visual-multi', {'branch': 'master'} -Plug 'miyakogi/seiya.vim' -Plug 'norcalli/nvim-colorizer.lua' -Plug 'nvim-lua/plenary.nvim' -Plug 'nvim-lua/popup.nvim' -Plug 'preservim/nerdcommenter' -Plug 'sheerun/vim-polyglot' -Plug 'tpope/vim-surround' -Plug 'vim-test/vim-test' -Plug 'voldikss/vim-floaterm' - -" Themes -Plug 'arcticicestudio/nord-vim' -Plug 'dracula/vim', { 'as': 'dracula' } -Plug 'nanotech/jellybeans.vim' -Plug 'tjdevries/colorbuddy.vim' -Plug 'tjdevries/gruvbuddy.nvim' - -" Navigation -Plug 'ThePrimeagen/harpoon' - -" Treesitter -Plug 'JoosepAlviste/nvim-ts-context-commentstring' -Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} - -" Completion -Plug 'L3MON4D3/LuaSnip' -Plug 'hrsh7th/cmp-buffer' -Plug 'hrsh7th/cmp-nvim-lsp' -Plug 'hrsh7th/cmp-path' -Plug 'hrsh7th/nvim-cmp' -Plug 'onsails/lspkind-nvim' -Plug 'saadparwaiz1/cmp_luasnip' -Plug 'tzachar/cmp-tabnine', { 'do': './install.sh' } - -" LSP -Plug 'neovim/nvim-lspconfig' - -" Telescope -Plug 'nvim-telescope/telescope-fzf-native.nvim', {'do': 'make'} -Plug 'nvim-telescope/telescope.nvim'