You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vim:无需进入插入模式替换长短不同的单词

无需进入插入模式替换不同长度单词的Vim方案

内置快捷操作

  • 用caw或ciw简化流程:光标定位到目标单词,输入caw(删除单词及周围空格并进入插入模式)或ciw(仅删除单词内容),直接输入替换词后按<Esc>退出。虽然仍会进入插入模式,但比diw+手动进入插入模式少一步操作,更连贯。

纯命令行/映射方案(全程不进插入模式)

全局替换当前单词

在配置文件(~/.vimrc或init.vim)中添加映射:

nnoremap <leader>r :%s/\<<C-r><C-w>\>/<C-r><C-w>/gc<Left><Left><Left>

用法:光标放在目标单词上,按<leader>r(默认<leader>为\),命令行自动填充全局替换模板,直接修改后方的目标单词即可,按回车执行。其中g表示全局替换,c表示替换前确认,不需要确认可去掉c。

仅替换当前行的目标单词

添加映射:

nnoremap <leader>R :s/\<<C-r><C-w>\>/<C-r><C-w>/<Left><Left>

用法同上,仅作用于当前行,适合单变量局部重命名。

无映射临时操作

不用配置映射也能实现:

  1. 光标定位到目标单词,按*选中该单词(自动进入搜索模式)
  2. 输入:s//short/g(将short换成你需要的单词),回车执行全局替换;若仅替换当前行,去掉末尾的g即可。

内容的提问来源于stack exchange,提问作者User

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 23:49:58