Migrate nvim to lazy
This commit is contained in:
parent
d12500995f
commit
9c247820ef
|
@ -8,7 +8,8 @@
|
||||||
require('neo.option')
|
require('neo.option')
|
||||||
-- packer plugin manager
|
-- packer plugin manager
|
||||||
-- NOTE: 建议将自己的配置文件保存在 lua 的子目录中,避免配置模块名和插件名同名时加载失败
|
-- NOTE: 建议将自己的配置文件保存在 lua 的子目录中,避免配置模块名和插件名同名时加载失败
|
||||||
require('neo.pkg')
|
require('neo.lazy')
|
||||||
|
-- require('neo.pkg')
|
||||||
require('neo.lspconf')
|
require('neo.lspconf')
|
||||||
require('neo.lspmason')
|
require('neo.lspmason')
|
||||||
require('neo.lspsaga')
|
require('neo.lspsaga')
|
||||||
|
|
|
@ -1,87 +1,88 @@
|
||||||
local status_ok, indent_blankline = pcall(require, "indent_blankline")
|
local status_ok, indent_blankline = pcall(require, "ibl")
|
||||||
if not status_ok then
|
if not status_ok then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
vim.g.indent_blankline_buftype_exclude = {
|
-- vim.g.indent_blankline_buftype_exclude = {
|
||||||
"terminal",
|
-- "terminal",
|
||||||
"nofile",
|
-- "nofile",
|
||||||
"quickfix",
|
-- "quickfix",
|
||||||
"prompt",
|
-- "prompt",
|
||||||
}
|
|
||||||
|
|
||||||
vim.g.indent_blankline_filetype = {
|
|
||||||
'python',
|
|
||||||
'lua',
|
|
||||||
}
|
|
||||||
|
|
||||||
-- vim.g.indent_blankline_filetype_exclude = {
|
|
||||||
-- "alpha",
|
|
||||||
-- "dashboard",
|
|
||||||
-- "help",
|
|
||||||
-- "man",
|
|
||||||
-- "neogitstatus",
|
|
||||||
-- 'nerdtree',
|
|
||||||
-- 'vista',
|
|
||||||
-- "startify",
|
|
||||||
-- "packer",
|
|
||||||
-- "NvimTree",
|
|
||||||
-- "Trouble",
|
|
||||||
-- }
|
-- }
|
||||||
|
--
|
||||||
vim.g.indentLine_enabled = 1
|
-- vim.g.indent_blankline_filetype = {
|
||||||
-- vim.g.indent_blankline_char = "│"
|
-- 'python',
|
||||||
vim.g.indent_blankline_char = "▏"
|
-- 'lua',
|
||||||
-- vim.g.indent_blankline_char = "▎"
|
-- }
|
||||||
vim.g.indent_blankline_show_trailing_blankline_indent = false
|
--
|
||||||
vim.g.indent_blankline_show_first_indent_level = true
|
-- -- vim.g.indent_blankline_filetype_exclude = {
|
||||||
vim.g.indent_blankline_use_treesitter = true
|
-- -- "alpha",
|
||||||
vim.g.indent_blankline_show_current_context = true
|
-- -- "dashboard",
|
||||||
vim.g.indent_blankline_context_patterns = {
|
-- -- "help",
|
||||||
"class",
|
-- -- "man",
|
||||||
"return",
|
-- -- "neogitstatus",
|
||||||
"function",
|
-- -- 'nerdtree',
|
||||||
"method",
|
-- -- 'vista',
|
||||||
"^if",
|
-- -- "startify",
|
||||||
"^while",
|
-- -- "packer",
|
||||||
"jsx_element",
|
-- -- "NvimTree",
|
||||||
"^for",
|
-- -- "Trouble",
|
||||||
"^object",
|
-- -- }
|
||||||
"^table",
|
--
|
||||||
"block",
|
-- vim.g.indentLine_enabled = 1
|
||||||
"arguments",
|
-- -- vim.g.indent_blankline_char = "│"
|
||||||
"if_statement",
|
-- vim.g.indent_blankline_char = "▏"
|
||||||
"else_clause",
|
-- -- vim.g.indent_blankline_char = "▎"
|
||||||
"jsx_element",
|
-- vim.g.indent_blankline_show_trailing_blankline_indent = false
|
||||||
"jsx_self_closing_element",
|
-- vim.g.indent_blankline_show_first_indent_level = true
|
||||||
"try_statement",
|
-- vim.g.indent_blankline_use_treesitter = true
|
||||||
"catch_clause",
|
-- vim.g.indent_blankline_show_current_context = true
|
||||||
"import_statement",
|
-- vim.g.indent_blankline_context_patterns = {
|
||||||
"operation_type",
|
-- "class",
|
||||||
}
|
-- "return",
|
||||||
-- HACK: work-around for https://github.com/lukas-reineke/indent-blankline.nvim/issues/59
|
-- "function",
|
||||||
vim.wo.colorcolumn = "99999"
|
-- "method",
|
||||||
|
-- "^if",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent1 fg=#E06C75 gui=nocombine]]
|
-- "^while",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent2 fg=#E5C07B gui=nocombine]]
|
-- "jsx_element",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent3 fg=#98C379 gui=nocombine]]
|
-- "^for",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent4 fg=#56B6C2 gui=nocombine]]
|
-- "^object",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent5 fg=#61AFEF gui=nocombine]]
|
-- "^table",
|
||||||
-- vim.cmd [[highlight IndentBlanklineIndent6 fg=#C678DD gui=nocombine]]
|
-- "block",
|
||||||
-- vim.opt.list = true
|
-- "arguments",
|
||||||
-- vim.opt.listchars:append "space:⋅"
|
-- "if_statement",
|
||||||
-- vim.opt.listchars:append "space:"
|
-- "else_clause",
|
||||||
-- vim.opt.listchars:append "eol:↴"
|
-- "jsx_element",
|
||||||
|
-- "jsx_self_closing_element",
|
||||||
indent_blankline.setup({
|
-- "try_statement",
|
||||||
-- show_end_of_line = true,
|
-- "catch_clause",
|
||||||
-- space_char_blankline = " ",
|
-- "import_statement",
|
||||||
show_current_context = true,
|
-- "operation_type",
|
||||||
-- show_current_context_start = true,
|
-- }
|
||||||
-- char_highlight_list = {
|
-- -- HACK: work-around for https://github.com/lukas-reineke/indent-blankline.nvim/issues/59
|
||||||
-- "IndentBlanklineIndent1",
|
-- vim.wo.colorcolumn = "99999"
|
||||||
-- "IndentBlanklineIndent2",
|
--
|
||||||
-- "IndentBlanklineIndent3",
|
-- -- vim.cmd [[highlight IndentBlanklineIndent1 fg=#E06C75 gui=nocombine]]
|
||||||
-- },
|
-- -- vim.cmd [[highlight IndentBlanklineIndent2 fg=#E5C07B gui=nocombine]]
|
||||||
show_trailing_blankline_indent = false,
|
-- -- vim.cmd [[highlight IndentBlanklineIndent3 fg=#98C379 gui=nocombine]]
|
||||||
})
|
-- -- vim.cmd [[highlight IndentBlanklineIndent4 fg=#56B6C2 gui=nocombine]]
|
||||||
|
-- -- vim.cmd [[highlight IndentBlanklineIndent5 fg=#61AFEF gui=nocombine]]
|
||||||
|
-- -- vim.cmd [[highlight IndentBlanklineIndent6 fg=#C678DD gui=nocombine]]
|
||||||
|
-- -- vim.opt.list = true
|
||||||
|
-- -- vim.opt.listchars:append "space:⋅"
|
||||||
|
-- -- vim.opt.listchars:append "space:"
|
||||||
|
-- -- vim.opt.listchars:append "eol:↴"
|
||||||
|
--
|
||||||
|
-- indent_blankline.setup({
|
||||||
|
-- -- show_end_of_line = true,
|
||||||
|
-- -- space_char_blankline = " ",
|
||||||
|
-- show_current_context = true,
|
||||||
|
-- -- show_current_context_start = true,
|
||||||
|
-- -- char_highlight_list = {
|
||||||
|
-- -- "IndentBlanklineIndent1",
|
||||||
|
-- -- "IndentBlanklineIndent2",
|
||||||
|
-- -- "IndentBlanklineIndent3",
|
||||||
|
-- -- },
|
||||||
|
-- show_trailing_blankline_indent = false,
|
||||||
|
-- })
|
||||||
|
--
|
||||||
|
|
|
@ -0,0 +1,273 @@
|
||||||
|
-- stdpath('config') returns $HOME/.config/nvim
|
||||||
|
-- stdpath('data') returns $HOME/.local/share/nvim
|
||||||
|
|
||||||
|
-- Default lazypath
|
||||||
|
-- local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
local config_path = vim.fn.stdpath('config')
|
||||||
|
local lazyroot = config_path .. '/nvim'
|
||||||
|
local lazypath = config_path .. '/lazy/lazy.nvim'
|
||||||
|
if not vim.loop.fs_stat(lazypath) then
|
||||||
|
-- bootstrap lazy.nvim
|
||||||
|
-- stylua: ignore
|
||||||
|
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://mirror.ghproxy.com/https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
|
||||||
|
end
|
||||||
|
vim.opt.rtp:prepend(vim.env.LAZY or lazypath)
|
||||||
|
|
||||||
|
local lazyopts = {
|
||||||
|
defaults = {
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
spec = {
|
||||||
|
-- add LazyVim and import its plugins
|
||||||
|
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||||
|
-- import any extras modules here
|
||||||
|
-- { import = "lazyvim.plugins.extras.lang.typescript" },
|
||||||
|
-- { import = "lazyvim.plugins.extras.lang.json" },
|
||||||
|
-- { import = "lazyvim.plugins.extras.ui.mini-animate" },
|
||||||
|
-- import/override with your plugins
|
||||||
|
{ import = "plugins" },
|
||||||
|
},
|
||||||
|
|
||||||
|
git = {
|
||||||
|
-- defaults for the `Lazy log` command
|
||||||
|
-- log = { "-10" }, -- show the last 10 commits
|
||||||
|
log = { "-8" }, -- show commits from the last 3 days
|
||||||
|
timeout = 120, -- kill processes that take more than 2 minutes
|
||||||
|
url_format = "https://mirror.ghproxy.com/https://github.com/%s.git",
|
||||||
|
-- lazy.nvim requires git >=2.19.0. If you really want to use lazy with an older version,
|
||||||
|
-- then set the below to false. This should work, but is NOT supported and will
|
||||||
|
-- increase downloads a lot.
|
||||||
|
filter = true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
local plugins = {
|
||||||
|
{
|
||||||
|
"hrsh7th/nvim-cmp",
|
||||||
|
-- load cmp on InsertEnter
|
||||||
|
event = "InsertEnter",
|
||||||
|
-- these dependencies will only be loaded when cmp loads
|
||||||
|
-- dependencies are always lazy-loaded unless specified otherwise
|
||||||
|
dependencies = {
|
||||||
|
"hrsh7th/cmp-nvim-lsp",
|
||||||
|
"hrsh7th/cmp-buffer",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"williamboman/mason-lspconfig.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvimdev/lspsaga.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-lualine/lualine.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"akinsho/bufferline.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"kyazdani42/nvim-tree.lua",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"lukas-reineke/indent-blankline.nvim",
|
||||||
|
main = "ibl",
|
||||||
|
opts = {},
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"windwp/nvim-autopairs",
|
||||||
|
event = "InsertEnter",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"kylechui/nvim-surround",
|
||||||
|
version = "*", -- Use for stability; omit to use `main` branch for the latest features
|
||||||
|
event = "VeryLazy",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"phaazon/hop.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-tree/nvim-web-devicons",
|
||||||
|
},
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ishan9299/nvim-solarized-lua",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ray-x/go.nvim",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"simrat39/rust-tools.nvim",
|
||||||
|
ft = "rust",
|
||||||
|
lazy = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"HiPhish/nvim-ts-rainbow2",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- {
|
||||||
|
-- "HiPhish/rainbow-delimiters.nvim",
|
||||||
|
-- lazy = false,
|
||||||
|
-- dependencies = {
|
||||||
|
-- "nvim-treesitter/nvim-treesitter",
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
|
||||||
|
{
|
||||||
|
'numToStr/Comment.nvim',
|
||||||
|
opts = {
|
||||||
|
-- add any options here
|
||||||
|
},
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"f-person/git-blame.nvim",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"lewis6991/gitsigns.nvim",
|
||||||
|
config = function()
|
||||||
|
require('gitsigns').setup()
|
||||||
|
end
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"goolord/alpha-nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-tree/nvim-web-devicons",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"rafamadriz/friendly-snippets",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"L3MON4D3/LuaSnip",
|
||||||
|
-- follow latest release.
|
||||||
|
version = "v2.*", -- Replace <CurrentMajor> by the latest released major (first number of latest release)
|
||||||
|
-- install jsregexp (optional!).
|
||||||
|
build = "make install_jsregexp",
|
||||||
|
dependencies = {
|
||||||
|
"rafamadriz/friendly-snippets",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"hrsh7th/nvim-cmp",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-path",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-buffer",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- {
|
||||||
|
-- "saadparwaiz1/cmp_luasnip",
|
||||||
|
-- },
|
||||||
|
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-nvim-lsp",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-nvim-lua",
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
require("lazy").setup(plugins, lazyopts)
|
||||||
|
-- require("lazy").setup({
|
||||||
|
-- defaults = {
|
||||||
|
-- -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
|
||||||
|
-- -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
|
||||||
|
-- lazy = false,
|
||||||
|
-- -- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
|
||||||
|
-- -- have outdated releases, which may break your Neovim install.
|
||||||
|
-- version = false, -- always use the latest git commit
|
||||||
|
-- -- version = "*", -- try installing the latest stable version for plugins that support semver
|
||||||
|
-- },
|
||||||
|
--
|
||||||
|
-- install = { colorscheme = { "tokyonight", "habamax" } },
|
||||||
|
-- checker = { enabled = true }, -- automatically check for plugin updates
|
||||||
|
-- performance = {
|
||||||
|
-- rtp = {
|
||||||
|
-- -- disable some rtp plugins
|
||||||
|
-- disabled_plugins = {
|
||||||
|
-- "gzip",
|
||||||
|
-- -- "matchit",
|
||||||
|
-- -- "matchparen",
|
||||||
|
-- -- "netrwPlugin",
|
||||||
|
-- "tarPlugin",
|
||||||
|
-- "tohtml",
|
||||||
|
-- "tutor",
|
||||||
|
-- "zipPlugin",
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
--
|
||||||
|
-- })
|
||||||
|
|
Loading…
Reference in New Issue