Any update on this? Having been using the patch for a few weeks now, seems fine for me.
> > > Is the patch for the above improvement the one included in the file
> > > 0001-Fix-describe-buffer-bindings-performance-regression.patch?
> >
> > Yes, it is.
It seems that the main intention of that patch is to avoid unnecessary
call of char_table_ref_and_range introduced by the commit below:
> > Don't show key ranges if shadowed by different commands
> >
> > * src/keymap.c (describe_vector): Make sure found consecutive keys
> > are either not shadowed or, if they are, that they are shadowed by
> > the same command. (Bug#9293)
In describe_vector, if VECTOR is a char-table, char_table_ref_and_range
is already called at the fairly beginning of the main loop. So, we do
not have to call it again, and thus, I think the patch is doing the
correct thing.
But, I don't know whether the following part in the patch is correct or
not.
+ /* Ignore `self-insert-command' for performance. */
+ && !EQ (definition, Qself_insert_command))
---
K. Handa