neovim/lua/plugins.lua

113 lines
3.2 KiB
Lua

return require('packer').startup(function()
-- Packer can manage itself
use 'wbthomason/packer.nvim'
-- 文件树
use {
'nvim-tree/nvim-tree.lua',
requires = {
'nvim-tree/nvim-web-devicons', -- optional, for file icons
},
tag = 'nightly' -- optional, updated every week. (see issue #1193)
}
-- 欢迎页
use {
'goolord/alpha-nvim',
requires = { 'nvim-tree/nvim-web-devicons' },
config = function()
require 'alpha'.setup(require 'alpha.themes.startify'.config)
end
}
-- 主题
use { "ellisonleao/gruvbox.nvim" }
-- 代码缩略图
use 'simrat39/symbols-outline.nvim'
-- 状态栏
use 'feline-nvim/feline.nvim'
-- bufferline 标题栏
use { 'akinsho/bufferline.nvim', tag = "v3.*", requires = 'nvim-tree/nvim-web-devicons' }
-- golang ide
--auto complete
use 'hrsh7th/cmp-nvim-lsp'
use 'hrsh7th/cmp-buffer'
use 'hrsh7th/cmp-path'
use 'hrsh7th/cmp-cmdline'
use 'hrsh7th/nvim-cmp'
use 'hrsh7th/cmp-vsnip'
use 'hrsh7th/vim-vsnip'
vim.opt.completeopt = { "menu", "menuone", "noselect" }
use({
'ray-x/navigator.lua',
requires = {
{ 'ray-x/guihua.lua', run = 'cd lua/fzy && make' },
{ 'neovim/nvim-lspconfig' },
},
})
use 'ray-x/go.nvim'
use 'ray-x/guihua.lua' -- recommended if need floating window support
use { "williamboman/mason.nvim", "williamboman/mason-lspconfig.nvim" }
use { 'neovim/nvim-lspconfig', config = function()
require('lspconfig').gopls.setup {}
end
}
use 'nvim-treesitter/nvim-treesitter'
use 'mfussenegger/nvim-dap'
use 'theHamsta/nvim-dap-virtual-text'
use { "rcarriga/nvim-dap-ui", requires = { "mfussenegger/nvim-dap" } }
-- 当前工作目录
use {
"ahmedkhalf/project.nvim",
config = function()
require("project_nvim").setup {
exclude_dirs = { ".git", "node_modules", "dist", "target" },
}
end
}
-- 空白缩进
use "lukas-reineke/indent-blankline.nvim"
-- 改善启动时间
use 'lewis6991/impatient.nvim'
-- 终端管理
use { "akinsho/toggleterm.nvim", tag = '*', config = function()
require("toggleterm").setup()
end
}
-- TODO管理
use {
"folke/todo-comments.nvim",
requires = "nvim-lua/plenary.nvim",
config = function()
require("todo-comments").setup {}
end
}
-- git 管理
use {
'lewis6991/gitsigns.nvim',
}
-- 注释管理
use {
'numToStr/Comment.nvim',
config = function()
require('Comment').setup()
end
}
-- coc 代码提示
use { 'neoclide/coc.nvim', branch = 'release' }
-- 搜索
use {
'nvim-telescope/telescope.nvim', tag = '0.1.1',
requires = { { 'nvim-lua/plenary.nvim' } }
}
-- 自动保存
use({
"Pocco81/auto-save.nvim",
config = function()
require("auto-save").setup {
-- your config goes here
-- or just leave it empty :)
}
end,
})
-- 通知
use 'rcarriga/nvim-notify'
end)