Coming back to this thread as I was prompted by Patrice:
https://lists.gnu.org/archive/html/bug-texinfo/2025-01/msg00066.html
I don't have a complete proposal but will post some comments to help
get this conversation going again.
I like the proposed @documentinfo command to contain metadata such as
title and author:
> @documentinfo
> @subtitle SUBTITLE-IF-ANY
> @subtitle SECOND-SUBTITLE
>
> @title NAME-OF-MANUAL-WHEN-PRINTED
>
> @author AUTHOR
> @author other author
> @end documentinfo
On Sun, Jan 12, 2025 at 01:12:54PM +0100, Patrice Dumas wrote:
> On Sun, Jan 12, 2025 at 07:53:20AM +0200, Eli Zaretskii wrote:
> > without seeing examples. So how about showing one or more examples of
> > formatting @titlepage block with the current commands, and what would
> > it look like under this/these proposal(s)?
>
> The example in the Texinfo manual:
>
> @titlepage
> @title Sample Title
>
> @c The following two commands start the copyright page.
> @page
> @vskip 0pt plus 1filll
> @insertcopying
> @end titlepage
>
> Would become
>
> @documentinfo
> @title Sample Title
> @end documentinfo
>
> @publicationinfoextra
> @vskip 0pt plus 1filll
> @insertcopying
> @end publicationinfoextra
I don't like the name of the @publicationinfoextra command as it is far too
nebulous. This example contains an explicit formating command (@vskip) which
is not "info".
In the default case, when using @documentinfo, the copying text would be output
on the verso of the title page in PDF output. No separate command would be
necessary.
> An explicit formatting of the @titlepage like
>
> @titlepage
> @sp 10
> @center @titlefont{NAME-OF-MANUAL-WHEN-PRINTED}
> @sp 2
> @center SUBTITLE-IF-ANY
> @sp 2
> @center AUTHOR
> ...
> @end titlepage
>
> would become
>
> @documentinfo
> @title NAME-OF-MANUAL-WHEN-PRINTED
> @subtitle SUBTITLE-IF-ANY
> @author AUTHOR
> @end documentinfo
>
> @iftex
> @cover
> @sp 10
> @center @titlefont{NAME-OF-MANUAL-WHEN-PRINTED}
> @sp 2
> @center SUBTITLE-IF-ANY
> @sp 2
> @center AUTHOR
> @end cover
> @end iftex
Why would we need a new @cover command? Isn't this doing exactly the
same thing that @titlepage does? Here the "cover" contains the title
page.
We shouldn't use such a short, simple name for a command ("cover") that
is only for providing explicitly formatted material. (Moreover, the cover
of an actual book is not a page and designed separately from the contents.)
Could we keep @titlepage but add a command to get the information
from @documentinfo, allowing for other stuff to follow?
@titlepage
@printdocumentinfo
@sp 1
Published by the Free Software Foundation @*
31 Milk St # 960789 @*
Boston, MA 02196 @*
USA @*
ISBN 1-882114-67-1 @c for version 4.0, September 1999.
@c ISBN 1-882114-65-5 is for version 3.12, March 1998.
@c ISBN 1-882114-64-7 is for edition 2.24 of November 1996.
@c ISBN 1-882114-63-9 is for edition 2.20 of 28 February 1995.
@ignore
@sp 1
Cover art by Etienne Suvasa.
@end ignore
@end titlepage
We could take inspiration from LaTeX, for example there is the \maketitle
command. I couldn't find a standard way to generate copyright pages in
LaTeX in the time I spent on it.
> But it would also be possible to provide a cover for different formats,
> and it could be made even simpler with new @insertXXX commands similar
> to @copying/@insertcopying, like
>
> @iftex
> @cover
> @inserttitle
This may or may not be necessary. The document author could always
repeat the information for explicit formatting, or use their own
macros.
> A minor one is that the cover and the beginning of the document are both
> in @titlepage, it is better to separate.
If this refers to @titlepage containing both the title page and the
following page (hence the proposal for a @titleverso command), there
is the problem of what it means in the source if these commands are
given in the wrong order:
@titleverso
@c @dots{}
@end titleverso
@titlepage
@c @dots{}
@end titlepage
@node Top
@top
This would especially be a problem for the texinfo.tex output where the output
is done as the input is read. (It's not a major problem.)
Perhaps @copyrightpage could be used instead of @titleverso as this is
more descriptive and this page is universally used for copyright notices.