如何仅使用键盘将bash复制并粘贴到vim,反之亦然?

时间:2011-11-15 22:29:26

标签: windows linux bash vim putty

使用此命令:

http://www.hypexr.org/bash_tutorial.php#vi

我可以在bash中使用vim命令。但是,我想做的是从那个(bash)复制并粘贴到vim中,反之亦然。

我知道这里有其他帖子使用鼠标中键,但我使用putty连接到linux盒子,中间鼠标执行选择,就像左键单击一样。

我不是在寻找能够修改我的Windows剪贴板的东西。在vim中选择对于从窗口传输内容很有用,但是我想要一个通过putty和使用直接终端工作的解决方案。

提前致谢...

4 个答案:

答案 0 :(得分:3)

我在screen中使用了复制和粘贴功能。 ctrl - [进入复制模式, ctrl - ] 进行粘贴。有不同的缓冲区和转储到文件的能力。它非常强大。默认情况下是复制行,但您可以通过列将缩小显示行连接到单个复制行(以及其他选项)。而且,当你运行vim时,你可能已经在屏幕上了,你可以使用粘贴缓冲区。我也有钩子将缓冲区复制到X剪贴板中。

答案 1 :(得分:2)

我不知道这是否可以帮助你,但我已经安装了一个名为xclip的实用程序,它与VIM共享X11剪贴板。我主要用它来复制和粘贴在不同终端窗口中运行的VIM实例。

我通常使用带有以下映射的xclip,它与通常的yank和paste命令保持非常相似的行为,但使用剪贴板:

nmap `yy    :.w !xclip<CR><CR>
vmap `y     :w !xclip<CR><CR>
nmap `p     :.r!xclip -o<CR>
nmap `P     :.-r!xclip -o<CR>

答案 2 :(得分:1)

您可以使用 ctrl + ins 进行复制,从vim和bash复制到剪贴板,然后 shift + ins 用于粘贴。

答案 3 :(得分:1)

使用*(或X Windows中的+)寄存器来引用系统剪贴板。任何从这些寄存器中抽出或粘贴的东西都可以用来与其他应用程序合作:

剪切/复制示例

"*yy :将当前行复制到系统剪辑栏

gg"*yG :将当前文件复制到系统剪辑栏

"*dd :将当前行剪切到系统剪辑栏

等等


粘贴示例

"*p :粘贴系统剪辑栏

或者在插入模式下:

i Ctrl + r *

或者

i Ctrl + r Ctrl + p <强> *

(最后一个粘贴没有格式化,有助于避免OS剪贴板中那些丑陋的粘贴,每个缩进的线条越来越多地移位)