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

VIM中dG命令仅删除一行而非文件末尾,故障原因咨询

关于VIM中dG仅删除一行的故障排查

嘿,这个问题我碰到过好多次啦,dG本该删除光标到文件末尾的所有内容,结果只删一行,大概率是这几个原因:

  • 手滑按成了dd:这是最常见的情况!很多时候打字快或者没注意,把dG按成了dd——dd的功能就是删除当前行,刚好和你描述的现象一致。建议操作时慢一点,确保按住d后再按下大写的G(小写g是跳行首,dg是删到行首,也不是一行,所以主要是误触成dd)。

  • 当前处于Visual模式:如果之前不小心触发了Visual模式(比如按了v或V),这时候dG的逻辑就变了——在Visual模式下,d是删除选中的内容,要是你只选中了当前行,那执行dG自然就只删这一行。先按Esc切回Normal模式再试试。

  • 快捷键被重映射了:有些自定义配置或者插件会修改dG的功能,比如把它改成了删除当前行。你可以在VIM里输入:verbose map dG,看看有没有被重定义的记录。如果有,要么找到对应的配置/插件修改回去,要么用<C-u>dG(先按Ctrl+u跳过映射再执行命令)。

  • 光标已经在最后一行:这个有点哭笑不得,但确实可能!如果光标所在的行就是文件的最后一行,那dG本来就只能删除这一行啊。先按G跳到文件末尾确认下是不是这种情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:12:04