在 Vim 中,如何从多行复制?(不是范围);

Wha*_*ame 20 vim

假设我有

1 - funct1
2- funct 2
3 - funct 3 
4 line 4
Run Code Online (Sandbox Code Playgroud)

如何复制第 1 行和第 3 行(不是一系列行)并粘贴它们,例如在第 8 行?如果我用|像 ( 1y|3y)这样的arg来做这件事,我会把行拉到几个寄存器,对吗?但是我怎样才能一次从多个寄存器中放入呢?

lge*_*get 33

您可以通过使用大写字母而不是小写字母来附加到寄存器而不是擦除它。

例如:

:1y a      # copy line 1 into register a (erases it beforehand)
:3y A      # copy line 3 into register a (after its current content)
8G  # go to line 8
"ap        # print register a
Run Code Online (Sandbox Code Playgroud)

  • (或`1G"ayy3G"Ayy8G"ap` 用于显式行号) (5认同)