高恪守编辑器 VIM-把持篇(2)

Toy Posted in Featured Post, Text Editor, Tutorials

有用的挪动大大段的文本

运用可视选择(visual selections)和相宜的选择体例

不像末端的 VI,VIM 批准你高亮(选择)一些文本,并且举行把持。这里有三种可视选择体例:

  • v:按字符选择。经常运用的体例,以是亲身检修考试一下它。
  • V:按行选择。这在你想拷贝或许挪动良多行的文本的时辰特殊有用。
  • <C-V>:按块选择。特殊很是强大大,只在很少的编辑器中才有这样的功用。你可以选择一个矩形块,并且在这个矩形内里的文本会被高亮。

在选择体例的时辰运用下面所述的偏向键和命令(motion)。好比,vwww,会高光亮标前面的三个词。Vjj 将会高亮此后行以及下面两行。

在可视选择体例下剪切和拷贝

一旦你高亮了选区,你或许想举行一些把持:

  • d:剪贴选择的内容到剪贴板。
  • y:拷贝选择的内容到剪贴板。
  • c:剪贴选择的内容到剪贴板并且进入拔出体例。

在非可视选择体例下剪切和拷贝

假若你很清楚的晓得你想拷贝或许剪切什么,那你底子底细就不需求进入可视选择体例。这样也会虚耗时分:

  • d{motion}:剪切 motion 命令跨过的字符到剪贴板。好比,dw 会剪切一个词而 dfS 会将从此后光标到下一个 S 之间的字符剪切至剪贴板。
  • y{motion}:和下面类似,不过是拷贝。
  • c{motion}:和 d{motion} 类似,不过最初进入拔出体例。
  • dd:剪妥当前行。
  • yy:拷贝此后行。
  • cc:剪妥当前行并且进入拔出体例。
  • D:剪切从光标位置到行尾到剪贴板。
  • Y:拷贝此后行。
  • C:和 D 类似,最初进入拔出体例。
  • x:剪妥当前字符到剪贴板。
  • s:和x类似,不过最初进入拔出体例。

粘贴

粘贴很巨大,按 p。

运用多重剪贴板

良多编辑器都只供给了一个剪贴板。VIM 有良多。剪贴板在 VIM 内里被称为寄存器(Registers)。你可以列出此后界说的悉数寄存器名和它们的内容,命令为“:reg”。最好运用小写字母来作为寄存器的称呼,由于大大写的有些被 VIM 占用了。

运用寄存器的命令为双引号 “。

好比:我们要拷贝此后行到寄存器 k。你应该按 “kyy。(你也可以运用 V”ky。为什么这样也可以呢?)目下当今此后行应该已经存在了寄存器 k 内里直到你又拷贝了一些工具进入寄存器 k。目下当今你可以运用命令 “kp 来粘贴寄存器 k 内里的内容到你想要的位置。

阻止屡屡

令人惊异的 . 命令

在 VI 内里,输入 . (小数点标记),将会屡屡你输入的上一个命令。好比,你上个命令为“dw”(删除一个词),VI 将会接着再删除一个词。

运用数字

运用数字也是 VIM 强大大的并且很虚耗时分的严重特性之一。在良多 VIM 的命令之前都可以运用一个数字,这个数字将会陈说 VIM 这个命令需求实行屡屡。好比:

  • 3j 将会把光标向下挪动三行。
  • 10dd 将会删除十行。
  • y3″ 将会拷贝从此后光标到第三个出现的引号之间的内容到剪贴板。

数字是扩展 motion 命令感染感动域特殊很是有用的体式样式。

纪录宏

有时分,你会发现你本身在文章的每段或许每行都屡屡相同的一系枚办法。VIM 批准你纪录一个宏来完成你的特殊需求。

  • qregister:纪录宏到寄存器 register,这里 register 是随意的你的寄存器的名字。好比 qa,将会纪录并且把宏存在寄存器 a 内里。
  • q:终了宏的纪录。
  • @register:运用存在寄存器 register 的宏。好比 @a,将会运用存在寄存器 a 内里的宏。

必需要记住的是,宏只纪录了你的系列按键并且屡屡实行它们。它们不是邪术。由于在 VIM 内里完成目的的体式样式有良多,以是有时分你要警惕选择命令来纪录你的宏。由于它们会在悉数你要实行它的处所实行。

用 VIM 写代码

VIM 是一个用来写代码的绝好编辑器,由于它有一些特性是专门为挨次员而贪图的。这里是一些常用的:

  • ]p:和 p 的功用差未几,可是它会主动调整被粘贴的文本的缩出来顺应此后代码的位置。试一下!
  • %:受室花括号、方括号、括号等。在一个括号的下面,然后按 %,鼠标就会出现在受室的别的一半括号处。
  • >>:缩进悉数选择的代码
  • <<:和下面类似,可是反缩进
  • gd:达到光标地点处函数或许变量的界说处。
  • K:在 Man 内里查找光标此后地点处的词。




版权声明: 原创作品,批准转载,转载时请务必以超链接形式标明文章 原始情由 、作者信息和本声明。不然将深究法规责任。

原文地址:https://www.cnblogs.com/zgqjymx/p/1975196.html