unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "'Bastien'" <bzg@altern.org>, "'Juri Linkov'" <juri@jurta.org>
Cc: emacs-pretest-bug@gnu.org
Subject: RE: Info-build-node-completions has an extra `*' node
Date: Thu, 21 Feb 2008 11:24:24 -0800	[thread overview]
Message-ID: <009701c874bf$5ebf9ad0$0600a8c0@us.oracle.com> (raw)
In-Reply-To: <87lk5h6aam.fsf@bzg.ath.cx>

> From: Bastien Guerry Sent: Monday, February 18, 2008 4:49 PM
> >>> `g' lists all node names (the virtual Info file `dir' has only one
> >>> node `Top' so it is right for `g' to list only this single node.)
> >
> > Why would someone normally want a completion on Info file 
> > names instead of Info manual names with typing `m TAB'?
> 
> I think this boils down to disambiguate what a "menu item" refers to.
> In a manual, a menu item is a node; in (dir), a menu item is a really
> a file name (a manual.)
> 
> My point is that, when listed in (dir), a manual looks like a node.
> Hence the user might expect `Info-goto-node' to offer completion on 
> the manuals as well.
> 
> In fact, I find `Info-menu' and `Info-goto-node' to be a bit 
> redundant, and the fact that `Info-goto-node' is not helpful in
> (dir) doesn't help the two commands to be less redundant.

I have no opinion so far about completing against file names along with node
names.

However, I too feel that it would be great to treat the menu at the (dir)
level the same way menus are treated within a manual - that is, to be able
to use `g' to complete against manual names when in (dir), just as you can
complete against node names (which correspond loosely to menu item names)
when in a manual.

A propos, in Icicles, you can do the following. (I'm not suggesting this for
Emacs; I mention it to show that it would be handy to treat (dir)
manuals/menu items similarly to nodes in manuals.)

1. `g' is a multi-command. So you can repeatedly use `C-next' and other keys
to traverse the Info hierarchy, displaying different nodes. You can use
completion to match node names, and you can access nodes in any order.

2. You can hit `C-,' to sort the node list (*Completions*) in book order.
Icicles lets you cycle among completions, so this makes it easy to traverse
the node hierarchy in order. The effect is a bit similar to using SPC and
DEL (without scrolling), but you remain within the call to `g'.

3. `C-u g' opens a new window, just as for vanilla Emacs. But a negative
prefix arg, `M--', has this behavior:

3a. It sorts the nodes in book order (no need to hit `C-,').

3b. It removes all nodes that come before the current node from the
completion set, so you see (and complete against) only the nodes that remain
in the book, after the current node. This makes completion easier (smaller
domain).

3c. Except at the Top level, it adds a pseudo-node completion candidate,
`..', which takes you up to the parent node. If you go up all the way to the
Top node, then all candidates become available, but the current candidate is
the current node, facilitating continuing back down into the manual where
you were. (The "current candidate" has to do with candidate cycling in
Icicles.)


So you can see that this, as Bastien hints, brings `g' and `m' together, in
a way: You can use the same command, `g', to either navigate nodes by name
(alphabetical order for completions) or by menu (book order for
completions).

And you can see that it would be handy to be able do the same thing at the
(dir) level. Currently, since there are no nodes at that level (even though
there is a menu of manuals), you just get the single node "Top  This is the
top of the INFO tree" as the only candidate for completion.

http://www.emacswiki.org/cgi-bin/wiki/Icicles_-_Info_Enhancements






  reply	other threads:[~2008-02-21 19:24 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-17 22:25 Info-build-node-completions has an extra `*' node Drew Adams
2008-02-17 22:34 ` Drew Adams
2008-02-17 23:05   ` Bastien
2008-02-17 23:22   ` Juri Linkov
2008-02-17 23:53     ` Bastien Guerry
2008-02-18  0:27       ` Juri Linkov
2008-02-18  0:56         ` Bastien Guerry
2008-02-18 23:54           ` Juri Linkov
2008-02-19  0:48             ` Bastien
2008-02-21 19:24               ` Drew Adams [this message]
2008-02-18  0:02     ` Drew Adams
2008-02-18  0:29       ` Juri Linkov
2008-02-18  0:54         ` Bastien Guerry
2008-02-18  1:27         ` Drew Adams
2008-02-18  3:37           ` Miles Bader
2008-02-18  4:12             ` David De La Harpe Golden
2008-02-18 11:56               ` Bastien Guerry
2008-02-18 23:55             ` Juri Linkov
2008-02-18 17:31           ` Richard Stallman
2008-02-18 17:40             ` Drew Adams
2008-02-19 15:45               ` Richard Stallman
2008-02-19 21:35                 ` Stefan Monnier
2008-02-20  3:23                 ` Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='009701c874bf$5ebf9ad0$0600a8c0@us.oracle.com' \
    --to=drew.adams@oracle.com \
    --cc=bzg@altern.org \
    --cc=emacs-pretest-bug@gnu.org \
    --cc=juri@jurta.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).