>From 787bb984e964dac56ac773864581286d46f1d5e1 Mon Sep 17 00:00:00 2001 From: Paul Eggert 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!address@hidden 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