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

如何让Vim新建缓冲区时不共享标签导航栈?

Vim新建缓冲区清空标签历史的实现方案

Vim默认没有内置选项可以让新建缓冲区自动拥有空白标签历史,但可以通过两种方式实现需求:

自定义新建命令替代默认:new

在你的~/.vimrc(Neovim对应init.vim)中添加以下Vimscript配置:

command! New new | clearjumps | execute 'tag' ''

之后输入:New就能新建带有空白标签历史的窗口:

  • new:执行原生新建窗口命令
  • clearjumps:清空当前窗口的跳转历史(包含标签跳转记录)
  • execute 'tag' '':重置标签栈状态,确保标签历史完全为空

自动命令全局生效

如果希望所有新建窗口都自动清空标签历史,添加自动命令到配置文件:

autocmd WinNew * clearjumps | execute 'tag' ''

WinNew事件会在任何新窗口创建时触发,自动执行清空操作。若需仅针对特定方式创建的缓冲区生效,可结合BufNewFile等事件调整匹配规则。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 08:46:00