如何在VIM中使用系统剪贴板

时间:2014-05-15 06:15:53

标签: linux vim

这是场景,在VIM中,我从文件中复制字符串(例如/home/redhat),然后使用此命令:! cd XXX(我从缓冲区复制的路径,在这种情况下,它应该是/home/redhat)。

我的问题是,我应该使用什么命令粘贴字符串?

4 个答案:

答案 0 :(得分:2)

"+y是vim中系统剪贴板的副本,"+p是从系统剪贴板粘贴的,您可以将它们映射到普通的键绑定。

noremap <C-C> "+y
noremap <C-V> "+p

“请注意,将<C-V>映射到系统剪贴板中的粘贴与vertical mode冲突我建议您将vertical mode重新映射到<C-Q>

noremap <C-Q>       <C-V>

对于其他映射,您可以查看mswin.vim

如果您不关心系统剪贴板,y是复制品,p会在正常模式下粘贴。

答案 1 :(得分:1)

根本不需要系统剪贴板用于您的用例:

:!cd <C-r>"

在插入模式和Vim的命令行中,<C-r>{register}在光标处插入该寄存器的内容。由于您抽出/home/redhat,未命名注册的内容"(请参阅:help registers)为/home/redhat,并且会在您键入<C-r>"的位置插入:< / p>

:!cd /home/redhat

FWIW,你也可以在光标下插入文件路径而不需要粘贴和粘贴:

:!cd <C-r><C-f>

答案 2 :(得分:0)

:之后,您处于命令行模式。与插入模式类似,您可以通过按 Ctrl + R ,然后按寄存器名称在光标位置插入寄存器内容。所以,如果你只是猛拉 /home/redhat,那么默认寄存器就是";对于系统剪贴板,请改用+

在命令行中,您还可以按 Ctrl + F 切换到命令行窗口,您可以在其中使用所有Vim命令,就像在任何其他缓冲区中一样,因此您也可以通过常规p / P从正常模式粘贴。

了解如何查找命令并导航内置:help;它是全面的,并提供了许多提示。你不会像其他编辑那样快速学习Vim,但如果你致力于不断学习,它将成为一个非常强大和高效的编辑器。这里提到的命令的帮助主题是:help c_CTRL-R:help c_CTRL-F

答案 3 :(得分:0)

使用:new /path/to/file,您将转到新文件。然后使用P粘贴信息(始终超出模式插入)。