unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Info-build-node-completions has an extra `*' node
@ 2008-02-17 22:25 Drew Adams
  2008-02-17 22:34 ` Drew Adams
  0 siblings, 1 reply; 23+ messages in thread
From: Drew Adams @ 2008-02-17 22:25 UTC (permalink / raw)
  To: emacs-pretest-bug

emacs -Q
Go to an Info manual, or even the top level (dir).
Use Info-goto-node, choosing the completion candidate `*'.
The current node stays current, but now the node name in the mode line etc.
is `*'.
 
IMO, `*' should not be one of the available completion candidates.
 
`*' gets added by `Info-build-node-completions'. It seems to have only
an internal purpose, and it should be removed from the final set of
completions.

 
In GNU Emacs 22.1.90.1 (i386-mingw-nt5.1.2600)
 of 2008-01-30 on PRETEST
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --cflags -Ic:/gnuwin32/include'
 





^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  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
  0 siblings, 2 replies; 23+ messages in thread
From: Drew Adams @ 2008-02-17 22:34 UTC (permalink / raw)
  To: emacs-pretest-bug

 
> emacs -Q
> Go to an Info manual, or even the top level (dir).
> Use Info-goto-node, choosing the completion candidate `*'.
> The current node stays current, but now the node name in the 
> mode line etc.
> is `*'.
>  
> IMO, `*' should not be one of the available completion candidates.
>  
> `*' gets added by `Info-build-node-completions'. It seems to have only
> an internal purpose, and it should be removed from the final set of
> completions.
> 
> In GNU Emacs 22.1.90.1 (i386-mingw-nt5.1.2600)
>  of 2008-01-30 on PRETEST
> Windowing system distributor `Microsoft Corp.', version 5.1.2600
> configured using `configure --with-gcc (3.4) --cflags 
> -Ic:/gnuwin32/include'

I should have added that after you do `Info-goto-node *' the Info buffer is
widened, so you see all of the node headers in raw form. So this is a worse
bug than simply allowing an extra `*' completion that doesn't do anything
except mess up the mode line.





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-17 22:34 ` Drew Adams
@ 2008-02-17 23:05   ` Bastien
  2008-02-17 23:22   ` Juri Linkov
  1 sibling, 0 replies; 23+ messages in thread
From: Bastien @ 2008-02-17 23:05 UTC (permalink / raw)
  To: Drew Adams; +Cc: emacs-pretest-bug

[-- Attachment #1: Type: text/plain, Size: 649 bytes --]

"Drew Adams" <drew.adams@oracle.com> writes:

>  
>> emacs -Q
>> Go to an Info manual, or even the top level (dir).
>> Use Info-goto-node, choosing the completion candidate `*'.
>> The current node stays current, but now the node name in the 
>> mode line etc.
>> is `*'.
>>  
>> IMO, `*' should not be one of the available completion candidates.

Agreed.

>> `*' gets added by `Info-build-node-completions'. It seems to have only
>> an internal purpose, and it should be removed from the final set of
>> completions.

I don't even understand the internal purpose of this.  Unless someone
tells me this patch is wrong, I will apply it in one week.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: info.el.patch --]
[-- Type: text/x-diff, Size: 399 bytes --]

--- info.el.~1.512.~	2008-02-11 03:19:40.000000000 +0000
+++ info.el	2008-02-17 22:55:01.000000000 +0000
@@ -1592,7 +1592,7 @@
 		      (setq compl
 			    (cons (list (match-string-no-properties 1))
 				  compl))))))))
