Vim中将单词转为大写后如何让光标停留在单词末尾
解决方案
单次临时操作
如果光标当前停在单词首字符位置,直接执行 gUe 即可:
- 会把当前光标到单词末尾的所有字符转全大写
- 执行完成后光标自动停在单词最后一个字符位置,可直接继续输入
如果光标当前在单词的任意位置,执行 gUiwe 即可:
gUiw会把整个当前单词全部转为全大写,不受光标初始位置影响- 末尾加的
e会让光标直接跳到单词最后一个字符位置
你之前使用gUge出现光标跳转到上一单词的问题,是因为ge是Vim中「跳转到上一个单词末尾」的动作,替换成e(跳转到当前单词末尾)就符合需求了。
永久一键映射
如果需要频繁使用该操作,可以在 Vim 配置文件(.vimrc 或 Neovim 的 init.vim/init.lua)中添加自定义映射,比如把
Vimscript 配置示例:
nnoremap <leader>U gUiwe
如果需要匹配包含特殊符号的长单词(WORD),可以把上面的iw换成iW即可。配置生效后,普通模式下按
内容的提问来源于stack exchange,提问作者isudfv
相关产品推荐
相关产品推荐

