neovim
neovim是vim的进化版,比vim更强大,配置功能除了兼容Vimscript,还可以使用lua脚本(LuaJIT)进行配置。
可以从这里了解 neovim与vim的不同点 ,
下面总结一些主要的不同点:
- 默认配置文件路径不同
- Use $XDG_CONFIG_HOME/nvim/init.vim instead of .vimrc for your config.
- Use $XDG_CONFIG_HOME/nvim instead of .vim to store configuration files.
- Use $XDG_STATE_HOME/nvim/shada/main.shada instead of .viminfo for persistent session information
- 一些默认的配置,少量快捷键,autocmd有不同
- neovim增加了大量的新功能
- Removed legacy features
安装neovim
brew install neovim
配置neovim
与vim不同的是,neovim的配置默认位于路径$HOME/.config/nvim/
下。
install other tools
brew install lazygit
brew install ripgrep
brew install fd
config neovim
git clone git@github.com:chenjun305/nvim-config.git ~/.config/nvim
如果不是第一次配置nvim, 已经有~/.config/nvim/
配置,需要先进行备份。
# required
mv ~/.config/nvim{,.bak}
# optional but recommended
mv ~/.local/share/nvim{,.bak}
mv ~/.local/state/nvim{,.bak}
mv ~/.cache/nvim{,.bak}
常用插件
lazy.nvim
一个优秀的插件管理器, 其他插件都是通过lazy.nvim进行管理的。
which-key.nvim
快捷键提示功能。
telescope.nvim
强大的查找搜索功能。
im-select.nvim
我们在使用neovim输入中文时,总是会遇到1个问题,在insert模式下,我们用中文输入法输入中文,当我们通过
- 安装im-select命令
brew tap daipeihust/tap brew install im-select
安装完后可在shell下通过
which im-select
进行验证,和在nvim中通过:!which im-select
进行验证。$ which im-select ABRT ✘ /usr/local/bin/im-select $ im-select ✔ com.apple.keylayout.ABC
- 安装im-select.nvim插件 如果使用的是LazyVim时,创建
~/.config/nvim/lua/plugins/im-select.lua
文件,添加如下配置:return { { "keaising/im-select.nvim", opts = { default_command = "im-select" }, }, }
lazygit
terminal下lazygit
命令进入,nvim下通过<Leader>gg
自定义命令打开lazygit界面。
lazygit非常强大,有非常多的命令可以使用,详细可参考Lazygit Keybindings
初学者可先掌握一些常用命令就可满足大部分使用场景的需要。
-
<space>
光标在文件窗口时,可按空格键stage或unstage文件,相当于git add -- <file>
命令 -
c(小写)
命令相当于git commit
-
P(大写)
命令相当于git push
-
p(小写)
命令相当于git pull
keymaps
集成了 which-key.nvim , 有快捷键提示功能,按键后(比如空格)会提示可能的后续快捷键及相应的功能。