From: Don Armstrong Date: Tue, 7 Mar 2006 21:58:17 +0000 (+0000) Subject: add envlab to texmf lib X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;ds=sidebyside;h=38d01b091fbaef3773f5a99dd21da68d4a605a16;p=lib.git add envlab to texmf lib --- diff --git a/texmf/envlab.sty b/texmf/envlab.sty new file mode 100644 index 0000000..3d1db1e --- /dev/null +++ b/texmf/envlab.sty @@ -0,0 +1,617 @@ +%% +%% This is file `envlab.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% envlab.dtx (with options: `package') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from envlab.sty. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file envlab.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +\ProvidesPackage{envlab} +[1997/07/16 v1.2 Envelopes and Labels] +%% +%% Copyright Boris Veytsman 1996, 1997 +%% +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% \changes{v1.2}{1996/07/16}{Updated User Guide} +\NeedsTeXFormat{LaTeX2e} +\def\envlab@oops{% + \PackageError{envlab}% + {Envlab is used outside of \MessageBreak% + a letter-compatible documentclass}% + {You are trying to use Envelopes & Labels\MessageBreak% + package, but your documentclass does not\MessageBreak% + understand address formatting commands.\MessageBreak% + Try standard document class letter\MessageBreak}} +\def\envlab@ok{% + \PackageInfo{envlab}% + {Envelopes & Labels package: found makelabels...\MessageBreak% + Seems everything is OK. Good luck.}} +\@ifundefined{makelabels}{\envlab@oops}{\envlab@ok} +\newif\if@envelope +\@envelopetrue +\newif\if@biglabel +\@biglabelfalse +\newif\if@rotateenvelopes +\@rotateenvelopestrue +\newif\if@printreturnaddress +\@printreturnaddresstrue +\newcount\@envelopeposition +\@envelopeposition=0\relax +\newif\if@pswait +\@pswaitfalse +\newif\if@psautotray +\@psautotrayfalse +\newtoks\PSEnvelopeTray +\PSEnvelopeTray={/otherenvelopetray } +\newif\if@barcodes +\newif\if@alwaysbarcodes +\@barcodestrue +\@alwaysbarcodesfalse +\newif\if@EL@redefine@opening +\@EL@redefine@openingfalse +\newif\if@capitalizeaddress +\@capitalizeaddresstrue +\newlength{\EnvelopeWidth} +\newlength{\EnvelopeHeight} +\newlength{\EnvelopeTopMargin} +\newlength{\EnvelopeLeftMargin} +\setlength{\EnvelopeLeftMargin}{0pt} +\newlength{\LabelWidth} +\newlength{\LabelHeight} +\newlength{\LabelTopMargin} +\newlength{\LabelLeftMargin} +\newlength{\LabelRightMargin} +\newcounter{LabelMaxCol} +\newcounter{LabelMaxRow} +\newlength{\FromAddressTopMargin} +\newlength{\FromAddressLeftMargin} +\newlength{\FromAddressHeight} +\newlength{\FromAddressWidth} +\newlength{\ToAddressTopMargin} +\newlength{\ToAddressLeftMargin} +\newlength{\ToAddressWidth} +\DeclareRobustCommand{\SetEnvelope}[3][0pt]{% + \@envelopetrue% + \@biglabelfalse% + \setlength{\EnvelopeTopMargin}{#1}% + \setlength{\EnvelopeWidth}{#2}% + \setlength{\EnvelopeHeight}{#3}% + \setlength{\FromAddressTopMargin}{0.5in}% + \setlength{\FromAddressLeftMargin}{0.5in}% + \setlength{\FromAddressHeight}{0.33\EnvelopeHeight}% + \setlength{\FromAddressWidth}{0.5\EnvelopeWidth}% + \setlength{\ToAddressTopMargin}{0.5in}% + \setlength{\ToAddressLeftMargin}{0.5in}% + \setlength{\ToAddressWidth}{3in}} +\DeclareRobustCommand{\SetLabel}[7]{% + \@envelopefalse% + \@biglabelfalse% + \setlength{\LabelWidth}{#1}% + \setlength{\LabelHeight}{#2}% + \setlength{\LabelTopMargin}{#3}% + \setlength{\LabelLeftMargin}{#4}% + \setlength{\LabelRightMargin}{#5}% + \setcounter{LabelMaxCol}{#6}% + \setcounter{LabelMaxRow}{#7}% + \setlength{\ToAddressTopMargin}{0.1in}% + \setlength{\ToAddressLeftMargin}{0.2in}% + \setlength{\ToAddressWidth}{\LabelWidth}% + \addtolength{\ToAddressWidth}{-\ToAddressLeftMargin}% + \addtolength{\ToAddressWidth}{-\LabelRightMargin}} +\DeclareRobustCommand{\SetBigLabel}[7]{% + \@envelopefalse% + \@biglabeltrue% + \setlength{\LabelWidth}{#1}% + \setlength{\LabelHeight}{#2}% + \setlength{\LabelTopMargin}{#3}% + \setlength{\LabelLeftMargin}{#4}% + \setlength{\LabelRightMargin}{#5}% + \setcounter{LabelMaxCol}{#6}% + \setcounter{LabelMaxRow}{#7}% + \setlength{\FromAddressTopMargin}{0.0in}% + \setlength{\FromAddressLeftMargin}{0.5in}% + \setlength{\FromAddressHeight}{0.33\LabelHeight}% + \setlength{\ToAddressTopMargin}{0.1in}% + \setlength{\ToAddressLeftMargin}{0.5in}% + \setlength{\ToAddressWidth}{\LabelWidth}% + \addtolength{\ToAddressWidth}{-\ToAddressLeftMargin}% + \addtolength{\ToAddressWidth}{-\LabelRightMargin}% + \setlength{\FromAddressWidth}{\ToAddressWidth}} +\DeclareOption{businessenvelope}{\SetEnvelope{9.5in}{4.125in}% + \PSEnvelopeTray={/com10envelopetray }} +\DeclareOption{executiveenvelope}{\SetEnvelope{7.5in}{3.875in}% + \PSEnvelopeTray={/monarcenvelopetray }} +\DeclareOption{bookletenvelope}{\SetEnvelope{10.5in}{7.5in}} +\DeclareOption{personalenvelope}{\SetEnvelope{6.5in}{3.625in}} +\DeclareOption{c6envelope}{\SetEnvelope{162mm}{114mm}} +\DeclareOption{c65envelope}{\SetEnvelope{224mm}{114mm}} +\DeclareOption{c5envelope}{\SetEnvelope{229mm}{162mm}% + \PSEnvelopeTray={/162x229cenvelopetray }} +\DeclareOption{dlenvelope}{\SetEnvelope{220mm}{110mm}% + \PSEnvelopeTray={/dlenvelopetray }} +\DeclareOption{avery5160label}{% + \SetLabel{2.75in}{1in}{0.5in}{0.19in}{0.12in}{3}{10}} +\DeclareOption{avery5161label}{% + \SetLabel{4.19in}{1in}{0.5in}{0.16in}{0.19in}{2}{10}} +\DeclareOption{avery5162label}{% + \SetLabel{4.19in}{1.33in}{0.83in}{0.16in}{0.19in}{2}{7}} +\DeclareOption{avery5163label}{% + \SetLabel{4.19in}{2in}{0.5in}{0.16in}{0.19in}{2}{5}} +\DeclareOption{avery5164label}{% + \SetLabel{4.19in}{3.33in}{0.5in}{0.16in}{0.19in}{2}{3}} +\DeclareOption{herma4625label}{% + \SetLabel{105mm}{42.3mm}{0mm}{5mm}{5mm}{2}{7}} +\DeclareOption{avery5262label}{% + \SetLabel{110mm}{34mm}{21mm}{4mm}{5mm}{2}{7}} +\DeclareOption{avery5163biglabel}{% + \SetBigLabel{4.19in}{2in}{0.5in}{0.16in}{0.19in}{2}{5}% + \setlength{\ToAddressTopMargin}{0.1in}}% +\DeclareOption{avery5164biglabel}{% + \SetBigLabel{4.19in}{3.33in}{0.5in}{0.16in}{0.19in}{2}{3}}% +\DeclareOption{rotateenvelopes}{\@rotateenvelopestrue} +\DeclareOption{norotateenvelopes}{\@rotateenvelopesfalse} +\DeclareOption{centerenvelopes}{\@envelopeposition=0\relax} +\DeclareOption{leftenvelopes}{\@envelopeposition=1\relax} +\DeclareOption{rightenvelopes}{\@envelopeposition=2\relax} +\DeclareOption{customenvelopes}{\@envelopeposition=3\relax} +\DeclareOption{printbarcodes}{\@barcodestrue} +\DeclareOption{noprintbarcodes}{\@barcodesfalse\@alwaysbarcodesfalse} +\DeclareOption{alwaysbarcodes}{\@alwaysbarcodestrue\@barcodestrue} +\DeclareOption{noalwaysbarcodes}{\@alwaysbarcodesfalse} +\DeclareOption{capaddress}{\@capitalizeaddresstrue} +\DeclareOption{nocapaddress}{\@capitalizeaddressfalse} +\DeclareOption{printreturnaddress}{\@printreturnaddresstrue} +\DeclareOption{noprintreturnaddress}{\@printreturnaddressfalse} +\DeclareOption{pswait}{\@pswaittrue\@psautotrayfalse} +\DeclareOption{nopswait}{\@pswaitfalse} +\DeclareOption{psautotray}{\@psautotraytrue\@pswaitfalse} +\DeclareOption{nopsautotray}{\@psautotrayfalse} +\DeclareOption{re}{\@EL@redefine@openingtrue} +\DeclareOption{nore}{\@EL@redefine@openingfalse} +\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{graphics}} +\ExecuteOptions{businessenvelope,rotateenvelopes,centerenvelopes} +\ExecuteOptions{printbarcodes,capaddress} +\ExecuteOptions{nopswait,printreturnaddress,nopsautotray,nore} +\InputIfFileExists{envlab.cfg}{% + \typeout{Loading configuration file envlab.cfg}}{% + \typeout{Configuration file envlab.cfg is not found}} +\ProcessOptions +\IfFileExists{graphics.sty}{% + \RequirePackage{graphics}}{% + \PackageWarning{envlab}{% + You don't have the graphics package!\MessageBreak + Probably you will not be able to print\MessageBreak + envelopes sidewise. \MessageBreak}} +\def\@beginlabelshook{\relax} +\def\@beginlabelpagehook{\relax} +\def\AtBeginLabels{\g@addto@macro\@beginlabelshook} +\def\AtBeginLabelPage{\g@addto@macro\@beginlabelpagehook} +\def\PSwait{\special{ps: clear grestore @manualfeed 0 0 bop}} +\edef\PSautotray{% + \special{ps:clear grestore + statusdict begin false setduplexmode + /manualfeed true def + \the\PSEnvelopeTray end 0 0 bop }} +\if@pswait + \AtBeginLabels{\PSwait}% +\else + \if@psautotray + \AtBeginLabels{\PSautotray}% + \fi +\fi +\newcounter{LabelCountCol} +\newcounter{LabelCountRow} +\newcounter{LabelOffsetCol} +\newcounter{LabelOffsetRow} +\setcounter{LabelOffsetCol}{1} +\setcounter{LabelOffsetRow}{1} +\DeclareRobustCommand{\FirstLabel}[2]{% + \setcounter{LabelOffsetRow}{#1}% + \setcounter{LabelOffsetCol}{#2}} +\def\@toaddressfont{% + \ifcase\@ptsize \large\or\normalsize\or\small\fi% + \sffamily\selectfont} +\def\@fromaddressfont{% + \ifcase\@ptsize \normalsize\or\small\or\footnotesize\fi% + \normalfont} +\def\returnaddress{\fromaddress} +\def\startlabels{% + \clearpage% + \pagestyle{empty}% + \setlength{\topmargin}{-1.0in}% + \if@envelope% + \addtolength{\topmargin}{\EnvelopeTopMargin}% + \else \addtolength{\topmargin}{\LabelTopMargin}% + \fi% + \setlength{\headheight}{0pt}% + \setlength{\headsep}{0pt}% + \setlength{\footskip}{0pt}% + \setlength{\textheight}{200in}% + \setlength\paperheight{\textheight}% + \global\vsize=200in\relax% + \addtolength{\textheight}{-\topmargin}% + \addtolength{\textheight}{-1.0in}% + \setlength{\oddsidemargin}{-1.0in}% + \if@envelope\relax% + \else% + \addtolength{\oddsidemargin}{\LabelLeftMargin}% + \fi% + \setlength{\evensidemargin}{\oddsidemargin}% + \setlength{\textwidth}{20in}% + \hsize=20in% + \baselineskip=0pt% + \lineskip=0pt% + \parindent=0pt% + \if@envelope + \ifcase\the\@envelopeposition% + \setlength{\EnvelopeLeftMargin}{\paperwidth}% + \if@rotateenvelopes% + \addtolength{\EnvelopeLeftMargin}{-\EnvelopeHeight}% + \else% + \addtolength{\EnvelopeLeftMargin}{-\EnvelopeWidth}% + \fi% + \setlength{\EnvelopeLeftMargin}{0.5\EnvelopeLeftMargin}% + \or% + \setlength{\EnvelopeLeftMargin}{0pt}% + \or% + \setlength{\EnvelopeLeftMargin}{\paperwidth}% + \if@rotateenvelopes% + \addtolength{\EnvelopeLeftMargin}{-\EnvelopeHeight}% + \else% + \addtolength{\EnvelopeLeftMargin}{-\EnvelopeWidth}% + \fi% + \else% + \relax% + \fi% + \else% + \setcounter{LabelCountCol}{\theLabelOffsetCol}% + \setcounter{LabelCountRow}{\theLabelOffsetRow}% + \ifnum\theLabelOffsetRow>1% + \null% + \loop \vspace*{\LabelHeight}% + \addtocounter{LabelOffsetRow}{-1} \ifnum\theLabelOffsetRow>1% + \repeat% + \fi% + \ifnum\theLabelOffsetCol>1% + \loop \hspace*{\LabelWidth}\nolinebreak% + \addtocounter{LabelOffsetCol}{-1} \ifnum\theLabelOffsetCol>1% + \repeat% + \fi% + \nopagebreak% + \fi% + \spaceskip0pt\relax% + \xspaceskip 0pt\relax% + \clubpenalty=0% + \widowpenalty=0% + \raggedbottom% + \sloppy% + \setlength\hfuzz{5in}% + \setlength\vfuzz{5in}% + \ignorespaces% + \@beginlabelshook% + \@beginlabelpagehook% + \nopagebreak}% +\newcommand{\PrintReturnAddress}[1]{% + \vspace*{\FromAddressTopMargin} + \null\hspace{\FromAddressLeftMargin} + \parbox[t][\FromAddressHeight]{\FromAddressWidth}% + {\@fromaddressfont \lineskip=1pt + \if@printreturnaddress #1\else\relax\fi}} +\newcommand{\PrintAddress}[1]{% + \vspace*{\ToAddressTopMargin} + \leavevmode + \null\hspace*{\ToAddressLeftMargin} + \parbox[t]{\ToAddressWidth}{% + \lineskip=1pt + \if@barcodes \PrintBarCode{#1} \fi + \@toaddressfont + \if@capitalizeaddress \@make@capitalize{#1} \else #1 \fi}} +\newcommand{\PrintLabel}[1]{% + \parbox[t][\LabelHeight]{\LabelWidth}{% + \PrintAddress{#1}}} +\newcommand{\PrintBigLabel}[2]{% + \begin{minipage}[t][\LabelHeight]{\LabelWidth}% + \baselineskip=0pt% + \lineskip=0pt% + \parindent=0pt% + \begin{center}% + \PrintReturnAddress{#1}\\% + \rule{\ToAddressWidth}{0.1pt}% + \PrintAddress{#2}% + \end{center}% + \end{minipage}} +\newcommand{\PrintEnvelope}[2]{% + \begin{minipage}[t][\EnvelopeHeight]{\EnvelopeWidth}% + \baselineskip=0pt% + \lineskip=0pt% + \parindent=0pt% + \PrintReturnAddress{#1}\\% + \begin{center}% + \PrintAddress{#2}% + \end{center}% + \end{minipage}} +\newcommand{\@PrintEnvelope}[2]{% + \if@rotateenvelopes\rotatebox{90}{\PrintEnvelope{#1}{#2}}% + \else\PrintEnvelope{#1}{#2}% + \fi} +\renewcommand{\mlabel}[2]{\ignorespaces% + \spaceskip 0pt\relax% + \xspaceskip 0pt\relax% + \if@envelope% + \leavevmode% + \hspace*{\EnvelopeLeftMargin}% + \@PrintEnvelope{#1}{#2}% + \clearpage% + \@beginlabelpagehook% + \else% + \ignorespaces% + \ifnum\theLabelCountCol>\theLabelMaxCol% + \\\nopagebreak% + \stepcounter{LabelCountRow}% + \setcounter{LabelCountCol}{1}% + \fi% + \ifnum\theLabelCountRow>\theLabelMaxRow% + \vfill\eject\@beginlabelpagehook% + \setcounter{LabelCountRow}{1}% + \setcounter{LabelCountCol}{1}% + \fi% + \if@biglabel% + \PrintBigLabel{#1}{#2}% + \else% + \PrintLabel{#2}% + \fi% + \ignorespaces\nolinebreak% + \stepcounter{LabelCountCol}% + \fi}% +\newcount\@numreturnlabels +\newcommand{\printreturnlabels}[2]{% + \@numreturnlabels=#1 + \def\@toaddressfont{\@fromaddressfont} + \@capitalizeaddressfalse + \@barcodesfalse + \startlabels + \loop \mlabel{\relax}{#2} \advance\@numreturnlabels by -1 + \ifnum\@numreturnlabels>0\repeat} +\newcommand{\PrintBarCode}[1]{% + \@extractbarcode{#1} + \@printbarcode} +\newtoks\@zipcode +\newcount\@zipcodesum +\newif\if@zipcodefound +\long\def\@finishzipcode#1{} +\long\def\@firstzipcode#1{% + \@zipcode{#1} + \@zipcodesum=#1\relax + \@zipcodefoundtrue + \@zipcodeloop} +\long\def\@continuezipcode#1{% + \@zipcode=\expandafter{\the\@zipcode#1} + \advance\@zipcodesum by #1 + \@zipcodeloop} +\long\def\@dashzipcode#1{\@zipcodeloop} +\def\@spacezipcode{% + \@zipcodefoundfalse + \afterassignment\@zipcodeloop\let\EL@temp= } +\long\def\@abortzipcode#1{% + \@zipcodefoundfalse + \@zipcodeloop} +\def\@zipcodeloop{\futurelet\EL@temp\@zipcodeloop@} +\def\@zipcodeloop@{% + \ifx \@endaddress\EL@temp \def\EL@tempa{\@finishzipcode} \else + \ifx 0\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 1\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 2\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 3\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 4\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 5\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 6\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 7\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 8\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx 9\EL@temp \if@zipcodefound \def\EL@tempa{\@continuezipcode} + \else \def\EL@tempa{\@firstzipcode} \fi \else + \ifx -\EL@temp \if@zipcodefound \def\EL@tempa{\@dashzipcode} + \else \def\EL@tempa{\@abortzipcode} \fi \else + \ifx \@sptoken\EL@temp \def\EL@tempa{\@spacezipcode} \else + \def\EL@tempa{\@abortzipcode} + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \EL@tempa} +\long\def\@extractbarcode#1{% + \@zipcodefoundfalse + \@zipcodeloop#1\@endaddress + \if@alwaysbarcodes \@zipcodefoundtrue \fi + \if@zipcodefound + \ifnum\the\@zipcodesum>0 + \loop \advance \@zipcodesum by -10 \ifnum\the\@zipcodesum>0 + \repeat + \fi + \multiply\@zipcodesum by -1 + \fi} +\newlength{\@barcodewidth} +\newlength{\@barcodeLheight} +\newlength{\@barcodeSheight} +\newlength{\@barcodeskip} +\setlength{\@barcodewidth}{0.020in} +\setlength{\@barcodeLheight}{0.125in} +\setlength{\@barcodeSheight}{0.050in} +\setlength{\@barcodeskip}{0.026in} +\DeclareRobustCommand{\@barL}{% + \rule{\@barcodewidth}{\@barcodeLheight}\hspace{\@barcodeskip}} +\DeclareRobustCommand{\@barS}{% + \rule{\@barcodewidth}{\@barcodeSheight}\hspace{\@barcodeskip}} +\def\@printonezip#1{% + \ifx1#1\@barS\@barS\@barS\@barL\@barL\else + \ifx2#1\@barS\@barS\@barL\@barS\@barL\else + \ifx3#1\@barS\@barS\@barL\@barL\@barS\else + \ifx4#1\@barS\@barL\@barS\@barS\@barL\else + \ifx5#1\@barS\@barL\@barS\@barL\@barS\else + \ifx6#1\@barS\@barL\@barL\@barS\@barS\else + \ifx7#1\@barL\@barS\@barS\@barS\@barL\else + \ifx8#1\@barL\@barS\@barS\@barL\@barS\else + \ifx9#1\@barL\@barS\@barL\@barS\@barS\else + \ifx0#1\@barL\@barL\@barS\@barS\@barS\else + \ifx S#1\def\EL@tempa{\relax}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% + \EL@tempa} +\def\@printbarcode{% + \if@zipcodefound + \mbox{% + \@barL% + \def\EL@tempa{\@printonezip}% + \expandafter\EL@tempa\the\@zipcode S% + \def\EL@tempa{\@printonezip}% + \expandafter\EL@tempa\the\@zipcodesum S% + \@barL} + \\[1ex] + \fi} +\newtoks\@addr@cap +\long\def\@finishaddrcap#1{} +\long\def\@dotcommaaddrcap#1{% + \@addrcaploop} +\long\def\@newlineaddrcap#1{% + \@addr@cap=\expandafter{\the\@addr@cap #1} + \@addrcaploop} +\long\def\@bgroupaddrcap#1{% + \@addr@cap=\expandafter{\the\@addr@cap {\MakeUppercase{#1}}} + \@addrcaploop} +\def\@spaceaddrcap{% + \@addr@cap=\expandafter{\the\@addr@cap\hspace{0.6em}} + \afterassignment\@addrcaploop\let\EL@temp= } +\def\@otheraddrcap#1{% + \@addr@cap=\expandafter{\the\@addr@cap% + \MakeUppercase{#1}\kern1pt\relax} + \@addrcaploop} +\def\@addrcaploop{\futurelet\EL@temp\@addrcaploop@} +\def\@addrcaploop@{% + \ifx \@endaddress\EL@temp \def\EL@tempa{\@finishaddrcap} \else + \ifx .\EL@temp \def\EL@tempa{\@dotcommaaddrcap} \else + \ifx ,\EL@temp \def\EL@tempa{\@dotcommaaddrcap} \else + \ifx \voidb@x\EL@temp \def\EL@tempa{\@dotcommaaddrcap} \else + \ifx \unhbox\EL@temp \def\EL@tempa{\@dotcommaaddrcap} \else + \ifx \\\EL@temp \def\EL@tempa{\@newlineaddrcap} \else + \ifx \bgroup\EL@temp \def\EL@tempa{\@bgroupaddrcap} \else + \ifx \@sptoken\EL@temp \def\EL@tempa{\@spaceaddrcap} \else + \def\EL@tempa{\@otheraddrcap} + \fi\fi\fi\fi\fi\fi\fi\fi + \EL@tempa} +\long\def\@make@capitalize#1{% + \@addr@cap={\relax} + \@addrcaploop#1\@endaddress + \the\@addr@cap} +\let\@@mlabel=\@gobbletwo +\AtEndDocument{\let\@@mlabel=\@mlabel} +\def\suppresslabels{\if@filesw\immediate\write\@auxout{% + \string\@suppresslabels}\fi} +\def\@suppresslabels{\let\@mlabel=\@gobbletwo} +\def\resumelabels{\if@filesw\immediate\write\@auxout{% + \string\@resumelabels}\fi} +\def\@resumelabels{\let\@mlabel=\@@mlabel} +\def\suppressonelabel{\if@filesw\immediate\write\@auxout{% + \string\@suppressonelabel}\fi} +\def\@suppressonelabel{\let\@old@mlabel=\@mlabel% + \def\@mlabel{% + \let\@mlabel=\@old@mlabel% + \@gobbletwo}} +\def\printonelabel{\if@filesw\immediate\write\@auxout{% + \string\@printonelabel}\fi} +\def\@printonelabel{\let\@old@mlabel=\@mlabel% + \def\@mlabel{% + \let\@mlabel=\@old@mlabel% + \@@mlabel}} +\def\ChangeEnvelope{\@ifstar{\@ChangeEnvelopeStar}{\@ChangeEnvelope}} +\newcommand\@ChangeEnvelopeStar[3][0pt]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetEnvelope[#1]{#2}{#3}}% + \fi} +\newcommand\@ChangeEnvelope[3][0pt]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetEnvelope[#1]{#2}{#3}} + \immediate\write\@auxout{\string\@startlabels} + \fi} +\def\@SetEnvelope[#1]#2#3{} +\AtEndDocument{\let\@SetEnvelope=\SetEnvelope} +\def\ChangeLabel{\@ifstar{\@ChangeLabelStar}{\@ChangeLabel}} +\newcommand\@ChangeLabelStar[7]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetLabel{#1}{#2}{#3}{#4}{#5}{#6}{#7}}% + \fi} +\newcommand\@ChangeLabel[7]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetLabel{#1}{#2}{#3}{#4}{#5}{#6}{#7}} + \immediate\write\@auxout{\string\@startlabels} + \fi} +\def\@SetLabel#1#2#3#4#5#6#7{} +\AtEndDocument{\let\@SetLabel=\SetLabel} +\def\ChangeBigLabel{\@ifstar{\@ChangeBigLabelStar}{\@ChangeBigLabel}} +\newcommand\@ChangeBigLabelStar[7]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetBigLabel{#1}{#2}{#3}{#4}{#5}{#6}{#7}}% + \fi} +\newcommand\@ChangeBigLabel[7]{% + \if@filesw\immediate\write\@auxout{% + \string\@SetBigLabel{#1}{#2}{#3}{#4}{#5}{#6}{#7}} + \immediate\write\@auxout{\string\@startlabels} + \fi} +\def\@SetBigLabel#1#2#3#4#5#6#7{} +\AtEndDocument{\let\@SetBigLabel=\SetBigLabel} +\if@EL@redefine@opening + \newcommand*{\re}[1]{\def\recontents{#1}}% + \def\ReName{Re: }% + \renewcommand*{\opening}[1]{\ifx\@empty\fromaddress + \thispagestyle{firstpage}% + {\raggedleft\@date\par}% + \else % home address + \thispagestyle{empty}% + {\raggedleft\begin{tabular}{l}\ignorespaces + \fromaddress \\*[2\parskip]% + \@date \end{tabular}\par}% + \fi + \vspace{2\parskip}% + {\raggedright \toname \\ \toaddress \par}% + \ifx\@empty\recontents\relax + \else + {\raggedright \ReName \recontents \par}% + \fi + \vspace{2\parskip}% + #1\par\nobreak}% +\fi +\endinput +%% +%% End of file `envlab.sty'. diff --git a/texmf/ls-R b/texmf/ls-R index 83aab10..d549b88 100644 --- a/texmf/ls-R +++ b/texmf/ls-R @@ -3,6 +3,7 @@ .: aliases bibtex +envlab.sty fonts invoice.def invoice.sty @@ -274,7 +275,6 @@ tfm.svn-base prop-base props text-base -tfm.tmp wcprops ./fonts/.svn/tmp/prop-base: @@ -647,6 +647,7 @@ latex ./tex/latex: curve.cls +envlab.sty exam.cls invoice.def invoice.sty @@ -665,18 +666,22 @@ tmp wcprops ./tex/latex/.svn/prop-base: +curve.cls.svn-base exam.cls.svn-base invoice.def.svn-base invoice.sty.svn-base realcalc.tex.svn-base ./tex/latex/.svn/props: +curve.cls.svn-work +envlab.sty.svn-work exam.cls.svn-work invoice.def.svn-work invoice.sty.svn-work realcalc.tex.svn-work ./tex/latex/.svn/text-base: +curve.cls.svn-base exam.cls.svn-base invoice.def.svn-base invoice.sty.svn-base diff --git a/texmf/tex/latex/envlab.sty b/texmf/tex/latex/envlab.sty new file mode 120000 index 0000000..fc999d1 --- /dev/null +++ b/texmf/tex/latex/envlab.sty @@ -0,0 +1 @@ +../../envlab.sty \ No newline at end of file