-	(setq compl (cons '("*") compl))
+	;; (setq compl (cons '("*") compl))
 	(set (make-local-variable 'Info-current-file-completions) compl))))
 \f
 (defun Info-restore-point (hl)

[-- Attachment #3: Type: text/plain, Size: 516 bytes --]


>> In GNU Emacs 22.1.90.1 (i386-mingw-nt5.1.2600)
>>  of 2008-01-30 on PRETEST
>> Windowing system distributor `Microsoft Corp.', version 5.1.2600
>> configured using `configure --with-gcc (3.4) --cflags 
>> -Ic:/gnuwin32/include'
>
> I should have added that after you do `Info-goto-node *' the Info buffer is
> widened, so you see all of the node headers in raw form. 

I don't really see this.  Can you check again?  Or send an example of
the raw headers that you see?  Does my patch also fix this?

-- 
Bastien

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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:02     ` Drew Adams
  1 sibling, 2 replies; 23+ messages in thread
From: Juri Linkov @ 2008-02-17 23:22 UTC (permalink / raw)
  To: Drew Adams; +Cc: emacs-pretest-bug

> I should have added that after you do `Info-goto-node *' the Info buffer is
> widened, so you see all of the node headers in raw form. So this is a worse
> bug than simply allowing an extra `*' completion that doesn't do anything
> except mess up the mode line.

How funny that you thought this feature is a bug :)

Please read the Info manual at (info "(info) Go to node") that says:

     The node name `*' specifies the whole file.  So you can look at all
  of the current file by typing `g*<RET>' or all of any other file with
  `g(FILENAME)*<RET>'.

-- 
Juri Linkov
http://www.jurta.org/emacs/




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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:02     ` Drew Adams
  1 sibling, 1 reply; 23+ messages in thread
From: Bastien Guerry @ 2008-02-17 23:53 UTC (permalink / raw)
  To: Juri Linkov; +Cc: emacs-pretest-bug, Drew Adams

Juri Linkov <juri@jurta.org> writes:

>> I should have added that after you do `Info-goto-node *' the Info buffer is
>> widened, so you see all of the node headers in raw form. So this is a worse
>> bug than simply allowing an extra `*' completion that doesn't do anything
>> except mess up the mode line.
>
> How funny that you thought this feature is a bug :)
>
> Please read the Info manual at (info "(info) Go to node") that says:
>
>      The node name `*' specifies the whole file.  So you can look at all
>   of the current file by typing `g*<RET>' or all of any other file with
>   `g(FILENAME)*<RET>'.

I was also confused.  

When you hit `g' in the (dir) Top node, the completion only offers
"*" and "Top: this is the top of the info tree", both not being very
useful as they nearly don't change what is displayed here.

I would prefer the completion to list the possible file names as it
lists the possible node names in a normal Info node, without the need 
to enter a parenthesis first.  

As for the (file)* feature, I didn't know it, and would be surprised
that many people find it very useful.  But it's a separate issue than
the point about completion in the (dir) Top info buffer.
 
-- 
Bastien




^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  2008-02-17 23:22   ` Juri Linkov
  2008-02-17 23:53     ` Bastien Guerry
@ 2008-02-18  0:02     ` Drew Adams
  2008-02-18  0:29       ` Juri Linkov
  1 sibling, 1 reply; 23+ messages in thread
From: Drew Adams @ 2008-02-18  0:02 UTC (permalink / raw)
  To: 'Juri Linkov'; +Cc: emacs-pretest-bug

> > I should have added that after you do `Info-goto-node *' 
> > the Info buffer is widened, so you see all of the node headers
> > in raw form. So this is a worse bug than simply allowing an
> > extra `*' completion that doesn't do anything
> > except mess up the mode line.
> 
> How funny that you thought this feature is a bug :)

Dunno if "funny" is the right word. How is this a feature? ;-)

> Please read the Info manual at (info "(info) Go to node") that says:
> 
>      The node name `*' specifies the whole file.  So you can 
>      look at all of the current file by typing `g*<RET>' or
>      all of any other file with `g(FILENAME)*<RET>'.

I see. Guess I haven't read the Info manual in a long time. Out of
curiosity, why was this feature added? What is the need that it satisfies?

And why is only `*' written in the mode line as the node name, rather than,
say, `*** All Nodes ***' or `*** Whole Manual ***' (the `***' or something
similar indicating that this is not just a node name). I'm afraid that `*'
is not very noticeable in the mode line. There are already other `*' there,
so you see, for example, `*info* (emacs) *'. 

And it is not immediately obvious that the entire manual is in fact visible.
I thought that it had just revisited the current node, until I scrolled a
bit and noticed that from the node headers that it was widened.

Someone falling into this state by accident might well get confused, IMO.
And `*' is the first completion candidate listed in *Completions*. 

It might seem cute that `*' is the name for this pseudo-node (a wildcard,
presumably), but the behavior and meaning are not obvious. Why `go to node'
would have an alternative action of `show all nodes' is not clear to me -
why associate this behavior with `Info-goto-node'? I suppose you'll say that
that's what we do for wildcards with `find-file'.

It's also not obvious how to get out of this view-whole-raw-info-file mode,
once you fall into the black hole. Things like `C-l' and `u' (Node has no
Up) don't help.

It turns out that using `g' again, and picking some real node name this
time, will restore Info to its normal self (whew!). There might be
additional ways to get back to normal; I don't know.

But I don't think it is obvious, and I do think it is potentially confusing.
At the very least, a message should inform the user: (a) what has happened,
and (b) how to get back to normal.

Interesting to know, at least...  On n'arrete pas le progres.






^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-17 23:53     ` Bastien Guerry
@ 2008-02-18  0:27       ` Juri Linkov
  2008-02-18  0:56         ` Bastien Guerry
  0 siblings, 1 reply; 23+ messages in thread
From: Juri Linkov @ 2008-02-18  0:27 UTC (permalink / raw)
  To: Bastien Guerry; +Cc: emacs-pretest-bug, Drew Adams

> I would prefer the completion to list the possible file names as it
> lists the possible node names in a normal Info node, without the need
> to enter a parenthesis first.

This would break the standard format of the node name `(FILE)NODE'.

`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.)
And according to this format a file name should be inside parenthesis,
so completion for the file name after parenthesis is more correct.

