GNU bug report logs - #69305
outline-minor-mode for tabulated-list-mode

Previous Next

Package: emacs;

Reported by: Juri Linkov <juri <at> linkov.net>

Date: Wed, 21 Feb 2024 17:40:02 UTC

Severity: normal

Fixed in version 30.0.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

Full log


Message #74 received at 69305 <at> debbugs.gnu.org (full text, mbox):

From: Adam Porter <adam <at> alphapapa.net>
To: Juri Linkov <juri <at> linkov.net>
Cc: 69305 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>,
 Ihor Radchenko <yantar92 <at> posteo.net>
Subject: Re: bug#69305: outline-minor-mode for tabulated-list-mode
Date: Sun, 25 Feb 2024 21:31:37 -0600
[Message part 1 (text/plain, inline)]
Hi Juri,

On 2/25/24 11:36, Juri Linkov wrote:
>> So if you were to use one of these as inspiration (or as a library
>> directly), I'd strongly recommend using `taxy', as that's what it's
>> designed for.
>> [...]
>> Let me know if I can help facilitate a solution using it, or help anyone
>> work with the API.
> 
> Thanks for proposing help, but for inspiration I'm using
> my own package https://github.com/link0ff/emacs-ee
> It's much more powerful than anything I have seen so far.
> But on the other hand, it became so unmanageable
> that I semi-abandoned it due to its overly complexity.

Taxy might be able to help with that, because it's designed to simply 
abstract the matter of classifying data into hierarchies.  It's only 381 
lines of code, which includes macros that allow applications to define 
their own, user-extensible grouping languages with top-level forms.

UI frontends to render the data structures are separated from the 
concern of grouping.  A simple "pretty print" one is provided, but the 
main implementation so far is the associated library, taxy-magit-section.

> Is your package more light-weight than mine?  I doubt it ;-)

Well, judge for yourself.  :)  Attached is a file that provides a simple 
buffer-grouping command based on Taxy.  It's what I would call a "level 
one" implementation, without defining a DSL or user-customizeable 
grouping.  Adding those features would only take a few more lines of 
code, but I'm keeping this example as simple as possible.  This only 
takes 41 lines of code.  It produces a view as seen in the attached 
screenshot.  And it only took about 5 minutes to write by modifying a 
similar example that works on another kind of object.

Anyway, I'm not necessarily pushing a solution here, only trying to 
share what's available.  I did spend a lot of time on this project, and 
IMHO it solves the problem elegantly and powerfully, so I would like to 
see it applied more widely, but things included with Emacs itself are 
another matter.
[buffery.el (text/x-emacs-lisp, attachment)]
[example.png (image/png, attachment)]

This bug report was last modified 1 year and 72 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.