记录使用 neovim 的方式
插件管理器 与 配置框架
插件管理器,只负责将插件下载到电脑,并在启动时加载 (lazy.nvim、vim-plug 等)
配置框架,是帮你装好插件,调节好主题 (LazyVim、AstroNVim 等)
它也可以继续加插件,或者关掉自带的某个插件,配置是在 ~/.config/nvim/
光标管理
在非 Insert 模式,按 hjkl 调节光标
如果是标准 vim,它是认为你必须退出 insert 模式才能移动光标
在我这里,可以用 ctrl+o 来运行临时命令(这会短暂进入 Normal 模式),然后再点 hjkl 来移动,并返回 insert 模式(这确实有效但是很蠢)
感觉不如直接按 上下左右?
wbe 模式(重要)
| 按键 | 作用 |
|---|---|
| w | 跳到下个单词开头 |
| b | 跳回上个单词开头 |
| e | 跳到本单词/下个单词末尾 |
终端
ctrl + /
再按一次默认行为是关闭终端
切换焦点
必须在 Normal 模式下,按下 ctrl + hjkl 才能切换
隐藏文件
在 Normal 模式下,焦点在树上,按 ctrl + h
退出 insert 模式后,自动切换为英文输入法
我用 im-select 插件 + 小型脚本 来解决这个问题
ci*
c = change, i = insert
意思是,修改某处,并直接进入编辑模式
ci + ( [ { " 修改匹配的括号里的词,老的直接被清空,光标直接放在这里
ciw 删除光标所在单词
测试样例(example)
i 不只是能和 c 结合,前面也可以换成 d、v
d = delete
v = visual 选中
复制粘贴
复制 = yank
剪切 = 删除 = delete(被删除的词会自动进入剪贴板)
粘贴 = put
Vim 有自己独立的剪贴板,LazyVim 会让它和你系统剪切板同步
y 的用法和 c 一样,也是 yiw 之类的
yy 是复制当前行,y3w 是复制 3 个单词
f + 字符
按下 f 后,再按一个字符,光标会直接跳转到行内下一个该字母的位置
之后按 ; 继续向后,按 , 向前(如果坚持按,也可以跨行)
测试:int main (int a, int a1, int a4, int b) {}
. 重复上一次修改
在 Normal 模式下,按下 . 会直接重复上一次的操作。(适用于给多个变量增加前缀之类的)
测试:
suffix_a
suffix_b
VSCode Neovim
这是一个插件,让 VSCode 的编辑区由真实的 Neovim 来接管