如何追加到剪贴板

问题描述 投票:8回答:2

我知道如何复制到剪贴板,但如何追加到剪贴板?

我在我的代码中使用了这个。

let @+ =  my_expression

但这样会覆盖剪贴板

我知道我可以使用寄存器a-z来追加。

let @B = my_expression

这样就可以追加到寄存器b,但是当我想追加到剪贴板的时候怎么办?

vim copy append clipboard
2个回答
13
投票

使用:

let @+ = @+ . my_expression

或者更短。

let @+ .= my_expression

Reference: :help :let.=


11
投票

如果你不是在做宏,那可能值得一试 登记册 以及。 :help registers 是令人震撼的。

过于简单的概括,就是多了26个 "可自定义剪贴板",称为注册表,你可以在这里存储文本,从这里开始。a 并经历 z. 在命令模式下,通过点击 ",命名寄存器(如 f),然后输入要选择文字的 "动作"。

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

初始文件状态

This is my first line.
[T]his is my second line. 
This is my third line.

种类 "fyy 在命令模式下,用一行来填充寄存器(yy). 种类 p (*见下图)来立即粘贴。 因此,输入的结果是 "fyyp 等于输入了 yyp 和默认的剪贴板。

结果

This is my first line.
This is my second line. 
[T]his is my second line. 
This is my third line.

追加到寄存器中。

使用大写字母附加到您现有的注册表上。 在上面的例子中 之后 粘贴 j 下线,然后 "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但却把所有的东西都拉到了 f 当你追加的时候。 在第一种情况下,说 "打入 "fyy"fp 等于输入了 yyp 与默认剪贴板。"
© www.soinside.com 2019 - 2024. All rights reserved.