-- 
Juri Linkov
http://www.jurta.org/emacs/




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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
  0 siblings, 2 replies; 23+ messages in thread
From: Juri Linkov @ 2008-02-18  0:29 UTC (permalink / raw)
  To: Drew Adams; +Cc: emacs-pretest-bug

>> Please read the Info manual at (info "(info) Go to node") that says:
>>
>>      The node name `*' specifies the whole file.  So you can
>>      look at all of the current file by typing `g*<RET>' or
>>      all of any other file with `g(FILENAME)*<RET>'.
>
> I see. Guess I haven't read the Info manual in a long time. Out of
> curiosity, why was this feature added? What is the need that it satisfies?

This feature is from prehistoric times.  It was already in the revision 1.1.

> And why is only `*' written in the mode line as the node name, rather than,
> say, `*** All Nodes ***' or `*** Whole Manual ***' (the `***' or something
> similar indicating that this is not just a node name). I'm afraid that `*'
> is not very noticeable in the mode line. There are already other `*' there,
> so you see, for example, `*info* (emacs) *'.

I guess that's because the name displayed in the mode line should be the
same as provided in the completion for consistency.

> And it is not immediately obvious that the entire manual is in fact visible.
> I thought that it had just revisited the current node, until I scrolled a
> bit and noticed that from the node headers that it was widened.
>
> Someone falling into this state by accident might well get confused, IMO.
> And `*' is the first completion candidate listed in *Completions*.

Maybe we should add an explanation text to the completion candidate like
e.g. `* (all nodes)'.  And accept also `*' but don't display it in the
completion list.

> It might seem cute that `*' is the name for this pseudo-node (a wildcard,
> presumably), but the behavior and meaning are not obvious. Why `go to node'
> would have an alternative action of `show all nodes' is not clear to me -
> why associate this behavior with `Info-goto-node'? I suppose you'll say that
> that's what we do for wildcards with `find-file'.

Yes, this looks like wildcards.

> It's also not obvious how to get out of this view-whole-raw-info-file mode,
> once you fall into the black hole. Things like `C-l' and `u' (Node has no
> Up) don't help.
>
> It turns out that using `g' again, and picking some real node name this
> time, will restore Info to its normal self (whew!). There might be
> additional ways to get back to normal; I don't know.
>
> But I don't think it is obvious, and I do think it is potentially confusing.
> At the very least, a message should inform the user: (a) what has happened,
> and (b) how to get back to normal.

Displaying something like `all nodes' in the mode line would inform about
what has happened, but I have no idea how it could inform how to get back.

-- 
Juri Linkov
http://www.jurta.org/emacs/




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  0:29       ` Juri Linkov
@ 2008-02-18  0:54         ` Bastien Guerry
  2008-02-18  1:27         ` Drew Adams
  1 sibling, 0 replies; 23+ messages in thread
From: Bastien Guerry @ 2008-02-18  0:54 UTC (permalink / raw)
  To: Juri Linkov; +Cc: emacs-pretest-bug, Drew Adams

Juri Linkov <juri@jurta.org> writes:

>> I thought that it had just revisited the current node, until I scrolled a
>> bit and noticed that from the node headers that it was widened.
>>
>> Someone falling into this state by accident might well get confused, IMO.
>> And `*' is the first completion candidate listed in *Completions*.
>
> Maybe we should add an explanation text to the completion candidate like
> e.g. `* (all nodes)'.  And accept also `*' but don't display it in the
> completion list.

