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

Vim中如何移至行尾并反向删除最后一个单词?

解决Vim中行尾反向删除最后一个单词的问题

我完全懂你遇到的这个麻烦——用db删到行尾时总是留个尾巴,还要手动按b再de确实容易手滑出错。这里有几个实用的方法帮你一键搞定:

1. 直接用命令组合(无需配置)

如果不想改配置,直接用这个组合键:

g_db
  • g_:会把光标跳到当前行最后一个非空白字符(比$更贴心,就算行尾有空格也能精准定位到最后一个单词的末尾)
  • db:从当前光标位置向前删除整个单词,这样就不会再遗留最后一个字符了

要是行尾肯定没空格,用$db也能达到效果,但g_的适配性更强。

2. 自定义快捷键映射(一劳永逸)

如果经常需要这个操作,不如把组合键映射成一个快捷键,省得每次敲一串。打开你的Vim配置文件(~/.vimrc或者init.vim),添加这一行:

nnoremap <leader>dw g_db

保存退出后重启Vim,以后只要按<leader>dw(默认leader键是反斜杠\,所以就是\dw),不管光标在当前行的哪个位置,都能直接删除最后一个单词。

你可以把<leader>dw换成自己顺手的组合,比如<C-w>之类的,只要不跟现有快捷键冲突就行。

补充说明

为啥原来的db会留尾巴?因为当光标在单词的倒数第二个字符时,db只会删除从光标到单词开头的部分,自然就剩下最后一个字符。而先跳到单词末尾(行尾)再用db,就能把整个单词都删掉啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:43:44