add a global option to always show the tab bar
This might not be the perfect way to solve this problem, but I figured that I would dive into the codebase and give it a go before asking for another feature request for something this small.
I think, if we're allowing customisability of the tab bar (reversing colour-theme, etc), that we should also allow the option to set the tab bar to "always show". This pull does that.
Discussion encouraged.
IMHO not a bad feature, why not.
The name tabalwaysshow may be a bit of a mouthful... Maybe just tabalways? (Better suggestions are welcome.)
Also, this PR doesn't work quite well in the case when this option is enabled or disabled at runtime via set tabalwaysshow on or set tabalwaysshow off (when there is just one tab open). It can be fixed as follows:
--- a/internal/action/command.go
+++ b/internal/action/command.go
@@ -586,7 +586,7 @@ func doSetGlobalOptionNative(option string, nativeValue any) error {
for _, b := range buffer.OpenBuffers {
b.UpdateRules()
}
- } else if option == "infobar" || option == "keymenu" {
+ } else if option == "infobar" || option == "keymenu" || option == "tabalwaysshow" {
Tabs.Resize()
} else if option == "mouse" {
if !nativeValue.(bool) {