all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Invisible colons in Emacs Info.
@ 2003-06-25  2:34 Luc Teirlinck
  2003-06-25  2:45 ` Luc Teirlinck
  2003-06-25 17:52 ` Stefan Monnier
  0 siblings, 2 replies; 37+ messages in thread
From: Luc Teirlinck @ 2003-06-25  2:34 UTC (permalink / raw)
  Cc: karl

I believe that the colons after menu subtopic names should be made
visible again.

The reasons are:

1.  Subtopic names "ending in a colon".  To be concrete, say "$Id:",
    well known from RCS.  One can not really use the name "$Id:",
    because the extra colon that is automatically added will make it
    "$Id::" and obvious trouble ensues.  So what one would like to do
    is name it "$Id" and rely on the extra colon to make things "look
    right".  Unfortunately, the extra colon is hidden by default and
    things do not look right.  The trick works in indices, because
    there the extra colon is not hidden.

2.  Consistency with indices.  The colon is shown in indices, but not
    in other menus.  Why the difference?

3.  Avoid confusion when people try commands such as M-x man and the
    like on menu subtopic names.

Does that colon really look that hideous?

Sincerely,

Luc.

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-06-25 19:58 Karl Berry
  2003-06-25 20:12 ` Luc Teirlinck
  0 siblings, 1 reply; 37+ messages in thread
From: Karl Berry @ 2003-06-25 19:58 UTC (permalink / raw)
  Cc: emacs-devel

    In nornal menus, things look like:
            * menu:entry.		description.

    whereas in indices, the description is missing and things look like:
            * menu:			entry.

Indexes are completely normal menus.  There is nothing to stop a user
from doing something like
@menu
* Foo:          bar.
@end menu

    * menu:entry.                description.
    will yield an error.

That's a bug.  There can be any number of spaces after the colon
in the menu:entry form, including zero.

    support colons in the middle of menu subtopic names.

That just can't be done right now.  A new syntax for quoting node names
has to be introduced to fix it, kludging with whitespace won't solve the
problem.  As we've discussed before.  This won't be happening for Emacs 21.4.

    blame me if you disagree) very much want to support entries like:
    * menu:entry:  entry.       description.

To what end?  I mean, what are the real examples that are hoped to be
supported?  This is new Info syntax, as far as I know.  If makeinfo
doesn't complain about it, it probably should.

I don't understand even this skeletal example.  Surely the point here is
not to repeat the node name `entry', that wouldn't be useful.  

As far as I know, there are exactly two valid menu formats.  From the
Menu Example node in the Texinfo manual:

    @menu
    * menu entry name: Node name.   A short description.
    * Node name::                   This form is preferred.
    @end menu

  This produces:

    * menu:

    * menu entry name: Node name.   A short description.
    * Node name::                   This form is preferred.

That's it.  It covers regular menus, indexes, and dir entries.  All have
the same syntax.  You can't just randomly decide to do new stuff with
colons, periods, parens, etc. in menu entries without breaking many
existing documents/installations.

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-06-25 20:00 Karl Berry
  0 siblings, 0 replies; 37+ messages in thread
From: Karl Berry @ 2003-06-25 20:00 UTC (permalink / raw)
  Cc: emacs-devel

    Note also that

    * menu:entry.

    might look bad for people 

What looks bad is one question.  What's a valid Info file is quite a
different question, and as far as I know zero spaces has always been
valid in that context, and we can't just declare it invalid all of a
sudden.

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-06-25 21:04 Karl Berry
  0 siblings, 0 replies; 37+ messages in thread
From: Karl Berry @ 2003-06-25 21:04 UTC (permalink / raw)
  Cc: emacs-devel

    ;;  - a menu item MAY contain colons but not colon-space ": "
    ;;  - a menu item ending with ": " (but not ":: ") is an index entry
    ;;  - a node name MAY NOT contain a colon

Sigh, this is so confusing.

What does `menu item' mean?  Because the Emacs manual, for example,
contains many menu items like this:
basic.texi:24:* Files: Basic Files.   Visiting, creating, and saving files.

That's a menu item with colon-space in it, and we certainly can't
declare it invalid.  Does it still work with the current code?

I assume it does, and what `menu item' means is `menu entry name', as in
the canonical example:
* menu entry name: Node name.   A short description.

    ;; This distinction is to support indexing of computer programming
    ;; language terms that may contain ":" but not ": ".

Obviously we want to support this, but it seems to me the best way to do
it is by introducing a real quoting syntax instead of putting more
restrictions on menu item syntax.  (Which will then allow us
support lots of other good things, like : and . in node names after
all.)  But see below ...

    I thought I understood from previous messages that you "agreed to
    disagree" with people who held the views expressed above.  (Or am I
    completely misunderstanding things?)

No, you're not misunderstanding, that's basically what I said before,
but then it sounded like a lot more things were becoming invalid than I
thought before.

I'm still not completely clear on it, but it seems now that the only
thing that is becoming invalid is your example of

* menu entry name:node name.
(with zero spaces after the menu entry name:).

