I think the behavior menu DOES exist in 21.5.
It is just that it has been morphed into a different form/name
If you look at behavior.el, the last function in the file, is the menu
that Ben Wing was intending:
(defun behavior-menu-filter (menu)
(append
`(("%_Package Utilities"
("%_Set Download Site"
("%_Official Releases"
:filter ,#'(lambda (&rest junk)
(menu-split-long-menu
(submenu-generate-accelerator-spec
(package-ui-download-menu)))))
("%_Pre-Releases"
:filter ,#'(lambda (&rest junk)
(menu-split-long-menu
(submenu-generate-accelerator-spec
(package-ui-pre-release-download-menu)))))
("%_Site Releases"
:filter ,#'(lambda (&rest junk)
(menu-split-long-menu
(submenu-generate-accelerator-spec
(package-ui-site-release-download-menu))))))
"--:shadowEtchedIn"
["%_Update Package Index" package-get-update-base]
["%_List and Install" pui-list-packages]
["U%_pdate Installed Packages" package-get-update-all]
["%_Help" (Info-goto-node "(xemacs)Packages")])
"----")
(behavior-menu-filter-1 menu nil)))
;; Initialize top-level group.
(puthash nil '(:children nil :short-doc "Root") behavior-group-hash-table)
And that menu structure is what I see on the menu as Tools-->Packages.
That was 10 years ago, and is not to say we have to do it that way now.
Nor am I saying it is the correct way. This is just a response to what is
actually implemented at this point.
it looks like the intention way back when, was to have a menu with
behaviors (though maybe not called that) that had all the stuff under
Tools-->Packages currently, appended to it.
Again, I'm not saying we have to go back to that design, I'm just saying
what it looks like was intended.
In the discussion now, about a policy for menu insinuation done by packages,
maybe a menu-path could be designated as the place for any insinuation
to occur
and nowhere else?
The other choices seem to be to allow it at will, or not allow menu
insinuation
at all.
I don't have an opinion which way it should be done, just trying to clarify
options.
Steve Mitchell
On 01/12/2012 02:04 AM, Stephen J. Turnbull wrote:
Byrel Mitchell writes:
> So far as I could tell, behaviors were essentially a means of globally
> enabling or disabling a certain feature. Whoever implemented the
> feature would write functions for enabling and disabling it, and
> register those through `define-behavior'. The behavior can then be
> turned on and off through disable- and enable-behavior. That much, at
> least, is implemented.
>
> However,it looks like there was going to be a behavior menu (with
> functions like behavior-menu-filter defined.) I don't believe there is
> such a menu on the default menu-bar in the latest beta.
Yes, and yes. Excellent summary, thank you!
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta