From dbfb7e34f52f8f57ae12eaffd34fdb4158ce6e15 Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Fri, 4 Jul 2008 11:18:47 +0000 Subject: new elsarticle package git-svn-id: svn://tug.org/texlive/trunk@9226 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/elsarticle/README | 29 + Master/texmf-dist/doc/latex/elsarticle/elsdoc.pdf | Bin 0 -> 1473423 bytes .../latex/elsarticle/elsarticle-template-harv.tex | 122 ++++ .../latex/elsarticle/elsarticle-template-num.tex | 114 ++++ .../texmf-dist/tex/latex/elsarticle/elsarticle.cls | 705 +++++++++++++++++++++ Master/tlpkg/bin/tlpkg-ctan-check | 2 +- Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 + Master/tlpkg/tlpsrc/elsarticle.tlpsrc | 2 + 8 files changed, 974 insertions(+), 1 deletion(-) create mode 100644 Master/texmf-dist/doc/latex/elsarticle/README create mode 100644 Master/texmf-dist/doc/latex/elsarticle/elsdoc.pdf create mode 100644 Master/texmf-dist/source/latex/elsarticle/elsarticle-template-harv.tex create mode 100644 Master/texmf-dist/source/latex/elsarticle/elsarticle-template-num.tex create mode 100644 Master/texmf-dist/tex/latex/elsarticle/elsarticle.cls create mode 100644 Master/tlpkg/tlpsrc/elsarticle.tlpsrc diff --git a/Master/texmf-dist/doc/latex/elsarticle/README b/Master/texmf-dist/doc/latex/elsarticle/README new file mode 100644 index 00000000000..448a30adfb0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/elsarticle/README @@ -0,0 +1,29 @@ +Elsevier's new document class for typeset journal articles, +elsarticle.cls, now available for user testing + +Elsevier's document class for typeset articles elsart.cls is over 10 +years old. Therefore it will be replaced with the newly written +document class elsarticle.cls, which was developed for Elsevier by the +leading TeX company River-Valley Technologies. + +elsarticle.cls is based upon the standard LaTeX document class +article.cls. It uses natbib.sty for bibliographical references. + +The following files are available: +- elsarticle.cls, the class file +- elsdoc.pdf, the user documentation +- elsarticle-template-num.tex, template file for numerical references +- elsarticle-template-harv.tex, template file for name-year references + +Elsevier encourages authors to use this document class for testing, +and report bugs and problems to the developers of the class, +elsarticle@river-valley.com. It is the intention to finalize this +document class by the end of August. By that date it will be accepted +for submitted articles, both in Elsevier's electronic submission +system and otherwise. + +Copyright 2007-2008, Elsevier. Bugs, feature requests, suggestions and +comments may be mailed to elsarticle@river-valley.com. elsarticle.cls, +related documentation and supporting packages are released under the +LATEX Project Public Licence, either version 1.3 or any later version. +This work has the LPPL maintenance status 'author-maintained'. diff --git a/Master/texmf-dist/doc/latex/elsarticle/elsdoc.pdf b/Master/texmf-dist/doc/latex/elsarticle/elsdoc.pdf new file mode 100644 index 00000000000..bc3a64dee1e Binary files /dev/null and b/Master/texmf-dist/doc/latex/elsarticle/elsdoc.pdf differ diff --git a/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-harv.tex b/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-harv.tex new file mode 100644 index 00000000000..e99ad8c17b6 --- /dev/null +++ b/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-harv.tex @@ -0,0 +1,122 @@ +% Template article for Elsevier's document class `elsarticle' +% with harvard style bibliographic references +% SP 2008/03/01 + +\documentclass[authoryear,preprint,12pt]{elsarticle} + +% Use the option review to obtain double line spacing +% \documentclass[authoryear,preprint,review,12pt]{elsarticle} + +% Use the options 1p,twocolumn; 3p; 3p,twocolumn; 5p; or 5p,twocolumn +% for a journal layout: +% \documentclass[authoryear,final,1p,times]{elsarticle} +% \documentclass[authoryear,final,1p,times,twocolumn]{elsarticle} +% \documentclass[authoryear,final,3p,times]{elsarticle} +% \documentclass[authoryear,final,3p,times,twocolumn]{elsarticle} +% \documentclass[authoryear,final,5p,times]{elsarticle} +% \documentclass[authoryear,final,5p,times,twocolumn]{elsarticle} + +% if you use PostScript figures in your article +% use the graphics package for simple commands +% \usepackage{graphics} +% or use the graphicx package for more complicated commands +% \usepackage{graphicx} +% or use the epsfig package if you prefer to use the old commands +% \usepackage{epsfig} + +% The amssymb package provides various useful mathematical symbols +\usepackage{amssymb} +% The amsthm package provides extended theorem environments +% \usepackage{amsthm} + +% The lineno packages adds line numbers. Start line numbering with +% \begin{linenumbers}, end it with \end{linenumbers}. Or switch it on +% for the whole article with \linenumbers. +% \usepackage{lineno} + +% \linenumbers + +\journal{Nuclear Physics B} + +\begin{document} + +\begin{frontmatter} + +% Title, authors and addresses + +% use the tnoteref command within \title for footnotes; +% use the tnotetext command for theassociated footnote; +% use the fnref command within \author or \address for footnotes; +% use the fntext command for theassociated footnote; +% use the corref command within \author for corresponding author footnotes; +% use the cortext command for theassociated footnote; +% use the ead command for the email address, +% and the form \ead[url] for the home page: +% \title{Title\tnoteref{label1}} +% \tnotetext[label1]{} +% \author{Name\corref{cor1}\fnref{label2}} +% \ead{email address} +% \ead[url]{home page} +% \fntext[label2]{} +% \cortext[cor1]{} +% \address{Address\fnref{label3}} +% \fntext[label3]{} + +\title{} + +% use optional labels to link authors explicitly to addresses: +% \author[label1,label2]{} +% \address[label1]{} +% \address[label2]{} + +\author{} + +\address{} + +\begin{abstract} +% Text of abstract + +\end{abstract} + +\begin{keyword} +% keywords here, in the form: keyword \sep keyword + +% PACS codes here, in the form: \PACS code \sep code + +% MSC codes here, in the form: \MSC code \sep code +% or \MSC[2008] code \sep code (2000 is the default) + +\end{keyword} + +\end{frontmatter} + +% main text +\section{} +\label{} + +% The Appendices part is started with the command \appendix; +% appendix sections are then done as normal sections +% \appendix + +% \section{} +% \label{} + +% Bibliographic references with the natbib package: +% Parenthetical: \citep{Bai92} produces (Bailyn 1992). +% Textual: \citet{Bai95} produces Bailyn et al. (1995). +% An affix and part of a reference: +% \citep[e.g.][Ch. 2]{Bar76} +% produces (e.g. Barnes et al. 1976, Ch. 2). + +\begin{thebibliography}{} + +% \bibitem[Names(Year)]{label} or \bibitem[Names(Year)Long names]{label}. +% (\harvarditem{Name}{Year}{label} is also supported.) +% Text of bibliographic item + +\bibitem[]{} + +\end{thebibliography} + +\end{document} + diff --git a/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-num.tex b/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-num.tex new file mode 100644 index 00000000000..4a3ce9e6f0f --- /dev/null +++ b/Master/texmf-dist/source/latex/elsarticle/elsarticle-template-num.tex @@ -0,0 +1,114 @@ +% Template article for Elsevier's document class `elsarticle' +% with harvard style bibliographic references +% SP 2008/03/01 + +\documentclass[preprint,12pt]{elsarticle} + +% Use the option review to obtain double line spacing +% \documentclass[authoryear,preprint,review,12pt]{elsarticle} + +% Use the options 1p,twocolumn; 3p; 3p,twocolumn; 5p; or 5p,twocolumn +% for a journal layout: +% \documentclass[final,1p,times]{elsarticle} +% \documentclass[final,1p,times,twocolumn]{elsarticle} +% \documentclass[final,3p,times]{elsarticle} +% \documentclass[final,3p,times,twocolumn]{elsarticle} +% \documentclass[final,5p,times]{elsarticle} +% \documentclass[final,5p,times,twocolumn]{elsarticle} + +% if you use PostScript figures in your article +% use the graphics package for simple commands +% \usepackage{graphics} +% or use the graphicx package for more complicated commands +% \usepackage{graphicx} +% or use the epsfig package if you prefer to use the old commands +% \usepackage{epsfig} + +% The amssymb package provides various useful mathematical symbols +\usepackage{amssymb} +% The amsthm package provides extended theorem environments +% \usepackage{amsthm} + +% The lineno packages adds line numbers. Start line numbering with +% \begin{linenumbers}, end it with \end{linenumbers}. Or switch it on +% for the whole article with \linenumbers. +% \usepackage{lineno} + +% \linenumbers + +\journal{Nuclear Physics B} + +\begin{document} + +\begin{frontmatter} + +% Title, authors and addresses + +% use the tnoteref command within \title for footnotes; +% use the tnotetext command for theassociated footnote; +% use the fnref command within \author or \address for footnotes; +% use the fntext command for theassociated footnote; +% use the corref command within \author for corresponding author footnotes; +% use the cortext command for theassociated footnote; +% use the ead command for the email address, +% and the form \ead[url] for the home page: +% \title{Title\tnoteref{label1}} +% \tnotetext[label1]{} +% \author{Name\corref{cor1}\fnref{label2}} +% \ead{email address} +% \ead[url]{home page} +% \fntext[label2]{} +% \cortext[cor1]{} +% \address{Address\fnref{label3}} +% \fntext[label3]{} + +\title{} + +% use optional labels to link authors explicitly to addresses: +% \author[label1,label2]{} +% \address[label1]{} +% \address[label2]{} + +\author{} + +\address{} + +\begin{abstract} +% Text of abstract + +\end{abstract} + +\begin{keyword} +% keywords here, in the form: keyword \sep keyword + +% PACS codes here, in the form: \PACS code \sep code + +% MSC codes here, in the form: \MSC code \sep code +% or \MSC[2008] code \sep code (2000 is the default) + +\end{keyword} + +\end{frontmatter} + +% main text +\section{} +\label{} + +% The Appendices part is started with the command \appendix; +% appendix sections are then done as normal sections +% \appendix + +% \section{} +% \label{} + +\begin{thebibliography}{00} + +% \bibitem{label} +% Text of bibliographic item + +\bibitem{} + +\end{thebibliography} + +\end{document} + diff --git a/Master/texmf-dist/tex/latex/elsarticle/elsarticle.cls b/Master/texmf-dist/tex/latex/elsarticle/elsarticle.cls new file mode 100644 index 00000000000..10b51e9ecf4 --- /dev/null +++ b/Master/texmf-dist/tex/latex/elsarticle/elsarticle.cls @@ -0,0 +1,705 @@ +%% +%% This is file 'elsarticle.cls', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% elsarticle.dtx (with options: 'package') +%% +%% elsarticle.cls Copyright (C) 2007,2008 Elsevier Science +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.2 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% $Id: elsarticle.cls,v 1.8 2008-02-14 11:50:06 cvr Exp $ +%% + \def\RCSfile{elsarticle}% + \def\RCSversion{1.0.1}% + \def\RCSdate{2008/05/22}% + \def\@shortjnl{\relax} + \def\@journal{Elsevier Science} \def\@company{Elsevier Science} + \def\@issn{000-0000} + \def\@shortjid{elsarticle} +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{\@shortjid}[\RCSdate, \RCSversion: \@journal] +% +% +\def\ABD{\AtBeginDocument} +\newif\ifpreprint \preprintfalse +\newif\iflongmktitle \longmktitlefalse + +\def\@blstr{1} +\newdimen\@bls +\@bls=\baselineskip + +\def\@finalWarning{% + *****************************************************\MessageBreak + This document is typeset in the CRC style which\MessageBreak + is not suitable for submission.\MessageBreak + \MessageBreak + Please typeset again using 'preprint' option\MessageBreak + for creating PDF suitable for submission.\MessageBreak + ******************************************************\MessageBreak +} +\def\biboptions#1{\g@addto@macro\@biboptions{,#1}} +\def\@biboptions{} +\DeclareOption{preprint}{\global\preprinttrue + \gdef\@blstr{1}\xdef\jtype{0}% + \AtBeginDocument{\@twosidefalse\@mparswitchfalse}} +\DeclareOption{final}{\gdef\@blstr{1}\global\preprintfalse} +\DeclareOption{review}{\global\preprinttrue\gdef\@blstr{1.5}} +\DeclareOption{authoryear}{\xdef\@biboptions{authoryear}} +\DeclareOption{number}{\xdef\@biboptions{square,numbers}} +\DeclareOption{longtitle}{\global\longmktitletrue} +\DeclareOption{5p}{\xdef\jtype{5}\global\preprintfalse + \ExecuteOptions{twocolumn}} + \def\jtype{0} +\DeclareOption{3p}{\xdef\jtype{3}\global\preprintfalse} +\DeclareOption{1p}{\xdef\jtype{1}\global\preprintfalse + \AtBeginDocument{\@twocolumnfalse}} +\DeclareOption{times}{\IfFileExists{txfonts.sty}% + {\AtEndOfClass{\RequirePackage{txfonts}% + \gdef\ttdefault{cmtt}% + \let\iint\relax + \let\iiint\relax + \let\iiiint\relax + \let\idotsint\relax + \let\openbox\relax}}{}} +\ExecuteOptions{a4paper,10pt,oneside,onecolumn,number,preprint} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ProcessOptions +\LoadClass{article} +\RequirePackage{comment} + +%% +%% Preamble +%% +\let\comma\@empty +\let\tnotesep\@empty +\def\title#1{\gdef\@title{#1}} +\let\@title\@empty + +\def\elsLabel#1{\@bsphack\protected@write\@auxout{}% + {\string\Newlabel{#1}{\@currentlabel}}\@esphack} +\def\Newlabel#1#2{\expandafter\xdef\csname X@#1\endcsname{#2}} + +\def\Ref#1{\@ifundefined{X@#1}{0}{\csname X@#1\endcsname}% +% \alarm{REF [#1]: \csname X@#1\endcsname}% +} + +\def\tnotemark[#1]{\textsuperscript{\@for\@@tmark:=#1\do{% + \edef\tnotenum{\@ifundefined{X@\@@tmark}{1}{\Ref{\@@tmark}}}% + \ifcase\tnotenum\or\ding{73}\or,\ding{73}\ding{73}\fi}}% +} +\let\@tnotemark\@empty + +\let\@tnotes\@empty +\RequirePackage{pifont} +\newcounter{tnote} +\def\tnotetext[#1]#2{\g@addto@macro\@tnotes{% + \refstepcounter{tnote}\elsLabel{#1}% + \def\thefootnote{\ifcase\c@tnote\or\ding{73}\or\ding{73}\ding{73}\fi}% + \footnotetext{#2}}} + +\newcounter{fnote} +\def\fnmark[#1]{\let\comma\@empty + \def\@fnmark{\@for\@@fnmark:=#1\do{% + \edef\fnotenum{\@ifundefined{X@\@@fnmark}{1}{\Ref{\@@fnmark}}}% + \unskip\comma\fnotenum\let\comma,}}% +} + +\let\@fnotes\@empty\let\@fnmark\@empty +\def\fntext[#1]#2{\g@addto@macro\@fnotes{% + \refstepcounter{fnote}\elsLabel{#1}% + \def\thefootnote{\thefnote}% + \global\setcounter{footnote}{\thefnote}% + \footnotetext{#2}}} + +\def\cormark[#1]{\gdef\@cormark{\edef\cnotenum{% + \@ifundefined{X@#1}{0}{\Ref{#1}}}% + \ifcase\cnotenum\or$\ast$\or$\ast\ast$\fi}} +\let\@cormark\@empty +\let\@cornotes\@empty +\newcounter{cnote} +\def\cortext[#1]#2{\g@addto@macro\@cornotes{% + \refstepcounter{cnote}\elsLabel{#1}% + \def\thefootnote{\ifcase\thecnote\or$\ast$\or + $\ast\ast$\fi}% + \footnotetext{#2}}} + +\def\corref#1{\cormark[#1]} +\def\fnref#1{\fnmark[#1]} +\def\tnoteref#1{\tnotemark[#1]} + +\def\resetTitleCounters{\c@cnote=0 + \c@fnote=0 \c@tnote=0 \c@footnote=0} + +\let\eadsep\@empty +\let\@elseads\@empty +\let\@elsuads\@empty +\def\ead{\@ifnextchar[{\@uad}{\@ead}} +\gdef\@ead#1{\bgroup + \edef\tmp{\the\@eadauthor} + \immediate\write\@auxout{\string\emailauthor + {#1}{\expandafter\strip@prefix\meaning\tmp}}% + \egroup +} +\def\emailauthor#1#2{\g@addto@macro\@elseads{\raggedright% + \eadsep\texttt{#1} (#2)\def\eadsep{\unskip,\space}}% +} +\gdef\@uad[#1]#2{\bgroup + \edef\tmp{\the\@eadauthor} + \immediate\write\@auxout{\string\urlauthor + {#2}{\expandafter\strip@prefix\meaning\tmp}}% + \egroup +} +\def\urlauthor#1#2{\g@addto@macro\@elsuads{% + \eadsep\texttt{#1}\space(#2)\def\eadsep{\unskip,\space}}% +} + +\def\elsauthors{} +\def\pprinttitle{} +\let\authorsep\@empty +\newcounter{author} +\def\author{\@ifnextchar[{\@@author}{\@author}} + +\newtoks\@eadauthor +\def\@@author[#1]#2{\g@addto@macro\elsauthors{% + \def\baselinestretch{1}% + \authorsep#2\unskip\textsuperscript{%#1% + \@for\@@affmark:=#1\do{% + \edef\affnum{\@ifundefined{X@\@@affmark}{1}{\Ref{\@@affmark}}}% + \unskip\comma\affnum\let\comma,}% + \ifx\@cormark\@empty\else\unskip,\@cormark\fi + \ifx\@fnmark\@empty\else\unskip\@fnmark\fi}% + \def\authorsep{\unskip,\space}% + \global\let\@cormark\@empty + \global\let\@fnmark\@empty}% + \@eadauthor={#2} +} + +\def\@author#1{\g@addto@macro\elsauthors{\normalsize% + \def\baselinestretch{1}% + \upshape\authorsep#1\unskip\textsuperscript{\let\sep\@empty% + \ifx\@cormark\@empty\else$\ast$\let\sep=,\fi + \ifx\@fnmark\@empty\else\unskip\sep\@fnmark\let\sep=,\fi}% + \def\authorsep{\par\vskip15pt}% + \global\let\@cormark\@empty + \global\let\@fnmark\@empty}% + \@eadauthor={#1} +} + +\def\elsaddress{} +\def\addsep{\par\vskip6pt} +\def\address{\@ifnextchar[{\@@address}{\@address}} + +\newcounter{affn} +\renewcommand\theaffn{\alph{affn}} + +\long\def\@@address[#1]#2{\g@addto@macro\elsaddress{% + \def\baselinestretch{1}% + \refstepcounter{affn}\elsLabel{#1}% + \textsuperscript{\theaffn}#2\par}} + +\long\def\@address#1{\g@addto@macro\elsauthors{% + \def\baselinestretch{1}% + \addsep\footnotesize\itshape#1\def\addsep{\par\vskip6pt}}} + +\newbox\absbox +\renewenvironment{abstract}{\global\setbox\absbox=\vbox\bgroup + \hsize=\textwidth\def\baselinestretch{1}% + \noindent\unskip\textbf{Abstract} + \par\medskip\noindent\unskip\ignorespaces} + {\egroup} + +\newbox\keybox +\def\keyword{% + \def\sep{\unskip, }% + \def\MSC{\@ifnextchar[{\@MSC}{\@MSC[2000]}} + \def\@MSC[##1]{\par\leavevmode\hbox {\it ##1~MSC:\space}}% + \def\PACS{\par\leavevmode\hbox {\it PACS:\space}}% + \global\setbox\keybox=\vbox\bgroup\hsize=\textwidth + \normalsize\normalfont\def\baselinestretch{1} + \parskip\z@ + \noindent\textit{Key words: } + \raggedright % Keywords are not justified. + \ignorespaces} +\def\endkeyword{\par \egroup} + +\newdimen\Columnwidth +\Columnwidth=\columnwidth + +\def\printFirstPageNotes{% + \iflongmktitle + \let\columnwidth=\textwidth\fi + \ifx\@tnotes\@empty\else\@tnotes\fi + \ifx\@cornotes\@empty\else\@cornotes\fi + \ifx\@elseads\@empty\relax\else + \let\thefootnote\relax + \footnotetext{\textit{Email addresses:\space}% + \@elseads}\fi + \ifx\@elsuads\@empty\relax\else + \let\thefootnote\relax + \footnotetext{\textit{URL:\space}% + \@elsuads}\fi + \ifx\@fnotes\@empty\else\@fnotes\fi + \iflongmktitle\if@twocolumn + \let\columnwidth=\Columnwidth\fi\fi +} + +\long\def\pprintMaketitle{\clearpage + \iflongmktitle\if@twocolumn\let\columnwidth=\textwidth\fi\fi + \resetTitleCounters + \def\baselinestretch{1}% + \printFirstPageNotes + \begin{center}% + \thispagestyle{pprintTitle}% + \def\baselinestretch{1}% + \Large\@title\par\vskip18pt + \normalsize\elsauthors\par\vskip10pt + \footnotesize\itshape\elsaddress\par\vskip36pt + \hrule\vskip12pt + \ifvoid\absbox\else\unvbox\absbox\par\vskip10pt\fi + \ifvoid\keybox\else\unvbox\keybox\par\vskip10pt\fi + \hrule\vskip12pt + \end{center}% + \gdef\thefootnote{\arabic{footnote}}% + } + +\def\printWarning{% + \mbox{}\par\vfill\par\bgroup + \fboxsep12pt\fboxrule1pt + \hspace*{.18\textwidth} + \fcolorbox{gray50}{gray10}{\box\warnbox} + \egroup\par\vfill\thispagestyle{empty} + \setcounter{page}{0} + \clearpage} + +\long\def\finalMaketitle{% + \resetTitleCounters + \def\baselinestretch{1}% + \MaketitleBox + \thispagestyle{pprintTitle}% + \gdef\thefootnote{\arabic{footnote}}% + } + +\long\def\MaketitleBox{% + \resetTitleCounters + \def\baselinestretch{1}% + \begin{center}% + \def\baselinestretch{1}% + \Large\@title\par\vskip18pt + \normalsize\elsauthors\par\vskip10pt + \footnotesize\itshape\elsaddress\par\vskip36pt + \hrule\vskip12pt + \ifvoid\absbox\else\unvbox\absbox\par\vskip10pt\fi + \ifvoid\keybox\else\unvbox\keybox\par\vskip10pt\fi + \hrule\vskip12pt + \end{center}% + } + + +\def\FNtext#1{\par\bgroup\footnotesize#1\egroup} +\newdimen\space@left +\def\alarm#1{\typeout{******************************}% + \typeout{#1}% + \typeout{******************************}% +} +\long\def\getSpaceLeft{%\global\@twocolumnfalse% + \global\setbox0=\vbox{\hsize=\textwidth\MaketitleBox}% + \global\setbox1=\vbox{\hsize=\textwidth + \let\footnotetext\FNtext + \printFirstPageNotes}% + \xdef\noteheight{\the\ht1}% + \xdef\titleheight{\the\ht0}% + \@tempdima=\vsize + \advance\@tempdima-\noteheight + \advance\@tempdima-1\baselineskip +% \alarm{Note height .... \noteheight}% +% \alarm{Title height .... \titleheight}% +% \alarm{T-height........ \the\textheight}% +% \alarm{Goal........ \the\@tempdima}% +} + + +%\ifpreprint\let\footnoterule\relax\fi + \skip\footins=24pt + +\newbox\els@boxa +\newbox\els@boxb + +\ifpreprint + \def\maketitle{\pprintMaketitle} + \else + \ifnum\jtype=1 + \def\maketitle{% + \iflongmktitle\getSpaceLeft + \global\setbox\els@boxa=\vsplit0 to \@tempdima + \box\els@boxa\par\resetTitleCounters + \thispagestyle{pprintTitle}% + \printFirstPageNotes + \box0% + \else + \finalMaketitle\printFirstPageNotes + \fi + \gdef\thefootnote{\arabic{footnote}}}% + \else + \ifnum\jtype=5 + \def\maketitle{% + \iflongmktitle\getSpaceLeft + \global\setbox\els@boxa=\vsplit0 to \@tempdima + \box\els@boxa\par\resetTitleCounters + \thispagestyle{pprintTitle}% + \printFirstPageNotes + \twocolumn[\box0]%\printFirstPageNotes + \else + \twocolumn[\finalMaketitle]\printFirstPageNotes + \fi + \gdef\thefootnote{\arabic{footnote}}} + \else + \if@twocolumn + \def\maketitle{% + \iflongmktitle\getSpaceLeft + \global\setbox\els@boxa=\vsplit0 to \@tempdima + \box\els@boxa\par\resetTitleCounters + \thispagestyle{pprintTitle}% + \printFirstPageNotes + \twocolumn[\box0]% + \else + \twocolumn[\finalMaketitle]\printFirstPageNotes + \fi + \gdef\thefootnote{\arabic{footnote}}}% + \else + \def\maketitle{% + \iflongmktitle\getSpaceLeft + \global\setbox\els@boxa=\vsplit0 to \@tempdima + \box\els@boxa\par\resetTitleCounters + \thispagestyle{pprintTitle}% + \printFirstPageNotes + \box0% + \else + \finalMaketitle\printFirstPageNotes + \fi + \gdef\thefootnote{\arabic{footnote}}}% + \fi + \fi + \fi +\fi + +%% +%% Headers/footers +%% +\def\ps@pprintTitle{% + \let\@oddhead\@empty + \let\@evenhead\@empty + \def\@oddfoot{\footnotesize\itshape + Preprint submitted to \ifx\@journal\@empty Elsevier + \else\@journal\fi\hfill\today}% + \let\@evenfoot\@oddfoot} + + +%% +%% Section headings +%% +\def\@seccntDot{.} +\def\@seccntformat#1{\csname the#1\endcsname\@seccntDot\hskip 0.5em} + +\renewcommand\section{\@startsection {section}{1}{\z@}% + {18\p@ \@plus 6\p@ \@minus 3\p@}% + {9\p@ \@plus 6\p@ \@minus 3\p@}% + {\normalsize\bfseries\boldmath}} +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% + {12\p@ \@plus 6\p@ \@minus 3\p@}% + {3\p@ \@plus 6\p@ \@minus 3\p@}% + {\normalfont\normalsize\itshape}} +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {12\p@ \@plus 6\p@ \@minus 3\p@}% + {\p@}% + {\normalfont\normalsize\itshape}} + +\def\paragraph{\secdef{\els@aparagraph}{\els@bparagraph}} +\def\els@aparagraph[#1]#2{\elsparagraph[#1]{#2.}} +\def\els@bparagraph#1{\elsparagraph*{#1.}} + +\newcommand\elsparagraph{\@startsection{paragraph}{4}{0\z@}% + {10\p@ \@plus 6\p@ \@minus 3\p@}% + {-6\p@}% + {\normalfont\itshape}} + +%% +%% List environment +%% +\newtoks\@enLab %\newtoks\@enfont +\def\@enQmark{?} +\def\@enLabel#1#2{% + \edef\@enThe{\noexpand#1{\@enumctr}}% + \@enLab\expandafter{\the\@enLab\csname the\@enumctr\endcsname}% + \@enloop} +\def\@enSpace{\afterassignment\@enSp@ce\let\@tempa= } +\def\@enSp@ce{\@enLab\expandafter{\the\@enLab\space}\@enloop} +\def\@enGroup#1{\@enLab\expandafter{\the\@enLab{#1}}\@enloop} +\def\@enOther#1{\@enLab\expandafter{\the\@enLab#1}\@enloop} +\def\@enloop{\futurelet\@entemp\@enloop@} +\def\@enloop@{% + \ifx A\@entemp \def\@tempa{\@enLabel\Alph }\else + \ifx a\@entemp \def\@tempa{\@enLabel\alph }\else + \ifx i\@entemp \def\@tempa{\@enLabel\roman }\else + \ifx I\@entemp \def\@tempa{\@enLabel\Roman }\else + \ifx 1\@entemp \def\@tempa{\@enLabel\arabic}\else + \ifx \@sptoken\@entemp \let\@tempa\@enSpace \else + \ifx \bgroup\@entemp \let\@tempa\@enGroup \else + \ifx \@enum@\@entemp \let\@tempa\@gobble \else + \let\@tempa\@enOther + \fi\fi\fi\fi\fi\fi\fi\fi + \@tempa} +\newlength{\@sep} \newlength{\@@sep} +\setlength{\@sep}{.5\baselineskip plus.2\baselineskip + minus.2\baselineskip} +\setlength{\@@sep}{.1\baselineskip plus.01\baselineskip + minus.05\baselineskip} +\providecommand{\sfbc}{\rmfamily\upshape} +\providecommand{\sfn}{\rmfamily\upshape} +\def\@enfont{\ifnum \@enumdepth >1\let\@nxt\sfn \else\let\@nxt\sfbc \fi\@nxt} +\def\enumerate{% + \ifnum \@enumdepth >3 \@toodeep\else + \advance\@enumdepth \@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}\fi + \@ifnextchar[{\@@enum@}{\@enum@}} +\def\@@enum@[#1]{% + \@enLab{}\let\@enThe\@enQmark + \@enloop#1\@enum@ + \ifx\@enThe\@enQmark\@warning{The counter will not be printed.% + ^^J\space\@spaces\@spaces\@spaces The label is: \the\@enLab}\fi + \expandafter\edef\csname label\@enumctr\endcsname{\the\@enLab}% + \expandafter\let\csname the\@enumctr\endcsname\@enThe + \csname c@\@enumctr\endcsname7 + \expandafter\settowidth + \csname leftmargin\romannumeral\@enumdepth\endcsname + {\the\@enLab\hskip\labelsep}% + \@enum@} +\def\@enum@{\list{{\@enfont\csname label\@enumctr\endcsname}}% + {\usecounter{\@enumctr}\def\makelabel##1{\hss\llap{##1}}% + \ifnum \@enumdepth>1\setlength{\topsep}{\@@sep}\else + \setlength{\topsep}{\@sep}\fi + \ifnum \@enumdepth>1\setlength{\itemsep}{0pt plus1pt minus1pt}% + \else \setlength{\itemsep}{\@@sep}\fi + \setlength\leftmargin{2em}%%%{1.8em} + \setlength{\parsep}{0pt plus1pt minus1pt}% + \setlength{\parskip}{0pt plus1pt minus1pt}}} + +\def\endenumerate{\par\ifnum \@enumdepth >1\addvspace{\@@sep}\else + \addvspace{\@sep}\fi \endlist} + +\def\sitem{\@noitemargtrue\@item[\@itemlabel *]} + +\def\itemize{\@ifnextchar[{\@Itemize}{\@Itemize[]}} + +\def\@Itemize[#1]{\def\next{#1}% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \ifx\next\@empty\else\expandafter\def\csname + labelitem\romannumeral\the\@itemdepth\endcsname{#1}\fi% + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter\list\csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}}% + \fi} +%% +%% Theorem environment +%% +\def\newdefinition#1{ + \@ifnextchar[{\@odfn{#1}}{\@ndfn{#1}}} +\def\@ndfn#1#2{ + \@ifnextchar[{\@xndfn{#1}{#2}}{\@yndfn{#1}{#2}}} +\def\@xndfn#1#2[#3]{ + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3] + \expandafter\xdef\csname the#1\endcsname{ + \expandafter\noexpand\csname the#3\endcsname \@dfncountersep + \@dfncounter{#1}} + \global\@namedef{#1}{\@dfn{#1}{#2}} + \global\@namedef{end#1}{\@enddefinition}}} +\def\@yndfn#1#2{ + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1} + \expandafter\xdef\csname the#1\endcsname{\@dfncounter{#1}} + \global\@namedef{#1}{\@dfn{#1}{#2}} + \global\@namedef{end#1}{\@enddefinition}}} +\def\@odfn#1[#2]#3{ + \@ifundefined{c@#2}{\@nocounterr{#2}} + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}} + \global\@namedef{#1}{\@dfn{#2}{#3}} + \global\@namedef{end#1}{\@enddefinition}}}} +\def\@dfn#1#2{ + \refstepcounter{#1} + \@ifnextchar[{\@ydfn{#1}{#2}}{\@xdfn{#1}{#2}}} +\def\@xdfn#1#2{ + \@begindefinition{#2}{\csname the#1\endcsname}\ignorespaces} +\def\@ydfn#1#2[#3]{ + \@opargbegindefinition{#2}{\csname the#1\endcsname}{#3}\ignorespaces} +\def\@dfncounter#1{\noexpand\arabic{#1}} +\def\@dfncountersep{.} +\def\@begindefinition#1#2{\trivlist + \item[\hskip\labelsep{\bfseries#1#2.}]\upshape} +\def\@opargbegindefinition#1#2#3{\trivlist + \item[\hskip\labelsep{\bfseries #1#2\ (#3).}]\upshape} +\def\@enddefinition{\endtrivlist} + +\def\@begintheorem#1#2{\trivlist + \let\baselinestretch\@blstr + \item[\hskip \labelsep{\bfseries #1\ #2.}]\itshape} +\def\@opargbegintheorem#1#2#3{\trivlist + \let\baselinestretch\@blstr + \item[\hskip \labelsep{\bfseries #1\ #2\ (#3).}]\itshape} + +\def\newproof#1{% + \@ifnextchar[{\@oprf{#1}}{\@nprf{#1}}} +\def\@nprf#1#2{% + \@ifnextchar[{\@xnprf{#1}{#2}}{\@ynprf{#1}{#2}}} +\def\@xnprf#1#2[#3]{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3]% + \expandafter\xdef\csname the#1\endcsname{% + \expandafter\noexpand\csname the#3\endcsname \@prfcountersep + \@prfcounter{#1}}% + \global\@namedef{#1}{\@prf{#1}{#2}}% + \global\@namedef{end#1}{\@endproof}}} +\def\@ynprf#1#2{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}% + \expandafter\xdef\csname the#1\endcsname{\@prfcounter{#1}}% + \global\@namedef{#1}{\@prf{#1}{#2}}% + \global\@namedef{end#1}{\@endproof}}} +\def\@oprf#1[#2]#3{% + \@ifundefined{c@#2}{\@nocounterr{#2}}% + {\expandafter\@ifdefinable\csname #1\endcsname + {\global\@namedef{the#1}{\@nameuse{the#2}}% + \global\@namedef{#1}{\@prf{#2}{#3}}% + \global\@namedef{end#1}{\@endproof}}}} +\def\@prf#1#2{% + \refstepcounter{#1}% + \@ifnextchar[{\@yprf{#1}{#2}}{\@xprf{#1}{#2}}} +\def\@xprf#1#2{% + \@beginproof{#2}{\csname the#1\endcsname}\ignorespaces} +\def\@yprf#1#2[#3]{% + \@opargbeginproof{#2}{\csname the#1\endcsname}{#3}\ignorespaces} +\def\@prfcounter#1{\noexpand\arabic{#1}} +\def\@prfcountersep{.} +\def\@beginproof#1#2{\trivlist\let\baselinestretch\@blstr + \item[\hskip \labelsep{\scshape #1.}]\rmfamily} +\def\@opargbeginproof#1#2#3{\trivlist\let\baselinestretch\@blstr + \item[\hskip \labelsep{\scshape #1\ (#3).}]\rmfamily} +\def\@endproof{\endtrivlist} +\newcommand*{\qed}{\hbox{}\hfill$\Box$} + +\RequirePackage[\@biboptions]{natbib} + +\let\baselinestretch=\@blstr + + +%% +%% Page dimensions and margins for final form +%% +\ifnum\jtype=1 + \RequirePackage{geometry} + \geometry{twoside, +% top=30mm, +% paperwidth=165mm, +% paperheight=240mm, + paperwidth=210mm, + paperheight=297mm, + textheight=562pt, + textwidth=384pt, +% inner=16mm, +% top=22.1mm, + centering, + headheight=50pt, + headsep=12pt, + footskip=12pt, + footnotesep=24pt plus 2pt minus 12pt, + } + \global\let\bibfont=\footnotesize + \global\bibsep=0pt + \if@twocolumn\global\@twocolumnfalse\fi +% +\else\ifnum\jtype=3 + \RequirePackage{geometry} + \geometry{twoside, +% paperwidth=192mm, +% paperheight=262mm, + paperwidth=210mm, + paperheight=297mm, + textheight=622pt, + textwidth=468pt, +% inner=13.1mm, +% top=22.1mm, + centering, + headheight=50pt, + headsep=12pt, + footskip=12pt, + footnotesep=24pt plus 2pt minus 12pt, + columnsep=2pc + } + \global\let\bibfont=\footnotesize + \global\bibsep=0pt + \if@twocolumn\input{fleqn.clo}\fi +%% +%% End of option '3p' +%% +\else\ifnum\jtype=5 + \RequirePackage{geometry} + \geometry{twoside, +% top=30mm, + paperwidth=210mm, +% paperheight=280mm, + paperheight=297mm, + textheight=682pt, + textwidth=522pt, +% inner=15mm, +% top=23.2mm, + centering, + headheight=50pt, + headsep=12pt, + footskip=18pt, + footnotesep=24pt plus 2pt minus 12pt, + columnsep=18pt + }% + \global\let\bibfont=\footnotesize + \global\bibsep=0pt + \input{fleqn.clo} + \global\@twocolumntrue +%% +%% End of option '5p' +%% +\fi\fi\fi + +\def\journal#1{\gdef\@journal{#1}} + \let\@journal\@empty +\newenvironment{frontmatter}{}{\maketitle} + +\long\def\@makecaption#1#2{% + \vskip\abovecaptionskip\footnotesize + \sbox\@tempboxa{#1: #2}% + \ifdim \wd\@tempboxa >\hsize + #1: #2\par + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} + +%\RequirePackage[expansion=alltext,stretch=30]{microtype} +\AtBeginDocument{\@ifpackageloaded{hyperref} + {\def\@linkcolor{blue} + \def\@anchorcolor{blue} + \def\@citecolor{blue} + \def\@filecolor{blue} + \def\@urlcolor{blue} + \def\@menucolor{blue} + \def\@pagecolor{blue} +}{}} diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 4de3137b9b2..669a9b11870 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -64,7 +64,7 @@ my @WorkingTLP = qw( ean13isbn easy ebong ebsthesis eCards ecc ecclesiastic economic ecv ed edmac edmargin ednotes eemeir egameps egplot eijkhout - ellipsis elpres elsevier elsevier-bib + ellipsis elpres elsarticle elsevier elsevier-bib emulateapj emp encxvlna endfloat endheads engrec enumitem envbig environ envlab epigrafica epigraph epiolmec eplain diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index e6eeda4860b..9934a027d2a 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -138,6 +138,7 @@ depend egplot depend ellipsis depend elmath depend elpres +depend elsarticle depend em depend emulateapj depend endfloat diff --git a/Master/tlpkg/tlpsrc/elsarticle.tlpsrc b/Master/tlpkg/tlpsrc/elsarticle.tlpsrc new file mode 100644 index 00000000000..522cacf153a --- /dev/null +++ b/Master/tlpkg/tlpsrc/elsarticle.tlpsrc @@ -0,0 +1,2 @@ +name elsarticle +category Package -- cgit v1.2.3