From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#69305: outline-minor-mode for tabulated-list-mode Date: Thu, 22 Feb 2024 21:10:45 +0200 Message-ID: <86plwo1fii.fsf@gnu.org> References: <86msrtvi06.fsf@mail.linkov.net> <86frxlmy1d.fsf@gnu.org> <86cyspt02f.fsf@mail.linkov.net> <861q94nc4j.fsf@gnu.org> <867ciws983.fsf@mail.linkov.net> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27166"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 69305@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Feb 22 20:30:26 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rdEm0-0006ln-WB for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 22 Feb 2024 20:30:25 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rdElP-00039U-AF; Thu, 22 Feb 2024 14:29:47 -0500 Original-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 1rdElL-00038z-1A for bug-gnu-emacs@gnu.org; Thu, 22 Feb 2024 14:29:43 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rdElI-0005q9-2j for bug-gnu-emacs@gnu.org; Thu, 22 Feb 2024 14:29:40 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rdEle-00026g-G0 for bug-gnu-emacs@gnu.org; Thu, 22 Feb 2024 14:30:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 22 Feb 2024 19:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 69305 X-GNU-PR-Package: emacs Original-Received: via spool by 69305-submit@debbugs.gnu.org id=B69305.17086301457863 (code B ref 69305); Thu, 22 Feb 2024 19:30:02 +0000 Original-Received: (at 69305) by debbugs.gnu.org; 22 Feb 2024 19:29:05 +0000 Original-Received: from localhost ([127.0.0.1]:52189 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rdEkd-00022A-Sv for submit@debbugs.gnu.org; Thu, 22 Feb 2024 14:29:04 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:47524) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rdEkb-00021h-3F for 69305@debbugs.gnu.org; Thu, 22 Feb 2024 14:28:58 -0500 Original-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 1rdET1-0002lJ-9M; Thu, 22 Feb 2024 14:10:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=VxRsB68wr9ESdV6KTyqSxG0xEmuolEA7e24qWRh5K0I=; b=hdVvQran319T L5ya/oltLop4X4nXJ7x/uupEAK1ItbNeNGG1peY9147ChDZiqSKtzrfCAXeHzYzmGSOh8g+ez4GmV KvXm4znUsmxfpn7vcONj9Z0s2xuLRz40lBivnGEerVweQO53Qso2Zravk1NoLO4XTanROuahhiEJS PQhSQQdSP5hEcFgZxQxURpSR5++aaDFg3yPOFhTX0gVFxwv1uReaS2cHJEqb7qXflRtI8TDsz+I8Q RvkMNTBNEYgwkgqfquTdfBfG8WNS5u+AjYRW/6stTRm1ckpRXiN4d+/HFHK49qA+ZuncHmfx10wva 9odF7ybVbyJf05xhyIwR7w==; In-Reply-To: <867ciws983.fsf@mail.linkov.net> (message from Juri Linkov on Thu, 22 Feb 2024 19:30:20 +0200) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:280470 Archived-At: > From: Juri Linkov > Cc: 69305@debbugs.gnu.org > Date: Thu, 22 Feb 2024 19:30:20 +0200 > > >> +@defvar tabulated-list-groups > >> +This buffer-local variable specifies the groups of entries displayed in > >> +the Tabulated List buffer. Its value should be either a list, or a > >> +function. > >> + > >> +If the value is a list, each list element corresponds to one group, and > >> +should have the form @w{@code{(@var{group-name} @var{entries})}}, where > >> +@var{group-name} is a string inserted before all group entries, and > >> +@var{entries} have the same format as @code{tabulated-list-entries} > >> +(see above). > >> + > >> +Otherwise, the value should be a function which returns a list of the > >> +above form when called with no arguments. > >> +@end defvar > > > > I think the way to specify ENTRIES for this customization should be > > described in more detail. Reading the above description, even the > > idea of using ENTRIES for specifying grouping is unclear, since > > tabulated-list-entries is basically just a list of column descriptors. > > But ENTRIES are described in 'tabulated-list-entries'. Here ENTRIES > are no different from 'tabulated-list-entries' that are just > column descriptors. My point is that it isn't obvious how to describe grouping in terms of column descriptors. I think the manual should tell in more detail how to use column descriptors to specify how entries should be grouped. Maybe an example or two is all that it takes to do that. > >> +(ert-deftest tabulated-list-groups () > >> + (with-temp-buffer > >> + (tabulated-list-mode) > >> + (setq tabulated-list-groups > >> + (reverse > >> + (seq-group-by (lambda (b) (concat "* " (aref (cadr b) 3))) > >> + tabulated-list--test-entries))) > >> + (setq tabulated-list-format tabulated-list--test-format) > >> + (setq tabulated-list-padding 7) > >> + (tabulated-list-init-header) > >> + (tabulated-list-print) > > > > This seems to test only the function value of tabulated-list-groups? > > What about the other form of the value? > > The other forms have no functional difference. Sorry, I don't follow. Shouldn't we test the capability of specifying grouping by the method other than by providing a function?