From unknown Fri Jun 20 18:20:11 2025 X-Loop: help-debbugs@gnu.org Subject: bug#52050: [PATCH] Make tab-line-switch-cycling work with buffer groups Resent-From: Matt Kramer Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Nov 2021 04:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 52050 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 52050@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.163764219223832 (code B ref -1); Tue, 23 Nov 2021 04:37:01 +0000 Received: (at submit) by debbugs.gnu.org; 23 Nov 2021 04:36:32 +0000 Received: from localhost ([127.0.0.1]:49621 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpNXg-0006CG-US for submit@debbugs.gnu.org; Mon, 22 Nov 2021 23:36:32 -0500 Received: from lists.gnu.org ([209.51.188.17]:52890) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpNEG-0005i1-Ub for submit@debbugs.gnu.org; Mon, 22 Nov 2021 23:16:25 -0500 Received: from eggs.gnu.org ([209.51.188.92]:32960) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mpNEG-0008AD-OA for bug-gnu-emacs@gnu.org; Mon, 22 Nov 2021 23:16:24 -0500 Received: from [2607:f8b0:4864:20::233] (port=33511 helo=mail-oi1-x233.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mpNEF-0000GK-8H for bug-gnu-emacs@gnu.org; Mon, 22 Nov 2021 23:16:24 -0500 Received: by mail-oi1-x233.google.com with SMTP id q25so42307298oiw.0 for ; Mon, 22 Nov 2021 20:16:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=W5/Y7WS3TuDF+bogl8/ap+rCg1OVepEanVtnHpzCp4s=; b=k9gJ5D5jV6HJe2ITUqfeqJWr7R6M45v/uCzUpq71BKZDK848sISYxh0hEyo8S/xt0T UeNFzudc5oi85gFNcdNX8L0svxEU94N8bApyZtDMeOSZWdSgJ8jwEU8K1FLb1B+aw0yO TeKBh2VRrVvmakk4vENugPHeChgnUDUdxpCFRw5VyzYJ3Mn7tFI/nB4FMhPi9Ez7lxbE /tH2+1gBVFZRDjuc1HjD2NgzcOCo0IpowkzUiqJLeTBYmv+QfyJLKx6yRfQh6g919H5C +BYyu9WUbrSFOQUOm0uECHhSUw089iRVl+/qDbK2uAUMMF1m0TL2tK1o5lXiYLxtU5wu h6ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=W5/Y7WS3TuDF+bogl8/ap+rCg1OVepEanVtnHpzCp4s=; b=VOqKzsZkeEMWt2c5GLswkFVbHuuazSWav1wI7XrNNVZvnBIfo+TlvEV72FGooEUAy3 ZmyxJKP2Oqj/ofn3BrPsZkHnfgcZQ52mYCmffMiWfqemA/ajWwtGAovX18e9Qownycej zpf0270rGG/5/h4Kba8BDdzgGezyKloEmiWFaXPYwej5+PwirGdb3jTaX85UyJbmsEEe 8UPTEpkbr37p2w9ElLqfD+jGxJKMEH+8++BY15GkgJRQNbhiziHlNgXMnAtr3uyqKW6t 6OeCclKpg7l5xgCaztlfMPsIR/2mr06v7fhHzaay6XeS7Yk1bB8zlEejOQrsGFFPGVQs /ywg== X-Gm-Message-State: AOAM530o83aFjVvS5GkhqpbtctvZ48mbP8l3y2YUo0amFepQOhAx+ySf BjD4foaPVrPgI1Jz1zYUn6oNyg9+u2zr79iSpFfVw2+XLwXmFw== X-Google-Smtp-Source: ABdhPJxqYHXzpEh9exJtN2Uw1DKeVMZrn7Nvc2hXTnm/luODBNPqwA9xlCxouGmelEUfYjQ9KUyI5gCPKFRipXWfOPg= X-Received: by 2002:aca:ac8e:: with SMTP id v136mr2757541oie.19.1637640981010; Mon, 22 Nov 2021 20:16:21 -0800 (PST) MIME-Version: 1.0 From: Matt Kramer Date: Mon, 22 Nov 2021 20:16:09 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000f15d4505d16d0047" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::233 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::233; envelope-from=matt314159@gmail.com; helo=mail-oi1-x233.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.2 (/) X-Mailman-Approved-At: Mon, 22 Nov 2021 23:36:27 -0500 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.0 (---) --000000000000f15d4505d16d0047 Content-Type: text/plain; charset="UTF-8" Currently, `tab-line-switch-cycling' has no effect in the presence of any tab that isn't associated with a buffer, such as the `group-tab' that exists when `tab-line-tabs-function' is `tab-line-tabs-buffer-groups'. This patch modifies `tab-line-switch-to-{next,prev}-tab' to remove any such tab from consideration. >From 205cebc3a05884d948a5ea45688732cbe1b948ea Mon Sep 17 00:00:00 2001 From: Matt Kramer Date: Mon, 22 Nov 2021 20:03:01 -0800 Subject: [PATCH] Fix tab-line cycling when using buffer groups --- lisp/tab-line.el | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lisp/tab-line.el b/lisp/tab-line.el index 110c6e9696..af0647acf7 100644 --- a/lisp/tab-line.el +++ b/lisp/tab-line.el @@ -792,7 +792,9 @@ tab-line-switch-to-prev-tab (if (eq tab-line-tabs-function #'tab-line-tabs-window-buffers) (switch-to-prev-buffer window) (with-selected-window (or window (selected-window)) - (let* ((tabs (funcall tab-line-tabs-function)) + (let* ((tabs (seq-filter + (lambda (tab) (or (bufferp tab) (assq 'buffer tab))) + (funcall tab-line-tabs-function))) (pos (seq-position tabs (current-buffer) (lambda (tab buffer) @@ -816,7 +818,9 @@ tab-line-switch-to-next-tab (if (eq tab-line-tabs-function #'tab-line-tabs-window-buffers) (switch-to-next-buffer window) (with-selected-window (or window (selected-window)) - (let* ((tabs (funcall tab-line-tabs-function)) + (let* ((tabs (seq-filter + (lambda (tab) (or (bufferp tab) (assq 'buffer tab))) + (funcall tab-line-tabs-function))) (pos (seq-position tabs (current-buffer) (lambda (tab buffer) -- 2.26.2 --000000000000f15d4505d16d0047 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Currently, `tab-line-switch-cycling' has no effect in = the presence of any tab that isn't associated with a buffer, such as th= e `group-tab' that exists when `tab-line-tabs-function' is `tab-lin= e-tabs-buffer-groups'. This patch modifies `tab-line-switch-to-{next,pr= ev}-tab' to remove any such tab from consideration.