Yes, this would be useful.

-- 
Bastien




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  0:27       ` Juri Linkov
@ 2008-02-18  0:56         ` Bastien Guerry
  2008-02-18 23:54           ` Juri Linkov
  0 siblings, 1 reply; 23+ messages in thread
From: Bastien Guerry @ 2008-02-18  0:56 UTC (permalink / raw)
  To: Juri Linkov; +Cc: emacs-pretest-bug, Drew Adams

Juri Linkov <juri@jurta.org> writes:

>> I would prefer the completion to list the possible file names as it
>> lists the possible node names in a normal Info node, without the need
>> to enter a parenthesis first.
>
> This would break the standard format of the node name `(FILE)NODE'.
>
> `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.)
> And according to this format a file name should be inside parenthesis,
> so completion for the file name after parenthesis is more correct.

What about putting an opening parenthesis in the default list of
completion for the (dir) buffer?  For now the opening parenthesis is
like a secret key for those who know that the list of visible items 
only reflects files, not real nodes.

-- 
Bastien




^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  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 17:31           ` Richard Stallman
  1 sibling, 2 replies; 23+ messages in thread
From: Drew Adams @ 2008-02-18  1:27 UTC (permalink / raw)
  To: 'Juri Linkov'; +Cc: emacs-pretest-bug

> >> Please read the Info manual at (info "(info) Go to node") 
> >> that says:
> >>
> >>      The node name `*' specifies the whole file.  So you can
> >>      look at all of the current file by typing `g*<RET>' or
> >>      all of any other file with `g(FILENAME)*<RET>'.
> >
> > I see. Guess I haven't read the Info manual in a long time. Out of
> > curiosity, why was this feature added? What is the need 
> > that it satisfies?
> 
> This feature is from prehistoric times.  It was already in 
> the revision 1.1.

Prehistoric? I see that it is in Emacs 21 (which I skipped), but it is not
in Emacs 20, whose last revision is also from the 21st century. Hardly
pterodactyl-like.

Anyway, I still question this feature, regardless of what geological epoque
it belongs to. You didn't reply to my question wrt what need this is
supposed to satisfy. Why is this useful?

> > And why is only `*' written in the mode line as the node 
> > name, rather than, say, `*** All Nodes ***' or `*** Whole
> > Manual ***' (the `***' or something similar indicating that
> > this is not just a node name). I'm afraid that `*'
> > is not very noticeable in the mode line. There are already 
> > other `*' there, so you see, for example, `*info* (emacs) *'.
> 
> I guess that's because the name displayed in the mode line 
> should be the same as provided in the completion for consistency.

For consistency, go to node should, well, go to a node, not show all of the
manual. ;-)  The consistency you describe doesn't help the user, IMO.

> > And it is not immediately obvious that the entire manual is 
> > in fact visible. I thought that it had just revisited the
> > current node, until I scrolled a bit and noticed that from
> > the node headers that it was widened.
> >
> > Someone falling into this state by accident might well get 
> > confused, IMO. And `*' is the first completion candidate
> > listed in *Completions*.
> 
> Maybe we should add an explanation text to the completion 
> candidate like e.g. `* (all nodes)'.  And accept also `*'
> but don't display it in the completion list.

So much for consistency.

Anyway, I agree that both the completion candidate and the mode-line
indication should be something other than just `*'. And completion with
REQUIRE-MATCH = t will cause input of just `* RET' to complete to `* (all
nodes)' and exit.

> > It might seem cute that `*' is the name for this pseudo-node
> > (a wildcard, presumably), but the behavior and meaning are 
> > not obvious. Why `go to node' would have an alternative
> > action of `show all nodes' is not clear to me -
> > why associate this behavior with `Info-goto-node'? 
> > I suppose you'll say that that's what we do for wildcards
> > with `find-file'.
> 
> Yes, this looks like wildcards.
> 
> > It's also not obvious how to get out of this 
> > view-whole-raw-info-file mode, once you fall into the
> > black hole. Things like `C-l' and `u' (Node has no Up)
> > don't help.
> >
> > It turns out that using `g' again, and picking some real 
> > node name this time, will restore Info to its normal self
> > (whew!). There might be additional ways to get back to
> > normal; I don't know.
> >
> > But I don't think it is obvious, and I do think it is 
> > potentially confusing. At the very least, a message
> > should inform the user: (a) what has happened,
> > and (b) how to get back to normal.
> 
> Displaying something like `all nodes' in the mode line would 
> inform about what has happened,

