VIM,启动

发布于 2023-08-10  125 次阅读


写在前面

对于在终端中编辑文本的需求,我们通常会选择vscode server,但是并不是所有服务器的性能都能装上vscode,抑或是在本地没有安装图像界面的时候修改配置文件之类的,一个好的终端文本编辑器的作用就体现出来了,通常的选择是nano,但是对于更加复杂的代码或者配置文件,选择vim 就很合理了。

vim的几种模式

大概用得上的一共有命令模式 输入模式 底线命令模式

我们第一次进入vim难免手足无措,因为默认就是命令模式,所以你是不能直接输入什么内容的,要输入内容我们需要切换至输入模式

直接输入

i在光标的当前位置开始输入文本
a在光标的下一个位置开始输入文本
o在当前行的下一行新建行,然后开始输入
O在当前行上方插入新行,然后开始输入

当然我们还有一些别的命令可能用得上

  • x -- 删除当前光标所在处的字符。
  • : -- 切换到底线命令模式,以在最底一行输入命令。
  • dd -- 删除当前行。
  • yy -- 复制当前行。
  • p(小写) -- 粘贴剪贴板内容到光标下方。
  • P(大写)-- 粘贴剪贴板内容到光标上方。
  • u -- 撤销上一次操作。
  • Ctrl + r -- 重做上一次撤销的操作。
  • :w -- 保存文件。底线命令模式
  • :q -- 退出 Vim 编辑器。底线命令模式
  • :q! -- 强制退出Vim 编辑器,不保存修改。底线命令模式

快速高效地编辑

首先是光标的导航

  • k或↑ 上移
  • j或↓ 下移
  • h或← 左移
  • l或→ 右移

也可以更大范围地来移动光标

  • ctrl+f 在文件中前移一页(相当于 page down)
  • ctrl+b 在文件中后移一页(相当于 page up)
  • ctrl+d 屏幕向下移动半页
  • ctrl+u 屏幕向上移动一页

狠狠地移动:

  • * 当光标停留在一个单词上,* 键会在文件内搜索该单词,并跳转到下一处;
  • # 当光标停留在一个单词上,# 在文件内搜索该单词,并跳转到上一处;
  • (/) 移动到 前/后 句 的开始;
  • {/} 跳转到 当前/下一个 段落 的开始。
  • g_ 到本行最后一个不是 blank 字符的位置。
  • fa 到下一个为 a 的字符处,你也可以fs到下一个为s的字符。
  • t, 到逗号前的第一个字符。逗号可以变成其它字符。
  • 3fa 在当前行查找第三个出现的 a。
  • F/T 和 f 和 t 一样,只不过是相反方向;

快速在某一页移动光标可以使用:

  • H 将光标移到屏幕上的起始行(或最上行)
  • M 将光标移到屏幕中间
  • L 将光标移到屏幕最后一行
  • G 将光标定位到文件最后一行起始位置
  • NG或Ngg 将光标定位到第 N 行的起始位置
  • gg 将光标定位到文件第一行起始位置
  • N(ENTER) 光标下移N行

安装一些必要的插件

首先需要给vim装一个插件管理

$ curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim