嗨,我有macOS High Sierra,以及带有版本VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Jul 26 2017 19:10:24)
的vim
我曾经能够将像:%s/abc//g
这样的文本复制到系统剪贴板中,然后转到 vim 当前正在编辑文件的终端,并通过执行 cmd+v
进行粘贴,然后它将以正常模式运行以进行全文替换。
但是,我现在发现此过程只会将文本:%s/abc//g
粘贴到当前正在编辑的文件中,似乎处于插入模式。
如何恢复正常模式的行为?尝试:set nopaste
没有任何运气。
方法 1
- 通过键入
:
进入命令模式。 - 现在执行
<C-r>+
以从剪贴板粘贴。 - 按回车键。
方法 2
- 在正常模式下,键入
q:
以进入命令历史记录模式。 - 使用
"+p
粘贴。 - 按回车键。
您甚至可以考虑创建映射。
" Paste to command mode while in insert mode.
inoremap <C-v> <C-o>:<C-r>+
" Not recommended. You can't go into Visual Block mode anymore.
nnoremap <C-v> <C-o>:<C-r>+
尝试插入 vim-system-copy。我发现它对我很有帮助。