Not completely. It says nothing about (1) your seeing a raw Info file and
(2) node navigational commands no longer working (because the cursor is not
considered to be in any node, no matter where it is: Node has no Next, Node
has no Up, etc.)

IOW, this is only marginally Info node; it is really a different beast.

BTW, I discovered another (better) way to get back to normal: `l'.

> but I have no idea how it could inform how to get back.

A message, at least. Something like "Showing all nodes. Use `l' to return to
last node."

But first things first. What is the rationale for this? Does it really
fulfill a need? If not, let's just get rid of it, to avoid unnecessary
confusion.






^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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 23:55             ` Juri Linkov
  2008-02-18 17:31           ` Richard Stallman
  1 sibling, 2 replies; 23+ messages in thread
From: Miles Bader @ 2008-02-18  3:37 UTC (permalink / raw)
  To: Drew Adams; +Cc: 'Juri Linkov', emacs-pretest-bug

"Drew Adams" <drew.adams@oracle.com> writes:
> But first things first. What is the rationale for this? Does it really
> fulfill a need? If not, let's just get rid of it, to avoid unnecessary
> confusion.

I agree.

Seeing the raw info file as a result of goto-node is pretty odd,
unlikely to be very useful for most people (especially now that info
does inter-node search very naturally with normal isearch), and fairly
likely to confuse those who stumble upon this "feature" by accident.

Are there people that use this feature regularly?

-Miles

-- 
/\ /\
(^.^)
(")")
*This is the cute kitty virus, please copy this into your sig so it can spread.




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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
  1 sibling, 1 reply; 23+ messages in thread
From: David De La Harpe Golden @ 2008-02-18  4:12 UTC (permalink / raw)
  To: Miles Bader; +Cc: Juri Linkov, emacs-pretest-bug, Drew Adams

On 18/02/2008, Miles Bader <miles.bader@necel.com> wrote:
> "Drew Adams" <drew.adams@oracle.com> writes:
> > But first things first. What is the rationale for this? Does it really
> > fulfill a need? If not, let's just get rid of it, to avoid unnecessary
> > confusion.
>
> I agree.
>
> Seeing the raw info file as a result of goto-node is pretty odd,
> unlikely to be very useful for most people (especially now that info
> does inter-node search very naturally with normal isearch), and fairly
> likely to confuse those who stumble upon this "feature" by accident.
>

Also, how does it differ from C-x n w widening the info buffer?

Ideally, I suppose an "all nodes" thing would show all nodes, but
still prettied for viewing, something like a "view docs as one big
HTML" translated web page, maybe with info commands working relative
to the node the point is in, and that would be the difference, but it
seems that g * is  very similar to just turning off narrow at the
moment.




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  4:12             ` David De La Harpe Golden
@ 2008-02-18 11:56               ` Bastien Guerry
  0 siblings, 0 replies; 23+ messages in thread
From: Bastien Guerry @ 2008-02-18 11:56 UTC (permalink / raw)
  To: David De La Harpe Golden
  Cc: Juri Linkov, emacs-pretest-bug, Drew Adams, Miles Bader

"David De La Harpe Golden" <david.delaharpe.golden@gmail.com> writes:

> On 18/02/2008, Miles Bader <miles.bader@necel.com> wrote:
>> "Drew Adams" <drew.adams@oracle.com> writes:
>> > But first things first. What is the rationale for this? Does it really
>> > fulfill a need? If not, let's just get rid of it, to avoid unnecessary
>> > confusion.
>>
>> I agree.
>>
>> Seeing the raw info file as a result of goto-node is pretty odd,
>> unlikely to be very useful for most people (especially now that info
>> does inter-node search very naturally with normal isearch), and fairly
>> likely to confuse those who stumble upon this "feature" by accident.
>
> Also, how does it differ from C-x n w widening the info buffer?

It doesn't.  

I suggest we get rid of this "feature".

> Ideally, I suppose an "all nodes" thing would show all nodes, but
> still prettied for viewing, something like a "view docs as one big
> HTML" translated web page, maybe with info commands working relative
> to the node the point is in, and that would be the difference, but it
> seems that g * is  very similar to just turning off narrow at the
> moment.

