From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: juri@linkov.net, bug-gnu-emacs@gnu.org Resent-Date: Fri, 04 Jul 2025 06:41:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 78953@debbugs.gnu.org Cc: Juri Linkov X-Debbugs-Original-To: bug-gnu-emacs@gnu.org X-Debbugs-Original-Xcc: Juri Linkov Received: via spool by submit@debbugs.gnu.org id=B.17516112025603 (code B ref -1); Fri, 04 Jul 2025 06:41:02 +0000 Received: (at submit) by debbugs.gnu.org; 4 Jul 2025 06:40:02 +0000 Received: from localhost ([127.0.0.1]:56162 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uXa5Z-0001S4-64 for submit@debbugs.gnu.org; Fri, 04 Jul 2025 02:40:01 -0400 Received: from lists.gnu.org ([2001:470:142::17]:51606) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uXa5U-0001RU-QE for submit@debbugs.gnu.org; Fri, 04 Jul 2025 02:39:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uXa5O-00083w-0i for bug-gnu-emacs@gnu.org; Fri, 04 Jul 2025 02:39:50 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1] helo=mail.qxqx.de) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uXa5K-0006tP-Ry for bug-gnu-emacs@gnu.org; Fri, 04 Jul 2025 02:39:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=GyI6AW6cA7iDWcRx2jQUpC2z2jInDn2HTaPghEz0JgU=; b=D/ESpc9QccuDS5eYFwjZe1el4f omevRlxigz7IBNk08esaQ5nuvg5b0wVzU+E4pd4rNIheA2wSufPBZb+b7JoRDwSy1vFxAG8BjSec3 iYV8pBJ6V3+v3eMhvhusKm0HawQyj3uVoWn94+htZK2S6UthcMWP1KnRHo9g90F+3TOs=; From: Daniel Mendler Date: Fri, 04 Jul 2025 08:39:24 +0200 Message-ID: <87h5zsa28z.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a01:4f8:c012:9177::1; envelope-from=mail@daniel-mendler.de; helo=mail.qxqx.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.9 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.1 (/) When fields in `tab-bar-format' after `tab-bar-format-align-right' change their width between two calls, then the alignment breaks - the right aligned tab field jumps around. Example configuration which uses a `global-mode-string' with a random width: (setq tab-bar-format '( tab-bar-format-tabs tab-bar-format-align-right tab-bar-format-global)) (setq global-mode-string '("|" (:eval (make-string (random 10) ?#)) "|")) (run-at-time 1 1 #'force-mode-line-update t) A more realistic configuration with a timer (and a variable pitch face) also shows the problem. A possible solution could be to handle `tab-bar-format-align-right' in `tab-bar-format-list', such that the functions in the `tab-bar-format' list after `tab-bar-format-align-right' are not called twice, such that the computed field width matches the displayed field. In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.49, cairo version 1.18.4) of 2025-06-20 Windowing system distributor 'The X.Org Foundation', version 11.0.12101016 System Description: Debian GNU/Linux 13 (trixie) Configured using: 'configure --prefix=$HOME/.local/share/emacs --without-compress-install --with-tree-sitter --with-native-compilation --with-dbus --without-selinux --without-threads --disable-gc-mark-trace --without-gsettings --without-gpm --with-cairo --with-cairo-xcb --with-xinput2 --with-x-toolkit=gtk3 --without-toolkit-scroll-bars' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 TIFF TREE_SITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 04 Jul 2025 06:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175161203211858 (code B ref 78953); Fri, 04 Jul 2025 06:54:02 +0000 Received: (at 78953) by debbugs.gnu.org; 4 Jul 2025 06:53:52 +0000 Received: from localhost ([127.0.0.1]:56213 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uXaIx-00035B-Rq for submit@debbugs.gnu.org; Fri, 04 Jul 2025 02:53:52 -0400 Received: from mout-y-111.mailbox.org ([91.198.250.236]:50542) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uXaIs-00033C-Il for 78953@debbugs.gnu.org; Fri, 04 Jul 2025 02:53:48 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:b231:465::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-111.mailbox.org (Postfix) with ESMTPS id 4bYPVV2h4Xz9xrB; Fri, 4 Jul 2025 08:53:38 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1751612018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=6HJX3oOyX6w5SW37nRNmjP26HXQYOUVx0Xd/v49kA+s=; b=ppgKpI+21krxE2BXmH5VgIFfOFh+1u+vja79TI+q2jNNYjElywGP00WkGdrBEyCKSTYJj0 u7rU8zgNKGsZMFFTza1s3Q18xyknVM0zEQYEQbAoCJrfisAtiTC3+jHwxfR1svG1g+LnF6 NBhP9RFWjv4BJvho06RxlR+sm8QfR1pcJ3VY/AveVWxMozI7xqRT0uvC2ET0iua3oJBsZG PCoxiBeCTtiRwk+udhKIB7H3oV25pRGU6crKhiNq4ItaQUjiY+wS7o0n9HTmPQJagQUNuP q2gaKJabMCUqU2niHNCoLOmvM2QRy6hxf9730ok1ETFzCT5r6PzW7CUTVF/cCQ== From: Juri Linkov In-Reply-To: <87h5zsa28z.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> Date: Fri, 04 Jul 2025 09:52:58 +0300 Message-ID: <878ql4tpkl.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: 4bYPVV2h4Xz9xrB X-Spam-Score: -0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.5 (-) > When fields in `tab-bar-format' after `tab-bar-format-align-right' > change their width between two calls, then the alignment breaks - the > right aligned tab field jumps around. Example configuration which uses a > `global-mode-string' with a random width: > > (setq tab-bar-format > '( tab-bar-format-tabs > tab-bar-format-align-right > tab-bar-format-global)) > > (setq global-mode-string > '("|" (:eval (make-string (random 10) ?#)) "|")) > > (run-at-time 1 1 #'force-mode-line-update t) Thanks, I confirm the problem. > A more realistic configuration with a timer (and a variable pitch face) > also shows the problem. A possible solution could be to handle > `tab-bar-format-align-right' in `tab-bar-format-list', such that the > functions in the `tab-bar-format' list after > `tab-bar-format-align-right' are not called twice, such that the > computed field width matches the displayed field. So need to update :align-to in tab-bar-format-list. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 04 Jul 2025 07:22:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175161371024190 (code B ref 78953); Fri, 04 Jul 2025 07:22:02 +0000 Received: (at 78953) by debbugs.gnu.org; 4 Jul 2025 07:21:50 +0000 Received: from localhost ([127.0.0.1]:56300 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uXak2-0006I6-46 for submit@debbugs.gnu.org; Fri, 04 Jul 2025 03:21:50 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:59969 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uXajy-0006H5-FU for 78953@debbugs.gnu.org; Fri, 04 Jul 2025 03:21:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=RmDyJkYN9BHQB0oMOqg1MjufttLTRDkhr6H3N18MVZk=; b=d+It5c7B8/50ey1zMPshSMTS8q 5bbT9dL4sy5LeiGKt0HkTEksEYgq+zqhif5Or1FutLMJc9r3MGzh1DTOTeKvTb6VHckJlwAs4mM4p 7In4genk9yaPZgtooGZU/RPLhsnbqomXxisLqBcGXtbhajkd2vgcbnTgI4saDKbf2ohs=; From: Daniel Mendler In-Reply-To: <878ql4tpkl.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> Date: Fri, 04 Jul 2025 09:21:38 +0200 Message-ID: <87sejc775p.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> When fields in `tab-bar-format' after `tab-bar-format-align-right' >> change their width between two calls, then the alignment breaks - the >> right aligned tab field jumps around. Example configuration which uses a >> `global-mode-string' with a random width: >> >> (setq tab-bar-format >> '( tab-bar-format-tabs >> tab-bar-format-align-right >> tab-bar-format-global)) >> >> (setq global-mode-string >> '("|" (:eval (make-string (random 10) ?#)) "|")) >> >> (run-at-time 1 1 #'force-mode-line-update t) > > Thanks, I confirm the problem. Thanks for checking. >> A more realistic configuration with a timer (and a variable pitch face) >> also shows the problem. A possible solution could be to handle >> `tab-bar-format-align-right' in `tab-bar-format-list', such that the >> functions in the `tab-bar-format' list after >> `tab-bar-format-align-right' are not called twice, such that the >> computed field width matches the displayed field. > > So need to update :align-to in tab-bar-format-list. Yes, exactly. Also another problem I've observed is that `string-pixel-width' is slow, which is a problem with frequent updates/redisplays, for example when scrolling a lot with `pixel-scroll-precision-mode'. I suggest to update `:align-to' in `tab-bar-format-list' and also cache the computed width and the formatted tab bar string. Then the cached string can be compared with `equal-including-properties` and only if the string changes, the pixel width needs to be recomputed. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 09 Jul 2025 06:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175204283530809 (code B ref 78953); Wed, 09 Jul 2025 06:34:02 +0000 Received: (at 78953) by debbugs.gnu.org; 9 Jul 2025 06:33:55 +0000 Received: from localhost ([127.0.0.1]:48052 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZONO-00080n-Vd for submit@debbugs.gnu.org; Wed, 09 Jul 2025 02:33:55 -0400 Received: from mout-y-111.mailbox.org ([2001:67c:2050:103:465::111]:52270) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZONL-0007zE-Mg; Wed, 09 Jul 2025 02:33:53 -0400 Received: from smtp202.mailbox.org (smtp202.mailbox.org [10.196.197.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-111.mailbox.org (Postfix) with ESMTPS id 4bcSq80KXVz9y0x; Wed, 9 Jul 2025 08:33:40 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752042820; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=pJ+hUBNuF5ip6cTf0x3uEdA8eVIHaThvOj4Vu6KFvVI=; b=Wegxyy436cGHzfdIgqsOjTEMrJGgDKX5ME2h7K5eZqxXAMI7aCcQdGvH85pCfUoVxgjayy to7lD3CEm0dkPh8nvbzknKx8btHINYqBgXg1TuGLMrjFOimH0D3lMneXMnQ+4SvOlEfvdD 4apePACfA+4JOygIf+PVepi3P7rwb4bYokUgzHCdfYtd0j+8kfQs8Tc3KPGTbfhUtsS6z5 YtvHzy+JMi8+QJb01x7y/wV/d9GEugjz3B285rjt5NbGlbmNzp2k2NhyN2i0SoD7+X8GjP dkk6M/b0Sw7kCp2K70iLdSBUX+6AgIlx1HjXV6nXGlt2KpfbySTnYzsScbV5JA== From: Juri Linkov In-Reply-To: <87sejc775p.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> Date: Wed, 09 Jul 2025 09:32:39 +0300 Message-ID: <87sej5ri0o.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) close 78953 31.0.50 thanks >>> A more realistic configuration with a timer (and a variable pitch face) >>> also shows the problem. A possible solution could be to handle >>> `tab-bar-format-align-right' in `tab-bar-format-list', such that the >>> functions in the `tab-bar-format' list after >>> `tab-bar-format-align-right' are not called twice, such that the >>> computed field width matches the displayed field. Now `tab-bar-format-list' and `tab-bar-format-align-right' are fixed to not call `tab-bar-format-global' twice. > Also another problem I've observed is that `string-pixel-width' is slow, > which is a problem with frequent updates/redisplays, for example when > scrolling a lot with `pixel-scroll-precision-mode'. > > I suggest to update `:align-to' in `tab-bar-format-list' and also cache > the computed width and the formatted tab bar string. Then the cached > string can be compared with `equal-including-properties` and only if the > string changes, the pixel width needs to be recomputed. Now the formatted tab bar string is cached as well. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 09 Jul 2025 07:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175204531224133 (code B ref 78953); Wed, 09 Jul 2025 07:16:01 +0000 Received: (at 78953) by debbugs.gnu.org; 9 Jul 2025 07:15:12 +0000 Received: from localhost ([127.0.0.1]:48279 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZP1L-0006Gu-8I for submit@debbugs.gnu.org; Wed, 09 Jul 2025 03:15:11 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:47727 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZP1H-0006FD-0q for 78953@debbugs.gnu.org; Wed, 09 Jul 2025 03:15:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=snbu7W8z0tVDJnTEYpCMR0xTPXBKt6HCKfpfAfjFWFw=; b=O6TmsjgpvAMV0ShP60gWM2LPkS OKT9tMLqiuLEYW30WJARPgrifpNzDdGMDxe/rUWDLWtL3MUpkTdVZom1Fcu6ujvz1wft8dKFpfm82 pjjsMyeZFfXcg2/4IMc7+zgAK0bhbpxoaJyOV+DsrTXcIN3Fi8gqS5gmSuSJEHSOvOrY=; From: Daniel Mendler In-Reply-To: <87sej5ri0o.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> Date: Wed, 09 Jul 2025 09:14:59 +0200 Message-ID: <87tt3lsumk.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: > close 78953 31.0.50 > thanks > >>>> A more realistic configuration with a timer (and a variable pitch face) >>>> also shows the problem. A possible solution could be to handle >>>> `tab-bar-format-align-right' in `tab-bar-format-list', such that the >>>> functions in the `tab-bar-format' list after >>>> `tab-bar-format-align-right' are not called twice, such that the >>>> computed field width matches the displayed field. > > Now `tab-bar-format-list' and `tab-bar-format-align-right' are fixed > to not call `tab-bar-format-global' twice. > >> Also another problem I've observed is that `string-pixel-width' is slow, >> which is a problem with frequent updates/redisplays, for example when >> scrolling a lot with `pixel-scroll-precision-mode'. >> >> I suggest to update `:align-to' in `tab-bar-format-list' and also cache >> the computed width and the formatted tab bar string. Then the cached >> string can be compared with `equal-including-properties` and only if the >> string changes, the pixel width needs to be recomputed. > > Now the formatted tab bar string is cached as well. Thanks. I think the code should be simplified - in fact it is problematic like this since it will leak memory, if the string changes, for example for a timer which counts up, where the same string will only needed for a short while. A hash table is not needed to memoize a single pair. It suffices to only store the current string to optimize redisplay. You could store the string in the car of a cons, and the width in the cdr. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 06:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175212978224128 (code B ref 78953); Thu, 10 Jul 2025 06:44:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 06:43:02 +0000 Received: from localhost ([127.0.0.1]:54887 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZkzl-0006Gt-GQ for submit@debbugs.gnu.org; Thu, 10 Jul 2025 02:43:02 -0400 Received: from mout-y-209.mailbox.org ([91.198.250.237]:52368) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZkzh-0006F7-Ap for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 02:42:58 -0400 Received: from smtp102.mailbox.org (smtp102.mailbox.org [IPv6:2001:67c:2050:b231:465::102]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-209.mailbox.org (Postfix) with ESMTPS id 4bd4zC6JyqzB0PB; Thu, 10 Jul 2025 08:42:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752129767; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=KlPYeRxAD9cwQYAj+S6o5BKkOQ85Vv6lgtLMukvZmz4=; b=lULH959NtrL8FedRYsd/U9vmg2cgR3jP8wAS8DGQU2rFF4TnkDEfpImOjGSoChLjAuiJjo uSqfX6ZINkFKXztuMFG3gUBLq4Nt02z3i+RxHota7sldAC2oaVV/ILE7uq/oHnuQhCntoO TUtc5XtdxZXYIWA9rE+XA3Gxu8WJZZ40R65LzzsDJ4qvR0T2/zTJ4MGYtDJWHpKtn5dPxC P3i5NvYkUTJXn8QJr3+0EYG+5z/tHJeDuE6GGLj/qWDsU9Yzq5O09b7rXx15BN1opUfIUK MJZfHloRMwHJWA9D8dMOYfki0f3i8RH5h4rL/GiY0J/Ruqs1fcfQxqto82YAfA== Authentication-Results: outgoing_mbo_mout; dkim=none; spf=pass (outgoing_mbo_mout: domain of juri@linkov.net designates 2001:67c:2050:b231:465::102 as permitted sender) smtp.mailfrom=juri@linkov.net From: Juri Linkov In-Reply-To: <87tt3lsumk.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 09:41:34 +0300 Message-ID: <87bjpsk0o1.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: 4bd4zC6JyqzB0PB X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >>>>> A more realistic configuration with a timer (and a variable pitch face) >>>>> also shows the problem. A possible solution could be to handle >>>>> `tab-bar-format-align-right' in `tab-bar-format-list', such that the >>>>> functions in the `tab-bar-format' list after >>>>> `tab-bar-format-align-right' are not called twice, such that the >>>>> computed field width matches the displayed field. >> >> Now `tab-bar-format-list' and `tab-bar-format-align-right' are fixed >> to not call `tab-bar-format-global' twice. >> >>> Also another problem I've observed is that `string-pixel-width' is slow, >>> which is a problem with frequent updates/redisplays, for example when >>> scrolling a lot with `pixel-scroll-precision-mode'. >>> >>> I suggest to update `:align-to' in `tab-bar-format-list' and also cache >>> the computed width and the formatted tab bar string. Then the cached >>> string can be compared with `equal-including-properties` and only if the >>> string changes, the pixel width needs to be recomputed. >> >> Now the formatted tab bar string is cached as well. > > Thanks. I think the code should be simplified - in fact it is > problematic like this since it will leak memory, if the string changes, > for example for a timer which counts up, where the same string will only > needed for a short while. A hash table is not needed to memoize a single > pair. It suffices to only store the current string to optimize > redisplay. You could store the string in the car of a cons, and the > width in the cdr. So you meant caching only the last string? This is implemented now as well. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 07:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175213399928757 (code B ref 78953); Thu, 10 Jul 2025 07:54:01 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 07:53:19 +0000 Received: from localhost ([127.0.0.1]:55327 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZm5m-0007Tb-C7 for submit@debbugs.gnu.org; Thu, 10 Jul 2025 03:53:19 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:56975 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZm5i-0007RT-3B for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 03:53:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Hv4OxU1a5RWkDF3NOxezu/FrknryREJ5oaFMxK70tfw=; b=Bv/a7mXw0/CnX+n7jmWL+eHLnI g3VCS881ONoS3M7nVhu4vM6ht+1CIs+3XpRSLWcPM0ZmBirYSv6+e+2TXrlQBqcK7SWUK1xIqKvOM ZANGL6Yx7aXo+JZkYNxaPNQOWDm6wJtLSOKhww81uQZEUsJMsOS06z4pPD1ulATDMVUw=; From: Daniel Mendler In-Reply-To: <87bjpsk0o1.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> Date: Thu, 10 Jul 2025 09:53:04 +0200 Message-ID: <87v7o0iisf.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> Thanks. I think the code should be simplified - in fact it is >> problematic like this since it will leak memory, if the string changes, >> for example for a timer which counts up, where the same string will only >> needed for a short while. A hash table is not needed to memoize a single >> pair. It suffices to only store the current string to optimize >> redisplay. You could store the string in the car of a cons, and the >> width in the cdr. > > So you meant caching only the last string? This is implemented now as well. Yes, this is exactly what I meant. I will test it soon. Thanks again! Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:05:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215266813866 (code B ref 78953); Thu, 10 Jul 2025 13:05:03 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:04:28 +0000 Received: from localhost ([127.0.0.1]:56378 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZqwr-0003bD-4y for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:04:27 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:33983 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZqwm-0003ZO-Jt for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:04:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=ab3K2Lpc4h2+87Wj47LKrWwTvXtL8bOwBKO+Wt3Jb8c=; b=BqsftOoat7Ah4tS+XXbYxvenvD vCuDhRNYcKwvazIGFL8qBzcui47WDNDWzT2e+HsmpK7tXwGshC+jbBJwwPN21BvbqSlQy8DdYEBJc HeJhiMg1m+u6cPBr/frVabJ+aiq3bWDGHSeiuF7yQn+gSt5BQ5KWWskM/wSIYMAPL244=; From: Daniel Mendler In-Reply-To: <87v7o0iisf.fsf@daniel-mendler.de> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 15:04:12 +0200 Message-ID: <87ecuo42pf.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello Juri, Daniel Mendler writes: > Juri Linkov writes: >>> Thanks. I think the code should be simplified - in fact it is >>> problematic like this since it will leak memory, if the string changes, >>> for example for a timer which counts up, where the same string will only >>> needed for a short while. A hash table is not needed to memoize a single >>> pair. It suffices to only store the current string to optimize >>> redisplay. You could store the string in the car of a cons, and the >>> width in the cdr. >> >> So you meant caching only the last string? This is implemented now as well. > > Yes, this is exactly what I meant. I will test it soon. Thanks again! I have tested your patches and they work well. No flicker or jumping and no negative performance impact due. Excellent work - also on the tab-bar in general! I really appreciate the addition of this feature to Emacs. It is particularly handy with EXWM where I can use it as system status bar. Since we are talking about the tab bar already I have another question - sometimes (rarely) my tab bar gets too long and then it wraps around, which I find undesirable. I would prefer if the content were truncated. I suspect this is harder to address, e.g., via an option tab-bar-truncate/tab-line-truncate? In any case, this is a rare edge case in my usage. Thanks. > Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215343222052 (code B ref 78953); Thu, 10 Jul 2025 13:18:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:17:12 +0000 Received: from localhost ([127.0.0.1]:56429 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZr9C-0005jG-18 for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:17:11 -0400 Received: from mail-ua1-x92e.google.com ([2607:f8b0:4864:20::92e]:50207) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uZr97-0005hM-KI for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:17:07 -0400 Received: by mail-ua1-x92e.google.com with SMTP id a1e0cc1a2514c-87f30519147so504386241.0 for <78953@debbugs.gnu.org>; Thu, 10 Jul 2025 06:17:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752153419; x=1752758219; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FEk1vOlYioTNfhEkZG8j8zPryuoN9ZwBnHkJRkOyTZc=; b=bIzeNRDrNc7E0VqsVNYjREW96NehOoCiFjOMl2bGQxP/6anYdZ7TUhDOE3JCuZtw84 rnxgXp4zdhVDB75S3LgB3fa2iE1QmP/H3UFOsaTNJVsFF5AIP1G7ohz7e8LpBcx6V62J IiWArTpxDzUb1bZh4DRoXMx9ci8iv7EGuRkABUjcbRaQPlDGFWIrV/ZFPgrOOaXsSWeL mi9BbfRJQaI8z5mkglknUnVfLJF01OJjN/VlQcx9iEalhZ/KPKHHi9iZFR40AShQP8VU UfEe5TRTdMNizkKKjTWdqri8hrgDjQ6m89CZdnbd1czVxb4VTJyngHz9+B6iYLOcPaLH SbWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752153419; x=1752758219; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FEk1vOlYioTNfhEkZG8j8zPryuoN9ZwBnHkJRkOyTZc=; b=LSFJnPiMSMsFaRNdillzSqtIRtWfcr8yeZl+yea16UjiCAPFecfgYfLpE2trg2atRh l/dpuoZdb3MEE+AtI5QxZMgvXTqSKi0YN04SFaGeZpD55TDmDJuTFWHOtSXtBEf9XcMX hTFcISPhBzEfXbhCJ8sqs4s1aqek7IF/waX+8n8bgPsPMk889+Em8lZ6WAH1JhmmqoEi 7Ll2q9iQtONLkETZpz2e6XMc5Kdylg2c7RxbV80q0SvB3NGWubQSKHYvfzwph++tROho c6qVOshHlPHrQeZdAGVYvIAuWa/JG7bqWawNjPX02yZrDVpMSdyedYqpkyinF4HJqGob f8Uw== X-Forwarded-Encrypted: i=1; AJvYcCWJuY76QjcNNDWJBsfTMy2hhjsQibj8+dX+fMeLovDUUNVYqdQzd+R5BOo3p/X9AGP8vqnY8Q==@debbugs.gnu.org X-Gm-Message-State: AOJu0YzgpZaqk7D05nfLlLVJDAav3n4zr8TILaxHfkYeMQjNWDZSce/9 2FArvUK1s0VgmDQUpHxYdH2qmx3jMNDbIbpsQQJAxUnvrKv39E+guUFQLgAs1rT3jiHeHfLX17N MqmxwGWkpmUsFTu7AUTb/cLIXyVEOiF05Yw== X-Gm-Gg: ASbGncsIdX9XqVRv62qJPXhuw0PXlhge9a89y0WOdXtKbjmdXYRLTrwnRKEmkfaytud dInf/wZfalkSz/4LcU/JyqBn18iZlUoJpJIZz4xLFsEWr1RGbI+tlE6OKnZZMp0w5f8EiS2edcW 97Af7A5KoXTOQtE83nKzWhWaALzFy4N5K/J8FJGNQ/X6ISxA== X-Google-Smtp-Source: AGHT+IE/E4geWuLsgmfpfB++rX6F2MMBAkNCMkFikn0AvKrEQfzRD0YGsgD988WGj2DL8byXQstDEgbqkZvadBZnBoQ= X-Received: by 2002:a05:6122:90c:b0:530:65f0:7fc4 with SMTP id 71dfb90a1353d-535e3ce2927mr2380438e0c.1.1752153419082; Thu, 10 Jul 2025 06:16:59 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> In-Reply-To: <87ecuo42pf.fsf@daniel-mendler.de> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Thu, 10 Jul 2025 09:16:46 -0400 X-Gm-Features: Ac12FXzC3FNpmw3ydn-9ieBPZH8aCSVPQfUDg6SiP1jP_TqS62mReF9MciUthZk Message-ID: Content-Type: multipart/alternative; boundary="00000000000022f7ee063993021f" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000022f7ee063993021f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jul 10, 2025 at 9:05=E2=80=AFAM Daniel Mendler via Bug reports for = GNU Emacs, the Swiss army knife of text editors wrote: > Hello Juri, > > Daniel Mendler writes: > > Juri Linkov writes: > >>> Thanks. I think the code should be simplified - in fact it is > >>> problematic like this since it will leak memory, if the string change= s, > >>> for example for a timer which counts up, where the same string will > only > >>> needed for a short while. A hash table is not needed to memoize a > single > >>> pair. It suffices to only store the current string to optimize > >>> redisplay. You could store the string in the car of a cons, and the > >>> width in the cdr. > >> > >> So you meant caching only the last string? This is implemented now as > well. > > > > Yes, this is exactly what I meant. I will test it soon. Thanks again! > > I have tested your patches and they work well. No flicker or jumping and > no negative performance impact due. Excellent work - also on the tab-bar > in general! I really appreciate the addition of this feature to Emacs. > It is particularly handy with EXWM where I can use it as system status > bar. > > Since we are talking about the tab bar already I have another question - > sometimes (rarely) my tab bar gets too long and then it wraps around, > which I find undesirable. I would prefer if the content were truncated. > I suspect this is harder to address, e.g., via an option > tab-bar-truncate/tab-line-truncate? In any case, this is a rare edge > case in my usage. > What if, instead, each tab's content would shrink to fit? This is closer to how web browsers fit tabs. There are browser extensions that offer multiple lines or scroll left/right, but I find those more annoying since I can't see them all. One can always hover over each tab to see what its title is. In my configuration, my help text lists the buffers (and it's helpful to use the mouse-face support we added earlier in the year). --00000000000022f7ee063993021f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Thu, Jul 10, 2025 at 9:05=E2=80=AFAM Daniel Mendler via Bug reports for = GNU Emacs, the Swiss army knife of text editors <bug-gnu-emacs@gnu.org> wrote:
Hello Juri,

Daniel Mendler <mail@daniel-mendler.de> writes:
> Juri Linkov <j= uri@linkov.net> writes:
>>> Thanks. I think the code should be simplified - in fact it is<= br> >>> problematic like this since it will leak memory, if the string= changes,
>>> for example for a timer which counts up, where the same string= will only
>>> needed for a short while. A hash table is not needed to memoiz= e a single
>>> pair. It suffices to only store the current string to optimize=
>>> redisplay. You could store the string in the car of a cons, an= d the
>>> width in the cdr.
>>
>> So you meant caching only the last string?=C2=A0 This is implement= ed now as well.
>
> Yes, this is exactly what I meant. I will test it soon. Thanks again!<= br>
I have tested your patches and they work well. No flicker or jumping and no negative performance impact due. Excellent work - also on the tab-bar in general! I really appreciate the addition of this feature to Emacs.
It is particularly handy with EXWM where I can use it as system status
bar.

Since we are talking about the tab bar already I have another question - sometimes (rarely) my tab bar gets too long and then it wraps around,
which I find undesirable. I would prefer if the content were truncated.
I suspect this is harder to address, e.g., via an option
tab-bar-truncate/tab-line-truncate? In any case, this is a rare edge
case in my usage.

What if, instead, each tab's content= would shrink to fit?=C2=A0 This is closer to how web browsers fit tabs.=C2= =A0 There are browser extensions that offer multiple lines or scroll left/r= ight, but I find those more annoying since I can't see them all.=C2=A0 = One can always hover over each tab to see what its title is.=C2=A0 In my co= nfiguration, my help text lists the buffers (and it's helpful to use th= e mouse-face support we added earlier in the year).
--00000000000022f7ee063993021f-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:24:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215384025236 (code B ref 78953); Thu, 10 Jul 2025 13:24:05 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:24:00 +0000 Received: from localhost ([127.0.0.1]:56497 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZrFm-0006Yl-38 for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:24:00 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:59443 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZrFh-0006Wu-OB for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:23:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=ijLzYkjHzehnAl4KBqk43sKR0IaoYspvgrbNCN5G1TA=; b=AMEMcWr4Mgn4ltotOszjEoZe5K QIQnnZ4iiVHJvwHceDLu7UrLUdMAMwmQiX4W4GjRD4UtXAm5rIKNjMXIt6641f0g76GoYzwPjo3+W tQmK0hxVIC/kIZEYYOkLEl05I43H+cSp4mt7culAyea/a5ZegchU54bAYANPp32xdsO0=; From: Daniel Mendler In-Reply-To: References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 15:23:45 +0200 Message-ID: <87bjps41su.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) St=C3=A9phane Marks writes: > What if, instead, each tab's content would shrink to fit? This is > closer to how web browsers fit tabs. There are browser extensions that > offer multiple lines or scroll left/right, but I find those more > annoying since I can't see them all. Yes, this would be great, as long as each tab bar field would shrink, not only the tabs themselves at the very left. For me the overflow happens not only because I have too many tabs but because my system bar gets too long. However I suspect that such shrinking behavior is harder to implement nicely, in contrast to simple truncation. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215423129562 (code B ref 78953); Thu, 10 Jul 2025 13:31:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:30:31 +0000 Received: from localhost ([127.0.0.1]:56538 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZrM7-0007gh-0l for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:30:31 -0400 Received: from mail-ua1-x92a.google.com ([2607:f8b0:4864:20::92a]:54632) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uZrM4-0007dw-Eq for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:30:29 -0400 Received: by mail-ua1-x92a.google.com with SMTP id a1e0cc1a2514c-87f234ba1abso459640241.1 for <78953@debbugs.gnu.org>; Thu, 10 Jul 2025 06:30:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752154222; x=1752759022; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5pSATZEkgU2Dskegcxa3TSDqmxdrpfAJbUZFCkU4hAw=; b=KC4JY3IJEZj/R/DAxAxOCygOW/yEdyV2+DMxtVGhXYpMXcNlR6VChnKPwj/T/cpCg6 Zmoxd8T4Ktq3MEl2Lo9Yp1CaGAdlbQzJEz86BqN239TDJfBsYxZMk64oEUwfk5C/zk+n ylmO1TPb17SXHLsbERnn6tpIyLfR80uS52aJl4YlB7NFNvKdbcuyXbOEMsZitvtKW+94 Ozd2UJxFyR9W/ivEnN6ln7lc/G16K6SlqdBXMthzwN/WapphFdZb9AzRw02vrBMpbhAQ Z5gNXV/KrU7AVc54E7vP+Kop3LmDWJ4/Tr/W7nxtda0zB6pTfgGU4hUVPbwK3lsidZ2n BlzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752154222; x=1752759022; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5pSATZEkgU2Dskegcxa3TSDqmxdrpfAJbUZFCkU4hAw=; b=xKCJ1xdJ8QfrZ2kR73impnpW03MsyOelzt7z6qKA18O1nMiVkjMrxphuR9vEA7+Q36 7NZMMXLoEAUl6EXfj1ucwVd/9X8iMIyVR4i7dDRSimoLKIqcTME1zfPU1gAKiDNCWTwe c/ixbDa0BNdJwZ0gdQh4wbiffe0ZEu0uAfA7EkUXQL2x0L3cuye7r2ClWyKwxJqxtAkX BFuZKmlAimgMHwTIRyTuEu9PUe2McBspImYT5I57TRZ6NR1bb+BZvxyDQOy1wRrt/jbL gItve3ulckys58w8TOieNPYJ+gClfyspwsLBp0cdNmbg7oyCi75/vp3WX0tr9pWgG4KB qGzw== X-Forwarded-Encrypted: i=1; AJvYcCWNHuOst5y7cnhrF4eLHNb09KYQ7AADzc/awEX1QbsyX0UZJ9Z9fWfs6cigyVnyA1erd3YOcg==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyHaNZO2Q6AdzNsL5ffpU0SW+ZQO5NOEA4Ede17e3T1ZgofUA73 BAJKW9MxTTKnRD9V1iD54H2mgCdpOVHGHhgTYn9Exj1QPAfHrUTtLxrEd1RRLdFZ5PoVvYQPxUf NgmxNtFNtN0jBoLov9UVuN5wTUG/+/UW00NG8 X-Gm-Gg: ASbGnctHPokJ8qK2Qo95r1CNIsj1KDguBVg/TS6AVXPG6Bfawoe1XTiGoPIvN0CPY+f Q8vrlJWHm95gWKFrl8q4mFi+IBnwQzQaMB6NTdRvV3VswRFjvTJy5jcHBNXIwtiOoC7m6JP5uxA eu79YByEkgVPbG8cdX4e6+lKNZ/GdyC6x/27JkqZcATuFvxrm4dQUgyzJh X-Google-Smtp-Source: AGHT+IEgWtWzdaDt2Eobv0G0SCBfoqvJV7qk5TAZ4vvfaInB3strmJltYp1jDLwtslJXq3I40eIMPwS6hAp54nbNzKg= X-Received: by 2002:a05:6102:c89:b0:4dd:b9bc:df71 with SMTP id ada2fe7eead31-4f62df561f9mr1590143137.10.1752154222269; Thu, 10 Jul 2025 06:30:22 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> In-Reply-To: <87bjps41su.fsf@daniel-mendler.de> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Thu, 10 Jul 2025 09:30:11 -0400 X-Gm-Features: Ac12FXx8f-XXhZcx1yg0uDYuj1PsHGCS0dgJQ05ktSFm2ozd6JRxs4vDilghUXU Message-ID: Content-Type: multipart/alternative; boundary="000000000000029e600639933285" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000029e600639933285 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler wrote: > St=C3=A9phane Marks writes: > > > What if, instead, each tab's content would shrink to fit? This is > > closer to how web browsers fit tabs. There are browser extensions that > > offer multiple lines or scroll left/right, but I find those more > > annoying since I can't see them all. > > Yes, this would be great, as long as each tab bar field would shrink, > not only the tabs themselves at the very left. For me the overflow > happens not only because I have too many tabs but because my system bar > gets too long. > > However I suspect that such shrinking behavior is harder to implement > nicely, in contrast to simple truncation. > Reading through tab-bar for a feature I don't use, but maybe I should, is `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and `tab-bar-auto-width-min` so perhaps this feature already exists. --000000000000029e600639933285 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler <mail@daniel-mendler.de> wrote:
St=C3=A9phane Marks <shipmints@gmail.com> writes:<= br>
> What if, instead, each tab's content would shrink to fit? This is<= br> > closer to how web browsers fit tabs. There are browser extensions that=
> offer multiple lines or scroll left/right, but I find those more
> annoying since I can't see them all.

Yes, this would be great, as long as each tab bar field would shrink,
not only the tabs themselves at the very left. For me the overflow
happens not only because I have too many tabs but because my system bar
gets too long.

However I suspect that such shrinking behavior is harder to implement
nicely, in contrast to simple truncation.

Reading through = tab-bar for a feature I don't use, but maybe I should, is `tab-bar-auto= -width` and its controls `tab-bar-auto-width-max` and `tab-bar-auto-width-m= in` so perhaps this feature already exists.
--000000000000029e600639933285-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215450330368 (code B ref 78953); Thu, 10 Jul 2025 13:36:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:35:03 +0000 Received: from localhost ([127.0.0.1]:56573 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZrQV-0007tj-7E for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:35:03 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:53519 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZrQS-0007tH-IB for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:35:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Mh3OH+1XMFNRAuufk4LSBrhNzWs8gw3JltjCjKbGwV8=; b=n00Ho6T3hPXvH2y+zZY5tTFyyk EVezcyV23e8zdeNWWjOU/Of8IKEUTQ5uysl+WLdVIOgAlPF4kEdfx8uRe41n4UWqAfdKQ+3yfW8Xh YeXA0YwVawQDox0B+1XiAYZDBMmMNruTI7LVBZOeCyUZjER6VcCpNSDWdfiFL5Jh1a1c=; From: Daniel Mendler In-Reply-To: References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 15:34:52 +0200 Message-ID: <874ivk41ab.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) St=C3=A9phane Marks writes: > On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler > wrote: > >> St=C3=A9phane Marks writes: >> >> > What if, instead, each tab's content would shrink to fit? This is >> > closer to how web browsers fit tabs. There are browser extensions that >> > offer multiple lines or scroll left/right, but I find those more >> > annoying since I can't see them all. >> >> Yes, this would be great, as long as each tab bar field would shrink, >> not only the tabs themselves at the very left. For me the overflow >> happens not only because I have too many tabs but because my system bar >> gets too long. >> >> However I suspect that such shrinking behavior is harder to implement >> nicely, in contrast to simple truncation. >> > > Reading through tab-bar for a feature I don't use, but maybe I should, is > `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and > `tab-bar-auto-width-min` so perhaps this feature already exists. I see. This is exactly the feature which does not help for my use case, since it only resizes the tabs and not all the other tab fields, which I would like to truncate. I would like to see an option `tab-bar-truncate' or `tab-line-truncate' which simply prevent line wrapping, similar to the buffer variable `truncate-lines'. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215480631542 (code B ref 78953); Thu, 10 Jul 2025 13:41:01 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:40:06 +0000 Received: from localhost ([127.0.0.1]:56606 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZrVN-0008Cf-LN for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:40:06 -0400 Received: from mail-vk1-xa33.google.com ([2607:f8b0:4864:20::a33]:52403) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uZrVJ-0008C2-Ke for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:40:02 -0400 Received: by mail-vk1-xa33.google.com with SMTP id 71dfb90a1353d-532de49b7e2so452905e0c.0 for <78953@debbugs.gnu.org>; Thu, 10 Jul 2025 06:40:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752154795; x=1752759595; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=sAULklgaSupZdCJo1a5mIUst4O2xhyfT6ossVG8XOBs=; b=LOBOJKNtZT4h8VD9HT+GiNCtvhu68AqdT9uMJK66Lrfs3T279PGb7zK6oUr+tRlL53 kR01Ph6olh9z6Ubj7kSfWnv2nnz6JnpW4ib77kenMXALE4Jn7CG1niD3HQxv2+SiIWdn TAo83PpAdwz9G0BNWmw+bKw6lua46lEclCi1Za0ew3V/Ghm3xkeDmnY/aXpTAFwmdYHd CVX+i8j3iJ7SUI/6EHX8jeKb9lVV2yZFBYpqXleu3XN/4mRXfB2tRe0bVtpiuwuMa7R0 ToOqL4I6njaE2AlbJSPAWYzrlHJHNBnTLHLtWFkppOsUA4Hr+4RzWATGqNoZlTWVNR/U kNhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752154795; x=1752759595; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=sAULklgaSupZdCJo1a5mIUst4O2xhyfT6ossVG8XOBs=; b=Lqxdmr/8dBAnKhesb0mmqMJVrHJ70b0INOKbIegAWlul0QFDyUoe2F5byBcH6JQI9o Qt+qahUxe23sDNq/C/oyRUDE9FSVsXSzY3qFDszMrlgdrvOi/5GAZwc+/Zi27sHiUmj/ uNsMyThB3P1MZ/BPpifoe2X754yh4Jj94DvuDxdsiRMtJnQFfAdV6TiG8UcomB/kM28A raH+UsL703p7aNpiUy51DINkNDEtnPSmEP6XyWDDeskAxz9t6a57fBlUXGoilqbUKlQv Mv5lMCXyPoYzsdkRfd08k745jVeSRMkReU8p+NoUJWTxR0LcFEPfBEXTyQPZ/9yk9/vw lnJQ== X-Forwarded-Encrypted: i=1; AJvYcCV8QWUqdZifeQvbwAoEP7qqKh33v9SjvKnTVcGW+m7tXk3GkPQbV9ZTRVnL0JApMyg+cVOtIw==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyrXGIWbzloQc/ZSInsuBXgREW7Y50ygwiT1E8hWwMR6H3cmdmL vDy+hy4UhRb8E/6aN8UHYPjk1tHkdwIfXaD9v9p/enh8+1UoZ5GNSvpmifWyVFsQhiqt9bPpOAJ kXj3Mm6bxRJ+lb483Jj3AGnSBgDmdJBM= X-Gm-Gg: ASbGncup2Jt2vMpdUqBUmSkRA7oHL/3h8SGxXBkGgBv1mHMLIH7QKOICDPsX4evHmtN VcDgBpf+B4NVb4QNFG41rSe+wbScZc5HN4WTqkz5SAc115WaAzthMzTfeZbmm/uP0HN4/zBzGRi E9Bg0hYfzClaE7WOHlC+ToQIxDiUkycnpUEZQ/6bl0YfNRAg== X-Google-Smtp-Source: AGHT+IFwr4NxPQdaKKQQCvlYllkzO5KL2c2r8E0eHZt3UCoWNMjZFSn5dg0RbaBzvHYc8kF0FKmUEdSC9hw6mxfDy2A= X-Received: by 2002:a05:6122:20a3:b0:530:5996:63a2 with SMTP id 71dfb90a1353d-535e3d80c67mr2851325e0c.7.1752154794356; Thu, 10 Jul 2025 06:39:54 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> In-Reply-To: <874ivk41ab.fsf@daniel-mendler.de> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Thu, 10 Jul 2025 09:39:43 -0400 X-Gm-Features: Ac12FXyVAuc7QWu2KvLqn1HoHqMh7oGwGsmrXKPa5vnu5zlg73-iEHDP0yAkXug Message-ID: Content-Type: multipart/alternative; boundary="0000000000001bf4f00639935420" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000001bf4f00639935420 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jul 10, 2025 at 9:34=E2=80=AFAM Daniel Mendler wrote: > St=C3=A9phane Marks writes: > > > On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler > > wrote: > > > >> St=C3=A9phane Marks writes: > >> > >> > What if, instead, each tab's content would shrink to fit? This is > >> > closer to how web browsers fit tabs. There are browser extensions th= at > >> > offer multiple lines or scroll left/right, but I find those more > >> > annoying since I can't see them all. > >> > >> Yes, this would be great, as long as each tab bar field would shrink, > >> not only the tabs themselves at the very left. For me the overflow > >> happens not only because I have too many tabs but because my system ba= r > >> gets too long. > >> > >> However I suspect that such shrinking behavior is harder to implement > >> nicely, in contrast to simple truncation. > >> > > > > Reading through tab-bar for a feature I don't use, but maybe I should, = is > > `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and > > `tab-bar-auto-width-min` so perhaps this feature already exists. > > I see. This is exactly the feature which does not help for my use case, > since it only resizes the tabs and not all the other tab fields, which I > would like to truncate. > > I would like to see an option `tab-bar-truncate' or `tab-line-truncate' > which simply prevent line wrapping, similar to the buffer variable > `truncate-lines'. > Perhaps customizing `tab-bar-auto-width-faces` and/or `tab-bar-auto-width-functions` would allow relaxing field limits to your taste. --0000000000001bf4f00639935420 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Thu, Jul 10, 2025 at 9:34=E2=80=AFAM Daniel Mendler <mail@daniel-mendler.de> wrote:
St=C3=A9phane Marks <shipmints@gmail.com> writes:<= br>
> On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler <mail@daniel-mendler.de= >
> wrote:
>
>> St=C3=A9phane Marks <shipmints@gmail.com> writes:
>>
>> > What if, instead, each tab's content would shrink to fit?= This is
>> > closer to how web browsers fit tabs. There are browser extens= ions that
>> > offer multiple lines or scroll left/right, but I find those m= ore
>> > annoying since I can't see them all.
>>
>> Yes, this would be great, as long as each tab bar field would shri= nk,
>> not only the tabs themselves at the very left. For me the overflow=
>> happens not only because I have too many tabs but because my syste= m bar
>> gets too long.
>>
>> However I suspect that such shrinking behavior is harder to implem= ent
>> nicely, in contrast to simple truncation.
>>
>
> Reading through tab-bar for a feature I don't use, but maybe I sho= uld, is
> `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and
> `tab-bar-auto-width-min` so perhaps this feature already exists.

I see. This is exactly the feature which does not help for my use case,
since it only resizes the tabs and not all the other tab fields, which I would like to truncate.

I would like to see an option `tab-bar-truncate' or `tab-line-truncate&= #39;
which simply prevent line wrapping, similar to the buffer variable
`truncate-lines'.

Perhaps customizing `tab-bar-auto-wi= dth-faces` and/or `tab-bar-auto-width-functions` would allow relaxing field= limits to your taste.
--0000000000001bf4f00639935420-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 13:50:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17521553664024 (code B ref 78953); Thu, 10 Jul 2025 13:50:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 13:49:26 +0000 Received: from localhost ([127.0.0.1]:56681 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZreQ-00012p-0p for submit@debbugs.gnu.org; Thu, 10 Jul 2025 09:49:26 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:48083 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZreN-00011q-00 for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 09:49:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=F3Q3iK+/74JYsBYwNkKpok0MDq3isXwr7o6wFDYQeVk=; b=Jrix+ji+Hc5g6ILZJXe9Osvx6W 2CQ8AbagRkYoGn1amjJbCZyKTPcdPzGTs2RHRZoL5wkhvw9X5KkCELQeb/cRH2SOCi2T2qHC4Ers9 AK0n3+ud6zk9qGbQLACyqz6DRG7qxB2SMBNcI/5SH0y5ZnfrTa9IxP7W5Zp9by/EBH4o=; From: Daniel Mendler In-Reply-To: References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 15:49:14 +0200 Message-ID: <87wm8g2m1x.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) St=C3=A9phane Marks writes: > On Thu, Jul 10, 2025 at 9:34=E2=80=AFAM Daniel Mendler > wrote: > >> St=C3=A9phane Marks writes: >> >> > On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler >> > wrote: >> > >> >> St=C3=A9phane Marks writes: >> >> >> >> > What if, instead, each tab's content would shrink to fit? This is >> >> > closer to how web browsers fit tabs. There are browser extensions t= hat >> >> > offer multiple lines or scroll left/right, but I find those more >> >> > annoying since I can't see them all. >> >> >> >> Yes, this would be great, as long as each tab bar field would shrink, >> >> not only the tabs themselves at the very left. For me the overflow >> >> happens not only because I have too many tabs but because my system b= ar >> >> gets too long. >> >> >> >> However I suspect that such shrinking behavior is harder to implement >> >> nicely, in contrast to simple truncation. >> >> >> > >> > Reading through tab-bar for a feature I don't use, but maybe I should,= is >> > `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and >> > `tab-bar-auto-width-min` so perhaps this feature already exists. >> >> I see. This is exactly the feature which does not help for my use case, >> since it only resizes the tabs and not all the other tab fields, which I >> would like to truncate. >> >> I would like to see an option `tab-bar-truncate' or `tab-line-truncate' >> which simply prevent line wrapping, similar to the buffer variable >> `truncate-lines'. >> > > Perhaps customizing `tab-bar-auto-width-faces` and/or > `tab-bar-auto-width-functions` would allow relaxing field limits to your > taste. This looks interesting. But I just naively tried the following and Emacs hangs up as result. (setq tab-bar-auto-width t tab-bar-auto-width-functions (list #'always)) But the auto width setting leads to growing fields and this is not what I want. I don't want that the tab fields grow. I want them to shrink only in case of overflow. So maybe `tab-bar-auto-width` could be extended to handle the values nil, t, or `no-grow'? And also another auto width function could be added which handles non-tab fields too. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 14:18:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175215703520803 (code B ref 78953); Thu, 10 Jul 2025 14:18:04 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 14:17:15 +0000 Received: from localhost ([127.0.0.1]:58140 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZs5H-0005Ow-4L for submit@debbugs.gnu.org; Thu, 10 Jul 2025 10:17:14 -0400 Received: from mail-ot1-x331.google.com ([2607:f8b0:4864:20::331]:50272) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uZs4w-0005LX-Q2 for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 10:16:52 -0400 Received: by mail-ot1-x331.google.com with SMTP id 46e09a7af769-73cdff9a27aso230079a34.0 for <78953@debbugs.gnu.org>; Thu, 10 Jul 2025 07:16:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752157004; x=1752761804; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=yVIQvir75wpYKXo/0jDigIPGt+/YXR8qOjN0IrMatUw=; b=IQ8s3Iq5N2XP0UcdY19oJxWhXOwplsIzQwJK/fOoNqkgCxXa1leiwsBW0HPKuUevrg w7oYZwUq4ecOXcMP8bsUmwPsY6XK9n3kmZEzoLRAB/tp4+cdlCuU+tD/I7z1LOFtU6ld QRzEfAE7NVlZI+s/Sbq0ve8xm00JMYjNcmV3mamRTm0w/UuRjy7hG9d7CgT5ZKfQMKol mV1l3YWD22XHF5o3YQHOaS+evq9hRKeMQXW5FjCsKlmbhos0uTugdjDesEaWRlJxe6wV 8LqBw63r9MSfYI4acs1m9xwHN+jNrk3sYJH+5ABr5KEXTlsUrfqPaqeRt++O9N4Om+on Ea4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752157004; x=1752761804; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yVIQvir75wpYKXo/0jDigIPGt+/YXR8qOjN0IrMatUw=; b=bR1UHfPwMOiQFD+R9nxsW6SsCPCaBtxH0NAsbylraSSDa2D1eSUrMQdY9XF0YYFUei UxoCBHz1ICcUAZsLelDSzE1kivmBJbVGk5uAtL8xMOvfIYPZ+ha4GYdeK4XPPlvjLHIC poEmHc13ggBgeqnwDvvA4dg5SjU3zceh3DgDCHkPlqSWE4R6pX060y3bx9htzeuxMMs5 s4NvsgCZg/d/fDHI/d4Ikns+CciqLx1EU39h/pS/iDuRki9zjuStpp+/aVypDAskPLyQ Etfpr/VjNmIxYswNdF5PTcLUK8oJ2rRQpm7yOZ2u24IERgfJrLskusGlMWkAyAFBNuwG Gp0w== X-Forwarded-Encrypted: i=1; AJvYcCWl7r3dLIbJ0xV6Dgy6PSYi+/RT4dDInh7e7/mSgAJfeatq90nnMNUjaaO/lmUnZj6oX0+P0A==@debbugs.gnu.org X-Gm-Message-State: AOJu0YwPxQJY4VQ2SEzq1kGLVmxWG/a4os/1oj3KLzHHn0nOVvvwXAHX 2YrGwhXc3zBSBrz3UMw1kJbN1Fn/JYCEJhTRLPUzlaG1YpIoEPbGO13CWeGfbRgSbxSvt5LZGzs H+jbqXyH9ku1gb2O28EVGW90HVgNx7LQ= X-Gm-Gg: ASbGnctV5N46NnKjDqg4arP3udRyhRUiH7gvfE9k+xdzISIf6NiI+izLfvJM9epX6lz SAO+QOianFqkljUKxNzz0ouQDqXqovWs53fuBpTCimLYmzB/GZRxcwjivIaBgOaUcQd8aFVRqun eCG8IOq0Wr7VXusoQ9rwaQeFlCU5t/SayCeQI8JYOe57wixQ== X-Google-Smtp-Source: AGHT+IFoFl0aLcwZnuC060cVQBM4YP6yN9wLRBI/r8o4NlDNZHPuCLm3zsxvWNID2hBadoR5FNVp88voHpuj0yCYyhc= X-Received: by 2002:a05:6830:2587:b0:73b:2682:5b2b with SMTP id 46e09a7af769-73cedf75e23mr3466015a34.8.1752157004410; Thu, 10 Jul 2025 07:16:44 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> <87wm8g2m1x.fsf@daniel-mendler.de> In-Reply-To: <87wm8g2m1x.fsf@daniel-mendler.de> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Thu, 10 Jul 2025 10:16:33 -0400 X-Gm-Features: Ac12FXyiCP9XUOyPf6VKAsmneSFJiDF193HPlsfUz59Bd7agN2L-g8jZKcGfj7M Message-ID: Content-Type: multipart/alternative; boundary="000000000000d6b609063993d760" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000d6b609063993d760 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jul 10, 2025 at 9:49=E2=80=AFAM Daniel Mendler wrote: > St=C3=A9phane Marks writes: > > > On Thu, Jul 10, 2025 at 9:34=E2=80=AFAM Daniel Mendler > > wrote: > > > >> St=C3=A9phane Marks writes: > >> > >> > On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler < > mail@daniel-mendler.de> > >> > wrote: > >> > > >> >> St=C3=A9phane Marks writes: > >> >> > >> >> > What if, instead, each tab's content would shrink to fit? This is > >> >> > closer to how web browsers fit tabs. There are browser extensions > that > >> >> > offer multiple lines or scroll left/right, but I find those more > >> >> > annoying since I can't see them all. > >> >> > >> >> Yes, this would be great, as long as each tab bar field would shrin= k, > >> >> not only the tabs themselves at the very left. For me the overflow > >> >> happens not only because I have too many tabs but because my system > bar > >> >> gets too long. > >> >> > >> >> However I suspect that such shrinking behavior is harder to impleme= nt > >> >> nicely, in contrast to simple truncation. > >> >> > >> > > >> > Reading through tab-bar for a feature I don't use, but maybe I > should, is > >> > `tab-bar-auto-width` and its controls `tab-bar-auto-width-max` and > >> > `tab-bar-auto-width-min` so perhaps this feature already exists. > >> > >> I see. This is exactly the feature which does not help for my use case= , > >> since it only resizes the tabs and not all the other tab fields, which= I > >> would like to truncate. > >> > >> I would like to see an option `tab-bar-truncate' or `tab-line-truncate= ' > >> which simply prevent line wrapping, similar to the buffer variable > >> `truncate-lines'. > >> > > > > Perhaps customizing `tab-bar-auto-width-faces` and/or > > `tab-bar-auto-width-functions` would allow relaxing field limits to you= r > > taste. > > This looks interesting. But I just naively tried the following and Emacs > hangs up as result. > > (setq tab-bar-auto-width t > tab-bar-auto-width-functions (list #'always)) > > But the auto width setting leads to growing fields and this is not what > I want. I don't want that the tab fields grow. I want them to shrink > only in case of overflow. So maybe `tab-bar-auto-width` could be > extended to handle the values nil, t, or `no-grow'? And also another > auto width function could be added which handles non-tab fields too. > Seems sensible. Not sure on the hang. I'll leave that to Juri... --000000000000d6b609063993d760 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Thu, Jul 10, 2025 at 9:49=E2=80=AFAM Daniel Mendler <mail@daniel-mendler.de> wrote:
St=C3=A9phane Marks <shipmints@gmail.com> writes:<= br>
> On Thu, Jul 10, 2025 at 9:34=E2=80=AFAM Daniel Mendler <mail@daniel-mendler.de= >
> wrote:
>
>> St=C3=A9phane Marks <shipmints@gmail.com> writes:
>>
>> > On Thu, Jul 10, 2025 at 9:23=E2=80=AFAM Daniel Mendler <mail@daniel-mendl= er.de>
>> > wrote:
>> >
>> >> St=C3=A9phane Marks <shipmints@gmail.com> writes:
>> >>
>> >> > What if, instead, each tab's content would shrin= k to fit? This is
>> >> > closer to how web browsers fit tabs. There are brows= er extensions that
>> >> > offer multiple lines or scroll left/right, but I fin= d those more
>> >> > annoying since I can't see them all.
>> >>
>> >> Yes, this would be great, as long as each tab bar field w= ould shrink,
>> >> not only the tabs themselves at the very left. For me the= overflow
>> >> happens not only because I have too many tabs but because= my system bar
>> >> gets too long.
>> >>
>> >> However I suspect that such shrinking behavior is harder = to implement
>> >> nicely, in contrast to simple truncation.
>> >>
>> >
>> > Reading through tab-bar for a feature I don't use, but ma= ybe I should, is
>> > `tab-bar-auto-width` and its controls `tab-bar-auto-width-max= ` and
>> > `tab-bar-auto-width-min` so perhaps this feature already exis= ts.
>>
>> I see. This is exactly the feature which does not help for my use = case,
>> since it only resizes the tabs and not all the other tab fields, w= hich I
>> would like to truncate.
>>
>> I would like to see an option `tab-bar-truncate' or `tab-line-= truncate'
>> which simply prevent line wrapping, similar to the buffer variable=
>> `truncate-lines'.
>>
>
> Perhaps customizing `tab-bar-auto-width-faces` and/or
> `tab-bar-auto-width-functions` would allow relaxing field limits to yo= ur
> taste.

This looks interesting. But I just naively tried the following and Emacs hangs up as result.

(setq tab-bar-auto-width t
=C2=A0 =C2=A0 =C2=A0 tab-bar-auto-width-functions (list #'always))

But the auto width setting leads to growing fields and this is not what
I want. I don't want that the tab fields grow. I want them to shrink only in case of overflow. So maybe `tab-bar-auto-width` could be
extended to handle the values nil, t, or `no-grow'? And also another auto width function could be added which handles non-tab fields too.

Seems sensible.=C2=A0 Not sure on the hang.=C2=A0 I'll leave= that to Juri...
--000000000000d6b609063993d760-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 18:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, =?UTF-8?Q?St=C3=A9phane?= Marks Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17521721757575 (code B ref 78953); Thu, 10 Jul 2025 18:30:02 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 18:29:35 +0000 Received: from localhost ([127.0.0.1]:59599 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZw1R-0001xA-Au for submit@debbugs.gnu.org; Thu, 10 Jul 2025 14:29:34 -0400 Received: from mout-y-111.mailbox.org ([2001:67c:2050:103:465::111]:39438) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZw1N-0001vS-AI for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 14:29:27 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-111.mailbox.org (Postfix) with ESMTPS id 4bdNfP1W11z9xyV; Thu, 10 Jul 2025 20:29:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752172157; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=NklYcUrMgSu7U5MOHFVBta1pMsKlgRPW6Ih0DMTwAvQ=; b=WpzngRvwxvLqVtgQaxxiRe1St8/v+jSzK8fwe9dd52rfjITunDd2WYs/PiXGVgRYdXMuVo 8mOtWj1YWzv/pGGy47By9Owm/6FIEPI0jeqF88yDxwBU/snLwKbAP58Ljt6g2HP5IjU+gW H0sTu5qF43aIJ5M3Q2Zn4lur8DDzAGaD0jk8vz5c0Wh+OR+YZjJpGnIUnjVRJFPv1iyM/R x89Wv22WT9q4gs4ikg5+5EcHDuwUbusHshzi2eWr4ChmtqyGKI5RxnmhbSjIAb2WWtOMyp hB66+Io1M05cgf41EfGZJiMFoisbUUw+XdnbPr9JWKKEvo/pxNyDSrftdajfYg== From: Juri Linkov In-Reply-To: <87wm8g2m1x.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> <87wm8g2m1x.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 21:24:50 +0300 Message-ID: <87o6trhpoh.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > This looks interesting. But I just naively tried the following and Emacs > hangs up as result. > > (setq tab-bar-auto-width t > tab-bar-auto-width-functions (list #'always)) This is a new bug report. > But the auto width setting leads to growing fields and this is not what > I want. I don't want that the tab fields grow. I want them to shrink > only in case of overflow. So maybe `tab-bar-auto-width` could be > extended to handle the values nil, t, or `no-grow'? And also another > auto width function could be added which handles non-tab fields too. This is a new feature request. However, I doubt if it would be possible to find a reasonable algorithm. The current algorithm makes all tabs equal size. But with different sizes it's not clear what tabs to truncate. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 18:30:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17521721777595 (code B ref 78953); Thu, 10 Jul 2025 18:30:04 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 18:29:37 +0000 Received: from localhost ([127.0.0.1]:59601 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZw1W-0001y8-SR for submit@debbugs.gnu.org; Thu, 10 Jul 2025 14:29:36 -0400 Received: from mout-y-209.mailbox.org ([2001:67c:2050:103:465::209]:39170) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZw1O-0001v2-2J for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 14:29:27 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-209.mailbox.org (Postfix) with ESMTPS id 4bdNfL1TzYzB0Fm; Thu, 10 Jul 2025 20:29:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752172154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ANhpYZPx3LC2D66cCrCeR9lv6Aq95/HuHBg8A+ZrAYI=; b=IklM9LN1liUwzGFT/grN/WLMeSG+0pY/vQHkklRoTQy55LCxS+TnjhcW1w7CkT+LSy0kHw KGYTB2rjUXUualHDU0T18d5M0atuwRRvUoFOoNRfcCvKrxXAnZ07S5d4YB2jv+NR4dO/FU 9w8+KpcqjRgyh3Uh4x2sSIu7jWa1KF7PJVRAi+/8FBX1OMYAWinGDNDO7M+vBnnWusqj2v /h5/Wb16EGSEDFZ3u03GxsiZHGjF8EtmPRRsw66pftFyi9podA89wrDUjNIArzCuq4E8cK /x+fFv3zZ5f0DnPXFe4dxbTdHx39KlHr0t+lPBCyIdoNO/ywGXy82V4ch2yUpg== From: Juri Linkov In-Reply-To: <87ecuo42pf.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> Date: Thu, 10 Jul 2025 21:20:16 +0300 Message-ID: <87v7nzhpr3.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > Since we are talking about the tab bar already I have another question - > sometimes (rarely) my tab bar gets too long and then it wraps around, It wraps around because the tab-bar is multi-line: the number of tab-bar lines is defined by the frame parameter 'tab-bar-lines'. So you can use more lines for text that doesn't fit on the first line. > which I find undesirable. Is this when you set tab-bar-auto-width to nil? Or the global string is too long? > I would prefer if the content were truncated. Can you truncate the global string inside :eval, e.g. (setq global-mode-string '("|" (:eval (truncate-string-to-width (make-string 100 ?#) 10)) "|")) > I suspect this is harder to address, The wrapping is hard to disable. So it's easier to truncate the overly long strings. > e.g., via an option tab-bar-truncate/tab-line-truncate? In any case, > this is a rare edge case in my usage. There are truncation options only for tab names, not for the global string. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 20:03:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175217777920814 (code B ref 78953); Thu, 10 Jul 2025 20:03:04 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 20:02:59 +0000 Received: from localhost ([127.0.0.1]:59882 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZxTt-0005PM-1o for submit@debbugs.gnu.org; Thu, 10 Jul 2025 16:02:58 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:37911 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZxTp-0005ND-Cm for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 16:02:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=mlpPB2v9lolxPiyFwJ6KAQexsssV8AbII6JufqPXkdI=; b=Hx/RXBZUGurNmjC4/Ds2axnqJX Di+teVxdqOxcsgzApQRVYp2zknOTQPz5Wjx1YqylEqwkznhr24ZqF5zLIeByzRSdbY5Cb6b2a8T/p MIbOT4WEPjnGqfLaRKItLPPBlRY1coxUEYmnu5ZOuNR6LgAfkRHYat4z4iokJH/PuAW4=; From: Daniel Mendler In-Reply-To: <87v7nzhpr3.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> Date: Thu, 10 Jul 2025 22:02:45 +0200 Message-ID: <87h5zjke56.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> Since we are talking about the tab bar already I have another question - >> sometimes (rarely) my tab bar gets too long and then it wraps around, > > It wraps around because the tab-bar is multi-line: > the number of tab-bar lines is defined by the frame parameter > 'tab-bar-lines'. So you can use more lines for text that > doesn't fit on the first line. I would like to fix tab-bar-lines to be 1. >> which I find undesirable. > > Is this when you set tab-bar-auto-width to nil? > Or the global string is too long? I set tab-bar-auto-width=nil in my config. Then the wrap around happens if there are too many elements in the tab-bar-format list. >> I would prefer if the content were truncated. > > Can you truncate the global string inside :eval, e.g. > > (setq global-mode-string > '("|" (:eval (truncate-string-to-width (make-string 100 ?#) 10)) "|")) Of course, but this does not help if I have many elements in the tab-bar-format list which I cannot truncate together with such a simple expression. >> I suspect this is harder to address, > > The wrapping is hard to disable. So it's easier to truncate > the overly long strings. In my use case truncating the many overly long strings is not easy - I would have to compute how much I have to take away from each element. But I understand that disabling the overall wrap around is more difficult since it has to be implement on a deeper level of the display engine. >> e.g., via an option tab-bar-truncate/tab-line-truncate? In any case, >> this is a rare edge case in my usage. > > There are truncation options only for tab names, not for the global string. Yes, therefore I proposed that such options could be added. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Jul 2025 20:07:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org, =?UTF-8?Q?St=C3=A9phane?= Marks Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175217802124036 (code B ref 78953); Thu, 10 Jul 2025 20:07:04 +0000 Received: (at 78953) by debbugs.gnu.org; 10 Jul 2025 20:07:01 +0000 Received: from localhost ([127.0.0.1]:59894 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uZxXo-0006FP-2O for submit@debbugs.gnu.org; Thu, 10 Jul 2025 16:07:01 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:50871 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uZxXl-0006DT-4b for 78953@debbugs.gnu.org; Thu, 10 Jul 2025 16:06:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=ONv5cRFbWFhrIg3WpCX3cYfNdwsYXuUHfS0nSlhXEvs=; b=Hmq90KGgX/WK6w6MItBg4nh/jQ tZJyZB0JSiRIKaH6i66rWabV+gWL9w1a7ii0cB7BHkRkALeiEBrd1GST+9uiULQvyxlAosCF/gIn9 Mn7Id54VYU4A+6T00UgzLacPGNnDvSzyjuS9pASavEPwOO+Q5Ok7Pt7IOYpZ5MX0QOVk=; From: Daniel Mendler In-Reply-To: <87o6trhpoh.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> <87wm8g2m1x.fsf@daniel-mendler.de> <87o6trhpoh.fsf@mail.linkov.net> Date: Thu, 10 Jul 2025 22:06:45 +0200 Message-ID: <87ecunkdyi.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> This looks interesting. But I just naively tried the following and Emacs >> hangs up as result. >> >> (setq tab-bar-auto-width t >> tab-bar-auto-width-functions (list #'always)) > > This is a new bug report. > >> But the auto width setting leads to growing fields and this is not what >> I want. I don't want that the tab fields grow. I want them to shrink >> only in case of overflow. So maybe `tab-bar-auto-width` could be >> extended to handle the values nil, t, or `no-grow'? And also another >> auto width function could be added which handles non-tab fields too. > > This is a new feature request. However, I doubt if it would be possible > to find a reasonable algorithm. The current algorithm makes all tabs > equal size. But with different sizes it's not clear what tabs to truncate. Yes, I agree. Therefore I thought that it might be easiest to simply disable the wrap around of the tab bar altogether. For my purpose with a global status bar it would work well enough if the status bar overflows and becomes partially hidden. Such an overflow is only a rare event. But in the case of such an event, it is better if the tab bar stays on a single line to avoid the jumpiness caused by the toggling from one to two tab bar lines and back to one. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 16:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175225043330068 (code B ref 78953); Fri, 11 Jul 2025 16:14:01 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 16:13:53 +0000 Received: from localhost ([127.0.0.1]:38842 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGNl-0007oo-1K for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:13:53 -0400 Received: from mout-y-209.mailbox.org ([2001:67c:2050:103:465::209]:55230) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaGNi-0007o2-Pa for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 12:13:51 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:b231:465::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-209.mailbox.org (Postfix) with ESMTPS id 4bdxbT1nSdzB0cv; Fri, 11 Jul 2025 18:13:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752250421; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DyjP76A/8l2zmtlk3DFMc44YoLQGQ5mM5VqmqwEIPy0=; b=W1PRHQFJl4SO9f7pvTo3/cqq8QOrvJz2U/NU2wC/m8cONl9e+DipMwwWK3aexz6FnW/0l8 F8Md/WMo4PmcQEOw97jcM712IfegtUuWmkHFB/gQLZySLrZQFdxLvmYM4lHZPN38nW2i1R vUB0KrpMCJXGAAVDuAooHMNNhURdHmDA3RFXm8A4AG3wWMR7Ua/nUwMQUKBdRGtvsMxay0 BUl+oAR/dwfyxvHCexu72ltjsSuQMFT9qc8yX1itLCTdxP/PtjbQ/vzfYTfMcQPNQNTTe7 DqelAZcEZ+AytmejpF3V8grjM5LWV28dnyB8+W9tqYaIilkydPHyTln4GxNKsA== Authentication-Results: outgoing_mbo_mout; dkim=none; spf=pass (outgoing_mbo_mout: domain of juri@linkov.net designates 2001:67c:2050:b231:465::1 as permitted sender) smtp.mailfrom=juri@linkov.net From: Juri Linkov In-Reply-To: <87h5zjke56.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> Date: Fri, 11 Jul 2025 19:11:21 +0300 Message-ID: <874ivieq8i.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Rspamd-Queue-Id: 4bdxbT1nSdzB0cv X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain > But I understand that disabling the overall wrap around is more > difficult since it has to be implement on a deeper level of the > display engine. Indeed, the required change is on a deeper level of the display engine, but it's quite simple like in the attached patch. I wonder is it appropriate to reuse the existing option 'auto-resize-tab-bars' whose new value 'truncate' will force tab-bar truncation: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=auto-resize-tab-bars-truncate.patch diff --git a/src/xdisp.c b/src/xdisp.c index 15a88f0868a..b3520be234f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -14739,11 +14739,19 @@ tab_bar_height (struct frame *f, int *n_rows, bool pixelwise) it.paragraph_embedding = L2R; clear_glyph_row (temp_row); - while (!ITERATOR_AT_END_P (&it)) + if (EQ (Vauto_resize_tab_bars, Qtruncate)) { it.glyph_row = temp_row; display_tab_bar_line (&it, -1); } + else + { + while (!ITERATOR_AT_END_P (&it)) + { + it.glyph_row = temp_row; + display_tab_bar_line (&it, -1); + } + } clear_glyph_row (temp_row); /* f->n_tab_bar_rows == 0 means "unknown"; -1 means no tab-bar. */ @@ -37810,6 +37818,7 @@ syms_of_xdisp (void) DEFSYM (Qinhibit_menubar_update, "inhibit-menubar-update"); DEFSYM (Qgrow_only, "grow-only"); + DEFSYM (Qtruncate, "truncate"); DEFSYM (Qinhibit_eval_during_redisplay, "inhibit-eval-during-redisplay"); DEFSYM (Qposition, "position"); DEFSYM (Qbuffer_position, "buffer-position"); @@ -38173,7 +38182,9 @@ syms_of_xdisp (void) that is needed to make all tab-bar items visible. If value is `grow-only', the tab-bar's height is only increased automatically; to decrease the tab-bar height, use \\[recenter], -after setting `recenter-redisplay' to the value of t. */); +after setting `recenter-redisplay' to the value of t. +If value is `truncate', the tab-bar is truncated, and only +the first line of a long tab-bar is displayed. */); Vauto_resize_tab_bars = Qt; DEFVAR_BOOL ("auto-raise-tab-bar-buttons", auto_raise_tab_bar_buttons_p, --=-=-=-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 16:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org, =?UTF-8?Q?St=C3=A9phane?= Marks Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175225044930183 (code B ref 78953); Fri, 11 Jul 2025 16:15:02 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 16:14:09 +0000 Received: from localhost ([127.0.0.1]:38849 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGO0-0007qj-L9 for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:14:09 -0400 Received: from mout-y-111.mailbox.org ([2001:67c:2050:103:465::111]:42994) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaGNm-0007oA-0A for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 12:13:54 -0400 Received: from smtp202.mailbox.org (smtp202.mailbox.org [10.196.197.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-111.mailbox.org (Postfix) with ESMTPS id 4bdxbW73mRz9xwY; Fri, 11 Jul 2025 18:13:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752250424; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=jsorCXJEEv7Uws3Ektau1EAN3KliS2K/y6cac43fztE=; b=A+XE7srU8nSZMbLyF0f6uQWcZrVwzS2qyFfk1Qm7fqcQxC6ZEektoGaDTOOXDwAsUGp9KQ HIxdSvl5lwl/lXIdix/L19xgRcWBk6dxbKaszJSRJn+HPHiSSaHsphYCR5Of+hQ3d8NqcU 4Sqtsy6B+n2RRKm8sKZqJPO4pBBjKCCOi4w6Jj4a/b5f5r2vs1ZQJSFCEPbl3Smf3YbV7z QdD0+5SoRAi3fyU4fEYV0zgNyoB8BbzXRYIGpk9Iln0QfxRuV+qPNA5gj87isPCIj2Ksjx /KzlM4DncibTDdBRI5sfNtYy6ggWqcZVwpaNBm66+pu1zAii02hoRsQI+Sjeqg== From: Juri Linkov In-Reply-To: <87ecunkdyi.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87bjps41su.fsf@daniel-mendler.de> <874ivk41ab.fsf@daniel-mendler.de> <87wm8g2m1x.fsf@daniel-mendler.de> <87o6trhpoh.fsf@mail.linkov.net> <87ecunkdyi.fsf@daniel-mendler.de> Date: Fri, 11 Jul 2025 19:13:04 +0300 Message-ID: <87sej2dbbh.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >>> This looks interesting. But I just naively tried the following and Emacs >>> hangs up as result. >>> >>> (setq tab-bar-auto-width t >>> tab-bar-auto-width-functions (list #'always)) >> >> This is a new bug report. Actually, 'tab-bar-auto-width-functions' is intended to return non-nil only on tab items, not on separators or global strings. This is described in its docstring. There is an example in 'tab-bar-auto-width-predicate-default' that uses (string-match-p "\\`\\(?:current-tab\\|\\(?:group\\|tab\\)-\\)" (symbol-name (nth 0 item))) to match tabs only. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 16:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: Daniel Mendler , 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175225072331844 (code B ref 78953); Fri, 11 Jul 2025 16:19:02 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 16:18:43 +0000 Received: from localhost ([127.0.0.1]:38888 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGSQ-0008HX-U0 for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:18:43 -0400 Received: from mail-ua1-x936.google.com ([2607:f8b0:4864:20::936]:45386) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uaGSO-0008HC-6z for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 12:18:41 -0400 Received: by mail-ua1-x936.google.com with SMTP id a1e0cc1a2514c-881114808e4so1221158241.3 for <78953@debbugs.gnu.org>; Fri, 11 Jul 2025 09:18:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752250714; x=1752855514; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=285umMC+wkyKYvRkLZDhVAGx9X1r1rPHx0BNrCiv6g8=; b=mA5ipTi17ST/bGGCAFrsbA+bhmaIzy718g4nw+Z9yMUwitATv0Ptv9lAKDB9D/SU5U 3jEYT7t5SM69jQr+2B8G0yBEPZP8UQZOyfxgTtqIGFnh0EtID1xQmAAG5AB/ubO0abON 9wkpIAdWQiWw64wAfec3/QZpsFexVdo+oycL4N9Za7VhnGYCgkQFxKMRcB2RJcH1QJ/k cuJ6DJ9b82SkJFsoOyKJ26BCCotInvR7wM+79OTl1GaeX9P0w6GHgpnm5JixI6PQy+Ig 1x8u83n+dL7X2jZBqFiQJoOZ4PyZzPpc7YsoezTwuP3pKmxoxYRQHpGD6i66HbsYoQJZ fOZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752250714; x=1752855514; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=285umMC+wkyKYvRkLZDhVAGx9X1r1rPHx0BNrCiv6g8=; b=AZY/X9+2oWyMc+++NacrrWwCOshfujRNP8cuT7MMQcdMKvydr4jN77eerV1zih5RnR kAvz00CZ4mADnE41v+ZGPl3VpM9vbK2jnAwe4zccx0cLfsuMpfH+kfcjHiAQVK4NKCPj UFGB/nHWvs1qNXYISYUaAL9Wuw+goiC50GidvuWbYrNFV0xLx9otiTLdcePJociknQ0B Ht1VTPKve8XxHGQMZ3oot9x8BAfKYmXmuiCsFud1ScJu4/ivhdyl+kpYlFylzKN3kyPJ 4rsHRQww8S9sX7d6kW0qaOIsV16WNZbNZJ2vUkChgblceXRYkE53n8P9HSORBoZ9KjI3 SPCQ== X-Forwarded-Encrypted: i=1; AJvYcCUxRGFhYFEn8GCtxXD79Qjca+3eFY8UOrtjscUZxT4MPY7X4BVmrrmqF0wxRHLD2Hxv17Mjww==@debbugs.gnu.org X-Gm-Message-State: AOJu0YzLEwlxmlo7DvnxZGMbuJIOWRcZo3s6Y6nDwszJG1CdoGyTBhdt 5LM3g8Nnv9YvxSf8lQExy1tyr5capF6HD5rVY0XLbjkJdxOL3hw1MucA9P3Yoefza8ist8NbSt3 tTHotpv/5urW+MmEtcpctg+xbEHo0BHw= X-Gm-Gg: ASbGncsOKqQtJmBBEu7aoRsPkPcj4B94mHe6dEqvVGl4ZV1wJOc+y0VqPkUNg794ohV X9XRiXHf8356cgpM4GnABZeQTYoq/CP60S39iIuy97cTpmoljgpAYuQLvAWI95ySfVZjCsQxqQp ioTmhdCTGAisKrkUeO48tWob6OoiLza5RCTDwWLCM4tH5AU3TUf8bnsc0J+X69AvR2Mvcwx6lAT 37kzzRiXg+8qhlRW8N+ X-Google-Smtp-Source: AGHT+IHO43oRD2DXpnn2pAiSkAFV+KgHVChxboNQZkizeF7Cv1xNXcZsRCBf/k+0PiFJIvL9JsySAvmmpJHL+tchR2Y= X-Received: by 2002:a05:6122:88b:b0:535:e789:6ccc with SMTP id 71dfb90a1353d-535f6f08661mr2386829e0c.3.1752250714102; Fri, 11 Jul 2025 09:18:34 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> In-Reply-To: <874ivieq8i.fsf@mail.linkov.net> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Fri, 11 Jul 2025 12:18:22 -0400 X-Gm-Features: Ac12FXwk6oVGVNRfAsmIvum568d_T7b-iSbEDzsOq-3abdbb1PWbaLn_gYekPF4 Message-ID: Content-Type: multipart/alternative; boundary="0000000000005f22e40639a9a950" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000005f22e40639a9a950 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jul 11, 2025 at 12:14=E2=80=AFPM Juri Linkov wrot= e: > > But I understand that disabling the overall wrap around is more > > difficult since it has to be implement on a deeper level of the > > display engine. > > Indeed, the required change is on a deeper level of the display engine, > but it's quite simple like in the attached patch. I wonder is it > appropriate to reuse the existing option 'auto-resize-tab-bars' > whose new value 'truncate' will force tab-bar truncation: > I'd think maybe it should insert an ellipsis, or some other indicator, that truncation has been done. --0000000000005f22e40639a9a950 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Fri, Jul 11, 2025 at 12:14=E2=80=AFPM Juri Linkov <juri@linkov.net> wrote:
> But I understand that disabling the overall wrap around= is more
> difficult since it has to be implement on a deeper level of the
> display engine.

Indeed, the required change is on a deeper level of the display engine,
but it's quite simple like in the attached patch.=C2=A0 I wonder is it<= br> appropriate to reuse the existing option 'auto-resize-tab-bars'
whose new value 'truncate' will force tab-bar truncation:

I'd think maybe it should insert=C2=A0an ellipsis, or some othe= r indicator, that truncation has been done.
--0000000000005f22e40639a9a950-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 16:37:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17522517744758 (code B ref 78953); Fri, 11 Jul 2025 16:37:03 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 16:36:14 +0000 Received: from localhost ([127.0.0.1]:38993 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGjO-0001Eg-Bt for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:36:14 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:46861 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaGjI-0001Dm-VM for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 12:36:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=yc62DZD2aml+MuJpbtR7Wfxpgjkfi/pUU6IW3htJFec=; b=aiv0n+i3Hu3y1d1kV/M8cQtOct eDR+wc6ekrbAcacgrWgxEwZiyxvMm7JmX8VeWTvosUHiFouUCTxo1r6OW3PRPIFHYAvhJgUambzKk ekuKoFkYnFUlTkCXT5qWrzzF68gC+w4Nu696c5vJh7hx5+h/6ztn+Sd4UdLXzZoOE4cY=; From: Daniel Mendler In-Reply-To: <874ivieq8i.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> Date: Fri, 11 Jul 2025 18:36:00 +0200 Message-ID: <87ple6bs7j.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> But I understand that disabling the overall wrap around is more >> difficult since it has to be implement on a deeper level of the >> display engine. > > Indeed, the required change is on a deeper level of the display engine, > but it's quite simple like in the attached patch. I wonder is it > appropriate to reuse the existing option 'auto-resize-tab-bars' > whose new value 'truncate' will force tab-bar truncation: Indeed, the patch seems simple enough. I am unsure about reusing the option. If I understand correctly `auto-resize-tab-bars' is about resizing the height according to the face? I think we want to control both things separately, truncation and resizing of the height. Therefore I would rather add another option `truncate-tab-bars'. What do you think? Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 16:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, Juri Linkov Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17522522027603 (code B ref 78953); Fri, 11 Jul 2025 16:44:01 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 16:43:22 +0000 Received: from localhost ([127.0.0.1]:39046 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaGqH-0001yY-Qc for submit@debbugs.gnu.org; Fri, 11 Jul 2025 12:43:22 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:55495 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaGqF-0001xe-BZ for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 12:43:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=rDT29tQS66t8UPS8oxdpgyXxO8xJw8b6/XsnurX2trg=; b=URsLfQWKyLHMXCwyjgttSsDkRy AArObGlyubgaY7V8D5OpaTRN4qTGOGVom+ejxetmVDdReNbqTsebaOL1gZ7MVIIo0h41C5UdG+RyN m6EsNlGUjdTAz2cjQZX7MqxNrqvK9HKIhTJTNQwb8t8bnMwKnCByQRbBMvGwAbUO6qNA=; From: Daniel Mendler In-Reply-To: References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> Date: Fri, 11 Jul 2025 18:43:12 +0200 Message-ID: <87ldoubrvj.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) St=C3=A9phane Marks writes: > On Fri, Jul 11, 2025 at 12:14=E2=80=AFPM Juri Linkov wr= ote: > >> > But I understand that disabling the overall wrap around is more >> > difficult since it has to be implement on a deeper level of the >> > display engine. >> >> Indeed, the required change is on a deeper level of the display engine, >> but it's quite simple like in the attached patch. I wonder is it >> appropriate to reuse the existing option 'auto-resize-tab-bars' >> whose new value 'truncate' will force tab-bar truncation: >> > > I'd think maybe it should insert an ellipsis, or some other indicator, th= at > truncation has been done. I would not really need such an indication, but why not. For me it is mainly important that I can prevent jumping behavior - this affects multiple display parts of Emacs. I also don't like if the echo area resizes, and I configured it such that it stays at height 1. For vertical completion the minibuffer necessarily has to resize, but the window jumpiness because of cursor visibility still hurts. There are projects like https://github.com/neeasade/stillness-mode.el which try to prevent this, but these are hacks which makes me worry about robustness. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 19:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, mail@daniel-mendler.de, juri@linkov.net Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175226063618401 (code B ref 78953); Fri, 11 Jul 2025 19:04:02 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 19:03:56 +0000 Received: from localhost ([127.0.0.1]:39911 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaJ2K-0004mj-44 for submit@debbugs.gnu.org; Fri, 11 Jul 2025 15:03:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44034) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaJ2F-0004mA-Rd for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 15:03:53 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uaJ28-0006zm-Iv; Fri, 11 Jul 2025 15:03:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=czKcQfkhJ7c2mSLh2kyJ6qEWfXsqCEfoAxmF3YV+YZg=; b=RktqDEGgmUT10ELteP8G NW2Lm9yuOc9Vl0SwsDK+ggzgIi0iDaixFyaNBVlfR8i/R17rZ6smUUgV+b4gAGvkhgpX9NAJB1Ihm jFdz+t/ZXRKGy6/QPBn/lwU9MD91UDJpgVsH223w22Zb/WXX8lkRXIrZHq5Am5Ja80DxxPLYZ3T7z 7ViDdt8msdQ10Epv7Bzdjf5sN0S2qfD3AKYGkMsG9NyIeTqNmlTMmiGhI6AUyLKDRjeRRevncaOka HnVIGXec02SdZ+NXe29/oVNZHQXm1WCUJhPlarBtOA1jxb4KWx14QgukmueOqv2XdaWvk2yIGIWX1 uL7QaqWC3KamYg==; Date: Fri, 11 Jul 2025 22:03:36 +0300 Message-Id: <861pqmh7nb.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from =?UTF-8?Q?St=C3=A9phane?= Marks on Fri, 11 Jul 2025 12:18:22 -0400) References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: Daniel Mendler , 78953@debbugs.gnu.org > From: Stéphane Marks > Date: Fri, 11 Jul 2025 12:18:22 -0400 > > On Fri, Jul 11, 2025 at 12:14 PM Juri Linkov wrote: > > > But I understand that disabling the overall wrap around is more > > difficult since it has to be implement on a deeper level of the > > display engine. > > Indeed, the required change is on a deeper level of the display engine, > but it's quite simple like in the attached patch. I wonder is it > appropriate to reuse the existing option 'auto-resize-tab-bars' > whose new value 'truncate' will force tab-bar truncation: > > I'd think maybe it should insert an ellipsis, or some other indicator, that truncation has been done. No, we don't produce any such indications in special screen lines, like mode line. menu bar, etc. So I don't see why we would need that here. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: =?UTF-8?Q?St=C3=A9phane?= Marks Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jul 2025 21:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 78953@debbugs.gnu.org, mail@daniel-mendler.de, juri@linkov.net Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175226780922692 (code B ref 78953); Fri, 11 Jul 2025 21:04:01 +0000 Received: (at 78953) by debbugs.gnu.org; 11 Jul 2025 21:03:29 +0000 Received: from localhost ([127.0.0.1]:40537 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaKu0-0005tu-8w for submit@debbugs.gnu.org; Fri, 11 Jul 2025 17:03:28 -0400 Received: from mail-vk1-xa30.google.com ([2607:f8b0:4864:20::a30]:50250) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1uaKtv-0005tF-OG for 78953@debbugs.gnu.org; Fri, 11 Jul 2025 17:03:25 -0400 Received: by mail-vk1-xa30.google.com with SMTP id 71dfb90a1353d-5313ea766d8so1208928e0c.0 for <78953@debbugs.gnu.org>; Fri, 11 Jul 2025 14:03:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752267798; x=1752872598; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5CnrtuVjEy1/OZreptkQyYTZSdjmEM69oh0/c+VZ0ac=; b=Oq7jcOOYfyBcxALUZBgvmITe+0pNGl0aQ5+DrzkqFr2rZGcjnjcMbgJ4jaSxrmBHPA zvwvDqObmInBK16gwiLFWAAL5FktiomC4UyP4NGAZtSzuYugURjh1fN78ZIxupC4k7D0 4+WJyJzKVPTcGOBvcmUHCeHnqvW0NlRxAU7ZGnDjutFPD4HbzoiCYsmGdR1vKL1hSLSK Hhxkd54jeGTgDQ5JfY+oiLUuC9xH+HdsHH7l6VZ4iQDOhm/8gfR/M7IJcaZvtiYDltt3 ZaRUwT7kATLimPDFwBYJOBpDw+guoTqYDhX2o4cCuiW+ZFvzblcIM3+OpXVkJwKCjc5F fonw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752267798; x=1752872598; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5CnrtuVjEy1/OZreptkQyYTZSdjmEM69oh0/c+VZ0ac=; b=wmCo2my5iLGw9MthgZW/WvWTzySfXWh6HJlZOw9h1+VtcfhHNtTOsjQi3bH57XEn6u 42kNTCPqQJdt9pG5RObsB/sKi5++MbJB9KDK+e7uxJtq4AgsGcqhZpboqCb3e7YoS1/m XCYsCwNwE/RpdVUfDi5oZZxG9hnkjpUwAnU1HO/1y8kmMil0XSWg79xrrzeuM4vS1b5W 8oP4WCb5qbYExam4gpZQt8tgpxLBuDfcJQhk0rjnk21Ff5DvDbHjaBLdxoNthBAXXn1+ d9jny7hhqah96sDCqsbKGEsOOAg3vE4i6mC1EB4MZmPATfqfLxEmBPK/Lrd9phNOy+My MnKw== X-Forwarded-Encrypted: i=1; AJvYcCWQC7cbdslUzSSmto9tI+sltVgAR8jrITrLvVytasLctYSrk/yGkvKryq9xIJsvDcPur2c2ZA==@debbugs.gnu.org X-Gm-Message-State: AOJu0YxjBhWIsufaqhFSByK9fSPH5giI3a2t+eVoLF/n0OTYMK+bfRRT BHC9ITqC9j6K1m/ZXu1zXnZA4q+u3R/pqx+nc3oYtl/VrLrhOkDcZZ5LwAQk5bYNWiyjZEu/zCa THE4MJ03Rt8vF7IpSJGPGtOQn2c00oBA= X-Gm-Gg: ASbGncvHCIunUmawt+PnvzrBtHt675vEURKOulgKVta3vAk4w2fXEFvQGGCh3i+fDHM v8LwxrXcJsBqLybslYp5tVtr+dWqYPXEjgp8xBewTIqgoNaEbHvvF5bO1acuQkKHCpi5/UBmjZa SsRGAmYLShOilDG3O19c+C83PsTEAg3ZBXw92NA8kDPCSOaPHCDnXnjcXeZWg+gk7vZNX/xbYTN cMdFtkVOLLfBthAZ39+ X-Google-Smtp-Source: AGHT+IEb4G7rHWKCI+GeaNwMP46HHb5CGzF5fUGxYluTGE/a937jzeXkZ0bbMF7L+KMi07/uSTBRHgKt6BRKDVR8j5s= X-Received: by 2002:a05:6122:1d01:b0:534:69b3:a230 with SMTP id 71dfb90a1353d-535f4a30057mr3961779e0c.11.1752267797840; Fri, 11 Jul 2025 14:03:17 -0700 (PDT) MIME-Version: 1.0 References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <861pqmh7nb.fsf@gnu.org> In-Reply-To: <861pqmh7nb.fsf@gnu.org> From: =?UTF-8?Q?St=C3=A9phane?= Marks Date: Fri, 11 Jul 2025 17:03:06 -0400 X-Gm-Features: Ac12FXyOW4OwzdVBHbmYDAE9RQFc-BN7lE6O9QI6w_JwF1FquX8GnDpo318ZCho Message-ID: Content-Type: multipart/alternative; boundary="000000000000a446500639ada384" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000a446500639ada384 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jul 11, 2025 at 3:03=E2=80=AFPM Eli Zaretskii wrote: > > Cc: Daniel Mendler , 78953@debbugs.gnu.org > > From: St=C3=A9phane Marks > > Date: Fri, 11 Jul 2025 12:18:22 -0400 > > > > On Fri, Jul 11, 2025 at 12:14=E2=80=AFPM Juri Linkov = wrote: > > > > > But I understand that disabling the overall wrap around is more > > > difficult since it has to be implement on a deeper level of the > > > display engine. > > > > Indeed, the required change is on a deeper level of the display engine= , > > but it's quite simple like in the attached patch. I wonder is it > > appropriate to reuse the existing option 'auto-resize-tab-bars' > > whose new value 'truncate' will force tab-bar truncation: > > > > I'd think maybe it should insert an ellipsis, or some other indicator, > that truncation has been done. > > No, we don't produce any such indications in special screen lines, > like mode line. menu bar, etc. So I don't see why we would need that > here. > I suppose since the user would enable this explicitly, and if the documentation says it truncates without saying that an indicator is shown, users get what they ask for. I'd thought it would be nice as a visual courtesy akin to truncate-line indicators. --000000000000a446500639ada384 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= On Fri, Jul 11, 2025 at 3:03=E2=80=AFPM Eli Zaretskii <eliz@gnu.org> wrote:
> Cc: Daniel Mendler <mail@daniel-mendler.de>, 78953@debbugs.gnu.org
> From: St=C3=A9phane Marks <shipmints@gmail.com>
> Date: Fri, 11 Jul 2025 12:18:22 -0400
>
> On Fri, Jul 11, 2025 at 12:14=E2=80=AFPM Juri Linkov <juri@linkov.net> wrote:
>
>=C2=A0 > But I understand that disabling the overall wrap around is = more
>=C2=A0 > difficult since it has to be implement on a deeper level of= the
>=C2=A0 > display engine.
>
>=C2=A0 Indeed, the required change is on a deeper level of the display = engine,
>=C2=A0 but it's quite simple like in the attached patch.=C2=A0 I wo= nder is it
>=C2=A0 appropriate to reuse the existing option 'auto-resize-tab-ba= rs'
>=C2=A0 whose new value 'truncate' will force tab-bar truncation= :
>
> I'd think maybe it should insert an ellipsis, or some other indica= tor, that truncation has been done.

No, we don't produce any such indications in special screen lines,
like mode line. menu bar, etc.=C2=A0 So I don't see why we would need t= hat
here.

I suppose since the user would enable this explicitl= y, and if the documentation says it truncates without saying that an indica= tor is shown, users get what they ask for.=C2=A0 I'd thought it would b= e nice as a visual courtesy akin to truncate-line indicators.
--000000000000a446500639ada384-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 12 Jul 2025 06:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?St=C3=A9phane?= Marks Cc: 78953@debbugs.gnu.org, mail@daniel-mendler.de, juri@linkov.net Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175230090411200 (code B ref 78953); Sat, 12 Jul 2025 06:16:02 +0000 Received: (at 78953) by debbugs.gnu.org; 12 Jul 2025 06:15:04 +0000 Received: from localhost ([127.0.0.1]:42998 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaTVn-0002uL-B3 for submit@debbugs.gnu.org; Sat, 12 Jul 2025 02:15:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60468) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaTVj-0002tM-IP for 78953@debbugs.gnu.org; Sat, 12 Jul 2025 02:15:01 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uaTVc-0003Tj-U5; Sat, 12 Jul 2025 02:14:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=bPDDyLNwo3xOz6YiH9K8RJtmEyZIbCBiNeE46g13Msc=; b=YmhqXN/wj/dLhBSkVlZ7 KR0aqfmcD7bSvd/dHqxHCT4LyY3wumYALJw7AqtK4J0m/w83ZoOje96PGYo1u0hWW5LNEo44s+G28 vP2wufJexFt74a4GO9Q46tFBzim8Tip8QzukKP97rxCxEUW+UAvGFFrS/S1+X3nPqvUcH6J+zy9+J nx0Ro6cJF6t2y52kkH1ZggM4S3e4XhX2bOiee5XFRhK6ru+YTOiR2C1FHpaS9/Cp5zI09yXYGmvTM 9Tcb29L9N4Aa5L3O13k9dOPwr9bC0/lsOP9aEk+NXhy8ArZ8eS324nW+S2eCDVx5RaCB2/FGZU6kW fqzYPtcuSvzCjQ==; Date: Sat, 12 Jul 2025 09:14:49 +0300 Message-Id: <86wm8eey06.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from =?UTF-8?Q?St=C3=A9phane?= Marks on Fri, 11 Jul 2025 17:03:06 -0400) References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <861pqmh7nb.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stéphane Marks > Date: Fri, 11 Jul 2025 17:03:06 -0400 > Cc: juri@linkov.net, mail@daniel-mendler.de, 78953@debbugs.gnu.org > > No, we don't produce any such indications in special screen lines, > like mode line. menu bar, etc. So I don't see why we would need that > here. > > I suppose since the user would enable this explicitly, and if the documentation says it truncates without > saying that an indicator is shown, users get what they ask for. I'd thought it would be nice as a visual > courtesy akin to truncate-line indicators. truncate-lines indicators are shown only for buffer text, and even then only in the text-area, not in the margins. Don't forget that the indicator itself needs space to show it, so it uses up the screen estate that is at premium in the cases of mode line, tab line etc. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Jul 2025 06:56:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175238972611562 (code B ref 78953); Sun, 13 Jul 2025 06:56:01 +0000 Received: (at 78953) by debbugs.gnu.org; 13 Jul 2025 06:55:26 +0000 Received: from localhost ([127.0.0.1]:50680 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uaqcP-00030O-G0 for submit@debbugs.gnu.org; Sun, 13 Jul 2025 02:55:25 -0400 Received: from mout-y-111.mailbox.org ([2001:67c:2050:103:465::111]:59346) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uaqcC-0002sz-8q for 78953@debbugs.gnu.org; Sun, 13 Jul 2025 02:55:12 -0400 Received: from smtp2.mailbox.org (smtp2.mailbox.org [IPv6:2001:67c:2050:b231:465::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-111.mailbox.org (Postfix) with ESMTPS id 4bfx5w2qQPz9yC1; Sun, 13 Jul 2025 08:55:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752389700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=zeK83NaIZu72T3B67hvpI31r4ue2sih1voFxG+0jFms=; b=1oDl9keRqUp2WEzJDSgdOSkdl3VUALVW+BtVgBp4CZLm4cwMHyq5+aMx3cZehy7jxP8ejv apzA2L63eGefDCqc3Wzw2xRTb9WBbrYpQFGNqSmoWqK+pnTW49DAZ59zwnJ4+Yx1v/g9Xd q7joWi8seXu7upgodv+R9Hmi1MDzCeBQLqnodGCDUZVfaDcvCjNY9pMZ1M8GFsnGxb2wYH herBWLyckCzCdRTQvm5pJB3y/Q8BpkYC3WiZ+NOhIS9kPeWisFUfAekWbMBjyHo7W+854Q SVIZLln2axAKkHC523QRpWdkikoLxUsYR6/ejRlD5DvGnM1tsUmkn/SYrXJFig== Authentication-Results: outgoing_mbo_mout; dkim=none; spf=pass (outgoing_mbo_mout: domain of juri@linkov.net designates 2001:67c:2050:b231:465::2 as permitted sender) smtp.mailfrom=juri@linkov.net From: Juri Linkov In-Reply-To: <87ple6bs7j.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <87ple6bs7j.fsf@daniel-mendler.de> Date: Sun, 13 Jul 2025 09:52:10 +0300 Message-ID: <87ldosa8xp.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: 4bfx5w2qQPz9yC1 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > Indeed, the patch seems simple enough. I am unsure about reusing the > option. If I understand correctly `auto-resize-tab-bars' is about > resizing the height according to the face? I think we want to control > both things separately, truncation and resizing of the height. Therefore > I would rather add another option `truncate-tab-bars'. What do you > think? The name `auto-resize-tab-bars' was created for compatibility with the `auto-resize-tool-bars'. But for new variables better to use the prefix `tab-bar-'. Then the name would be `tab-bar-truncate'. From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Jul 2025 17:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.175242683319716 (code B ref 78953); Sun, 13 Jul 2025 17:14:02 +0000 Received: (at 78953) by debbugs.gnu.org; 13 Jul 2025 17:13:53 +0000 Received: from localhost ([127.0.0.1]:54961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ub0Gu-00057v-Sc for submit@debbugs.gnu.org; Sun, 13 Jul 2025 13:13:53 -0400 Received: from mout-y-209.mailbox.org ([91.198.250.237]:36474) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ub0Gs-00057O-Lt for 78953@debbugs.gnu.org; Sun, 13 Jul 2025 13:13:51 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:b231:465::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-209.mailbox.org (Postfix) with ESMTPS id 4bgBqn235Dz9sS2; Sun, 13 Jul 2025 19:13:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752426821; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=dDhiPKPNyT4SwrH90hnWazO4B7NNBZ1NB7ncwna8qQs=; b=1eNmGQpcXupxxWUi86SNyzBMmU9gC9YE0lMQU3cufPzkuMBFErLdQQ2ko1Omh2cXLpAvXC lj0tfDLf0RxUSN0E2ufIPFj9HY6ec80HqbzCyQGwLFnoCxI4egUyhnTbLqTpVE6QqMPDJy A0Gyw8+0d/EB9rgHH6oM2YTljHCx1BJsGIDGVqse8JavQZXmmnxf9RtGu2ttIbNT9crxfI cIF15GWrW4E5MZylBOGJhM56JZCrFIWptd5c5/DoVw3PvlueBGmEn+eAtgV8z4Rl8ajii2 umiMrIQMrWKgbYz9vHqZPNvpXYRroCkCAdj5Ax7Yn76DznZwhNNLzR0gRzMcRw== Authentication-Results: outgoing_mbo_mout; dkim=none; spf=pass (outgoing_mbo_mout: domain of juri@linkov.net designates 2001:67c:2050:b231:465::1 as permitted sender) smtp.mailfrom=juri@linkov.net From: Juri Linkov In-Reply-To: <87ldosa8xp.fsf@mail.linkov.net> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <87ple6bs7j.fsf@daniel-mendler.de> <87ldosa8xp.fsf@mail.linkov.net> Date: Sun, 13 Jul 2025 20:12:17 +0300 Message-ID: <87ldoskob2.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Rspamd-Queue-Id: 4bgBqn235Dz9sS2 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain >> Indeed, the patch seems simple enough. I am unsure about reusing the >> option. If I understand correctly `auto-resize-tab-bars' is about >> resizing the height according to the face? I think we want to control >> both things separately, truncation and resizing of the height. Therefore >> I would rather add another option `truncate-tab-bars'. What do you >> think? > > The name `auto-resize-tab-bars' was created for compatibility > with the `auto-resize-tool-bars'. But for new variables better > to use the prefix `tab-bar-'. Then the name would be `tab-bar-truncate'. Ok, I will push the patch with the new name: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=tab-bar-truncate.patch diff --git a/src/xdisp.c b/src/xdisp.c index 15a88f0868a..992d162f2e3 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -14739,11 +14739,19 @@ tab_bar_height (struct frame *f, int *n_rows, bool pixelwise) it.paragraph_embedding = L2R; clear_glyph_row (temp_row); - while (!ITERATOR_AT_END_P (&it)) + if (tab_bar_truncate) { it.glyph_row = temp_row; display_tab_bar_line (&it, -1); } + else + { + while (!ITERATOR_AT_END_P (&it)) + { + it.glyph_row = temp_row; + display_tab_bar_line (&it, -1); + } + } clear_glyph_row (temp_row); /* f->n_tab_bar_rows == 0 means "unknown"; -1 means no tab-bar. */ @@ -38209,6 +38217,10 @@ syms_of_xdisp (void) DEFSYM (Qmake_window_start_visible, "make-window-start-visible"); Fmake_variable_buffer_local (Qmake_window_start_visible); + DEFVAR_BOOL ("tab-bar-truncate", tab_bar_truncate, + doc: /* Non-nil means truncate tab-bar and show only one line. */); + tab_bar_truncate = false; + DEFSYM (Qclose_tab, "close-tab"); DEFVAR_LISP ("tab-bar-border", Vtab_bar_border, doc: /* Border below tab-bar in pixels. --=-=-=-- From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Daniel Mendler Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Jul 2025 18:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17524305197402 (code B ref 78953); Sun, 13 Jul 2025 18:16:01 +0000 Received: (at 78953) by debbugs.gnu.org; 13 Jul 2025 18:15:19 +0000 Received: from localhost ([127.0.0.1]:55357 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ub1EM-0001vH-Sl for submit@debbugs.gnu.org; Sun, 13 Jul 2025 14:15:19 -0400 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1]:56393 helo=mail.qxqx.de) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ub1EK-0001sj-1l for 78953@debbugs.gnu.org; Sun, 13 Jul 2025 14:15:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=tWcAvetX9xH/X5wBV80qKZmLCV9Y8/tEbsv40KZZsMI=; b=jYhF/1dFugF2DkkMcA4P+9an3a t/LLUJoMka6AGnMhjUEAVzS7b3/92YgWLTzdeWdGmr8oHJiVQ+Sme1Iedk87DG4JOHDVyaQZAiABF QSq80cnphp8c2mEq/0u2itzv/ereZfrOnXhVbeIT8AnuZjhU0HssmDVvx6QPEywKSgbw=; From: Daniel Mendler In-Reply-To: <87ldoskob2.fsf@mail.linkov.net> References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <87ple6bs7j.fsf@daniel-mendler.de> <87ldosa8xp.fsf@mail.linkov.net> <87ldoskob2.fsf@mail.linkov.net> Date: Sun, 13 Jul 2025 20:15:07 +0200 Message-ID: <87ldosyn2s.fsf@daniel-mendler.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >>> Indeed, the patch seems simple enough. I am unsure about reusing the >>> option. If I understand correctly `auto-resize-tab-bars' is about >>> resizing the height according to the face? I think we want to control >>> both things separately, truncation and resizing of the height. Therefore >>> I would rather add another option `truncate-tab-bars'. What do you >>> think? >> >> The name `auto-resize-tab-bars' was created for compatibility >> with the `auto-resize-tool-bars'. But for new variables better >> to use the prefix `tab-bar-'. Then the name would be `tab-bar-truncate'. > > Ok, I will push the patch with the new name: Thanks, this looks good. Daniel From unknown Sun Jul 27 03:21:34 2025 X-Loop: help-debbugs@gnu.org Subject: bug#78953: 31.0.50; tab-bar-format-align-right alignment breaks if field widths change Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Jul 2025 06:48:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 78953 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Daniel Mendler Cc: 78953@debbugs.gnu.org Received: via spool by 78953-submit@debbugs.gnu.org id=B78953.17524756656674 (code B ref 78953); Mon, 14 Jul 2025 06:48:01 +0000 Received: (at 78953) by debbugs.gnu.org; 14 Jul 2025 06:47:45 +0000 Received: from localhost ([127.0.0.1]:59022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ubCyW-0001ja-Mt for submit@debbugs.gnu.org; Mon, 14 Jul 2025 02:47:44 -0400 Received: from mout-y-209.mailbox.org ([91.198.250.237]:52152) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ubCyU-0001jI-GF for 78953@debbugs.gnu.org; Mon, 14 Jul 2025 02:47:43 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-y-209.mailbox.org (Postfix) with ESMTPS id 4bgXtt2MHrzB0WD; Mon, 14 Jul 2025 08:47:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1752475654; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=yaGW1RyjPn7K1DmeyaigXPvfop+PM8mUxHFJ7MtZvoU=; b=PR3FjiRVzJKGeNf0JNA8dW7Iq/cHb2tYRa6pHPPnTZVdY97Nycz6GBBg73b+EY3uNuXIdQ JE5XW7VyUs6Cv1U8NGnHywvcyWaTIFb9R1HVglBy5ovjWZg2zzbhQ2E9urPD0YHILNVNng bzXwy4rN/OZMmwvaE5pE2YJu0WG4KUIckHxwA/8hSvUQdvEbIeDjyKGFGFUVnSmt6ksAbr qOQK9XAODKBfzuNLWUllhotcgjgE9RN0GhKVe7HwRZ4byRhcx1oqenRvKAnH0d3702qVPv aJDKPdob9w/4+omeq0OOcjFiS6VOb6lvFaM5BteuVubsPqvI3F4A44SNLHEUug== From: Juri Linkov In-Reply-To: <87ldosyn2s.fsf@daniel-mendler.de> Organization: LINKOV.NET References: <87h5zsa28z.fsf@daniel-mendler.de> <878ql4tpkl.fsf@mail.linkov.net> <87sejc775p.fsf@daniel-mendler.de> <87sej5ri0o.fsf@mail.linkov.net> <87tt3lsumk.fsf@daniel-mendler.de> <87bjpsk0o1.fsf@mail.linkov.net> <87v7o0iisf.fsf@daniel-mendler.de> <87ecuo42pf.fsf@daniel-mendler.de> <87v7nzhpr3.fsf@mail.linkov.net> <87h5zjke56.fsf@daniel-mendler.de> <874ivieq8i.fsf@mail.linkov.net> <87ple6bs7j.fsf@daniel-mendler.de> <87ldosa8xp.fsf@mail.linkov.net> <87ldoskob2.fsf@mail.linkov.net> <87ldosyn2s.fsf@daniel-mendler.de> Date: Mon, 14 Jul 2025 09:46:31 +0300 Message-ID: <87jz4bb77c.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >>> The name `auto-resize-tab-bars' was created for compatibility >>> with the `auto-resize-tool-bars'. But for new variables better >>> to use the prefix `tab-bar-'. Then the name would be `tab-bar-truncate'. >> >> Ok, I will push the patch with the new name: > > Thanks, this looks good. So now pushed. Thanks for good suggestions.