繁体   English   中英

如何将 append 到剪贴板

[英]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替换为auz或其他任何内容。


用寄存器复制(光标在 [T] 处):

初始文件 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 to yy f寄存器,然后点击p粘贴之前的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM