如何让Vim执行从剪贴板粘贴的命令?
在Vim normal模式下粘贴并执行命令的方法
当你需要从剪贴板粘贴Vim命令并直接执行时,不用再担心内容被插入缓冲区,试试这几种实用方法:
方法1:直接调用剪贴板内容执行
在Vim的normal模式下,输入:@*并回车,Vim会自动读取系统剪贴板(对应PuTTY右键粘贴的内容)里的字符序列,当作命令执行。比如你的测试场景,复制:se ts=16后,输入:@*就能直接设置tabstop为16。
- 如果用的是X11的
+缓冲区(通常是Ctrl+C复制的内容),可以用:@+代替。
方法2:进入命令行模式后粘贴
先在normal模式下按:进入命令行模式,此时光标会跳到Vim底部的命令输入栏,再用PuTTY的右键/Shift+Insert粘贴命令内容,最后回车就能执行。这种方式和手动输入命令的效果完全一致,适合单次执行的场景。
方法3:将命令存入寄存器重复执行
如果需要多次重复执行同一个命令,可以先把命令存到Vim的寄存器里:
- 先把命令粘贴到缓冲区(normal模式下按
p),用V选中整行命令,再按"ay把内容存入a寄存器; - 之后每次要执行时,只需输入
:@a并回车,就能重复执行这个命令。
内容的提问来源于stack exchange,提问作者Tilman Schmidt
相关产品推荐
相关产品推荐