Upon reflection, I guess that seems ok to me. I just checked all the
Texinfo source files on my system and the only ones which would fail are
all part of XEmacs (lookup-guide.tex, lookup.texi, and sml-mode.texi),
which have entries like this:
/usr/share/xemacs/mule-packages/man/lookup/lookup.texi:* ndeb+/cdrom:WAEI    ^[$BOB1Q<-E5^[(B             =<>
/usr/share/xemacs/xemacs-packages/man/sml-mode/sml-mode.texi:* sml:(sml-mode).  Emacs mode for editing SML

I guess I should implement a warning (at least) in makeinfo for this,
and document it in the manual.  It would be good to implement it in
standalone Info too, of course, but that is not as important to me.

The other thing I agreed to was that makeinfo will always output at
least one space between `menu entry name:' and `node name.' in indexes.
That's no problem and is already the case.

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-07-01  0:03 Karl Berry
  2003-07-01  0:31 ` Luc Teirlinck
  2003-07-04  0:12 ` Stefan Monnier
  0 siblings, 2 replies; 37+ messages in thread
From: Karl Berry @ 2003-07-01  0:03 UTC (permalink / raw)
  Cc: emacs-devel

    ... situation for menu subtopic names is the following:
    1.  They can contain colons, but not colons followed by a space.
    2.  There must be at least one space separating the subtopic name and
        the node name.

I think this is ok, because there are few manuals which lack a space
between a subtopic and node name.  As I said, the only ones I could find
were a few of the xemacs subsidiary manuals.  We should inform their
authors.

    Some, like Karl, would prefer not to allow colons at all until a new

Well, I think the rule above is ok.  The benefit, of allowing colons in
subtopic names, is worthwhile enough that I don't mind the additional
complexity, since the real fix is not on the horizon.

    Stefan and Karl pointed out that condition 2 used not to be necessary

And condition 1 did not obtain; colons were not allowed.

    If we want 1.  but not 2. then things become much more complicated and
    precise specs would need to be agreed upon.

1-but-not-2 requires the "real fix" or "better solution" or whatever you
want to call it, as far as I can tell.  (Quoting syntax.)

   Problem is that it still fails on:

      * name1:foo:node.           des:cription.

   because it thinks the menu entry name is "name1:foo:node.           des"
   and the node name is "cription".  I'm sure we can tune the disambiguation
   by saying that menu entries can have `:' but cannot have `.' after the `:'
   or some other such heuristic.  

Huh?  According to the rule above, the above is invalid because it lacks
a space, right?  It would have to be written as:

Name1:foo: node.  des:description.

I don't like the idea of trying to allow subtopic names to be followed
by :<nonspace> based on periods.  If that's what you were saying.
It's simpler both to understand and to implement to just require :<space>
as a separator.  Or :<tab>, I suppose.

Ok?

k

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-07-06 22:43 Karl Berry
  2003-07-06 22:58 ` Luc Teirlinck
  0 siblings, 1 reply; 37+ messages in thread
From: Karl Berry @ 2003-07-06 22:43 UTC (permalink / raw)
  Cc: emacs-devel

    Mtools:(mtools).        Mtools:

    a valid subtopic name?

According to what we've discussed, that is invalid because the space
between the : and the ( is missing.  I thought we had all agreed on this?

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: Invisible colons in Emacs Info.
@ 2003-07-06 23:56 Karl Berry
  2003-07-07  0:47 ` Luc Teirlinck
  0 siblings, 1 reply; 37+ messages in thread
From: Karl Berry @ 2003-07-06 23:56 UTC (permalink / raw)
  Cc: emacs-devel

    still recognize some of those old entries (as long as such tweaking does
    not impact valid cases).

Of course that's fine and desirable.

I guess that if there are no other colons or periods in the menu entry
after the first :, it can be unambiguously parsed. (Not counting the ::
form, of course.)  But if there are following colons or periods, then it
seems the space is needed.

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

end of thread, other threads:[~2003-07-08  2:17 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-25  2:34 Invisible colons in Emacs Info Luc Teirlinck
2003-06-25  2:45 ` Luc Teirlinck
2003-06-25 17:52 ` Stefan Monnier
2003-06-25 18:49   ` Luc Teirlinck
2003-06-25 18:56     ` Stefan Monnier
2003-06-25 18:59       ` Luc Teirlinck
2003-06-25 19:04       ` Luc Teirlinck
2003-06-25 19:13       ` Luc Teirlinck
2003-06-25 19:25       ` Luc Teirlinck
2003-06-25 19:58       ` Luc Teirlinck
2003-06-25 21:12   ` Stefan Monnier
2003-06-25 21:26     ` Luc Teirlinck
2003-06-28  0:36     ` Luc Teirlinck
  -- strict thread matches above, loose matches on Subject: below --
2003-06-25 19:58 Karl Berry
2003-06-25 20:12 ` Luc Teirlinck
2003-06-25 20:00 Karl Berry
2003-06-25 21:04 Karl Berry
2003-07-01  0:03 Karl Berry
2003-07-01  0:31 ` Luc Teirlinck
2003-07-04  0:12 ` Stefan Monnier
2003-07-05  3:14   ` Luc Teirlinck
2003-07-05 18:28     ` Robert J. Chassell
2003-07-06 13:49       ` Kim F. Storm
2003-07-06 13:03         ` Robert J. Chassell
2003-07-06 18:17         ` Luc Teirlinck
2003-07-06 18:27         ` Luc Teirlinck
2003-07-06 19:19           ` Luc Teirlinck
2003-07-06 23:38           ` Kim F. Storm
2003-07-05 13:15   ` Luc Teirlinck
2003-07-06 22:43 Karl Berry
2003-07-06 22:58 ` Luc Teirlinck
2003-07-06 23:07   ` Stefan Monnier
2003-07-06 23:42     ` Luc Teirlinck
2003-07-07 14:47       ` Stefan Monnier
2003-07-08  2:17         ` Luc Teirlinck
2003-07-06 23:56 Karl Berry
2003-07-07  0:47 ` Luc Teirlinck

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.