1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/elsarticle/doc/rvdtx.sty Fri Nov 18 16:18:02 2016 +0100
1.3 @@ -0,0 +1,479 @@
1.4 +%
1.5 +%
1.6 +% File: rvdtx.sty
1.7 +%
1.8 +% Auxiliary package to format *.dtx documents.
1.9 +%
1.10 +% Copyright (c) 2008, 2009 CV Radhakrishnan <cvr@river-valley.org>,
1.11 +%
1.12 +% This file may be distributed and/or modified under the conditions
1.13 +% of the LaTeX Project Public License, either version 1.2 of this
1.14 +% license or (at your option) any later version. The latest version
1.15 +% of this license is in:
1.16 +%
1.17 +% http://www.latex-project.org/lppl.txt
1.18 +%
1.19 +% and version 1.2 or later is part of all distributions of LaTeX
1.20 +% version 1999/12/01 or later.
1.21 +%
1.22 +%
1.23 +\newcounter{colorscheme}
1.24 +
1.25 +\newif\if@xcolor \@xcolorfalse
1.26 +\newif\if@mylogo \@mylogofalse
1.27 +
1.28 +\DeclareOption{mylogo}{\global\@mylogotrue}
1.29 +\DeclareOption{green}{\setcounter{colorscheme}{1}}
1.30 +\DeclareOption{orange}{\setcounter{colorscheme}{0}}
1.31 +\DeclareOption{xcolor}{\global\@xcolortrue}
1.32 +\DeclareOption{qone}{\AtEndOfPackage{\global\let\dtxmark\dtxmarkone}}
1.33 +\DeclareOption{qtwo}{\AtEndOfPackage{\global\let\dtxmark\dtxmarktwo}}
1.34 +
1.35 +\ProcessOptions
1.36 +\def\loadXcolor{\if@xcolor\RequirePackage[dvipsnames,svgnames]{xcolor}\fi}
1.37 +
1.38 +\loadXcolor
1.39 +\ifcase\thecolorscheme
1.40 +%
1.41 +% Orange color spec (default)
1.42 +%
1.43 + \colorlet{itemcolor}{brown}
1.44 + \colorlet{verbcolor}{Sepia}
1.45 + \colorlet{botrulecolor}{orange!25}
1.46 + \colorlet{botbgcolor}{orange!15}
1.47 + \colorlet{botcolor}{orange!80}
1.48 + \colorlet{pgrulecolor}{orange}
1.49 + \colorlet{pgbgcolor}{white}
1.50 +
1.51 + \colorlet{quicklinkrulecolor}{orange!40}
1.52 + \colorlet{quicklinkcolor}{brown}
1.53 + \colorlet{topverticalrule}{brown}
1.54 + \colorlet{titlecolor}{brown}
1.55 + \colorlet{hlinkcolor}{brown}
1.56 + \colorlet{hlinktricolor}{orange!70}
1.57 + \colorlet{linkcolor}{brown}
1.58 + \colorlet{urlcolor}{brown}
1.59 +
1.60 +% \colorlet{arrayrulecolor}{olive!30}
1.61 + \colorlet{seccolor}{brown}
1.62 +
1.63 + \colorlet{toprulecolor}{orange!30}
1.64 + \colorlet{topbgcolor}{orange!10}
1.65 + \colorlet{topcolor}{brown!80}
1.66 +%
1.67 +%
1.68 +\or% Green color specs
1.69 +%
1.70 +%
1.71 + \colorlet{itemcolor}{OliveGreen}
1.72 + \colorlet{verbcolor}{OliveGreen}
1.73 + \colorlet{botrulecolor}{GreenYellow!25}
1.74 + \colorlet{botbgcolor}{GreenYellow!30}
1.75 + \colorlet{botcolor}{Green!80}
1.76 + \colorlet{pgrulecolor}{GreenYellow}
1.77 + \colorlet{pgbgcolor}{white}
1.78 +
1.79 + \colorlet{quicklinkrulecolor}{Green!40}
1.80 + \colorlet{quicklinkcolor}{Green}
1.81 + \colorlet{topverticalrule}{Green}
1.82 + \colorlet{titlecolor}{DarkOliveGreen}
1.83 + \colorlet{hlinkcolor}{DarkOliveGreen}
1.84 + \colorlet{hlinktricolor}{Green!70}
1.85 + \colorlet{linkcolor}{OliveGreen}
1.86 + \colorlet{urlcolor}{OliveGreen}
1.87 +
1.88 +% \colorlet{arrayrulecolor}{olive!30}
1.89 + \colorlet{seccolor}{OliveGreen}
1.90 +
1.91 + \colorlet{toprulecolor}{GreenYellow!50}
1.92 + \colorlet{topbgcolor}{GreenYellow!20}
1.93 + \colorlet{topcolor}{GreenYellow!80}
1.94 +\fi
1.95 +
1.96 +\def\floatpagefraction{.99}
1.97 +\usepackage{geometry}
1.98 +\geometry{top=2in,
1.99 + bottom=1in,
1.100 + left=2in,
1.101 + right=1in,
1.102 + a4paper}
1.103 +
1.104 +%\DeclareRobustCommand{\LaTeX}{L\kern-.25em%
1.105 +% {\sbox\z@ T%
1.106 +% \vbox to\ht\z@{%
1.107 +% {\check@mathfonts
1.108 +% \fontsize\sf@size\z@
1.109 +% \math@fontsfalse\selectfont
1.110 +% A}%
1.111 +% \vss}%
1.112 +% }%-.10em%
1.113 +% \TeX
1.114 +%}
1.115 +\DeclareRobustCommand{\LaTeX}{L\kern-.25em%
1.116 + {\sbox\z@ T%
1.117 + \vbox to\ht\z@{%
1.118 + \hbox{%
1.119 + \check@mathfonts
1.120 + \fontsize\sf@size\z@
1.121 + \math@fontsfalse\selectfont
1.122 + A}%
1.123 + \vss}%
1.124 + }%
1.125 + \kern-.10em%
1.126 + \TeX}
1.127 +
1.128 +\RequirePackage{pdfwidgets}
1.129 +
1.130 +\RequirePackage{comment,xspace}
1.131 +\def\xml{\textsc{xml}\xspace}
1.132 +\def\latex{\LaTeX\xspace}
1.133 +\def\pdf{\textsc{pdf}\xspace}
1.134 +\def\pdfa{\textsc{pdf/a-1}b\xspace}
1.135 +\def\pdfx{\textsc{pdf/x-1}a\xspace}
1.136 +\def\xmp{\textsc{xmp}\xspace}
1.137 +\def\pdftex{\textsc{pdf\TeX}\xspace}
1.138 +\def\defmacro#1{\texttt{\@bsl#1}}
1.139 +\def\thanh{H\`an Th\^e Th\`anh\xspace}
1.140 +\def\gnulinux{\textsc{gnu/linux}\xspace}
1.141 +
1.142 +\let\@DRAFTout@Hook\@empty
1.143 +\newcommand{\DRAFTout}{\g@addto@macro\@DRAFTout@Hook}
1.144 +\newcommand{\@DRAFTout@Out}{%
1.145 + \afterassignment\@DRAFTout@Test
1.146 + \global\setbox\@cclv=
1.147 + }
1.148 +\newcommand{\@DRAFTout@Test}{%
1.149 + \ifvoid\@cclv\relax
1.150 + \aftergroup\@DRAFTout@Output
1.151 + \else
1.152 + \@DRAFTout@Output
1.153 + \fi%
1.154 + }
1.155 +\newcommand{\@DRAFTout@Output}{%
1.156 + \@DRAFTout@Hook%
1.157 + \@DRAFTout@Org@Out\box\@cclv%
1.158 + }
1.159 +\newcommand{\@DRAFTout@Org@Out}{}
1.160 +\newcommand*{\@DRAFTout@Init}{%
1.161 + \let\@DRAFTout@Org@Out\shipout
1.162 + \let\shipout\@DRAFTout@Out
1.163 + }
1.164 +\newdimen\OHeight
1.165 +\setlength\OHeight{\textheight}
1.166 +\addtolength\OHeight{\headheight}
1.167 +\addtolength\OHeight{\headsep}
1.168 +\addtolength\OHeight{\footskip}
1.169 +
1.170 +
1.171 +\newif\ifoverlay\overlayfalse
1.172 +
1.173 +\AtBeginDocument{\@DRAFTout@Init}
1.174 +\newcommand{\@DraftOverlay@Hook}{}
1.175 +\newcommand{\AddToDraftOverlay}{\g@addto@macro\@DraftOverlay@Hook}
1.176 +\newcommand{\ClearDraftOverlay}{\let\@DraftOverlay@Hook\@empty}
1.177 +\newcommand{\@DraftOverlay}{%
1.178 + \ifx\@DraftOverlay@Hook\@empty
1.179 + \else
1.180 + \bgroup
1.181 + \@tempdima=1in
1.182 + \@tempcnta=\@tempdima
1.183 + \@tempcntb=-\@tempdima
1.184 + \advance\@tempcntb\paperheight
1.185 + \ifoverlay
1.186 + \global\setbox\@cclv\vbox{%
1.187 + \box\@cclv
1.188 + \vbox{\let\protect\relax%
1.189 + \unitlength=1pt%
1.190 + \pictur@(0,0)(\strip@pt\@tempdima,\strip@pt\@tempdimb)%
1.191 + \@DraftOverlay@Hook%
1.192 + \endpicture}}%
1.193 + \else
1.194 + \global\setbox\@cclv\vbox{%
1.195 + \vbox{\let\protect\relax%
1.196 + \unitlength=1sp%
1.197 + \pictur@(0,0)(\@tempcnta,\@tempcntb)%
1.198 + \@DraftOverlay@Hook%
1.199 + \endpicture}%
1.200 + \box\@cclv}%
1.201 + \fi
1.202 + \egroup
1.203 + \fi
1.204 +}
1.205 +
1.206 +\definecolor{gray30}{gray}{.7}
1.207 +\definecolor{gray20}{gray}{.8}
1.208 +\definecolor{gray10}{gray}{.9}
1.209 +
1.210 +\DRAFTout{\@DraftOverlay}
1.211 +\long\def\puttext(#1)#2{\AddToDraftOverlay{%
1.212 + \setlength{\unitlength}{1pt}\thinlines%
1.213 + \put(#1){#2}}}
1.214 +
1.215 +\RequirePackage{shortvrb}
1.216 +\MakeShortVerb{\|}
1.217 +\RequirePackage{amsfonts,amssymb}
1.218 +\IfFileExists{pxfonts.sty}{\RequirePackage{pxfonts}}{}
1.219 +%\IfFileExists{charter.sty}{\RequirePackage{charter}}{}
1.220 +\IfFileExists{lfr.sty}{\RequirePackage[scaled=.85]{lfr}}{}
1.221 +%\IfFileExists{prima.sty}{\RequirePackage[scaled=.8]{prima}}{}
1.222 +
1.223 +\def\theCodelineNo{\reset@font\tiny\arabic{CodelineNo}}
1.224 +
1.225 +\def\@seccntformat#1{\llap{\csname the#1\endcsname.\hspace*{6pt}}}
1.226 +\def\section{\@startsection {section}{1}{\z@}%
1.227 + {-3.5ex \@plus -1ex \@minus -.2ex}%
1.228 + {2.3ex \@plus.2ex}%
1.229 + {\normalfont\large\bfseries\color{seccolor}}}
1.230 +\def\subsection{\@startsection{subsection}{2}{\z@}%
1.231 + {-2.25ex\@plus -1ex \@minus -.2ex}%
1.232 + {1.5ex \@plus .2ex}%
1.233 + {\normalfont\normalsize\bfseries\color{seccolor}}}
1.234 +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}%
1.235 + {-1.25ex\@plus -1ex \@minus -.2ex}%
1.236 + {1.5ex \@plus .2ex}%
1.237 + {\normalfont\normalsize\bfseries\color{seccolor}}}
1.238 +
1.239 +%\RequirePackage[draft]{pdfdraftcopy}
1.240 +% \draftstring{}
1.241 + \puttext(0,36){\botstring}%
1.242 + \puttext(0,840){\copy\topbox}
1.243 +\if@mylogo
1.244 + \puttext(531,829){\cvrlogo}
1.245 +\fi
1.246 +
1.247 +\RequirePackage{colortbl}
1.248 +%\arrayrulecolor{arrayrulecolor}
1.249 +\let\shline\hline
1.250 +\def\hline{\noalign{\vskip3pt}\shline\noalign{\vskip4pt}}
1.251 +
1.252 +\RequirePackage[pdftex,colorlinks]{hyperref}
1.253 +\def\Hlink#1#2{\hyperlink{#2}{\color{hlinktricolor}%
1.254 + $\blacktriangleright$~\color{hlinkcolor}#1}}
1.255 + \def\@linkcolor{linkcolor}
1.256 + \def\@urlcolor{urlcolor}
1.257 +
1.258 +\pagestyle{empty}
1.259 +\def\version#1{\gdef\@version{#1}}
1.260 +\def\@version{1.0}
1.261 +\def\contact#1{\gdef\@contact{#1}}
1.262 +\def\author#1{\gdef\@author{#1}}
1.263 +\def\@author{River Valley Technologies}
1.264 +\def\@contact{\texttt{support@river-valley.com}}
1.265 +\def\keywords#1{\gdef\@keywords{#1}}
1.266 +\def\@keywords{\LaTeX, \xml}
1.267 +
1.268 +\long\def\Hrule{\\[-4pt]\hspace*{-3em}%
1.269 + {\color{quicklinkrulecolor}\rule{\linewidth}{.1pt}}\\}
1.270 +
1.271 +\long\def\dtxmarkone[#1][#2]#3#4#5{\def\next{#1}%
1.272 + \ifcase\next\or\Hlink{#4}{#3}\Hrule \fi}
1.273 +
1.274 +\newcounter{dtx}
1.275 +
1.276 +\long\def\dtxmarktwo[#1][#2]#3#4#5{\def\next{#1}%
1.277 + \stepcounter{dtx}\parbox{.45\linewidth}%
1.278 + {\ifcase\next\or\Hlink{#4}{#3}\fi}%
1.279 + \ifodd\thedtx\relax\else\Hrule\fi}
1.280 +
1.281 +\let\dtxmark\dtxmarkone
1.282 +
1.283 +\newbox\topbox
1.284 +\long\def\maketitle{\global\setbox\topbox=\vbox{\hsize=\paperwidth
1.285 + \parindent=0pt
1.286 + \fcolorbox{toprulecolor}{topbgcolor}%
1.287 + {\parbox[t][2in][c]{\paperwidth}%
1.288 + {\hspace*{15mm}%
1.289 + \parbox[c]{.35\paperwidth}{\fontsize{18pt}{20pt}%
1.290 + \raggedright\normalfont\sffamily \selectfont
1.291 + \color{titlecolor} \@title\\[6pt]
1.292 + {\normalsize\rmfamily\scshape\@author}}%
1.293 +% {\footnotesize\textsc{keywords:} \@keywords}}%
1.294 + \hfill
1.295 + \parbox[c][2in][c]{1mm}{\color{topverticalrule}%
1.296 + \rule{.1pt}{2in}}%
1.297 + \hfill
1.298 + \parbox[c][2in][c]{.35\paperwidth}%
1.299 + {\normalfont\footnotesize\sffamily\color{quicklinkcolor}%
1.300 + \vspace*{6pt} QUICK LINKS\Hrule
1.301 + \IfFileExists{tmp.out}{\input tmp.out}{}%
1.302 + }\hspace*{5mm}%
1.303 + }%
1.304 + }%
1.305 + }%
1.306 +}
1.307 +\gdef\botstring{\fcolorbox{botrulecolor}{botbgcolor}%
1.308 + {\parbox[t][.5in][t]{\paperwidth}%
1.309 + {\normalfont\sffamily\footnotesize%
1.310 + \color{botcolor}%
1.311 + \hspace*{5mm}\parbox[c][.5in][c]{.45\paperwidth}%
1.312 + {\raggedright \textcopyright\ 2009, Elsevier Ltd.
1.313 +% \href{http://www.river-valley.com}{%
1.314 +% http://www.river-valley.com}\\
1.315 +% \textsc{sjp} Building, Cotton Hills, Trivandrum
1.316 +% 695014, India\\ 9, Browns Court, Kennford,
1.317 +% Exeter, United Kingdom
1.318 + Bugs, feature requests, suggestions and comments\\
1.319 + shall be mailed to \href{mailto:elsarticle@river-valley.com}
1.320 + {$<$elsarticle@river-valley.com$>$}.
1.321 + }\hfill%
1.322 + \parbox[c][.5in][c]{1cm}
1.323 + {\centering\sffamily\mdseries
1.324 + \fcolorbox{pgrulecolor}{pgbgcolor}{\thepage}%
1.325 + }\hfill
1.326 + \parbox[c][.5in][c]{.45\paperwidth}
1.327 + {\raggedleft\begin{tabular}{rl}%
1.328 + Version:&\@version\\
1.329 + Date:&\@date\\
1.330 + Contact:&\@contact
1.331 + \end{tabular}\hspace*{5mm}%
1.332 + }%
1.333 + }%
1.334 + }%
1.335 + }
1.336 +
1.337 +\def\MacroFont{\fontencoding\encodingdefault
1.338 + \fontfamily\ttdefault
1.339 + \fontseries\mddefault
1.340 + \fontshape\updefault
1.341 + \color{verbcolor}\small}%
1.342 +
1.343 +\def\verbatim@font{\normalfont\color{verbcolor}\ttfamily}
1.344 +
1.345 +\def\verb{\relax\ifmmode\hbox\else\leavevmode\null\fi
1.346 + \bgroup
1.347 + \verb@eol@error \let\do\@makeother \dospecials
1.348 + \verbatim@font\@noligs
1.349 + \@ifstar\@sverb\@verb}
1.350 +
1.351 +
1.352 +\def\@lbr{\expandafter\@gobble\string\{}
1.353 +\def\@rbr{\expandafter\@gobble\string\}}
1.354 +\def\@bsl{\expandafter\@gobble\string\\}
1.355 +\def\@Bsl#1{\texttt{\@bsl#1}\xspace}
1.356 +\def\trics#1{\protect\@Bsl{#1}}
1.357 +\def\onecs#1{\protect\@Bsl{#1}}
1.358 +%\let\trics\onecs
1.359 +\@ifundefined{c@Glossary}{}{\c@GlossaryColumns=1
1.360 + \c@IndexColumns=2}
1.361 +
1.362 +\def\index@prologue{\section{Index}%
1.363 + \markboth{Index}{Index}%
1.364 +% Numbers written in italic refer to the page
1.365 +% where the corresponding entry is described;
1.366 +% numbers underlined refer to the
1.367 +% \ifcodeline@index
1.368 +% code line of the
1.369 +% \fi
1.370 +% definition; numbers in roman refer to the
1.371 +% \ifcodeline@index
1.372 +% code lines
1.373 +% \else
1.374 +% pages
1.375 +% \fi
1.376 +% where the entry is used.
1.377 + }
1.378 +
1.379 +\@ifundefined{theglossary}{}{%
1.380 +\renewenvironment{theglossary}{%
1.381 + \glossary@prologue%][\GlossaryMin]%
1.382 + \GlossaryParms \let\item\@idxitem \ignorespaces}%
1.383 + {}}
1.384 +
1.385 +\newenvironment{decl}[1][]%
1.386 + {\par\small\addvspace{1.5ex plus 1ex}%
1.387 + \vskip -\parskip
1.388 + \ifx\relax#1\relax
1.389 + \def\@decl@date{}%
1.390 + \else
1.391 + \def\@decl@date{\NEWfeature{#1}}%
1.392 + \fi
1.393 + \noindent%\hspace{-\leftmargini}%
1.394 + \begin{tabular}{l}\hline\ignorespaces}%
1.395 + {\\\hline\end{tabular}\nobreak\@decl@date\par\nobreak
1.396 + \vspace{0.75ex}\vskip -\parskip\ignorespacesafterend\noindent}
1.397 +
1.398 +\newif\ifhave@multicol
1.399 +\newif\ifcodeline@index
1.400 +
1.401 +\IfFileExists{multicol.sty}{\have@multicoltrue
1.402 + \RequirePackage{multicol}%
1.403 + }{}
1.404 +
1.405 +\newdimen\IndexMin \IndexMin = 80pt
1.406 +\newcount\c@IndexColumns \c@IndexColumns = 2
1.407 +\ifhave@multicol
1.408 + \renewenvironment{theindex}
1.409 + {\begin{multicols}\c@IndexColumns[\index@prologue][\IndexMin]%
1.410 + \IndexParms \let\item\@idxitem \ignorespaces}%
1.411 + {\end{multicols}}
1.412 +\else
1.413 + \typeout{Can't find multicol.sty -- will use normal index layout if
1.414 + necessary.}
1.415 + \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
1.416 + \columnseprule \z@ \columnsep 35\p@
1.417 + \twocolumn[\index@prologue]%
1.418 + \IndexParms \let\item\@idxitem \ignorespaces}
1.419 + \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
1.420 +\fi
1.421 +\long\def\IndexPrologue#1{\@bsphack\def\index@prologue{#1}\@esphack}
1.422 +\@ifundefined{index@prologue}
1.423 + {\def\index@prologue{\section{Index}%
1.424 + \markboth{Index}{Index}%
1.425 +% Numbers written in italic refer to the page
1.426 +% where the corresponding entry is described;
1.427 +% numbers underlined refer to the
1.428 +% \ifcodeline@index
1.429 +% code line of the
1.430 +% \fi
1.431 +% definition; numbers in roman refer to the
1.432 +% \ifcodeline@index
1.433 +% code lines
1.434 +% \else
1.435 +% pages
1.436 +% \fi
1.437 +% where the entry is used.
1.438 + }}{}
1.439 +\@ifundefined{IndexParms}
1.440 + {\def\IndexParms{%
1.441 + \parindent \z@
1.442 + \columnsep 15pt
1.443 + \parskip 0pt plus 1pt
1.444 + \rightskip 15pt
1.445 + \mathsurround \z@
1.446 + \parfillskip=-15pt
1.447 + \footnotesize
1.448 + \def\@idxitem{\par\hangindent 30pt}%
1.449 + \def\subitem{\@idxitem\hspace*{15pt}}%
1.450 + \def\subsubitem{\@idxitem\hspace*{25pt}}%
1.451 + \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}%
1.452 + }}{}
1.453 +\def\efill{\hfill\nopagebreak}%
1.454 +\def\dotfill{\leaders\hbox to.6em{\hss .\hss}\hskip\z@ plus 1fill}%
1.455 +\def\dotfil{\leaders\hbox to.6em{\hss .\hss}\hfil}%
1.456 +\def\pfill{\unskip~\dotfill\penalty500\strut\nobreak
1.457 + \dotfil~\ignorespaces}%
1.458 +
1.459 +\let\scan@allowedfalse\relax
1.460 +
1.461 +\def\tlformat#1{\begingroup\Large
1.462 + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv}
1.463 + \fontseries{m}%
1.464 + \selectfont\color{white}\huge#1}%
1.465 + \endgroup}
1.466 +\def\tlFormat#1{\begingroup\Large
1.467 + \parbox[c][1.25em][c]{1.25em}{\centering\fontfamily{phv}
1.468 + \fontseries{m}%
1.469 + \selectfont\color{black}\huge#1}%
1.470 + \endgroup}
1.471 +\def\cvrlogo{\begingroup\fboxsep=2pt
1.472 + \colorbox{olive}{\tlformat{c}}%
1.473 + \colorbox{blue}{\tlformat{v}}%
1.474 + \colorbox{red}{\tlformat{r}}
1.475 + \endgroup}
1.476 +
1.477 +
1.478 +\endinput
1.479 +
1.480 +%%
1.481 +%% End of file 'rvdtx.sty'
1.482 +%%