Skip to content

记录使用 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 来接管