- 基于 coc.nvim 强大特性,完整 LSP 支持,异步无阻塞代码补全
- 专注前端以及 Node.js 开发,精选 Vim 插件以及 coc.nvim 扩展
- 极速启动,延时加载 & 按需加载几乎全部插件(基于 Timer 特性)
- git clone this repo
- (maybe mkdir ~/.config/nvim)
- ln -s ~/wow-my-dotfiles/.vimrc ~/.config/nvim/init.vim
- ln -s ~/wow-my-dotfiles/coc-settings.json ~/.config/nvim/coc-settings.json
- Mac OS
- neovim >= 0.4.0 ( floatwindow feature )
- python3 support for neovim
pip3 install --user pynvim
brew tap homebrew/cask-fonts
brew install --cast font-hack-nerd-font
- .vimrc 基础配置,可开关是否加载插件 ( 基础配置已调优,足够在无插件情况下使用 )
- .plug.vim 插件配置
- 插件由两部分构成,vim-plug 方法块之间的声明以及对应的配置区域 ( 使用双花括号标记每个插件配置,便于导航 )
- 默认
<leader>
为 ;
可根据你的习惯修改
- 根据功能的首字母进行组合,充分利用了 a-z 的 26 个字母 ( 极少数为大写 ),便于记忆
- 可以敲击
<leader>
键,查看 vim-which-key 渲染出来的快捷键导航
<Space>
触发 coc 相关命令,也可以敲击 <Space>
键,查看 vim-which-key 渲染出来的快捷键导航
Keys |
Mode |
Description |
j + j |
Insert |
<Esc> |
Q + Q |
Normal |
:q! |
= |
Visual |
indent |
- |
Visual |
retab |
Y |
Normal |
y$ |
D |
Normal |
d$ |
<BackSpace> |
Visual |
d |
j |
Normal |
gj |
k |
Normal |
gk |
< |
Visual |
<gv |
> |
Visual |
>gv |
y |
Visual |
y`] |
p |
Normal |
p`] |
( |
Normal |
older change position |
) |
Normal |
newer change position |
- Emacs-Like Basic Motions ( Insert & Command Mode )
Keys |
Mode |
Description |
Ctrl + b |
Insert |
向左移动 |
Ctrl + f |
Insert |
向右移动 |
Ctrl + p |
Insert |
向上移动 |
Ctrl + n |
Insert |
向下移动 |
Ctrl + a |
Insert |
移到行首 |
Ctrl + e |
Insert |
移到行尾 |
Ctrl + o |
Insert |
生成新行 |
Ctrl + w |
Insert |
删除光标下整个单词 |
Ctrl + h |
Insert |
删除映射 BackSpace |
Ctrl + d |
Insert |
删除光标所在字符 |
Ctrl + u |
Insert |
当前光标删除到行首 |
Ctrl + b |
Command |
向左移动 |
Ctrl + f |
Command |
向右移动 |
Ctrl + p |
Command |
向上移动 |
Ctrl + n |
Command |
向下移动 |
Ctrl + a |
Command |
移动到行首 |
Ctrl + e |
Command |
移动到行尾 |
Ctrl + d |
Command |
删除光标所在字符 |
Ctrl + h |
Command |
删除映射 BackSpace |
Ctrl + u |
Command |
当前光标删除到行首 |
Ctrl + t |
Command |
回显当前路径 |
Keys |
Mode |
Description |
f |
Normal |
跳转到行首 ( 按理应该为 a,但 a 是内置命令字符 ) |
e |
Normal |
跳转到行尾 |
Keys |
Mode |
Description |
Ctrl + h |
Normal |
移动到左边窗口 |
Ctrl + l |
Noraml |
移动到右边窗口 |
Ctrl + j |
Normal |
移动到下边窗口 |
Ctrl + k |
Normal |
移动到上边窗口 |
<Space> [ |
Normal |
窗口宽度减 5 |
<Space> ] |
Normal |
窗口宽度加 5 |
Keys |
Mode |
Description |
Ctrl + t |
Normal |
新建 tab |
Ctrl + t |
Insert |
新建 tab |
<leader> q |
Normal |
关闭当前 tab |
<Tab> |
Normal |
切换活跃 tab |
<S-Tab> |
Normal |
反向切换活跃 tab |
Keys |
Mode |
Description |
Ctrl + p |
Normal |
CtrlP |
Keys |
Mode |
Description |
<leader> gc |
Normal |
git-commit |
<leader> gm |
Normal |
git-commit-msg |
<leader> gn |
Normal |
git-next-chunk |
<leader> go |
Normal |
git-open-browser |
<leader> gp |
Normal |
git-preview-chunk |
Keys |
Mode |
Description |
<leader> 数字 |
Normal |
数字[0-9]选择 tab |
<leader> ' |
Normal |
开发终端 |
<leader> - |
Normal |
下分屏 |
<leader> / |
Normal |
右分屏 |
<leader> a |
Normal |
显示单词类型文档 |
<leader> b |
Normal |
切换右侧菜单栏显隐 |
<leader> c |
Normal |
切换当前代码注释开关 |
<leader> c |
Visual |
切换当前代码注释开关 |
<leader> ca |
Normal |
代码辅助自动修复 |
<leader> d |
Normal |
显示类型 |
<leader> e |
Normal |
切换编辑模式 |
<leader> g |
Normal |
+git 相关 prefix,如上 |
<leader> ip |
Normal |
查找类型的实现 |
<leader> m |
Normal |
开始预览当前编辑的 markdown 文件 |
<leader> M |
Normal |
结束预览当前编辑的 markdown 文件 |
<leader> n |
Normal |
切换行号展示 ( number & relativenumber 混合显示 ) |
<leader> o |
Normal |
使用默认浏览器打开当前链接或搜索当前单词 |
<leader> p |
Normal |
调用 Prettier 命令进行代码自动风格纠正 |
<leader> q |
Normal |
保存并退出 Vim |
<leader> rr |
Normal |
运行当前文件代码 |
<leader> rf |
Normal |
搜索当前 symbol 引用 |
<leader> rn |
Normal |
当前 symbol 重命名 |
<leader> s |
Normal |
搜索当前 symbol |
<leader> sf |
Normal |
项目内搜索单词 |
<leader> t |
Normal |
切换左侧文件树显隐 |
<leader> td |
Normal |
显示类型定义 |
<leader> tt |
Normal |
显示当前单词的翻译 |
<leader> w |
Normal |
保存 |
<leader> W |
Normal |
强制保存 |
<leader> x |
Normal |
删除当前文件行尾多余空白 |
<leader> y |
Normal |
+empty |
<leader> z |
Normal |
切换代码折叠 |
Keys |
Mode |
Description |
<Space> c |
Normal |
Coc 可用命令列表 |
<Space> d |
Normal |
Coc 代码错误诊断列表 |
<Space> e |
Normal |
Coc 已安装扩展列表 |
<Space> l |
Normal |
Coc List 列表 |
<Space> o |
Normal |
Coc 代码大纲 |
<Space> r |
Normal |
Coc 重复上次操作 |
<Space> y |
Normal |
Coc yank 历史列表 |
Keys |
Mode |
Description |
cs[][] |
Normal |
快速替换成对符号 |
ds[] |
Normal |
快速删除成对符号内的内容 |
ysiw[] |
Normal |
快速添加成对符号 |
yss[] |
Normal |
快速为整句添加成对符号 |