Subject: RE: bug#16292: 24.3.50; info docs now contain single straight quotes instead of `'

From: Drew Adams <[email-masked]>
Date: Fri, 2 May 2014 12:20:38 -0700 (PDT)

> > AFAIK, there is no way, from Emacs Lisp, to know whether an Info
> > file has been built to use '...' or `...'.  Is that correct?
> 
> Why not?  they are just characters.

Huh?  Yes, they are characters.  And how would you determine
whether '...' or `...' quoting of names is in effect in a given
Info buffer?

You might be able to check whether, say, the Emacs manual has
'...' or `...' by moving to a particular node where you expect
a particular symbol to be quoted (and that you expect to remain
present across Emacs versions), and move to that symbol and test
the char before it...  But that would be an ugly and inefficient
workaround, and different manuals might be built using different
makeinfo versions etc.

I'm asking for a simple check.  Maybe a file-local variable or
something.

> > IIUC, at Info build time there is a setting, @documentencoding,
> > that determines this.
> 
> No, these are ASCII characters, so @documentencoding has nothing
> to do with it.  But the version of makeinfo does: the latest
> versions produce '...'.

I thought, from this thread, that builds could control whether
'...' or `...' gets used.  Is that not the case?  And I
(mistakenly) thought that @documentencoding was involved with that.

If '...' is used systematically from now on, starting with some
version of makeinfo, then that is indeed bad news.
'...' is absolutely inferior to `...', IMHO.

> > Request: Could we please have this information transmitted to
> > the resulting Info files somehow, so that it could be obtained
> > by Lisp code?
> 
> It is already there:
>   This is ../../info/emacs.info, produced by makeinfo version 4.13
>   from ./emacs.texi.
> If the version is 5.x, then you should expect '...'.

Yes, at the beginning of the file, outside of what is visible
in the manual, i.e., in Info mode.

I want something simple, evaluable from Info mode.  I don't want
to have to widen the buffer or change the mode or jump through
any other hoops.  A function or a variable whose value lets
Lisp code know whether `...' or '...' quoting is in effect.

> Note that you could also have Unicode characters there.

Where is "there"?  How does that relate to this quoting?
Are you perhaps referring to a possible use of curly quotes
for such quoting?  That would indeed be bad (from my point of
view).

> It's a mess.

Perhaps we agree, for once, though we might not agree about
what the mess is; dunno.