让我们学习Vim! 第2部分
因此,上一次当我们用Vim弄污双手时,我们最终写了一首非常深刻的诗。
如果您不相信这首诗,我敢说您写一首更好的诗。 谢谢。
现在,在系列的第一部分中,您已经看到要在Vim中移动光标h,j,k,l
在普通模式下使用h,j,k,l
。 这很奇怪,直到您习惯了。
除此之外,您可以使用w
和e
浏览文本。
w
:将光标移动到下一个单词的开头。 e
:将光标移动到下一个单词的末尾。
w
和e
在上面发布的gif中,请注意,当您使用w
或e
命令时,它不会跳过标点符号撇号( ' )。 要始终移动到空白行之后的下一个位置,请使用W
和E
另一方面,假设您想一次移动3个单词。 为此,您在正常模式下按下3w
。 通常,这意味着您按nw
键一次可以浏览n个字。
我猜您在想, 如果我们想向后做相同的操作怎么办? 它们只是w->b, W->B, e->ge, E->gE
。 可能并非所有这些操作都会被大量使用。
有时,您位于长行的中间,而您只想将光标移至该行的开头。 而不是连续命中h
或其他命令,只需命中0
。
同样,
gg
移至文档的开头。 G
移至文档最后一行的开头。 G$
-移至文档末尾。 nG
移至第n行,其中n是您指定的数字。
因此,现在您正在使用当前目录,并且忘记了该特定目录中的文件。 一般来说,我们只是做一个简单的ls
并列出文件和文件夹。 您可以从Vim内部执行相同操作。 这个想法是在不退出Vim的情况下以某种方式广播shell命令。
这可以通过:!
然后是命令。
Vim还支持将当前文件的内容写入一个新文件。 可能您已经猜到了,命令是:w <filename>
。
要选择部分文本,请以v
开头 在正常模式下。 现在,如果您移动光标,您将看到将选择特定的部分。
如您所见,我们有两个文本文件相同的诗。 让我们一起打开它们。
要将多个文件作为选项卡打开,可以执行以下两种方法之一。 从终端命中vim -p file1 file2 file3
。 或者在驻留在vim中时,可以编写命令:tabnew filename
。 打开poem.txt
这条路:
问题是,当您有多个选项卡时,需要从一个导航到另一个。 可以使用go命令执行此操作: gt
和gT
或到第n个标签页ngt
。 在此, n
是标签号。
您现在可能有一个问题。 如果您有兴趣拆分屏幕怎么办? 在处理同一文件的多个部分时,这将非常方便。
Vim已经处理了它。 要拆分屏幕,请按ctrl+w+v
。 它将屏幕垂直拆分在中间。 要以水平方式执行相同操作,请按ctrl+w+s
。
注意我们如何在拆分之间导航。 只需使用ctrl+w+<cursor moves>
。
如果您需要在这些单独的拆分中编辑多个文件怎么办? 可以像StackOverflow中所述轻松完成!
假设您有兴趣写另一首诗。 很久以前 ,所有好的诗歌都应以玫瑰开头, 红色是违规,因此,您决定创建一个新文件,并在其中复制这两行。
Vim使执行此类操作变得异常容易。 您首先需要选择要复制到新文件中的文本部分,然后将其写入。
如您先前所见,您首先使用v
选择了文本的一部分 并移动光标。 然后打:
。 您将看到以下字符:: :'<,'>
。 它们有点提示输入命令。 如果点击w <filename>
,将创建一个包含所选部分的新文件。
最后,我想演示的最后一个操作是在Vim中复制粘贴。
直观地选择要复制的部分,按y
复制,然后p
粘贴。
然后还有另一种在可视块模式下进行复制的方法。 该命令如下所示: ctrl+v -> shift+v -> y -> p
。
注意两种方法之间的区别。 在第二篇文章中,选择文本作为块。
到目前为止,我已经向大家展示了一些非常基本的Vim命令和用例。 其中有很多,您总是可以找到更方便的方法来执行各种操作。 我的建议是遵循一些备忘单,其中列出了至少重要的命令以方便使用。
对于初学者,这是您可以遵循的备忘单 。
最后,如果您已经阅读了这两篇文章,那么您应该对Vim感到更自在。
随时指出任何错误,并感谢您的阅读!
From: https://hackernoon.com/lets-learn-vim-part-2-66b968f1551f