Subject: bug#10134: 24.0.91; Typo, (elisp) `Text from Minibuffer'

From: Eli Zaretskii <[email-masked]>
Date: Sat, 24 Dec 2011 22:38:55 +0200

> From: "Drew Adams" <[email-masked]>
> Cc: <[email-masked]>,
>         "'Christoph Scholtes'" <[email-masked]>
> Date: Sat, 24 Dec 2011 12:00:35 -0800
> 
> > Please look at the file info/elisp-3 you have, and tell me:
> > 
> >   . Do you see the extra newline in that file?
> 
> Yes:
> 
>  -- Variable: minibuffer-local-map
>      This
> 
>      is the default local keymap for reading from the minibuffer.  By
>      default, it makes the following bindings:
> 
>     `C-j'
>           `exit-minibuffer'
> ...
> 
> >   . If you do, what do the first 2 lines of that file say?
> 
> This is ./../../info/elisp, produced by makeinfo version 4.8 from
> ./elisp.texi.

So now everything is clear: this is a bug in Texinfo 4.8 that is fixed
in later versions.  The bug is triggered by this trickery in the
manual's sources:

  @defvar minibuffer-local-map
  This
  @anchor{Definition of minibuffer-local-map}
  @c avoid page break at anchor; work around Texinfo deficiency
  is the default local keymap for reading from the minibuffer.  By
  default, it makes the following bindings:

Evidently, makeinfo 4.8 leaves an empty line where there was the
@anchor.  The @anchor was put in this strange place to make sure the
page break is not inserted in the printed manual, thus making the
cross-references to it point to the wrong page.  I don't know if this
trickery is still needed nowadays.