steven Mitchell writes:
We are working on adding some changes to the menu to work with
registers.
We have the code done, and it works in one buffer. (maybe one
window?)
One buffer. current-menubar is (often? usually? by-default?)
buffer-local.
How do you do two things:
1. add your changes to other buffers already open?
Map over (list-buffers) is the only way to guarantee it since it may
be buffer local. That's just the way buffer local variables work.
But you may or may not want that. Many buffers are special (eg,
dired) and you wouldn't want to pollute their menus with irrelevant or
unusable code.
(setq-default current-menubar) will do the trick in buffers without a
buffer-local value.
2. add your changes so new buffers have them in it.
(setq-default current-menubar) will do the trick, but again in buffers
that don't set a buffer-local value.
I'm pretty sure it's just not possible to do this in general because
of buffer-locals. It wouldn't really help much to make
current-menubar a specifier, either, AFAICS.
I think the best option would be to provide a hook in the
default-menubar for your enhanced register menu, and use the enhanced
menu if available, otherwise the default. You could also propose the
enhanced menu as the default, but be prepared for extensive
bikeshedding before it gets in. (Of course, it might obviously be a
work of artistic genius and get waved right through. But "Be
prepared!":-)
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta