TL;DR
主流三种配置结构对比
- 纯vim-script:局限性较高,可配置项少,适合轻度玩家;
- 纯lua:使用packer来进行插件管理,可配置项多,十分灵活,但没点lua基础的人用起来有点懵,比如我,适合高端玩家;
- vim-script + lua:我个人推荐使用这种配置方式,使用vim-plug来进行插件管理,几乎所有的neovim插件都可以用vim-plug来安装,而且插件列表内容要比packer更加简洁客观,结合了lua,可配置项又大大提升,用起来很是方便;
- 一个文件完事的玩家:vim-script里直接使用标签来运行lua相关配置,不推荐,lua插件多的话会让你的配置文件变得复杂,不好维护。
文件目录结构及说明
目录结构及说明:
> tree
.
├── custom.vim # 自定义的一些vim-script配置
├── debug-template # vim-vimspector插件模板目录(用于debug)
│ └── go-template # debug golang的模板
├── general.vim # 一般设置
├── init.vim # 初始化配置文件(主要)
├── keymaps.vim # 键盘映射配置文件,大部分是通用的键盘映射配置,不包含插件的键盘映射
├── lua # -- lua配置 ---
│ └── AGou # 配置文件命名空间,在init.vim中引进
│ ├── init.lua # 命名空间lua配置主入口文件
│ ├── lsp.lua
│ ├── nvim-autopairs.lua
│ ├── nvim-bufferline.lua
│ ├── nvim-cmp.lua
│ ├── nvim-diffview.lua
│ ├── nvim-gitsigns.lua
│ ├── nvim-lsp-installer.lua
│ ├── nvim-lspsaga.lua
│ ├── nvim-lualine.lua
│ ├── nvim-neoscroll.lua
│ ├── nvim-session-manager.lua
│ ├── nvim-signature.lua
│ ├── nvim-telescope.lua
│ ├── nvim-todo-comments.lua
│ ├── nvim-toggleterm.lua
│ ├── nvim-transparent.lua
│ ├── nvim-tree.lua
│ ├── nvim-treesitter.lua
│ └── nvim-whichkey.lua
├── push.sh
├── push2GitHub.sh # push到github的脚本
├── sessions # 会话管理器的数据存放目录
│ └── %usr%share%dict.vim
└── shpy-autoheader.vim # 自动文件头部的vim-script
截图部分
只介绍几个常用的(实际不止这些):
- 分屏,两个垂直分屏,一个水平分屏,左边nvim-tree,下面状态栏分别为lualine和tmux的menu bar
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- 悬浮终端,可直接在neovim中弹出终端进行使用,无需关闭或挂起neovim,或者在命令行模式运行,非常方便
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- 悬浮lazygit,很好用的一个终端git工具,tui可视化可进行快速提交推送拉取等等操作
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- Golang lsp智能提示,可显示函数签名以及一些相关的注释信息
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- 快速重命名函数,改变一处函数名称,可以自动改变其相关地方的名称
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- 文件内快速查找,快速查找当前光标下所出现的词
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- 悬浮函数定义,弹出悬浮窗来显示当前光标下的函数定义,使用gd命令可以直接跳转到函数的定义文件中
编辑切换为居中
添加图片注释,不超过 140 字(可选)
- lsp,自动将报错信息打印到行尾,右边为tagbar,可以显示函数和变量等目录树
编辑切换为居中
添加图片注释,不超过 140 字(可选)
写在最后
https://github.com/AGou-ops/dotfiles
如果大家觉得不错的话,可以点个star⭐️分享给更多人.
Done.