Neovim

neovim

作者:解琛
时间:2020 年 9 月 13 日

theniceboy/nvim

一、基本操作

1.1 最基本的键位

快捷键说明
k切换至 插入 : 一种模式 (在原版 Vim 中与 i 键相同);
Q退出当前 Vim 窗口 (在原版 Vim 中与命令 :q 相同);
S保存当前文件 (在原版 Vim 中与命令 :w 相同)。

因为 i 键被改为了 k 键, 所有包含 i 键的命令都必须将 i 改为 k (比如 ciw 应被更正为 ckw)。

1.2 改变了光标的移动方式

Colemak系的键盘布局哪个好?

快捷键行为等于 (QWERTY 键盘布局中的哪些键)
u将光标向上移动一行k
e将光标向下移动一行j
n将光标向左移动一格h
i将光标向右移动一格l
U将光标向上移动五行5k
E将光标向下移动五行5j
N将光标移至当前行的第一个字符0
I将光标移至当前行的最后一个字符$
Ctrl u将视角向上移动五行而不移动光标Ctrl y
Ctrl e将视角向下移动五行而不移动光标Ctrl e
h将光标移至当前单词的末尾e
W将光标移至五个单词后的末尾5w
B将光标移至五个单词前的开头5b

1.3 改变了插入模式的键位

快捷键行为
Ctrl a将光标移至当前行的末尾
Ctrl u将光标所在的字母移至当前行的末尾

1.4 改变了在普通模式下的操作键位

快捷键行为
l撤销
<反向缩进
>缩进
SPACE SPACE删除下一个 <++> 并进入插入模式

1.5 其它在普通模式下有用的键位

快捷键行为
r编译/运行当前文件
SPACE s c开关拼写检查
SPACE d w寻找近处的重复单词
SPACE t t将四个空格转换为制表符
SPACE o折叠代码
SPACE -上一个快速修复位置
SPACE +下一个快速修复位置
\ p显示当前文件的路径
SPACE /在当前窗口下方新建一个终端窗口

1.6 增加了在可视模式下的命令

快捷键行为
Y复制选中文本至系统剪切板

二、窗口管理

2.1 通过分裂屏幕创造窗口

快捷键行为
s u新建一个分屏并把它放置在当前窗口的上面
s e新建一个分屏并把它放置在当前窗口的下面
s n新建一个分屏并把它放置在当前窗口的左边
s i新建一个分屏并把它放置在当前窗口的右边
s v将两个分屏垂直放置
s h将两个分屏水平放置
s r v将所有分屏垂直放置
s r h将所有分屏水平放置

2.2 切换不同的窗口

快捷键行为
SPACE + w移至下一个窗口
SPACE + n移至左边的窗口
SPACE + i移至右边的窗口
SPACE + u移至上面的窗口
SPACE + e移至下面的窗口

2.3 为不同的窗口调整大小

用方向键更改当前窗口的大小。

2.4 关闭窗口

快捷键行为
Q关闭当前窗口
SPACE q关闭当前窗口下面的窗口 (如果下面没有窗口,则当前窗口将关闭)

三、标签页管理

快捷键行为
t u新建一个标签页
t n移至左侧标签页
t i移至右侧标签页
t m n将当前标签页向左移动一格
t m i将当前标签页向右移动一格

四、终端键盘快捷键

快捷键行为
Ctrl n退出终端输入模式

五、插件快捷键

5.1 自动补全

5.1.1 COC (自动补全)

快捷键行为
Space y打开剪切板历史
gd列出定义列表
gr列出参考列表
gi待办事项清单
gy转至类型定义
Space r n重命名变量

5.1.2 Ultisnips(代码片段)

快捷键行为
Ctrl e召唤一个代码片段
Ctrl n在一个代码片段中前移光标
Ctrl e在一个代码片段中后移光标

5.1.3 vimspector (代码调试插件)

快捷键函数
F5继续调试,如果不在一个调试中则开始进行调试
F3终止调试
F4用相同的配置重新开始调试
F6暂停调试
F9在当前行上切换行的断点
F8在光标下为表达式添加函数断点
F10完成步骤
F11下一步骤
F12退出当前函数范围

5.1.4 coc-explorer - 文件浏览器

快捷键行为
tt打开文件浏览器
?查看帮助 (在浏览器中)

5.1.5 rnvimr - 文件浏览器

确定已经安装了 ranger。

R 键打开 ranger (文件选择器)

在 rnvimr (ranger) 中, 你可以:

快捷键行为
Ctrl t在新标签页中打开文件
Ctrl x上下分裂打开当前文件
Ctrl v左右分裂打开所选文件

5.1.6 FZF - 模糊文件查找器

