From: Paul Eggert <eggert@cs.ucla.edu>
To: John Sullivan <johns@fsf.org>
Cc: Emacs development discussions <emacs-devel@gnu.org>
Subject: Re: Fwd: version vs edition numbers in Emacs manuals
Date: Tue, 12 Nov 2019 11:32:00 -0800 [thread overview]
Message-ID: <b153b62c-fbfe-cecb-52f0-a2315d440e61@cs.ucla.edu> (raw)
In-Reply-To: <87sgmvozz9.fsf@wjsullivan.net>
[-- Attachment #1: Type: text/plain, Size: 856 bytes --]
On 11/10/19 7:26 PM, John Sullivan wrote:
> maybe the solution could be to have two online
> versions, one that corresponds to print and is only updated when a new
> print version is made, and the other is the one that the developers with
> each release or whenever they feel is appropriate? And that latter
> version would not have any edition number. We wouldn't have any problem
> with the primary canonical manual link
> (https://www.gnu.org/software/emacs/manual/emacs.html) being used for
> the online-only version. What do you think?
Sounds good. This can be done by Texinfo flags, which are set for the
printed version and generate an edition number, and are clear for the
canonical online/info manual and do not generate an edition number. I
installed the attached patch into the GNU Emacs master to do this. We
can tweak it as needed later.
[-- Attachment #2: 0001-Conditionally-omit-edition-numbers-dates-in-doc.patch --]
[-- Type: text/x-patch, Size: 7014 bytes --]
From 787bb984e964dac56ac773864581286d46f1d5e1 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue, 12 Nov 2019 11:29:00 -0800
Subject: [PATCH] Conditionally omit edition numbers, dates in doc
This redoes the 2019-11-02T00:24:02!eggert@cs.ucla.edu patch,
updated after consultation with John Sullivan.
Omit printed edition numbers in online manuals while keeping
them in printed manuals. In online manuals the edition
numbers seem to cause more confusion than they cure; e.g.,
https://shop.fsf.org/books/gnu-emacs-manual-18th-edition-v-261
currently advertises "18th edition" even as it points to
https://www.gnu.org/software/emacs/manual/pdf/emacs.pdf which
says "Seventeenth Edition". It is simpler and less confusing
to stick to one version number like "27.0" in online manuals.
For printed manuals people can run, e.g., "texi2any -D
'EDITION Nineteenth'" when generating the 19th printed edition
of the Emacs manual.
* doc/emacs/emacs.texi (EDITION):
* doc/lispintro/emacs-lisp-intro.texi (edition-number, update-date):
* doc/lispref/elisp.texi (VERSION, DATE):
Remove definitions. Instead, let the person printing the book
specify these values, with the default being the online version
which does not have printed edition numbers.
* doc/lispintro/emacs-lisp-intro.texi (titlepage-edition-number):
New flag, for the edition number as it appears on the title page.
---
doc/emacs/emacs.texi | 32 ++++++++++++++---------------
doc/lispintro/emacs-lisp-intro.texi | 24 ++++++++++++++--------
doc/lispref/elisp.texi | 20 ++++++++++--------
3 files changed, 41 insertions(+), 35 deletions(-)
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index a7967ecaee..d23e682cc8 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -3,28 +3,21 @@
@setfilename ../../info/emacs.info
@settitle GNU Emacs Manual
@include docstyle.texi
-
-@c The edition number appears in more than one place in this file
-@c I don't really know what it means...
-@c For example, it has said "Sixteenth" since sometime in the Emacs 22
-@c series, all through 23, and into 24. So it is not very useful IMO,
-@c and offers nothing that EMACSVER does not. I guess it relates
-@c mainly to the published book sold by the FSF. Hence no longer
-@c bother including it except iftex. Really, I think it should not be
-@c here at all (since anyone can make a pdf version), but should just
-@c be something added by the FSF during the publishing process.
-@c Also, the lispref uses a float (3.0), whereas this uses an ordinal,
-@c so the format is not even consistent.
-@set EDITION Seventeenth
@include emacsver.texi
+@c When printing, define EDITION to be the printed edition number, in
+@c the preferred style for ordinal edition numbers. E.g., run the
+@c shell command "texi2any -D 'EDITION Nineteenth'" for the 19th
+@c printed edition where the edition number is spelled out in English.
+@c This relates mainly to the published book sold by the FSF.
+
@copying
-@iftex
+@ifset EDITION
This is the @value{EDITION} edition of the @cite{GNU Emacs Manual},@*
-@end iftex
-@ifnottex
+@end ifset
+@ifclear EDITION
This is the @cite{GNU Emacs Manual},
-@end ifnottex
+@end ifclear
updated for Emacs version @value{EMACSVER}.
Copyright @copyright{} 1985--1987, 1993--2019 Free Software Foundation, Inc.
@@ -82,7 +75,12 @@
@sp 6
@center @titlefont{GNU Emacs Manual}
@sp 4
+@ifset EDITION
@center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}.
+@end ifset
+@ifclear EDITION
+@center Updated for Emacs Version @value{EMACSVER}
+@end ifclear
@sp 5
@center Richard Stallman et al.
@page
diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi
index 489ba8d6ef..710e64f457 100644
--- a/doc/lispintro/emacs-lisp-intro.texi
+++ b/doc/lispintro/emacs-lisp-intro.texi
@@ -63,10 +63,6 @@
\global\hbadness=6666 % don't worry about not-too-underfull boxes
@end tex
-@c These refer to the printed book sold by the FSF.
-@set edition-number 3.10
-@set update-date 28 October 2009
-
@c For next or subsequent edition:
@c create function using with-output-to-temp-buffer
@c create a major mode, with keymaps
@@ -102,16 +98,24 @@
* Emacs Lisp Intro: (eintr). A simple introduction to Emacs Lisp programming.
@end direntry
+@c When printing, define edition-number to be the printed edition
+@c number, titlepage-edition-number to be the spelled out edition
+@c number suitable for the title page, and update-date to be the date,
+@c in the preferred style for these. E.g., run the shell command:
+@c texi2any -D 'edition-number 3.11' \
+@c -D 'titlepage-edition-number Revised Third Edtion' \
+@c -D 'update-date 31 March 2020'
+@c This relates mainly to the published book sold by the FSF.
+
@copying
This is @cite{An Introduction to Programming in Emacs Lisp}, for
people who are not programmers.
@sp 1
-@iftex
+@ifset edition-number
Edition @value{edition-number}, @value{update-date}
-@end iftex
-@ifnottex
+@end ifset
+@sp 1
Distributed with Emacs version @value{EMACSVER}.
-@end ifnottex
@sp 1
Copyright @copyright{} 1990--1995, 1997, 2001--2019 Free Software
Foundation, Inc.
@@ -173,7 +177,9 @@
@sp 2
@center @titlefont{Programming in Emacs Lisp}
@sp 2
-@center Revised Third Edition
+@ifset titlepage-edition-number
+@center @value{titlepage-edition-number}
+@end ifset
@sp 4
@center by Robert J. Chassell
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index d667c51d78..72ad8a751d 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -52,12 +52,7 @@
@end ifset
@end tex
-
-@c Version of the manual and of Emacs.
-@c (See comments for EDITION in emacs.texi)
-@set VERSION 3.1
@include emacsver.texi
-@set DATE October 2014
@c in general, keep the following line commented out, unless doing a
@c copy of this manual that will be published. The manual should go
@@ -90,13 +85,18 @@
@c We use the "type index" to index new functions and variables.
@c @syncodeindex tp fn
+@c When printing, define VERSION to be the printed edition number and
+@c DATE to be the printed edition's date. E.g., run the shell command
+@c "texi2any -D 'VERSION 3.2' -D 'DATE 31 March 2020'". This relates
+@c mainly to the published book sold by the FSF.
+
@copying
-@iftex
+@ifset VERSION
This is edition @value{VERSION} of the @cite{GNU Emacs Lisp Reference Manual},@*
-@end iftex
-@ifnottex
+@end ifset
+@ifclear VERSION
This is the @cite{GNU Emacs Lisp Reference Manual}
-@end ifnottex
+@end ifclear
corresponding to Emacs version @value{EMACSVER}.
Copyright @copyright{} 1990--1996, 1998--2019 Free Software Foundation, Inc.
@@ -127,7 +127,9 @@
@subtitle @value{voltitle}
@end ifset
@subtitle For Emacs Version @value{EMACSVER}
+@ifset VERSION
@subtitle Revision @value{VERSION}, @value{DATE}
+@end ifset
@author by Bil Lewis, Dan LaLiberte, Richard Stallman,
@author the GNU Manual Group, et al.
--
2.23.0
next prev parent reply other threads:[~2019-11-12 19:32 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-02 0:35 version vs edition numbers in Emacs manuals Paul Eggert
2019-11-02 3:07 ` Jean-Christophe Helary
2019-11-02 7:59 ` Eli Zaretskii
2019-11-02 17:23 ` Paul Eggert
2019-11-02 18:26 ` Eli Zaretskii
2019-11-03 3:26 ` Richard Stallman
[not found] ` <aa8429f8-34d2-e998-2bc6-7f7707b11ded@cs.ucla.edu>
[not found] ` <87h83brvxg.fsf@wjsullivan.net>
[not found] ` <0a820310-d4ce-d9ab-32b0-5d22c00d2122@cs.ucla.edu>
[not found] ` <87sgmvozz9.fsf@wjsullivan.net>
2019-11-12 19:32 ` Paul Eggert [this message]
2019-11-14 12:18 ` Fwd: " Eli Zaretskii
2019-11-14 19:42 ` Paul Eggert
2019-11-15 9:29 ` Eli Zaretskii
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=b153b62c-fbfe-cecb-52f0-a2315d440e61@cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=emacs-devel@gnu.org \
--cc=johns@fsf.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).