= From 205cebc3a05884d948a5ea45688732cbe1b948ea Mon = Sep 17 00:00:00 2001
From: Matt Kramer <mkramer@lbl.gov>
Date: Mon, 22 Nov 2021 20:03:01 -0800
S= ubject: [PATCH] Fix tab-line cycling when using buffer groups

---=C2=A0lisp/tab-line.el | 8 ++++++--
=C2=A01 file changed, 6 insertions(= +), 2 deletions(-)

diff --git a/lisp/tab-line.el b/lisp/tab-line.el<= br>index 110c6e9696..af0647acf7 100644
--- a/lisp/tab-line.el
+++ b/l= isp/tab-line.el
@@ -792,7 +792,9 @@ tab-line-switch-to-prev-tab
=C2= =A0 =C2=A0 =C2=A0(if (eq tab-line-tabs-function #'tab-line-tabs-window-= buffers)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(switch-to-prev-buffer window= )
=C2=A0 =C2=A0 =C2=A0 =C2=A0(with-selected-window (or window (selected-= window))
- =C2=A0 =C2=A0 =C2=A0 =C2=A0(let* ((tabs (funcall tab-line-tab= s-function))
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0(let* ((tabs (seq-filter
+ = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0(lambda (tab) (or (bufferp tab) (assq 'buffer tab)))
+ =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(funcall = tab-line-tabs-function)))
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 (pos (seq-position
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 tabs (current-buffer)
=C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (lambda (tab= buffer)
@@ -816,7 +818,9 @@ tab-line-switch-to-next-tab
=C2=A0 =C2= =A0 =C2=A0(if (eq tab-line-tabs-function #'tab-line-tabs-window-buffers= )
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(switch-to-next-buffer window)
= =C2=A0 =C2=A0 =C2=A0 =C2=A0(with-selected-window (or window (selected-windo= w))
- =C2=A0 =C2=A0 =C2=A0 =C2=A0(let* ((tabs (funcall tab-line-tabs-fun= ction))
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0(let* ((tabs (seq-filter
+ =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(l= ambda (tab) (or (bufferp tab) (assq 'buffer tab)))
+ =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(funcall tab-= line-tabs-function)))
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 (pos (seq-position
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 tabs (current-buffer)
=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (lambda (tab bu= ffer)
--
2.26.2

--000000000000f15d4505d16d0047-- From unknown Fri Jun 20 18:20:11 2025 X-Loop: help-debbugs@gnu.org Subject: bug#52050: [PATCH] Make tab-line-switch-cycling work with buffer groups Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Nov 2021 08:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52050 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Matt Kramer Cc: 52050@debbugs.gnu.org Received: via spool by 52050-submit@debbugs.gnu.org id=B52050.163765481012442 (code B ref 52050); Tue, 23 Nov 2021 08:07:02 +0000 Received: (at 52050) by debbugs.gnu.org; 23 Nov 2021 08:06:50 +0000 Received: from localhost ([127.0.0.1]:49877 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpQpF-0003Ec-T8 for submit@debbugs.gnu.org; Tue, 23 Nov 2021 03:06:50 -0500 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:52285) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpQpC-0003EH-OY for 52050@debbugs.gnu.org; Tue, 23 Nov 2021 03:06:48 -0500 Received: (Authenticated sender: juri@linkov.net) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id 7B5861C000C; Tue, 23 Nov 2021 08:06:38 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: Date: Tue, 23 Nov 2021 10:06:09 +0200 In-Reply-To: (Matt Kramer's message of "Mon, 22 Nov 2021 20:16:09 -0800") Message-ID: <86sfvnpaie.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) 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 (-) > Currently, `tab-line-switch-cycling' has no effect in the presence of any > tab that isn't associated with a buffer, such as the `group-tab' that > exists when `tab-line-tabs-function' is `tab-line-tabs-buffer-groups'. This > patch modifies `tab-line-switch-to-{next,prev}-tab' to remove any such tab > from consideration. Thanks for the patch. Please send your complete tab-line setup, so we could test and verify that your patch correctly fixes the problem. I see at least these settings: (setq tab-line-switch-cycling t) (setq tab-line-tabs-function 'tab-line-tabs-buffer-groups) But it seems you also modified either tab-line-tabs-buffer-list-function, or tab-line-tabs-buffer-group-sort-function, or both of them. Is this true? From unknown Fri Jun 20 18:20:11 2025 X-Loop: help-debbugs@gnu.org Subject: bug#52050: [PATCH] Make tab-line-switch-cycling work with buffer groups Resent-From: Matt Kramer Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Nov 2021 09:43:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52050 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Juri Linkov Cc: 52050@debbugs.gnu.org Received: via spool by 52050-submit@debbugs.gnu.org id=B52050.16376605394178 (code B ref 52050); Tue, 23 Nov 2021 09:43:02 +0000 Received: (at 52050) by debbugs.gnu.org; 23 Nov 2021 09:42:19 +0000 Received: from localhost ([127.0.0.1]:50039 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpSJe-00015J-Vd for submit@debbugs.gnu.org; Tue, 23 Nov 2021 04:42:19 -0500 Received: from mail-ot1-f53.google.com ([209.85.210.53]:40923) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpSJc-000155-Bf for 52050@debbugs.gnu.org; Tue, 23 Nov 2021 04:42:17 -0500 Received: by mail-ot1-f53.google.com with SMTP id v15-20020a9d604f000000b0056cdb373b82so32917925otj.7 for <52050@debbugs.gnu.org>; Tue, 23 Nov 2021 01:42:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=z3UwWePxKZCh40aGfnwQfd4P8xrMZ1aZ00z21Wm1Oxk=; b=jYw9DYPLIj0GpLWnnAsTncZuqUtVN0x9HaLcv7mOXMq5ooqKj8jRozv7iYY46BdtQZ Fl/WSD0G4az1frFxWUeE1hHeD2/nNXvsNiKZDbGFZfWUwmTv7f2Hzcc9lA1cniRMEyuP n9lw4/L5q8DqcNKuZgKlk+TauB6OLKxV1ZKAL9Gekhok8khBbyv2aA2sWReRjuGUTNtm 33BhoSVZVUFt0rczWHu6Os8qnp2LHs+mejoC3zQcUn4MM8fIH5DI0MP+kYf1V5/s2QXX LoaKPSDrj8HrO7tJWCIQwBzmkjG8ypCgIKV/JNlxV7zwuCWHdo0IrGMgZ4l7Awhr4Ftl oIiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=z3UwWePxKZCh40aGfnwQfd4P8xrMZ1aZ00z21Wm1Oxk=; b=LLqmhN1rgoirvRya+EEYyg1McGe6Io4gKLHjpSswHgkeyNdabbaF0VCWC/DyfHNmZ0 5BGvJPI0C0GtbIr86zunrDFCTTC0KYPJW02OIu1lZmTra85SZBRZMNxvka5Jr7QCYf+8 s+OWUWvWJmskniBCWa7YhlB1XwUONw4vJtt0VGQmu7u9SvhrYlbgl6KPfCKtAUb3BesX OlTrU3ziEAND75q8HlWSTq3QySuUElea9WPZweP44qbAIOhWpsSlOmSPypOFOPNUolHV 63HPqh/bby9BLXaMDnYn16ybKnDP4F7rW71S/UrTrVGxcK49IlXSMwO0Qu/HMI/ZIzCJ 4dfw== X-Gm-Message-State: AOAM531RjVjnTOHU6y3iQWQ7/bWAnFF2kzyIh9fIsPv/OXV+1QY5KeO7 1JUzC5R4H/LENQxDvyR3zRSoS48LbAJ1zd0p3yc= X-Google-Smtp-Source: ABdhPJzreRE9qZNVJ0p9BDrTJmvB2J7bg7+653tn0R6lhsfVQ0T1ok8R1a0qV9ahUENFG/WSLQhSp3jB9ukr7Kv3sSE= X-Received: by 2002:a05:6830:90a:: with SMTP id v10mr3027083ott.223.1637660530585; Tue, 23 Nov 2021 01:42:10 -0800 (PST) MIME-Version: 1.0 References: <86sfvnpaie.fsf@mail.linkov.net> In-Reply-To: <86sfvnpaie.fsf@mail.linkov.net> From: Matt Kramer Date: Tue, 23 Nov 2021 01:41:59 -0800 Message-ID: Content-Type: multipart/alternative; boundary="00000000000030340d05d1718eae" X-Spam-Score: 0.2 (/) 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.8 (/) --00000000000030340d05d1718eae Content-Type: text/plain; charset="UTF-8" > > But it seems you also modified either tab-line-tabs-buffer-list-function, > or tab-line-tabs-buffer-group-sort-function, or both of them. Is this > true? > Yes to tab-line-tabs-buffer-group-sort-function, no to tab-line-tabs-buffer-list-function, yes also to tab-line-tabs-buffer-group-function. Setup is below: (defvar ++buffer-group-table (make-hash-table :test 'equal)) ;; I manually populate ++buffer-group-table (defun ++tab-line-buffer-group (buffer) (gethash (buffer-name buffer) ++buffer-group-table (with-current-buffer buffer (concat (symbol-name major-mode) ":" (and buffer-file-name (file-name-directory buffer-file-name)))))) (defun ++buffer-name< (a b) (string< (buffer-name a) (buffer-name b))) (setq tab-line-tabs-function #'tab-line-tabs-buffer-groups tab-line-tabs-buffer-group-function #'++tab-line-buffer-group tab-line-tabs-buffer-group-sort-function #'++buffer-name< tab-line-switch-cycling t) --00000000000030340d05d1718eae Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
But it s= eems you also modified either tab-line-tabs-buffer-list-function,
or tab= -line-tabs-buffer-group-sort-function, or both of them.=C2=A0 Is this true?=

Yes to tab-line-tabs-buffer-group-sort= -function, no to tab-line-tabs-buffer-list-function, yes also to tab-line-t= abs-buffer-group-function. Setup is below:

(defvar ++buffer-group-table
=C2=A0 (make-hash-table := test 'equal))

;; I manually populate=C2=A0++buffer-group-table

(defun ++tab-line-buffer-group (buffer)
=C2=A0 (gethash (buffer= -name buffer) ++buffer-group-table
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0(with-current-buffer buffer
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0(concat (symbol-name major-mode)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0":"
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(and buff= er-file-name
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (file-name-directory buffer-file-name))))))=

(defun ++buffer-name< (a b)
=C2=A0 (string< (buffer-name a= ) (buffer-name b)))

(setq tab-line-tabs-function #'tab-line-tabs= -buffer-groups
=C2=A0 =C2=A0 =C2=A0 tab-line-tabs-buffer-group-function = #'++tab-line-buffer-group
=C2=A0 =C2=A0 =C2=A0 tab-line-tabs-buffer-= group-sort-function #'++buffer-name<
=C2=A0 =C2=A0 =C2=A0 tab-lin= e-switch-cycling t)


--00000000000030340d05d1718eae-- From unknown Fri Jun 20 18:20:11 2025 X-Loop: help-debbugs@gnu.org Subject: bug#52050: [PATCH] Make tab-line-switch-cycling work with buffer groups Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 24 Nov 2021 19:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52050 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Matt Kramer Cc: 52050@debbugs.gnu.org Received: via spool by 52050-submit@debbugs.gnu.org id=B52050.163778306728282 (code B ref 52050); Wed, 24 Nov 2021 19:45:02 +0000 Received: (at 52050) by debbugs.gnu.org; 24 Nov 2021 19:44:27 +0000 Received: from localhost ([127.0.0.1]:55013 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpyBv-0007M5-Cd for submit@debbugs.gnu.org; Wed, 24 Nov 2021 14:44:27 -0500 Received: from relay8-d.mail.gandi.net ([217.70.183.201]:43505) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpyBs-0007Lm-VX; Wed, 24 Nov 2021 14:44:25 -0500 Received: (Authenticated sender: juri@linkov.net) by relay8-d.mail.gandi.net (Postfix) with ESMTPSA id 447461BF207; Wed, 24 Nov 2021 19:44:15 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <86sfvnpaie.fsf@mail.linkov.net> Date: Wed, 24 Nov 2021 21:43:33 +0200 In-Reply-To: (Matt Kramer's message of "Tue, 23 Nov 2021 01:41:59 -0800") Message-ID: <86fsrl2vbu.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) 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 52050 29.0.50 thanks > But it seems you also modified either > tab-line-tabs-buffer-list-function, > or tab-line-tabs-buffer-group-sort-function, or both of them. Is this > true? > > Yes to tab-line-tabs-buffer-group-sort-function, no to > tab-line-tabs-buffer-list-function, yes also to > tab-line-tabs-buffer-group-function. Setup is below: Thanks, now confirmed that it works as it should, so your patch is pushed to master.