我想知道是否有办法将拷贝的文本粘贴到命令行窗口中。例如,如果我已经复制了一个单词并想在某个位置进行grep操作,我不能简单地使用 'p' 粘贴该单词。然而,如果我将其复制到剪贴板中,则可以使用 Shift-Insert 来粘贴相同的内容。
是否有任何技巧可用,允许我将复制的文本粘贴到vim命令提示符中?
我正在Windows上使用gvim。
我想知道是否有办法将拷贝的文本粘贴到命令行窗口中。例如,如果我已经复制了一个单词并想在某个位置进行grep操作,我不能简单地使用 'p' 粘贴该单词。然而,如果我将其复制到剪贴板中,则可以使用 Shift-Insert 来粘贴相同的内容。
是否有任何技巧可用,允许我将复制的文本粘贴到vim命令提示符中?
我正在Windows上使用gvim。
尝试使用
<ctrl+r>"
“ where ”代表默认寄存器。
<C-R>"
将粘贴默认缓冲区。或者,您可以使用q:
为下一个命令打开缓冲区。请尝试:help q:
q:
真是太棒了。 - HubroEsc
键确保您处于普通模式。 :
键。ctrl-r
,并输入"
注意:如果您复制的是包含相对文件路径的整行文本,则换行符也会被粘贴...也就是说,如果不删除最后一个^M
,则:! touch src/bash/script.sh^M
将创建一个包含"\r"的“有趣”文件路径...
为了简化操作,如果你的光标已经停留在想要在 Ex 中使用的单词上,请使用以下命令:
<ctl-r><ctl-w>
这样可以避免从缓冲区中拷贝并粘贴到命令行中; 取而代之的是,将光标下的单词直接粘贴到命令行中。例如:
:%s/<ctl-r><ctl-w>/foo/g
如果你只想复制一个单词,你可以使用<C-r><C-w>
:vim <C-r><C-w> *
的命令您可以使用名称为*
的缓冲区将内容复制到剪贴板。例如,这将把当前行复制到剪贴板:
"*yy
使用这种方式可以复制一行文本,然后在命令行中使用Shift+Insert进行粘贴。
同样地,您也可以使用以下方式从剪贴板中进行粘贴:
"*p
"+yy"
将一行复制到剪贴板,然后使用"+p"
进行粘贴。虽然您也可以使用Command-C和Command-V。
*
而不是"
,则会获取系统剪贴板中的内容(这可能很方便)。 - dash-tom-bang