emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Toolbar and info mode (and others)


From: Reiner Steib
Subject: Re: Toolbar and info mode (and others)
Date: Mon, 26 Mar 2007 22:18:06 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.96 (gnu/linux)

On Mon, Mar 26 2007, Richard Stallman wrote:

> * Maybe we should reduce the number of toolbar buttons in the
> default configuration.

I think the current icons are quite reasonable for an editor (and
comparable to gedit or kwrite).

Except for...
  <tool-bar> <help>: popping up a menu is not very useful for a toolbar
  icon (exception: context menus with mouse-3). [1]
... and maybe...
  <tool-bar> <customize>: I don't think that opening the top level
  customization group is frequently used. [2]

> * If we assume that the global toolbar buttons are in order
> of decreasing importance, we can discard the last few
> so as to make room for all the buffer-specific toolbar buttons.

I don't think that icons are or should be ordered by "importance".
Related actions should be grouped ({new file, open file, ...}, {save,
save as}, {cut, copy, paste}, ...) and there are some conventions in
the order of the groups as well.

>        At least <save-buffer>, <write-file>, <undo>, <cut>, <paste> are
>        neither important nor useful (IMHO) in info mode.
>
> That is true for Info mode, but may not be true for other specialized
> modes.  But it suggests an idea: to have a feature for the mode to
> specify which buttons to retain from the global toolbar, or which
> buttons to discard.

There's such code in Gnus' gmm-utils.el[3].  In most Gnus modes, we
use a complete new tool bar.  But in message mode, we retain some
editing icons and remove other icons:

(defcustom message-tool-bar-zap-list
  '(new-file open-file dired kill-buffer write-file
             print-buffer customize help) ...)

An advantage of the code in gmm-utils.el is that the user can 
easily customize the tool bars.

> All this is for after the release.

Of course.

Bye, Reiner.

[1] In Gnus, the help button opens a mode specific info node:

,----[ <f1> v gnus-info-nodes RET ]
| gnus-info-nodes is a variable defined in `gnus'.
| Its value is 
| ((gnus-group-mode "(gnus)Group Buffer")
|  (gnus-summary-mode "(gnus)Summary Buffer")
|  (gnus-article-mode "(gnus)Article Buffer")
|  (gnus-server-mode "(gnus)Server Buffer")
|  (gnus-browse-mode "(gnus)Browse Foreign Server")
|  (gnus-tree-mode "(gnus)Tree Display"))
| 
| Documentation:
| Alist of major modes and related Info nodes.
`----

[2] In Gnus, this icon opens the mode's custom group.

[3]
(defun gmm-tool-bar-from-list (icon-list zap-list default-map)
  "Make a tool bar from ICON-LIST.

Within each entry of ICON-LIST, the first element is a menu
command, the second element is an icon file name and the third
element is a test function.  You can use \\[describe-key]
<menu-entry> to find out the name of a menu command.  The fourth
and all following elements are passed as the PROPS argument to the
function `tool-bar-local-item'.

If ZAP-LIST is a list, remove those item from the default
`tool-bar-map'.  If it is t, start with a new sparse map.  You
can use \\[describe-key] <icon> to find out the name of an icon
item.  When \\[describe-key] <icon> shows \"<tool-bar> <new-file>
runs the command find-file\", then use `new-file' in ZAP-LIST.

DEFAULT-MAP specifies the default key map for ICON-LIST."
...)
-- 
       ,,,
      (o o)
---ooO-(_)-Ooo---  |  PGP key available  |  http://rsteib.home.pages.de/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]