如何在开发程序时快速选取一个单词并用一个特殊的字符围绕它?

比如有一个单词

dcustmsg

我已经在v模式选中了该单词,有没有快捷键在这个单词的两侧添加引号,使之变为

"dcustmsg"
阅读 8.5k
3 个回答

配置文件添加函数和键映射如下:

function! s:surround()
    let word = expand("<cword>")
    let wrap= input("wrap with: ")
    let command = "s/".word."/".wrap.word.wrap."/"
    execute command
endfunction
nmap cx :call <SID>surround()<CR>

这样normal模式光标放在单词上,然后使用快捷键cx,会提示两边填充的字符,输入字符回车即可。
详细内容请参考:How to repeatedly add text on both si...

可以自己写一个vim的宏
normal模式下光标放在单词中间
bi"<ESC>ea"<ESC>
把上边一段录制成宏就可以用了。

diwi"<C-r>0<Esc> #剪切该字符串然后复制到双引号内。。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进