有没有办法做类似于用 Vim 标签固定浏览器标签的事情?即:
- 左侧固定位置
- 最小化其尺寸
- 防止被关闭
答案1
不,没有,但是你可以创建一些类似的东西。
为了最忠实地重现 Web 浏览器的固定标签行为,您必须使用自定义gt
映射:tabnext
和自定义命令(可能使用cmdalias.vim - 为 Vim 命令创建别名以覆盖小写的原始 Ex 命令)。但这相当复杂,并且仍然无法涵盖我使用其他映射或插件所做的任何制表符修改。
或者,您可以定期(例如,切换窗口时)记录所有选项卡的布局(即它们包含哪些缓冲区),并使用它来轻松恢复意外关闭的选项卡(如果这是您主要关心的问题)。毕竟,在关闭选项卡后,缓冲区在 Vim 中仍然可用。
概括
虽然 Vim 中没有简单易用的对应功能,但如果你深入分析你真正的底层用例,就可以找到解决方案。请注意,在许多 Vim 用户看来,不建议大量使用标签。我个人一次只使用几个标签来在一个 Vim 实例中分隔不同的项目/工作区。
答案2
您可以使用自定义'tabline'
设置来设置任何选项卡标签的大小/内容。这样您就可以最小化尺寸。
Vim 本身并不会真正移动标签,因此只需:tabmove 0
将其放在左侧即可。如果您愿意,TabEnter
可以在自动命令中检查标签右侧是否有特殊标签,如果此标签不是特殊标签,则将其向右移动,直到没有其他特殊标签。使用 at: 范围变量标记特殊标签,例如:let t:pinned=1
。
我认为没有办法阻止它被关闭,但是你可以使用诸如:tabdo if !exists('t:pinned') | tabclose | endif
关闭所有未固定的标签之类的命令。