此处here询问了如何粘贴到vims命令行中。 但是如何从vim命令行复制?
例如:
:python导入系统;打印(sys.executable)
现在我想将该行复制到剪贴板,以便将其粘贴到其他编辑器中。
答案 0 :(得分:2)
您可以将另一个寄存器的内容分配给一个寄存器:
:let @+ = @:
将在系统剪贴板(@+
)中分配最后执行的:
命令(@:
)。
但是,这将成为您最后执行的命令。如果要将python
命令保留为最后一条,可以执行以下操作:
首先打开命令历史记录:
q:
转到要复制的命令行,然后将其拉到系统寄存器中(可视地选择整行并拉它):
"+yy
这将复制整个行,并在末尾添加新行字符,如果您只希望命令不包含新行,则可以执行以下操作:
v$h"+y
最后,关闭命令历史记录:
:q
答案 1 :(得分:2)
是的,有可能。
如果执行了命令:foo
,则命令文本行将存储在寄存器:
中,您可以通过:echo @:
看到它。
要在剪贴板中保存这些值,只需让+
寄存器具有相同的值即可。
因此:let @+=@:
或call setreg('+',@:)
应该可以为您提供帮助。
答案 2 :(得分:1)
q:
打开命令行窗口,其中充满了命令行历史记录,您可以通过"+yy
复制。