Someone could work on this later. 
I guess it would be useful, especially for small info manuals. 

-- 
Bastien




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  1:27         ` Drew Adams
  2008-02-18  3:37           ` Miles Bader
@ 2008-02-18 17:31           ` Richard Stallman
  2008-02-18 17:40             ` Drew Adams
  1 sibling, 1 reply; 23+ messages in thread
From: Richard Stallman @ 2008-02-18 17:31 UTC (permalink / raw)
  To: Drew Adams; +Cc: juri, emacs-pretest-bug

    > This feature is from prehistoric times.  It was already in 
    > the revision 1.1.

    Prehistoric? I see that it is in Emacs 21 (which I skipped), but it is not
    in Emacs 20, whose last revision is also from the 21st century. Hardly
    pterodactyl-like.

The * feature has been in Info since the 80s.




^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  2008-02-18 17:31           ` Richard Stallman
@ 2008-02-18 17:40             ` Drew Adams
  2008-02-19 15:45               ` Richard Stallman
  0 siblings, 1 reply; 23+ messages in thread
From: Drew Adams @ 2008-02-18 17:40 UTC (permalink / raw)
  To: rms; +Cc: juri, emacs-pretest-bug

>     > This feature is from prehistoric times.  It was already in 
>     > the revision 1.1.
> 
>     Prehistoric? I see that it is in Emacs 21 (which I skipped),
>     but it is not in Emacs 20, whose last revision is also from
>     the 21st century. Hardly pterodactyl-like.
> 
> The * feature has been in Info since the 80s.

Hmm. Really? I don't see it in my copy of Emacs 20:

 In GNU Emacs 20.7.3 (i386-*-nt5.1.2600)
  of Thu Dec 21 2000 on buffy
 configured using `configure NT'

It doesn't show up in *Completions*, and if I type `g * RET' it says [No
match].





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  0:56         ` Bastien Guerry
@ 2008-02-18 23:54           ` Juri Linkov
  2008-02-19  0:48             ` Bastien
  0 siblings, 1 reply; 23+ messages in thread
From: Juri Linkov @ 2008-02-18 23:54 UTC (permalink / raw)
  To: Bastien Guerry; +Cc: emacs-pretest-bug, Drew Adams

>>> I would prefer the completion to list the possible file names as it
>>> lists the possible node names in a normal Info node, without the need
>>> to enter a parenthesis first.
>>
>> This would break the standard format of the node name `(FILE)NODE'.
>>
>> `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.)
>> And according to this format a file name should be inside parenthesis,
>> so completion for the file name after parenthesis is more correct.
>
> What about putting an opening parenthesis in the default list of
> completion for the (dir) buffer?  For now the opening parenthesis is
> like a secret key for those who know that the list of visible items
> only reflects files, not real nodes.

Why would someone normally want a completion on Info file names instead of
Info manual names with typing `m TAB'?

-- 
Juri Linkov
http://www.jurta.org/emacs/




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18  3:37           ` Miles Bader
  2008-02-18  4:12             ` David De La Harpe Golden
@ 2008-02-18 23:55             ` Juri Linkov
  1 sibling, 0 replies; 23+ messages in thread
From: Juri Linkov @ 2008-02-18 23:55 UTC (permalink / raw)
  To: Miles Bader; +Cc: emacs-pretest-bug, Drew Adams

>> But first things first. What is the rationale for this? Does it really
>> fulfill a need? If not, let's just get rid of it, to avoid unnecessary
>> confusion.
>
> I agree.
>
> Seeing the raw info file as a result of goto-node is pretty odd,
> unlikely to be very useful for most people (especially now that info
> does inter-node search very naturally with normal isearch), and fairly
> likely to confuse those who stumble upon this "feature" by accident.
>
> Are there people that use this feature regularly?

I discovered this feature after reading the Info documentation but never
used it.  However, I see it could be useful when done right, i.e. if all
inter-node navigation worked even on a multi-node buffer (so `u' inside
one node moves point to the position of the beginning of its parent node
in the same buffer with all nodes, etc.)

