如何将粘贴的文本复制到VI命令提示符


118

我想知道是否可以通过某种方式将粘贴的文本粘贴到命令窗口中。例如,如果我猛拉了一个单词,并且想在某个位置grep,则不能简单地使用'p'粘贴单词。但是,如果我将其复制到剪贴板,则Shift-Insert将粘贴相同的内容。

是否有任何调整项可以让我将选中的文本粘贴到vim命令提示符?

我在Windows上使用gvim。

Answers:



40

<C-R>"将粘贴默认缓冲区。或者,您可以q:用来打开下一个命令的缓冲区。尝试:help q:


10
神圣的废话q:真是太棒了
Hubro

19
  • 首先确保您处于正常模式 Esc
  • 进入正常模式后,按 :
  • 然后使用键盘组合键ctrl-r,然后键入"

注意:如果要删除包含相对文件路径的整行,则换行也将被粘贴...即 :! touch src/bash/script.sh^M

如果不删除最后一个,将创建一个包含“ \ r”的“有趣文件路径” ^M


13

为了节省您的工作时间,如果光标位于您要在Ex中使用的单词上,请使用:

 <ctl-r><ctl-w>

这样可以避免粘贴到命令行中。而是将单词的光标直接粘贴到命令行上。例如:

:%s/<ctl-r><ctl-w>/foo/g

5

如果只是要复制的单词,则可以使用 <C-r><C-w>

  1. 将光标放在单词上
  2. 然后您可以输入 :vim <C-r><C-w> *

3

您可以使用*命名的缓冲区将其拖到剪贴板。例如,这会将当前行复制到剪贴板:

"*yy

因此,您可以使用此命令复制一行,然后在命令行中使用shift-insert将其粘贴。

同样,您可以像这样从剪贴板粘贴:

"*p

2

剪贴板的+至少在Mac上。因此,您需要写"+yy一条线将其拉到剪贴板,然后"+p粘贴。尽管您始终可以使用Command-C和Command-V。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.