快捷键行为
Ctrl p模糊查找文件
Ctrl u向上移动一格
Ctrl e向下移动一格
Ctrl w模糊查找缓冲区
Ctrl f模糊查找文件内容
Ctrl h模糊查找历史文件
Ctrl t模糊查找标签

5.1.7 xtabline - 精致的顶栏

快捷键行为
to开关循环标签页模式
\p显示当前路径

5.2 文字编辑

5.2.1 vim-table-mode

快捷键行为
SPACE t m开关表格模式
SPACE t r重组表格

5.2.2 Undotree

快捷键行为
Shift + L打开撤回历史
u更新的记录
e更老的记录

5.2.3 vim-multiple-cursors

快捷键行为
Ctrl+k选择下一个键 (多重光标)
Alt+k选择所有键 (多重光标)
Ctrl+p选择上一个键
Ctrl+s跳过键
Esc退出多重光标

5.2.4vim-surround

想要添加包裹符号 (string -> "string"):

string

按下: yskw':

'string'

想要修改包裹符号。

'string'

按下: cs'":

"string"

5.2.5 vim-subversive

新的操作员: s:

您可以执行 s<操作> 来使用用默认的寄存器 (或提供的显式寄存器) 的内容替换运动提供的文本对象。

例如,您可以执行 skw 将光标下的当前单词替换为当前yank,或执行 skp 替换段落,依此类推。

5.2.6 vim-easy-align

在普通或可视模式下按 ga + 符号 可以根据 符号对齐文本。

5.2.7 AutoFormat

\ f 开启格式化模式。

5.2.8 vim-markdown-toc (为 Markdown 文件生成目录)

Markdown 文件中, 按下 :Gen 打开菜单,你将会看到可选选项。

5.3 缓冲区内导航

5.3.1 vim-easy-motion

' 键和一个 字母 跳转至 字母 (类似 Emacs 的 AceJump)。

5.3.2 Vista.vim

T 打开函数与变量列表。

5.3.3 vim-signiture - 书签

快捷键行为
m<letter>在当前行添加或删除书签
m/列出所有书签
mSPACE在缓冲区中跳转到下一个书签
mt在当前行添加或删除书签
ma在当前行添加注释
ml显示所有的书签
mi下一个书签
mn上一个书签
mC清除一个书签
mX清除所有书签
mu将书签往上提一行
me将书签往下拉一行
SPC g将书签移至任意行

5.4 Far.vim - 查找与替换

按下 SPACE f r 在工作目录中搜索。

5.5 Git 相关

5.5.1 Git vim-gitgutter

快捷键行为
H在当前行显示 Git 代码块
SPACE g -去往上一个 Git 代码块
SPACE g +去往下一个 Git 代码块
SPACE g f折叠所有除代码块以外的行

5.5.2 fzf-gitignore

Space g i 来创建一个 .gitignore 文件。

5.3 其它

5.3.1 vim-calendar

快捷键行为
\ \显示时钟
\ c显示日历

5.3.2 Goyo - 不会分心地工作

按下 g y 开关 Goyo。

5.3.3 suda.vim

想要忘记以前痛苦的 sudo vim ...? 只需要在 Vim 中执行 :sudowrite 或者 :sw

5.3.4 coc-translator

按下 ts翻译光标所在的单词

5.3.5 自定义代码片段补全(Markdown)

快捷键创建的文字
,n
,b粗体文字
,s被划去的文字
,i斜体文字
,d代码块
,c大的 代码块
,m- [ ] 清单
,p图片
,a链接
,1# H1
,2## H2
,3### H3
,4#### H4
,l--------

,f 去往下一个 <++> (占位符)。

,w 去往下一个 <++> (占位符) 并帮你按下 Enter

5.3.6 打印文本

tx 然后输入你想要的文字。

tx Hello<Enter>

 _   _      _ _
| | | | ___| | | ___
| |_| |/ _ \ | |/ _ \
|  _  |  __/ | | (_) |
|_| |_|\___|_|_|\___/

5.3.7 自定义垂直光标移动

此 NeoVim 配置包含了一套对 Colemak 用户量身定制的垂直光标移动, 它位于 cursor.vim 中, 并且可以替代 “数字 + 上 / 下” 的案件组合。

为了将光标向上移至 x 行, 可以按下 [ 键, 并将 Colemak 键盘布局的中间行 (“arstdhneio”) 视为从 1 到 0 的数字, 按所需的数字, 再按下空格键以跳转至 x 行之上。

要向下移动光标, 按 ' 键而不是 [ 键, 其余部分相同。

例:

快捷键行为
[ a o o SPACE将光标向上移动 100 行
' a r s SPACE将光标向下移动123行
[ d o SPACE将光标向上移动50行

注意: 目前, 使用此移动方式, 你最多只能垂直移动 199 行!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

解琛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值