On Mon, Jun 30, 2025 at 12:27 PM Spencer Baugh <sbaugh@janestreet.com> wrote:
Stéphane Marks <shipmints@gmail.com> writes:
> In the meantime, be a mensch, and try it out to see if it addresses your immediate issue and provide constructive feedback.  The
> set of bugs I fixed and the new features added were informed by other menschen.  I've always considered your ideas and input
> well.
>
> Here are the latest two files for ease of testing.  vtable.el, in its current form, is compatible with Emacs 31 unless and until
> `string-pixel-width` is updated in compat.  I doubt Eli will want this in Emacs 30 but it could be published on ELPA if there is
> demand?

A few issues using the vtable.el you attached:

- Clicking on header lines no longer changes sorting.

- Columns where I specify :displayer now seem to have extra empty
  padding added to the end of them.  I think this may be the result of
  vtable--insert-line passing clipped-value-width (which has space for
  the ellipsis removed) to the displayer function rather than passing
  column-width as it used to.

I do like that the header line is exactly properly aligned with columns
now, both in graphical and terminal Emacs.  I wish you would please make
smaller patches for your individual improvements so that we could have
them without these bugs...

Thank you very much for testing the large change.  If I piecemealed all the changes it would take weeks/months to get past reviewing all of them.  And I've restructured some of the code along the way for clarity and correctness.

I've since repaired those.

I had put in a restriction that enforced that a vtable should be inserted into a single buffer.  That broke comint-mime which renders a vtable from HTML in a temp buffer and then inserts the buffer's string into the shell buffer.  While that could be reworked, I sense that the single-buffer restriction is too defensive and less Emacsy.  What I will do instead is add documentation and a suggestion about invoking vtable functions when the current buffer is not the vtable buffer.

As I find time, I will start working on some tests to add to the two tests that are there.

I've attached a revised vtable.el that still has the single-buffer restriction and with your feedback items addressed.

I deeply appreciate everyone's patience and flexibility with these fixes and improvements.

-Stéphane