Vim使用指南

致谢

本文章参考了王利涛的《嵌入式C语言自我修养——从芯片、编译器到操作系统》。

一、文件的操作

用Vim打开文件a.txt的命令为:

vim a.txt

Vim支持以下几种模式进行操作:

  • 普通模式:打开文件时的默认模式,在其他模式下按Esc键都可返回到该模式。
  • 插入模式:在普通模式下按i/a/o键进入该模式,进行文本编辑操作,不同之处在于插入字符的位置在光标之前还是之后。
  • 命令行模式:在普通模式下输入:后会进入该模式,在该模式下输入命令,如输入:set number:set nu可以显示行号,敲回车执行命令。
  • 可视化模式:在普通模式下按v键会进入可视化模式,在该模式下移动光标可以选中一块文本。按Shift+v可选中整行。然后可以进行复制y、剪切x、删除d、粘贴p、与上一行对齐=等文本操作。
  • 替换模式:在普通模式下通过光标选中一个字符,然后按r键,再输入一个字符,你会发现你输入的字符替换掉了原来那个被选中的字符。在该模式下进行文本替换很方便,省去了先删除再插入这种常规操作。

1. 光标逐字符移动

  • k:光标向上移动一个字符。
  • j:光标向下移动一个字符。
  • h:光标向左移动一个字符。
  • l:光标向右移动一个字符。

2. 光标逐单词移动

  • w:光标移动到下一个单词的开头。
  • b:光标移动到上一个单词的开头。
  • e:光标移动到下一个单词的词尾。
  • E:光标移动到下一个单词的词尾(忽略标点符号)。
  • ge:光标移动到上一个单词的词尾。
  • 2w:指定光标移动2次,移动到下下个单词的开头。

3. 光标逐行移动

  • $:光标移动到当前行的行尾。
  • 0:光标移动到当前行的行首。
  • ^:光标移动到当前行的第一个非空字符。
  • 2|:光标移动到当前行的第2列。
  • fx:光标移动到当前行的第1个字符x上。
  • 3fx:光标移动到当前行的第3个字符x上。
  • %:符号间的移动,在()/[]/{}之间跳跃。

4. 屏幕移动

  • 5G:光标跳转到第5行。
  • gg:光标移动到文件的开头。
  • G:光标移动到文件的末尾。
  • L:光标移动到当前屏幕的末尾。
  • M:光标移动到当前屏幕的中间。
  • Ctrl+g:查看光标的位置状态。
  • Ctrl+u:光标向上半屏滚动。
  • Ctrl+d:光标向下半屏滚动。
  • Ctrl+f:光标向前全屏滚动。
  • Ctrl+b:光标向后全屏滚动。

5. 文本的基本操作

  • i:在光标前面插入字符。
  • a:在光标后面追加字符。
  • I:在当前行的行首插入字符。
  • A:在当前行的行尾追加字符。
  • o:在光标的下一行插入字符。
  • x:剪切光标所在处的字符。
  • X:剪切光标左边的字符。
  • dw:删除当前单词。
  • dd:删除当前行。
  • 2dd:删除当前行和下一行。
  • yw:复制当前单词,使用时应确保光标位于单词开头,注意复制的内容只在Vim中有效。
  • yy:复制当前行。
  • p:粘贴,注意是粘贴到光标后面。
  • J:删除一个分行符,将当前行与下一行合并。
  • #:高亮显示光标处的单词。

6. 文本的查找与替换

  • :/string:在普通模式下输入/string并回车,即可正向往下查找字符串string,敲击n浏览下一个。
  • :?string:输入?string并回车,即可反向往上查找字符串string,敲击n浏览下一个。
  • :set hls:高亮显示光标处的单词,敲击n浏览下一个。
  • :s/old/new:将当前行的第一个字符串old替换为new
  • :s/old/new/g:将当前行的所有字符串old替换为new
  • :%s/old/new/g:将文件中所有字符串old替换为new
  • :%s/^old/new/g:将文件中所有以old开头的字符串替换为new

7. 文件的保存与退出

  • u:撤销上一步操作。
  • :q:若文件没有修改,则直接退出。
  • :q!:若文件已修改,则放弃修改,退出。
  • :wq:若文件已修改,则保存修改,退出。
  • :e!:若文件已修改,则放弃修改,恢复文件打开时的状态。
  • :w !sudo tee %:在普通用户模式下保存root读写权限的文件。

二、目录的操作

用Vim打开当前目录的命令为:

vim .

进入目录后,通过浏览,敲回车进入子目录或打开文件。当编辑完文件想返回至目录浏览状态时,有以下几种情况:

  • 未对文件做修改,则直接输入:b#
  • 对文件有改动且需要保存,则先输入:w,然后输入:b#
  • 对文件有改动但不需要保存,则先输入:e!,然后输入:b#

输入:q退出目录。

三、多屏幕操作

在浏览文件或目录时,可以输入:sp .以当前路径创建另一个屏幕。多屏幕的常用操作:

  • 光标移动至下一个屏幕:Ctrl+w+w
  • 退出单个屏::q:wq:q!——分别对应未改动时退出、保存改动并退出、忽略改动并退出。
  • 退出多个屏::qa:wqa:qa!——分别对应未改动时退出、保存改动并退出、忽略改动并退出。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值