From bdcf20b378a4042c8ee2e4a5e9fb9aee2542642c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 18 Dec 2017 22:33:25 +0000 Subject: aomart (17dec17) git-svn-id: svn://tug.org/texlive/trunk@46091 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/aomart/aomart.dtx | 79 +++++++++++++++++++++--- 1 file changed, 70 insertions(+), 9 deletions(-) (limited to 'Master/texmf-dist/source/latex') diff --git a/Master/texmf-dist/source/latex/aomart/aomart.dtx b/Master/texmf-dist/source/latex/aomart/aomart.dtx index 9762462f6f4..29d2c8e44db 100644 --- a/Master/texmf-dist/source/latex/aomart/aomart.dtx +++ b/Master/texmf-dist/source/latex/aomart/aomart.dtx @@ -1,5 +1,5 @@ % \iffalse -% $Id: aomart.dtx,v 1.72 2017/05/09 19:25:37 boris Exp $ +% $Id: aomart.dtx,v 1.74 2017/12/14 04:17:05 boris Exp $ % % Copyright 2010-2017, Princeton University (Mathematics Department) % This work may be distributed and/or modified under the @@ -23,7 +23,7 @@ % public domain. % % \fi -% \CheckSum{1441} +% \CheckSum{1474} % % %% \CharacterTable @@ -197,7 +197,8 @@ % % The class should work with the % \progname{Babel}~\cite{Braams05:Babel} package. At present, -% English, French and German languages are fully supported. +% English, French and German languages are fully supported. See also +% Section~\ref{sec:non-english}. % % \DescribeOptions{draft,final} % The options |draft| and |final| work in the same way as for @@ -274,7 +275,7 @@ % otherwise. This behavior is required by the way non-\TeX{} scripts % process the files to produce metadata. % -% The only exception is abstract, which should be placed between +% The only exception is abstract, which should be placed % after |\begin{document}|. % % @@ -378,7 +379,10 @@ % \DescribeEnv{abstract} % The abstract of the paper must be put between |\begin{abstract}| and % |\end{abstract}|. Unlike the situation in \progname{amsart} -% class, abstract may be put \emph{after} |\maketitle|. +% class, abstract may be put \emph{after} |\maketitle|. +% +% A paper may have several abstracts in different languages. This +% sitation is discussed in Section~\ref{sec:non-english}. % % \DescribeMacro{\maketitle} % The macro |\maketitle| typesets the top matter. All top matter @@ -721,6 +725,36 @@ % database entries. % % +%\subsection{Papers in languages other than English} +%\label{sec:non-english} +% +% The recommmended way to typeset papers in languages other than +% English is \textsl{babel} package~\cite{Braams05:Babel}. For +% example, to typeset a paper in French (with an English abstract, see +% below), one puts in the preamble +% \begin{verbatim} +% \usepackage[utf8]{inputenx} +% \usepackage[english,frenchb]{babel} +% \end{verbatim} +% +% Such papers often contain several abstracts: for example, in the +% language the paper is written \emph{and} in English. Accordingly, +% \textsl{aomart} allows several abstracts. Each abstract must be put +% inside a group with the corresponding language selected using +% \cs{selectanguage} command, for example +% \begin{verbatim} +% {\selectlanguage{french}% +% \begin{abstract} +% French abstract +% \end{abstract}} +% +% {\selectlanguage{english}% +% \begin{abstract} +% English abstract +% \end{abstract}} +% \end{verbatim} +% +% % \StopEventually{% % \clearpage % @@ -745,7 +779,7 @@ \ProvidesFile{aomart.dtx} % %\ProvidesClass{aomart} -[2017/05/09 v1.20 Typesetting articles for the Annals of Mathematics] +[2017/12/13 v1.21 Typesetting articles for the Annals of Mathematics] % \end{macrocode} % % @@ -1454,19 +1488,39 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\g@addto@abstract} +% \changes{v1.21}{2017/12/13}{Added macro} +% Syntactic sugar around \cs{g@addto@macro} +% \begin{macrocode} +\def\g@addto@abstract#1{\g@addto@macro{\@aom@abstract}{#1}} +% \end{macrocode} +% +% \end{macro} +% % \begin{macro}{\@getabstract} +% \changes{v1.21}{2017/12/13}{Added multilanguage abstracts} % Amsart typesets the abstract in a box. We preserve this % peculuarity, but we need to put abstract in a macro to output in % the rpi file. % \begin{macrocode} \long\def\@aom@abstract{} \long\def\@getabstract#1{% - \long\gdef\@aom@abstract{#1}% + \bgroup + \ifx\languagename\undefined + \def\languagename{english}% + \fi + \g@addto@abstract{}% + \g@addto@macro\@aom@abstract{#1}% + \g@addto@abstract{}% + \egroup \ifx\maketitle\relax \ClassWarning{aomart}{Abstract should precede \protect\maketitle\space in AMS derived classes}% \fi \global\setbox\abstractbox=\vtop\bgroup% + \box\abstractbox \vglue1pc% {\centering\normalfont\normalsize\bfseries\abstractname\par\vglue1pc}% \list{}{\labelwidth\z@% @@ -1591,7 +1645,9 @@ % \changes{v1.16}{2016/12/03}{Added names, abstract, subjects, % keywords, zblnumber, arxivnumber} % \changes{v1.16}{2016/12/03}{Corrected the endpage bug} -% \changes{v1.20}{2017/05/09}{Make primary and secondary subjects separated} +% \changes{v1.20}{2017/05/09}{Make primary and secondary subjects +% separated} +% \changes{v1.21}{2017/12/13}{Added main language} % This writes the information about the paper into the file % |jobname.rpi|. Note that hyperref makes our life a little bit % more complex @@ -1606,7 +1662,10 @@ \else \def\@tempc##1##2##3##4##5{##2}% \edef\@tempa{\expandafter\@tempc\r@LastPage}% - \fi + \fi + \ifx\languagename\undefined + \def\languagename{english}% + \fi \protected@write\@mainrpi{}% {\@percentchar authors=\authors}% \protected@write\@mainrpi{}% @@ -1646,6 +1705,8 @@ {\@percentchar keywords=\@keywords}% \protected@write\@mainrpi{}% {\@percentchar abstract=\@aom@abstract}% + \protected@write\@mainrpi{}% + {\@percentchar articlelanguage=\languagename}% \closeout\@mainrpi \fi \egroup} -- cgit v1.2.3