diff --git a/README.md b/README.md index 3c34326..56ed30c 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ - [x] LSP - [x] 调整配置文件缩进 -- [ ] Packer Plugins 懒加载 +- [x] Packer Plugins 懒加载 - [x] CMP snip换行后tab数量问题 - [x] CMP command 不区分大小写 - [x] CMP document border diff --git a/init.lua b/init.lua index 8eec7be..1d6c11d 100644 --- a/init.lua +++ b/init.lua @@ -1,17 +1,4 @@ +require 'impatient' require 'configs.options' require 'configs.keymaps' require 'configs.plugins.packer' - --- Plugins settings -require 'configs.plugins.themes' - -require 'configs.plugins.cmp' -require 'configs.plugins.comment' -require 'configs.plugins.lsp_installer' -require 'configs.plugins.better_escape' -require 'configs.plugins.autopairs' -require 'configs.plugins.gitsigns' - -require 'configs.plugins.nvimtree' -require 'configs.plugins.bufferline' - diff --git a/lua/configs/plugins/packer.lua b/lua/configs/plugins/packer.lua index f4eb2e5..b14bcdc 100644 --- a/lua/configs/plugins/packer.lua +++ b/lua/configs/plugins/packer.lua @@ -25,14 +25,43 @@ packer.init { return packer.startup(function(use) -- My plugins here use 'wbthomason/packer.nvim' - use 'windwp/nvim-autopairs' - use {'numToStr/Comment.nvim'} - use {'lewis6991/gitsigns.nvim' -- tag = 'release' -- To use the latest release + use 'lewis6991/impatient.nvim' + use { + 'windwp/nvim-autopairs', -- Can't lazyloaded because cmp-related + config = function() + require('configs.plugins.autopairs') + end + } + use { + 'numToStr/Comment.nvim', + event = {'BufRead', 'BufNewFile'}, + config = function() + require('configs.plugins.comment') + end + } + use { + 'lewis6991/gitsigns.nvim', + event = {'BufRead', 'BufNewFile'}, + config = function() + require('configs.plugins.gitsigns') + end + -- tag = 'release' -- To use the latest release + } + use { + 'max397574/better-escape.nvim', + event = 'InsertEnter', + config = function() + require('configs.plugins.better_escape') + end } - use {'max397574/better-escape.nvim'} -- CMP plugins - use {'hrsh7th/nvim-cmp'} + use { + 'hrsh7th/nvim-cmp', + config = function() + require('configs.plugins.cmp') + end + } use {'hrsh7th/cmp-nvim-lsp'} use {'hrsh7th/cmp-buffer'} use {'hrsh7th/cmp-path'} @@ -44,28 +73,61 @@ return packer.startup(function(use) use {'rafamadriz/friendly-snippets'} -- Snippets collection -- LSP - use {'neovim/nvim-lspconfig'} - use {'williamboman/nvim-lsp-installer'} + use { + 'neovim/nvim-lspconfig', + -- config = function() + -- require('configs.plugins.lsp_installer') + -- end + } + use { + 'williamboman/nvim-lsp-installer', + config = function() + require('configs.plugins.lsp_installer') + end + } -- UI Plugins + use {'kyazdani42/nvim-web-devicons'} use { 'kyazdani42/nvim-tree.lua', requires = {'kyazdani42/nvim-web-devicons' -- optional, for file icon - } + }, + config = function() + require('configs.plugins.nvimtree') + end } use { 'nvim-telescope/telescope.nvim', cmd = 'Telescope', requires = {{'nvim-lua/plenary.nvim'}} } - use {'akinsho/bufferline.nvim', tag = "*", requires = 'kyazdani42/nvim-web-devicons'} + use { + 'akinsho/bufferline.nvim', + tag = "*", + requires = 'kyazdani42/nvim-web-devicons', + config = function() + require('configs.plugins.bufferline') + end + } -- Themes use { "catppuccin/nvim", - as = "catppuccin" + as = "catppuccin", + config = function() + local catppuccin = require('catppuccin') + catppuccin.setup() + vim.cmd [[colorscheme catppuccin]] + end + } + use { + 'folke/tokyonight.nvim', + disable = true, + config = function() + vim.g.tokyonight_style = "night" + vim.cmd [[colorscheme tokyonight]] + end } - use {'folke/tokyonight.nvim'} -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins diff --git a/lua/configs/plugins/themes.lua b/lua/configs/plugins/themes.lua deleted file mode 100644 index bd5138d..0000000 --- a/lua/configs/plugins/themes.lua +++ /dev/null @@ -1,8 +0,0 @@ -local catppuccin = require('catppuccin') --- configure it -catppuccin.setup() - -vim.g.tokyonight_style = "night" - -vim.cmd[[colorscheme catppuccin]] --- vim.cmd[[colorscheme tokyonight]]