GNU bug report logs -
#71733
29.3; tab-bar-tab-group-face-default invokes tab-bar-tab-face-default incorrectly?
Previous Next
Reported by: Ship Mints <shipmints <at> gmail.com>
Date: Sun, 23 Jun 2024 12:28:01 UTC
Severity: normal
Tags: wontfix
Found in version 29.3
Fixed in version 30.0.50
Done: Juri Linkov <juri <at> linkov.net>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 71733 in the body.
You can then email your comments to 71733 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#71733
; Package
emacs
.
(Sun, 23 Jun 2024 12:28:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Ship Mints <shipmints <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sun, 23 Jun 2024 12:28:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
`tab-bar-tab-group-face-default' hard codes the invocation to
`tab-bar-tab-face-default' but should it instead invoke
`tab-bar-tab-face-function' to benefit from a custom function?
(defun tab-bar-tab-group-face-default (tab)
(if (not (or (eq (car tab) 'current-tab)
(funcall tab-bar-tab-group-function tab)))
'tab-bar-tab-ungrouped
* (tab-bar-tab-face-default tab)))*;; should the last line be something
like this?
* (funcall tab-bar-tab-face-function tab)))*
I checked the latest `tab-bar' source code this morning and this hasn't yet
been addressed, if indeed this is unintended behavior.
See https://github.com/emacs-mirror/emacs/blob/master/lisp/tab-bar.el#L1021
Thank you for all your hard work on the Emacs ecosystem.
-Stephane
In GNU Emacs 29.3 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60
Version 10.14.6 (Build 18G9323)) of 2024-03-24 built on
builder10-14.lan
Windowing system distributor 'Apple', version 10.3.2113
System Description: macOS 12.7.5
Configured using:
'configure --with-ns '--enable-locallisppath=/Library/Application
Support/Emacs/${version}/site-lisp:/Library/Application
Support/Emacs/site-lisp' --with-modules 'CFLAGS=-DFD_SETSIZE=10000
-DDARWIN_UNLIMITED_SELECT' --with-x-toolkit=no'
Configured features:
ACL GLIB GMP GNUTLS JPEG JSON LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER
PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER ZLIB
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: ELisp/l
Minor modes in effect:
global-git-commit-mode: t
shell-dirtrack-mode: t
rainbow-mode: t
flymake-mode: t
flyspell-mode: t
yafolding-mode: t
textsize-mode: t
repeat-mode: t
global-auto-revert-mode: t
recentf-mode: t
breadcrumb-mode: t
breadcrumb-local-mode: t
vertico-multiform-mode: t
marginalia-mode: t
vertico-mode: t
corfu-popupinfo-mode: t
savehist-mode: t
server-mode: t
which-key-mode: t
pyvenv-tracking-mode: t
pyvenv-mode: t
corfu-echo-mode: t
corfu-history-mode: t
global-corfu-mode: t
corfu-mode: t
activities-tabs-mode: t
activities-mode: t
recursion-indicator-mode: t
global-subword-mode: t
subword-mode: t
zoom-mode: t
windmove-mode: t
ace-window-display-mode: t
save-place-mode: t
global-so-long-mode: t
global-hl-line-mode: t
project-tab-groups-mode: t
override-global-mode: t
delete-selection-mode: t
pixel-scroll-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tab-bar-history-mode: t
tab-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
context-menu-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
undelete-frame-mode: t
size-indication-mode: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
abbrev-mode: t
Load-path shadows:
~/proj/shipmints-github/activities.el/activities-tabs hides
/Users/shipmints/.emacs.d/elpa/activities-0.7/activities-tabs
~/proj/shipmints-github/activities.el/activities-list hides
/Users/shipmints/.emacs.d/elpa/activities-0.7/activities-list
~/proj/shipmints-github/activities.el/activities hides
/Users/shipmints/.emacs.d/elpa/activities-0.7/activities
/Users/shipmints/.emacs.d/elpa/jsonrpc-1.0.25/jsonrpc hides
/Applications/Emacs.app/Contents/Resources/lisp/jsonrpc
/Users/shipmints/.emacs.d/elpa/modus-themes-20240617.1403/theme-loaddefs
hides /Applications/Emacs.app/Contents/Resources/lisp/theme-loaddefs
/Users/shipmints/.emacs.d/elpa/transient-20240619.1324/transient hides
/Applications/Emacs.app/Contents/Resources/lisp/transient
/Users/shipmints/.emacs.d/elpa/eglot-1.17/eglot hides
/Applications/Emacs.app/Contents/Resources/lisp/progmodes/eglot
/Users/shipmints/.emacs.d/elpa/eldoc-1.15.0/eldoc hides
/Applications/Emacs.app/Contents/Resources/lisp/emacs-lisp/eldoc
Features:
(shadow sort mail-extr emacsbug executable dabbrev cape-keyword
tempel-collection tempel cape consult-register misearch multi-isearch
emacsql-sqlite-builtin sqlite face-remap git-modes gitignore-mode
gitconfig-mode conf-mode gitattributes-mode forge-repos forge-tablist
forge-topics forge-commands forge-semi forge-bitbucket buck forge-gogs
gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy
gsexp ghub url-http url-gw nsm url-auth let-alist gnutls forge-notify
forge-revnote forge-pullreq forge-issue forge-topic yaml parse-time
iso8601 eieio-custom bug-reference forge-post markdown-mode forge-repo
forge forge-core forge-db closql emacsql-sqlite-common emacsql
emacsql-compiler eieio-base magit-bookmark magit-submodule magit-blame
magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch
magit-clone magit-remote magit-commit magit-sequence magit-notes
magit-worktree magit-tag magit-merge magit-branch magit-reset
magit-files magit-refs magit-status magit magit-repos magit-apply
magit-wip magit-log which-func magit-diff smerge-mode diff git-commit
log-edit message sendmail yank-media puny dired dired-loaddefs rfc822
mml mml-sec epa derived epg rfc6068 epg-config gnus-util mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log magit-core magit-autorevert magit-margin
magit-transient magit-process with-editor shell pcomplete magit-mode
benchmark magit-git magit-base magit-section cursor-sensor crm noutline
outline vertico-directory vundo elec-pair rainbow-mode time-date
checkdoc lisp-mnt flymake-proc flymake thingatpt flyspell ispell
yafolding textsize repeat autorevert filenotify recentf tree-widget
wid-edit breadcrumb pulse vertico-multiform marginalia vertico
corfu-popupinfo savehist init server which-key python treesit pyvenv
eshell esh-cmd generator esh-ext esh-opt esh-proc esh-io esh-arg
esh-module esh-groups esh-util files-x kind-icon svg-lib svg dom xml
corfu-echo corfu-history corfu orderless consult-imenu activities-tabs
activities warnings icons persist consult recursion-indicator vc-git
diff-mode vc vc-dispatcher deft visual-fill-column cap-words superword
subword zoom windmove ace-window avy bookmark pp saveplace desktop
frameset ibuf-ext ibuffer ibuffer-loaddefs tar-mode arc-mode
archive-mode find-recursive so-long hl-line helpful cc-langs cc-vars
cc-defs imenu trace edebug debug backtrace info-look find-func f
help-fns radix-tree elisp-refs s dash project-tab-groups
use-package-diminish project re-builder rx use-package-bind-key bind-key
easy-mmode grep compile comint ansi-osc ansi-color transient format-spec
edmacro kmacro delsel time no-littering compat vtable
text-property-search modus-vivendi-tritanopia-theme
modus-operandi-tritanopia-theme modus-vivendi-deuteranopia-theme
modus-operandi-deuteranopia-theme modus-vivendi-tinted-theme
modus-operandi-tinted-theme modus-vivendi-theme modus-operandi-theme
modus-themes color exec-path-from-shell shut-up diminish benchmark-init
advice pixel-scroll cua-base ring cl-extra help-mode use-package-ensure
use-package-core ace-window-autoloads activities-autoloads avy-autoloads
beframe-autoloads benchmark-init-autoloads breadcrumb-autoloads
bufler-autoloads burly-autoloads cape-autoloads clipetty-autoloads
consult-eglot-autoloads corfu-candidate-overlay-autoloads
corfu-terminal-autoloads corfu-autoloads csv-mode-autoloads
deft-autoloads diff-hl-autoloads diminish-autoloads
dired-collapse-autoloads dired-hacks-utils-autoloads
eglot-tempel-autoloads eglot-autoloads ein-autoloads anaphora-autoloads
eldoc-autoloads eldoc-box-autoloads embark-consult-autoloads
consult-autoloads embark-autoloads exec-path-from-shell-autoloads
forge-autoloads closql-autoloads emacsql-autoloads gcmh-autoloads
ghub-autoloads git-modes-autoloads helpful-autoloads
elisp-refs-autoloads f-autoloads ibuffer-project-autoloads
js2-mode-autoloads jsonrpc-autoloads jupyter-autoloads
kind-icon-autoloads magit-autoloads pcase git-commit-autoloads
magit-section-autoloads marginalia-autoloads markdown-mode-autoloads
modus-themes-autoloads no-littering-autoloads orderless-autoloads
paredit-autoloads persist-autoloads popon-autoloads
pretty-hydra-autoloads hydra-autoloads lv-autoloads
project-tab-groups-autoloads pyvenv-autoloads rainbow-mode-autoloads
realgud-autoloads realgud-recursive-autoloads
recursion-indicator-autoloads ruff-format-autoloads
reformatter-autoloads shut-up-autoloads simple-httpd-autoloads
sqlite3-autoloads svg-lib-autoloads tempel-collection-autoloads
tempel-autoloads test-simple-autoloads textsize-autoloads
flycheck-autoloads transient-autoloads treepy-autoloads
vertico-autoloads visual-fill-column-autoloads vundo-autoloads
web-mode-autoloads websocket-autoloads which-key-autoloads
winum-autoloads dash-autoloads with-editor-autoloads info
compat-autoloads xclip-autoloads yaml-autoloads yaml-mode-autoloads
zmq-autoloads zoom-autoloads package browse-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win
ucs-normalize mule-util term/common-win tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax font-core
term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads kqueue cocoa ns multi-tty
make-network-process emacs)
Memory information:
((conses 16 570562 379052)
(symbols 48 32997 42)
(strings 32 112274 33085)
(string-bytes 1 3525127)
(vectors 16 76579)
(vector-slots 8 1686830 638730)
(floats 8 648 1950)
(intervals 56 7022 3977)
(buffers 984 21))
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#71733
; Package
emacs
.
(Sun, 23 Jun 2024 17:44:03 GMT)
Full text and
rfc822 format available.
Message #8 received at 71733 <at> debbugs.gnu.org (full text, mbox):
tags 71733 wontfix
close 71733 30.0.50
thanks
> `tab-bar-tab-group-face-default' hard codes the invocation to
> `tab-bar-tab-face-default' but should it instead invoke
> `tab-bar-tab-face-function' to benefit from a custom function?
>
> (defun tab-bar-tab-group-face-default (tab)
> (if (not (or (eq (car tab) 'current-tab)
> (funcall tab-bar-tab-group-function tab)))
> 'tab-bar-tab-ungrouped
> (tab-bar-tab-face-default tab)))
> ;; should the last line be something like this?
> (funcall tab-bar-tab-face-function tab)))
>
> I checked the latest `tab-bar' source code this morning and this hasn't yet
> been addressed, if indeed this is unintended behavior.
Sorry, this can't be changed because it will cause an infinite recursion.
You can see in 'tab-bar-format-tabs-groups':
(let ((tab-bar-tab-face-function
tab-bar-tab-group-face-function))
(tab-bar--format-tab tab i))
Then with the default value 'tab-bar-tab-group-face-default'
of 'tab-bar-tab-group-face-function', 'tab-bar-tab-face-function'
in 'tab-bar-tab-group-face-default' will recursively call itself.
Added tag(s) wontfix.
Request was from
Juri Linkov <juri <at> linkov.net>
to
control <at> debbugs.gnu.org
.
(Sun, 23 Jun 2024 17:44:03 GMT)
Full text and
rfc822 format available.
bug marked as fixed in version 30.0.50, send any further explanations to
71733 <at> debbugs.gnu.org and Ship Mints <shipmints <at> gmail.com>
Request was from
Juri Linkov <juri <at> linkov.net>
to
control <at> debbugs.gnu.org
.
(Sun, 23 Jun 2024 17:44:03 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 22 Jul 2024 11:24:12 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 9 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.