[英]How to append to the clipboard
我知道如何复制到剪贴板,但我怎样才能将 append 复制到它?
我在我的代码中使用它:
let @+ = my_expression
但这会覆盖剪贴板。
我知道我可以使用寄存器 az 到 append 来:
let @B = my_expression
它附加到寄存器 b,但是当我想将 append 到剪贴板时该怎么办?
利用:
let @+ = @+ . my_expression
或更短:
let @+ .= my_expression
参考:: :help:let.=
如果您不使用宏,则可能也值得检查一下寄存器。 :help registers
令人兴奋。
简而言之,有 26 个额外的“可自定义剪贴板”,称为寄存器,您可以在其中存储文本,从a
开始到z
。
在命令模式下,您可以通过点击"
将文本添加到寄存器中,命名寄存器(比如f
),然后在 select 文本中键入您想要的“运动”。
注意:我们在这里使用命名的f
寄存器 b/c 它可能在您的左手食指下方。 也就是说, f
只是选择 b/c 它很方便。 如果需要,您可以将f
替换为a
或u
或z
或其他任何内容。
初始文件 State
This is my first line.
[T]his is my second line.
This is my third line.
在命令模式下键入"fyy
以用一行 ( yy
) 填充寄存器。
p
(* 见下文)以立即将其从默认寄存器中粘贴。"f
选择f
寄存器,然后p
直接从f
寄存器粘贴。现在f
和默认值相同。 因此,键入"fyyp
的结果与使用默认剪贴板键入yyp
完全相同。
结果
This is my first line.
This is my second line.
[T]his is my second line.
This is my third line.
在您现有的寄存器中使用append的大写字母。
在上面的示例中,粘贴后,按j
到 go 向下一行,然后按"Fyy
。然后键入p
进行粘贴。您已将“这是我的第三行。”附加到f
的内容。
结果
This is my first line.
This is my second line.
This is my second line.
This is my third line.
This is my second line.
[T]his is my third line.
(使用小写字母f
会清除f
的内容并最终只保留“这是我的第三行”。)
为什么
p
在您拉入f
后立即粘贴寄存器f
中的内容? 因为您的默认寄存器包含指向最后一个选择的指针,并且显然不只是保存您添加到f
的内容,而是在您 append 时提取f
中的所有内容。 在第一种情况下,“键入"fyy"fp
的结果与使用默认剪贴板键入yyp
的结果完全相同”,这可能更具说明性。但是,如果您现在要在默认寄存器中添加一个新行,您可以点击
"f
toyy
f
寄存器,然后点击p
粘贴之前的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.