[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [BUG] Tab commands selecting by name

From: Juri Linkov
Subject: Re: [BUG] Tab commands selecting by name
Date: Sun, 13 Oct 2019 01:05:51 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu)

> Currently, some interactive functions offer tabs by name
> (tab-bar-switch-to-tab and tab-bar-close-tab-by-name, at least): They
> directly use `(tab-bar-tabs)' to get the names to choose from.  However,
> the current tab's name in the return value is *not* up-to-date if it has
> changed since the last time the tab has been visited (eg, showing a
> different buffer in one window when using the -all-windows name
> function).

Does this problem really exists?  The current tab name get updated
in tab-bar-make-keymap-1 very often, it's called by the display engine
on every window configuration change.  So when you type
M-x tab-bar-close-tab-by-name, the current tab name is already

Please provide a test case that reproduces this problem.

> I use this replacement for `tab-bar-tabs' instead:
> (defun my/tab-bar-updated ()
>   (let ((tabs (tab-bar-tabs)))
>     (mapcar
>      (lambda (tab)
>        (if (eq (car tab) 'current-tab)
>            (tab-bar--current-tab)       ;or (tab-bar--tab) for full info
>          tab))
>      tabs)))
> Obviously, this could be merged with other functions to a more elegant
> form, maybe even into tab-tar-tabs itself.

I guess you're overriding it using tab-bar-tabs-function?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]