aaronjensen / emacs-modern-tab-bar

11 stars 2 forks source link

Tab group support #2

Open sethidden opened 3 months ago

sethidden commented 3 months ago

Hey I'm using https://github.com/fritzgrabo/project-tab-groups which uses the Emacs built-in tab groups: https://git.savannah.gnu.org/cgit/emacs.git/commit/etc/NEWS?id=f9b737fb9d21ac7adff403274167e76e77d033b8

and in stock tab bar if I open a few projects it looks like this:

image

With this package, using the install elisp it looks like this, so the tab group is not shown:

image
sethidden commented 3 months ago

Ah sorry I forgot that configuring tab groups is a snippet of its own (setq tab bar format):

(use-package project-tab-groups
    :ensure t
    :config
    (setq tab-bar-format '(tab-bar-format-history tab-bar-format-tabs-groups tab-bar-separator tab-bar-format-add-tab))
    (project-tab-groups-mode 1))

(use-package modern-tab-bar
    :ensure (modern-tab-bar :host github :repo "aaronjensen/emacs-modern-tab-bar" :protocol ssh)
    :init
    (setq tab-bar-show t
          tab-bar-new-button nil
          tab-bar-close-button-show nil)

    (modern-tab-bar-mode))

If I re-eval the (setq tab-bar-format ... it looks like this:

image

Still, should the tab group faces be part of this package?

aaronjensen commented 3 months ago

See modern-tab-bar-format for setting the tab-bar-format (I wanted things to work out of the box without people needing to configure their tab-bar-format specifically. As you discovered, not every item in tab-bar-format works just yet.

Supporting groups may be more complicated than just styling -- you can see that the logic I'm using to hide separators would have to take groups into account, which likely means advising tab-bar-format-tabs-groups (or providing a new alternate).

I probably won't get to this soon, but if you want to work on it and submit a PR I'd be happy to work with you on it over time.