跳转到内容

学习 vi 编辑器/让您的工作更轻松

来自维基教科书,开放书籍,开放世界

学习 vi 编辑器熟悉基本任务让您的工作更轻松高级任务详细信息Vi 克隆 (Vim基本导航模式提示和技巧对程序员有用的信息增强 VimVim 在 Windows 上VimL 脚本语言, Vile, BB vi)vi 参考


现在您应该知道使用vi的基础知识。但是,要真正让vi为您服务,了解以下内容以使您的工作更轻松可能会有所帮助。

更多关于命令

[编辑 | 编辑源代码]

假设您正在编辑文档,并且您希望删除十行 - 截至目前,唯一的方法是输入dd十次。或者如果您想删除正好七个字符 - 您必须输入x七次。一定有更好的方法!

幸运的是,vi 允许您增强大多数命令,以防您想重复该命令一定次数。这可以通过输入要重复该命令的次数来完成,然后是命令本身。

因此,如果您想删除十行,您将输入10dd。或者,如果您想删除七个字符,您将输入7x.

您也可以通过输入来重复上次执行的操作.(这是一个单点键击),在您想要重复上一次操作的位置进行单次重复操作。

因此,如果您想重复删除十行,如前面的示例所示,您可以反复按下.来一遍又一遍地执行此操作。

1. 键入句子早上好医生,今天过得怎么样?。删除“早上好”。

2. 现在使用单次重复操作,删除“今天过得怎么样”。

vi 允许您在运动方面获得更大的灵活性。有一些命令可以让您快速跳转到文档中的任何位置,例如 

  • 0移动到该行的开头
  • $移动到该行的结尾
  • ^移动到该行的第一个非空白字符

^以以下方式执行,如果该行是

            hello how are you

并且您的光标在 u 上,如果您输入^,则光标将位于 h 上。

此外,/命令允许您直接跳到文件中的某个模式。例如,如果您正在查找文本中“石榴”一词的下一个出现位置,如果您按/,然后输入石榴(您不需要进入插入模式)并按回车键,光标将跳到该词的下一个出现位置(如果存在)。如果您想向后搜索,您将执行相同的步骤,但使用?命令。要重复任何搜索,请输入//, ??,或者,键入/?并按回车键。您也可以按n跳转到下一个出现的位置,并且N跳转到上一个出现的位置。

命令和运动

[编辑 | 编辑源代码]

我们现在知道 vi 允许您输入一个数字来指定要执行某个操作的次数。现在考虑这个例子:您想删除一行中某个点之后的所有内容 - 您可以输入dw从光标位置到行尾的每个词,或者按住x,但这些例子很麻烦。幸运的是,vi 允许您做一些更快的操作。

对于某些命令,vi 允许您使用上一节中的方法指定位置。该位置是在命令之后指定的。例如,要删除到行尾的所有内容,您将输入d$.

其他例子

  • dt;将删除到下一个分号为止(这在使用分号来结束语句的 C 和 perl 等语言中很有用)。
  • d2}删除接下来的两段。
  • d4b删除上一个四个单词(或者,您可以输入4b4dw).


学习 vi 编辑器熟悉基本任务让您的工作更轻松高级任务详细信息Vi 克隆 (Vim基本导航模式提示和技巧对程序员有用的信息增强 VimVim 在 Windows 上VimL 脚本语言, Vile, BB vi)vi 参考

华夏公益教科书