-- 
Juri Linkov
http://www.jurta.org/emacs/




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-18 23:54           ` Juri Linkov
@ 2008-02-19  0:48             ` Bastien
  2008-02-21 19:24               ` Drew Adams
  0 siblings, 1 reply; 23+ messages in thread
From: Bastien @ 2008-02-19  0:48 UTC (permalink / raw)
  To: Juri Linkov; +Cc: emacs-pretest-bug, Drew Adams

Juri Linkov <juri@jurta.org> writes:

>>>> I would prefer the completion to list the possible file names as it
>>>> lists the possible node names in a normal Info node, without the need
>>>> to enter a parenthesis first.
>>>
>>> This would break the standard format of the node name `(FILE)NODE'.
>>>
>>> `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.)
>>> And according to this format a file name should be inside parenthesis,
>>> so completion for the file name after parenthesis is more correct.
>>
>> What about putting an opening parenthesis in the default list of
>> completion for the (dir) buffer?  For now the opening parenthesis is
>> like a secret key for those who know that the list of visible items
>> only reflects files, not real nodes.
>
> 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.

But maybe I don't know info.el enough and I miss something.

-- 
Bastien




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  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
  0 siblings, 2 replies; 23+ messages in thread
From: Richard Stallman @ 2008-02-19 15:45 UTC (permalink / raw)
  To: Drew Adams; +Cc: juri, emacs-pretest-bug

    Hmm. Really? I don't see it in my copy of Emacs 20:

     In GNU Emacs 20.7.3 (i386-*-nt5.1.2600)
      of Thu Dec 21 2000 on buffy
     configured using `configure NT'

    It doesn't show up in *Completions*, and if I type `g * RET' it says [No
    match].

That surprises me, since I recall this feature is very old.
I think it goes back to PDP10 Emacs.

Perhaps it was broken or missing from GNU Emacs for a while.





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: Info-build-node-completions has an extra `*' node
  2008-02-19 15:45               ` Richard Stallman
@ 2008-02-19 21:35                 ` Stefan Monnier
  2008-02-20  3:23                 ` Drew Adams
  1 sibling, 0 replies; 23+ messages in thread
From: Stefan Monnier @ 2008-02-19 21:35 UTC (permalink / raw)
  To: rms; +Cc: juri, emacs-pretest-bug, Drew Adams

>     Hmm. Really? I don't see it in my copy of Emacs 20:
>      In GNU Emacs 20.7.3 (i386-*-nt5.1.2600)
>       of Thu Dec 21 2000 on buffy
>      configured using `configure NT'

>     It doesn't show up in *Completions*, and if I type `g * RET' it says [No
>     match].

> That surprises me, since I recall this feature is very old.
> I think it goes back to PDP10 Emacs.

> Perhaps it was broken or missing from GNU Emacs for a while.

I don't have a Emacs-20 at hand to try it out, but if it was broken in
Emacs-20, then it seems like nobody uses it because noone complained
about it.

Also currently the feature is broken in the sense that most Info
commands just signal an error because they can't find the data they want
at (point-min).


        Stefan




^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  2008-02-19 15:45               ` Richard Stallman
  2008-02-19 21:35                 ` Stefan Monnier
@ 2008-02-20  3:23                 ` Drew Adams
  1 sibling, 0 replies; 23+ messages in thread
From: Drew Adams @ 2008-02-20  3:23 UTC (permalink / raw)
  To: rms; +Cc: juri, emacs-pretest-bug

>     Hmm. Really? I don't see it in my copy of Emacs 20:
> 
>      In GNU Emacs 20.7.3 (i386-*-nt5.1.2600)
>       of Thu Dec 21 2000 on buffy
>      configured using `configure NT'
> 
>     It doesn't show up in *Completions*, and if I type `g * 
>     RET' it says [No match].
> 
> That surprises me, since I recall this feature is very old.
> I think it goes back to PDP10 Emacs.
> 
> Perhaps it was broken or missing from GNU Emacs for a while.

Maybe so. It's not in my vanilla Emacs 20.7, in any case. I don't recall
seeing it in Emacs 18 or 19, but perhaps I just didn't notice it.





^ permalink raw reply	[flat|nested] 23+ messages in thread

* RE: Info-build-node-completions has an extra `*' node
  2008-02-19  0:48             ` Bastien
@ 2008-02-21 19:24               ` Drew Adams
  0 siblings, 0 replies; 23+ messages in thread
From: Drew Adams @ 2008-02-21 19:24 UTC (permalink / raw)
  To: 'Bastien', 'Juri Linkov'; +Cc: emacs-pretest-bug

> 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






^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2008-02-21 19:24 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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
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

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).