- 按下 CTRL-] 跳转到光标下的主题,按下 CTRL-O 返回(重复按可以返回更早位置)。
- Linux 下的配置文件在 .config/nvim/init.vim 中(是用 Lua 配置则改为 init.lua)。
- 如需快速上手 neovim 可在 normal 模式下输入 :Tutor 进行一个30分钟的实践教程。
- 要启动 neovim,请在终端中输入以下命令:
nvim file.txt #file.txt 可替换成你想打开或创建的任意文件名(文件不存在时会自动创建),注意文件的扩展名。
- 打开 neovim 后,会处于普通模式,该模式下只能预览文件内容或输入各种命令。
- 按下键盘的 i 进入插入模式(注意输入法为英文状态下才可正常进入插入模式)。
- 输入完你内容后按下 ESC 可返回普通模式。注意到在普通模式下按下冒号 : 光标会移动到窗口底部。
- 无论你处于何种模式,都可以通过按下 ESC 返回普通模式,有时需要按两次。
- 在普通模式下可以按 h j k l 来移动光标,或者按方向键也可以移动,但方向键会降低使用效率。
- 把光标移动到你要删除的字符,按下 x 可删除该字符(该按键不会改变你所处的模式)。
- 按下 dd 可以删除光标所在行(删除的内容保存在寄存器中)。
- 按下 J 可取消当前行与下一行之间的换行符,即两行合并为一行。
- 按下 u 可撤销上一次操作,在次按下可恢复倒数第二次操作,以此类推。
- i 键为在光标所在字符前插入,a 键为在光标所在字符后插入。
- 按下 o 键会在光标下方创建一个新的空行,并进入插入模式。
- 注意,在普通模式下按下冒号 : 后输入的命令,需要按回车键才可执行,下面就不在重复叙述。
- 普通模式下,输入 :q! 可不保存强制退出 neovim,:w 为保存,:wq 为保存并退出。
- 按下 w 可以跳到下一个单词开头,按下 b 可以返回到上一个单词开头。
- 按下 e 可以跳到下一个单词末尾,按下 ge 可以返回到上一个单词末尾。
- 可以在上述的按键前加上数字,进行多次跳转,如 3w 等于连续按3次 w 命令。
- 命令 f 可以在行内向前精确跳转,如按下 fh 可快速向光标前跳转到第一个以 “h” 开头的单词。 同样的在命令前加上数字,如按下 4fd 可以快速向前跳转到第四个以 “d” 开头的单词。F 命令为光标向左跳转。
- 按下 % 可以自动跳转到当前括号匹配的另一个括号。
- 数字加 j 可以向下跳转指定行数,如 3j 表示向下跳转3行。数字加 k 表示向上跳转指定行。
- 在普通模式下输入 :set number 可显示行号,输入 :set ruler 可在底部状态栏显示光标位置。
- 普通模式下输入 / 加需要搜索的单词,可向光标前全文搜索该单词,如 /word 搜索 word 单词,? 为向光标后全文搜索。
- 普通模式下输入 :set ignorecase 可以在搜索时忽略大小写。
- 普通模式下想要快速查找光标所在的单词,可按下 * 快速跳转下一个同样的单词,支持在命令前加数字。
- 可以在文章前面说的 init.vim 文件中加入配置代码,如下:
set number " 显示行号 set ruler " 状态栏显示光标信息 " 可继续在下面添加其他配置信息
- neovim 支持使用正则表达式来实现搜索。
- 命令 dw 可以删除光标所在的单词,加上数字可以删除数个单词,例如 d4w 删除4个单词。
- 命令 d$ 会删除从光标位置到行尾的内容。
- 命令 dd 会删除整行。
- 命令 r 加上你想替换的字符,如 ra 替换当前光标下的字符为 a。
- 可以通过按下 v 键进入可视模式,移动光标覆盖您想要操作的文本。
- 用 dd 删除的行可以用命令 p 粘贴到光标所在位置(可以把 dd 当作是剪切的意思)。
- 命令 yy 的作用是复制当前行,用法与 dd 一样。
- 以下是一些简单的配置。
set ignorecase " 设置忽略大小写 set backup " 设置备份 set history=50 " 设置历史记录保留50条 set nolangremap " 设置无语言重映射 set nowrap " 关闭长文本自动换行 set cmdheight=2 " 设置命令行高度等于2 set background=dark " 设置暗色背景,light 为设置亮色 set shiftwidth=4 " 使用4个空格 set autowrite " 切换文件时自动保存文件 syntax on " 启用语法高亮(注意在设置主题前先启用语法高亮) colorscheme evening " 设置一个名为 evening 的主题
- 普通模式下可以通过输入 :edit path/file.txt 打开一个新的任意文件(注意要先保存当前文件才可打开新文件)。
- 在终端里可通过 neovim 一次性打开多个文件,并通过 :next 命令切换下一个文件,命令__:previous__ 切换上一个。
nvim one.txt two.txt three.txt
- 可在终端中输入命令以只读新式打开文件。
nvim -R file.txt #仍可以通过加 ! 强制保存 nvim -M file.txt #全面禁止保存
- 通过命令 :saveas move.txt 另存为一个新的文件。
- 命令 :split 可以把当前文件上下分屏,命令 :split two.txt 将在另一窗口打开新文件。
- 命令 :only 会只保留当前窗口,关闭其他窗口(注意要保存过的文件才会关闭)。
- 命令 :vsplit 可以把当前文件左右分屏,具体使用与上面无异。
- 上述的命令都是在同一个窗口分屏,我们还可以通过 :tabedit new.txt 在新的标签页打开一个新文件。
- 可以通过快捷键 gt 在不同标签页内切换。
- 命令 :substitute 可以实现替换功能,默认仅对光标所在当前行有效,在命令前加 % 可表示所有行。
- 可将 substitute 缩写成 s, 如 :%s/Professor/Teacher/ 将所有行中的 Professor 更改为 Teacher。
- 默认只会更改第一个文本,可在结尾加 g 实现全部替换,如 :%s/one/two/g 把所有的 one 替换成two。
- 结尾加 p 可以打印替换的行,命令可以组合,如 :%s/one/two/gp
- 开头加上数字可以表示范围,如 :1,3s/one/two/g 表示替换1到3行的全部 one 变成 two。
- 在普通模式下按下 v 可以进入可视模式,可移动方向键选取文本。
- 普通模式下按下 CTRL-v 可以用矩形快的样式选取文本。
- 被矩形块选中的文本,按 I 后进入插入模式,输入完按 ESC 退出,会在所有被矩形快选中的文本开头插入相同的文字。
- 对选取的文本按下 c 可立即删除文本并进入到插入模式,输入完按 ESC 退出跟上面 I 效果一样。
- 对选取的文本按下大写 C 可立即删除所选文本的整行并进入到插入模式,输入完按 ESC 退出跟上面 I 效果一样。
- 对所选的人本按 r 而后在按任意字符可把所选中的文本全改成该字符。
- 按 gg 可以跳转到文件开头,按 G 则跳转到文件最后一行。
- 普通模式下按 CTRL-Z 会暂时挂起 neovim 进入 shell,在 shell 中输入 fg 可返回 neovim。
- 普通模式下输入 :!cmd 其中 cmd 可换成任意 linux 命令,如 :!ls 可在 neovim 执行 ls 命令。
- 输入 '0 可以返回上一次编辑的位置,同理 '1 ~ '9 为其他位置。
- 输入 :edit . 可进入类似任务树的界面打开文件。
- 输入 :pwd 可显示当前文件路径。
- 在一个 C 文件中,光标对头文件按 gf 会跳转到该头文件中查看。只要是有路径的文件皆可跳转,如超链接。
- 在插入模式下,当文件存在一个单词,在其他地方输入这个单词的前部分,按下 CTRL-P neovim 会自动补全。
- 有多个匹配补全项时,可以按 CTRL-N 选择下一个,类似与其他 IDE 的补全模式。
- 一些新增的配置
set showmatch " 显示括号匹配 set autoindent " 自动插入缩进 set softtabstop=4 " 缩进为4 set ignorecase " 忽略大小写