% \CheckSum{547} % \iffalse % ==================================================================== %% adrguide.dtx %% Copyright 2006, 2010, 2018 Axel Kielhorn % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % 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.3 or later is part of all distributions of LaTeX % version 2003/12/01 or later. % % This work has the LPPL maintenance status "maintained". % % This Current Maintainer of this work is Axel Kielhorn (A.Kielhorn@web.de) % % This work consists of the files adrconv.ins, adrconv.dtx, adrguide.tex % and the derived file adrguide.pdf. % % Use % tex adrconv.ins % or % latex adrconv.ins % to generate the other files, which are indirect parts of the % bundle. Use % latex adrconv.dtx % to generate the implementation documentation. Use % latex adrguide.tex % to generate the user documentation. % % ==================================================================== % %<*dtx> \ProvidesFile{adrconv.dtx} % %\ProvidesFile{adrconv.drv} %\ProvidesFile{adrguide.tex} %<*tex|cfg|dir|montage> %\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi %\ProvidesFile{% % adrconv% % adrfax% % adrdir% % adrbirthday% % adrplaner % adrsmall % adrmontage1.tex % adrmontage2.tex % .tex% % .tex% % .cfg% % } % %<*dtx|driver|guide|tex|cfg|dir> [2018/01/30 v1.4 LaTeX2e %<*dtx> adrconv docstrip file] % % adrconv implementation documentation driver] % Address guide] % Interactive driver of BibTeX database to addressfile converter] % adrconv configuration file] % Interactive address directory generation] % %<*driver> \documentclass{ltxdoc} \CodelineIndex \RecordChanges \newcommand*{\Class}[1]{\textsf{#1}} \newcommand*{\Package}[1]{\textsf{#1}} \newcommand*{\File}[1]{\texttt{#1}} \ifx\KOMAScipt\undefined \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}} \fi \makeatletter \DeclareRobustCommand{\BibTeX}{B\kern-.05em% % Der folgende Hack stammt aus der Definition des % Makros \LaTeX, siehe Datei `ltlogos.dtx' der % LaTeX2e-Verteilung. \hbox{$\m@th$% %% force math size calculations \csname S@\f@size\endcsname \fontsize\sf@size\z@ \math@fontsfalse\selectfont I\kern-.025emB}% \kern-.08em% \-\TeX% } \makeatother \begin{document} \DocInput{adrconv.dtx} \end{document} % % \fi % % \GetFileInfo{adrconv.dtx} % \title{\BibTeX{} address database to addressfile % converter\footnote{This file has version number \fileversion, last % revised \filedate}} % \author{Axel Kielhorn\thanks{A.Kielhorn@web.de} \and Markus Kohm} % \date{\filedate} % \maketitle % \begin{abstract} % \Package{adrconv} is an example for converting \BibTeX{} address % databases to \KOMAScript{} address files. For more information see % the ``ADRconv Anleitung''. This is only the implementation % documentation. % \end{abstract} % % \StopEventually{\PrintIndex\PrintChanges} % % \tableofcontents % % \section{General} % % This implementation documentation is very rudimentary because it was % not written by Axel Kielhorn but by Markus Kohm. I've done this % because after two years waiting I wanted to make the break and % remove the old version of \Package{adrconv} from \KOMAScript. % % The use of \Package{adrconv} is described at the ``ADRconv % Anleitung''. You'll get the guide, running \TeX{} or \LaTeX{} in % \File{adrconv.ins}. % % % \section{The interactive drivers} % % \iffalse %<*tex> % \fi % Remember the files should work not only with \LaTeX{} but also with % Plain\TeX. So we can olny use macros, which are defined at both: % \LaTeX{} and Plain\TeX. % % \begin{macrocode} \catcode`\@=11 \newlinechar`\^^J \message{% Now you have to typein the name of the BibTeX addressfile, you want to^^J% convert to script-address-file-format (without extension `.bib'):^^J% Geben Sie nun den Namen der BibTeX-Adressdatei ein, die sie in das^^J% Script-Adressdateiformat konvertieren wollen (ohne `.bib'):^^J% ^^J% addressfile=% } \def\skiplastspace#1 \@e@o@l@{#1} \read-1 to \addressfile \edef\addressfile{\expandafter\skiplastspace\addressfile\@e@o@l@} \newwrite\auxfile \immediate\openout\auxfile=\addressfile.aux \immediate\write\auxfile{% \string\citation{*}^^J% % \string\bibstyle{adrconv}^^J% % \string\bibstyle{adrfax}^^J% % \string\bibstyle{adrbirthday}^^J% \string\bibdata{\addressfile}% } \immediate\closeout\auxfile \message{% After running BibTeX rename file `\addressfile.bbl' to `\addressfile.adr'!^^J% Nach dem BibTeX-Lauf benennen Sie bitte die Datei `\addressfile.bbl' in^^J% `\addressfile.adr' um!^^J% } \ifx\@@end\undefined\let\@@end\end\fi \@@end % \end{macrocode} % \iffalse % % \fi % % % \section{The interactive generator} % % \iffalse %<*!cfg> %<*dir> % \fi % \begin{macrocode} \documentclass[headsepline,10pt,twoside,pagesize]{scrartcl} % \end{macrocode} % Define some new commands % \begin{macrocode} \newcommand*\jj {j} \newcommand*\ja {ja} \newcommand*\y {y} \newcommand*\yes{yes} \newread\ttyin \newcommand*{\gobble}[1]{} \def\iden#1{#1} \def\strip#1#2 \gobble{\def #1{#2}} \def\defpar{\par} \def\Ask#1#2{% \message{#2}\read\ttyin to #1\ifx#1\defpar\def#1{}\else \iden{\expandafter\strip\expandafter#1#1\gobble\gobble} \gobble\fi} % \end{macrocode} % \cs{ifGerman} to load \Package{german} or \Package{ngerman}. % \cs{RunningHead} to get the names in the header (Telephonebook % style). Otherwise a new page is started for each new letter (This is % needed for Birthday lists). % \begin{macrocode} \newif\ifGerman \newif\ifRunningHead \newif\ifEmail % \end{macrocode} % \begin{macrocode} \newdimen\leftfield \newdimen\rightfield \newdimen\adrindent \oddsidemargin -1in \evensidemargin -1in % \end{macrocode} % \begin{macrocode} \newcommand*\adrfile{} \newcommand*\adrtitle{} \typeout{^^J% *** dir.tex v2.0 by Frank Neukam <01 Dec 1993>^^J% *** LaTeX2e-changes by Markus Kohm 1994/10/29^^J% *** ADRconv-changes by Axel Kielhorn 1999^^J% *** ngerman-changes by Markus Kohm 2001^^J% ^^J% To create a address-directory just answer the questions:^^J% ^^J} \Ask\answer{Use german? [y/n]^^J% Mit deutscher Sprachanpassung? [j/n]} \ifx\jj\answer\Germantrue\else \ifx\ja\answer\Germantrue\else \ifx\y\answer\Germantrue\else \ifx\yes\answer\Germantrue\else \Germanfalse\fi\fi\fi\fi \ifGerman \def\germanpackage{ngerman} \Ask\answer{Mit alter deutscher Rechtschreibung? [j/n]} \ifx\jj\answer\def\germanpackage{german}\else \ifx\ja\answer\def\germanpackage{german}\else \ifx\y\answer\def\germanpackage{german}\else \ifx\yes\answer\def\germanpackage{german}\fi\fi\fi\fi \usepackage{\germanpackage} \fi % \end{macrocode} % \changes{v1.3}{2010/04/02}{Added support to print the e-mail Address in the addressbook.} % \begin{macrocode} \Ask\answer{^^JPrint email? [y/n]^^J% E-Mail ausgeben? [j/n]} \ifx\jj\answer\Emailtrue\else \ifx\ja\answer\Emailtrue\else \ifx\y\answer\Emailtrue\else \ifx\yes\answer\Emailtrue\else \Emailfalse\fi\fi\fi\fi \ifEmail \usepackage{url} \fi \InputIfFileExists{dir.cfg}{% \typeout{Load local configuration-file.}}{% \typeout{No local configuration-file found.}} \Ask\adrfile{^^J% Name of address-file (without .adr)?^^J% Name der Adressdatei (ohne .adr)?} \Ask\adrtitle{^^J% Title of directory/list?^^J% Titel des Verzeichnisses?} \Ask\adrformat{^^J% Name of the layout^^J% Layoutname?} \Ask\answer{^^J% With running head? [y/n]^^J% Namen in der Kopfzeile? [j/n]} \ifx\jj\answer\RunningHeadtrue\else \ifx\ja\answer\RunningHeadtrue\else \ifx\y\answer\RunningHeadtrue\else \ifx\yes\answer\RunningHeadtrue\else \RunningHeadfalse\fi\fi\fi\fi % \end{macrocode} % \changes{v1.4}{2018/01/30}{usage of \Package{scrlayer-scrpage}} % Since the file uses \Class{scrartcl} it assumes that % \Package{scrlayer-scrpage} is available. We do not use \Package{scrpage} any % longer, because it is not longer part of the \KOMAScript{} bundle for more % than 10 years. % \begin{macrocode} \ifRunningHead \usepackage[manualmark,headsepline]{scrlayer-scrpage} \clearpairofpagestyles \ohead{\if@twoside\rightmark\ -- \leftmark\fi} \chead{\if@twoside\else\rightmark\ -- \leftmark\fi} \ofoot{\if@twoside\pagemark\fi} \cfoot{\if@twoside\else\pagemark\fi} \fi \setkomafont{pagehead}{\sffamily\bfseries} % \end{macrocode} % Loading the Layout definition. % If no filename is specified, adrdir will be used. % \begin{macrocode} \ifx\adrformat\empty \def\adrformat{adrdir} \fi \InputIfFileExists{\adrformat.cfg}{}{% \typeout{^^J% *** File \adrformat.cfg not found!^^J% *** Datei \adrformat.cfg nicht gefunden!^^J% ^^J} } % \end{macrocode} % All definitions are done, let's start with the document. % \begin{macrocode} \begin{document} % \end{macrocode} % Don't start a new page for every letter when running head is used. % \begin{macrocode} \ifRunningHead \def\adrchar#1{\typeout{#1}} \else \def\adrchar#1{\clearpage\typeout{#1}\markboth{#1}{#1}} \fi % \end{macrocode} % \changes{v1.4}{2018/01/30}{replaced old font command \cs{sc} by NFSS2 font % command} % \changes{v1.4}{2018/01/30}{replaced old font command \cs{sfb} by NFSS2 font % command} % \changes{v1.4}{2018/01/30}{support for \cs{addrchar} and \cs{addrentry}} % This command does all the formatting: % \begin{macrocode} %\adrentry % 1 {Nachname} % 2 {Vorname} % 3 {Strasse \\ PLZ Ort} % 4 {Telefon\\Mobil} % 5 {E-Mail} \ifEmail % 6 {Organisation} % 7 {Notiz} % 8 {Key} \def\adrentry#1#2#3#4#5#6#7#8{\hspace{\adrindent}% \parbox[b]{\leftfield} {\raggedright \hspace{-\adrindent}{\normalfont\scshape #1}% \def\tempa{#1}\ifx \tempa\empty \else , #2\fi% \def\tempa{#3}\ifx \tempa\empty \else \par #3\fi% \ifEmail \def\tempa{#5}\ifx \tempa\empty \else \par \url{#5}\fi% \fi \def\tempa{#7}\ifx \tempa\empty \else \par (#7)\fi% }% \hfill% \parbox[b]{\rightfield} {\raggedleft% \def\tempa{#8}\ifx \tempa\empty \else {\scriptsize #8}\par \fi {\small #4}% }\par% \ifRunningHead \markboth{#1}{#1} \fi } \def\addrentry#1#2#3#4#5#6#7#8#9{% \adrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#9}% } \def\addrchar{\adrchar} \ifx\adrfile\empty \else \InputIfFileExists{\adrfile.adr}{% \pagestyle{empty} \null\vfil \begin{center} {\Large \normalfont\sffamily\bfseries \adrtitle\par} \end{center} \vfil\vfil\null % \end{macrocode} % Always start on a right page % \begin{macrocode} \cleardoublepage \raggedbottom \pagestyle{headings} }{% \typeout{^^J% *** File \adrfile.adr not found!^^J% *** Datei \adrfile.adr nicht gefunden!^^J% ^^J} } \fi \end{document} % \end{macrocode} % \iffalse % % % \fi % % % \section{The configuration files} % % \iffalse %<*cfg> % \fi % \begin{macrocode} %<*dir> % \end{macrocode} % Configfile for A6 phone book (105\,mm $\times$ 148\,mm). % Original was former part of \KOMAScript{}. % % \begin{macrocode} \setlength{\paperwidth}{105mm} \setlength{\textwidth}{85mm} \setlength{\leftfield}{50mm} \setlength{\rightfield}{30mm} % \end{macrocode} % \begin{macrocode} \addtolength{\evensidemargin}{9mm} \addtolength{\oddsidemargin}{\paperwidth} \addtolength{\oddsidemargin}{-9mm} \addtolength{\oddsidemargin}{-\textwidth} % \end{macrocode} % \begin{macrocode} % % \end{macrocode} % % \begin{macrocode} %<*planer> % \end{macrocode} % Configfile for organizers (95\,mm $\times$ 172\,mm) maybe from % ALDI. % % \begin{macrocode} \setlength{\paperwidth}{95mm} \setlength{\textwidth}{70mm} \setlength{\leftfield}{45mm} \setlength{\rightfield}{25mm} % \end{macrocode} % \begin{macrocode} \addtolength{\evensidemargin}{12mm} \addtolength{\oddsidemargin}{12mm} % \end{macrocode} % \begin{macrocode} % % \end{macrocode} % % \begin{macrocode} %<*small> % \end{macrocode} % Configfile for pocket calenders (87\,mm $\times$ 148\,mm) % e.g. ``Sparkassenkalender''. % % \begin{macrocode} \setlength{\paperwidth}{87mm} \setlength{\textwidth}{75mm} \setlength{\leftfield}{45mm} \setlength{\rightfield}{30mm} % \end{macrocode} % \begin{macrocode} \addtolength{\evensidemargin}{9mm} \addtolength{\oddsidemargin}{\paperwidth} \addtolength{\oddsidemargin}{-9mm} \addtolength{\oddsidemargin}{-\textwidth} % \end{macrocode} % \begin{macrocode} % % \end{macrocode} % % \begin{macrocode} \setlength{\adrindent}{1em} \addtolength{\leftfield}{-\adrindent} % \end{macrocode} % \begin{macrocode} %<*dir> \setlength{\paperheight}{148mm} \setlength{\textheight}{112mm} % %<*planer> \setlength{\paperheight}{172mm} \setlength{\textheight}{148mm} % %<*small> \setlength{\paperheight}{148mm} \setlength{\textheight}{112mm} % \setlength{\headheight}{1.25\baselineskip} \setlength{\headsep}{0.25\baselineskip} \setlength{\footskip}{1.50\baselineskip} \setlength{\topmargin}{-1in} %\addtolength{\topmargin}{8mm} %\addtolength{\topmargin}{7mm} \setlength{\marginparwidth}{0in} \setlength{\marginparsep}{0in} \setlength{\marginparpush}{0in} \setlength{\parskip}{0.5\baselineskip} \setlength{\parindent}{0in} \typeout{% ********************************************************************% ^^J^^J% DVIDVI Options:^^J% Front:^^J% %<*dir|small> % 1st Step (2 x A6 at A5)^^J% % 1st Step (2 x callenders at A5)^^J% -l xx -m 4:-1,2^^J% 2nd Step (2 x A5 at A4)^^J% -m 2:0,1(0mm,148mm)^^J% % % -l 24 -m 6:0(4mm,0mm),2(99mm,0mm),4(192mm,0mm) ^^J% Back:^^J% %<*dir|small> 1st Step^^J% -l xx -r -m 4:-3,0^^J% 2nd Step^^J% -m 2:1,0(0mm,148mm)^^J% % % -l 24 -r -m 6:5(8mm,0mm),3(103mm,0mm),1(198mm,0mm) ^^J% % xx must be the result of a multiplication with 4.^^J% % Cut 36 mm from one side and tack in the middle.^^J% ^^J% ******************************************************************** } % \end{macrocode} % German Remark from Axel to \File{adrdir.cfg}: % \begin{quote} % Das ist die einfache Version, einfach in der Mitte durchschneiden, % Seiten sortieren, ineinanderstecken und heften. % % Nicht alle Tacker k\"onnen dieses Format verarbeiten, ich habe % lange gesucht und benutze den Novus B5, der passt ganz knapp und ist % noch bezahlbar. Danach kommen die Hochleistungstacker \"uber 50 DM. % \end{quote} % % German Remark from Axel to \File{adrplaner.cfg}: % \begin{quote} % Der Deskjet kann die letzten 14\,mm des Blattes nicht bedrucken, % daher wurde das ganze Layout um 4\,mm verschoben, diese m\"ussen an % der kurzen Kante abgeschnitten werden. % % Bei anderen Druckern kann man bei den Vorderseiten 3\,mm von der % x-Koordinate abziehen und bei den R\"uckseiten zuaddieren. % \end{quote} % % German Remark from Axel to \File{adrsmall.cfg}: % \begin{quote} % Von einer Seite m\"ussen noch 36\,mm abgeschnitten werden, dann % in der Mitte heften und in den Taschenkalender einstecken. % \end{quote} % % \iffalse % % \fi % % % \section{The \BibTeX{} files} % % \iffalse %<*bst> % \fi % % These \BibTeX{} files are BibTeX-Database to \Class{scrlettr} % converters. They are based on BibTeX bibliography style % \File{address} Gerd Neugebauer has written in 1994. % % The files generated from these files may be used for % \Class{scrlettr}, \Class{scrlttr2}, \File{phone.tex} or % \File{dir.tex} from the \KOMAScript{} Package, \Class{akletter} and % some versions of \Class{myletter} which preceded % \Class{akletter}. They will even work with the \LaTeX 2.09 version % of \textsc{Script}. % % This is only one way to use the address database layout defined by % Gerd Neugebauer. Use this as an example for your own conversion % program. % % \changes{v1.0}{1996/01/01}{Added the key-field} % \changes{v1.1}{1996/01/02}{Changed \texttt{net} to \texttt{url} and % \texttt{email}} % \changes{v1.1.1}{1996/01/03}{Function address: moved % \texttt{\bslash\bslash} inside if condition} % \changes{v1.1.1}{1996/01/03}{No more warnings if street is empty % (reported by Jan Holl\"ander)} % \changes{v1.1.2}{1996/01/04}{The \emph{von} part was ignored in % names} % \changes{v1.1.3}{1996/01/04}{Support for second (mobile) % telephonenumber} % \changes{v1.2}{1999/11/01}{New release independent of KOMA-Script} % \changes{v1.2a}{2001/10/11}{\Package{docstrip} version} % \changes{v1.2b}{2002/06/23}{Documentation updated} % \changes{v1.2c}{2006/04/19}{Documentation updated, license information % updated to LPPL 1.3} % \changes{v1.3}{2010/04/02}{Removed \texttt{email.bst}, the email address is now % written to the standard \texttt{bbl} by \texttt{adrconv}.} % \changes{v1.3}{2010/04/02}{Renamed \texttt{birthday.bst} % to \texttt{adrbirthday.bst} to avoid a collision with \texttt{directory.cls}.} % % The \File{adrbirthday.bst} prints the entries with birthdays only. The % entries are sorted by month and inside one month by date. % % \begin{macrocode} ENTRY { name sortas title organization city zip country street phone mobile fax url email note key birthday nbirthday } {} % { adr.char } % { b.month } % \end{macrocode} % \begin{macrocode} %INTEGERS { cur.adr.char } %STRINGS { cur.month num.index alpha.index } % \end{macrocode} % \begin{macrocode} FUNCTION {get.names} { name empty$ { organization empty$ { "{}{}" } { organization "{}" * } if$ } { "{" name #1 "{ll}" format.name$ "}" * * "{" name #1 "{ff}{ vv}" format.name$ "}" * * * } if$ } % \end{macrocode} % \begin{macrocode} FUNCTION {print.adrchr} %<*!birthday> { adr.char chr.to.int$ cur.adr.char > { newline$ "\adrchar{" adr.char "}" * * write$ newline$ adr.char chr.to.int$ 'cur.adr.char := } 'skip$ % %<*birthday> { b.month cur.month = 'skip$ { newline$ "\adrchar{\convdate{" b.month "}}" * * write$ newline$ b.month 'cur.month := } % if$ } % \end{macrocode} %\iffalse % $% <-- we do this to correct syntax highlight. %\fi % \begin{macrocode} %<*!fax> FUNCTION{format.phone.and.mobile} { phone empty$ { mobile empty$ { "" } { mobile } if$ }{ mobile empty$ { phone } { phone "\\" mobile * * } if$ } if$ } % % \end{macrocode} % \begin{macrocode} %<*fax> FUNCTION{format.phone.and.fax} { phone empty$ { "" } { phone } if$ fax empty$ 'skip$ { phone empty$ { fax * } { "\\Fax:\\" fax * * } if$ } if$ } % % \end{macrocode} %\iffalse % $% <-- we do this to correct syntax hightlight. %\fi % \begin{macrocode} FUNCTION{address} { %<*birthday> nbirthday empty$ 'skip$ { % print.adrchr "\adrentry" write$ get.names write$ newline$ "{" street empty$ { "" * } { street " \\ " * *} if$ zip empty$ { "" * } { zip " " * *} if$ city empty$ { "" * } { city * } if$ "}{" * % format.phone.and.mobile % format.phone.and.fax "}" * * email empty$ { "{}" * } { "{" email "}" * * * } if$ organization empty$ { "{}" * } { "{" organization "}" * * *} if$ note empty$ { "{}" * } { "{" note "}" * * * } if$ "{" * %<*birthday> birthday empty$ { "" } { birthday } if$ "}{" * * % key empty$ { "" } { key } if$ "}" * * write$ newline$ %<*birthday> } if$ % } % \end{macrocode} % \begin{macrocode} FUNCTION{presort} %<*!birthday> { sortas empty$ { name empty$ { organization empty$ { key empty$ { "No name, organization, or key to sort " cite$ * warning$ "???" } { key } if$ } { organization } if$ } { name #1 "{ll},{f }{v }{, j}" format.name$ } if$ } { sortas } % %<*birthday> { nbirthday empty$ { "" } { nbirthday } % if$ duplicate$ 'sort.key$ := %<*!birthday> #1 #1 substring$ 'adr.char := % %<*birthday> #1 #2 substring$ 'b.month := % % \end{macrocode} % At every but \File{adrbirthday.bst} the adr.char is the first letter of % the sort.key. % \begin{macrocode} } % \end{macrocode} % \begin{macrocode} READ % \end{macrocode} % \begin{macrocode} ITERATE {presort} % \end{macrocode} % \begin{macrocode} SORT % \end{macrocode} % \begin{macrocode} FUNCTION {begin.bib} { %<*birthday> "\def\convdate#1{\ifcase#1 \or 1 \or 2 \or 3 \or 4 \or 5 " "\or 6 \or 7 \or 8 \or 9 \or 10 \or 11 \or 12 \fi}" * 'num.index := "\def\convdate#1{\ifcase#1 \or Januar \or Februar \or " " M{^^b a}rz \or April \or Mai \or Juni \or Juli " "\or August \or September \or Oktober \or November \or Dezember \fi}" * * 'alpha.index := alpha.index write$ newline$ % preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ % #0 'cur.adr.char := % "00" 'cur.month := } %\iffalse % $% <-- we do this to correct syntax hightlight. %\fi % \begin{macrocode} EXECUTE {begin.bib} % \end{macrocode} % \begin{macrocode} ITERATE {call.type$} % \end{macrocode} % Print a newline and flush the write buffer % \begin{macrocode} FUNCTION {end.bib} { newline$ } % \end{macrocode} % \begin{macrocode} EXECUTE {end.bib} % \end{macrocode} % % \iffalse % % \fi % % % \section{An example \BibTeX{} database} % % Do not believe everything you read here. It is just a % demonstration. % % \iffalse %<*bib> %<*example> % \fi % \begin{macrocode} @address{VornameNachname, name = {Vorname Nachname}, street = {Strasse}, zip = {PLZ}, city = {Ort}, phone = {Telefon}, email = {E-mail@domain}, mobile = {Mobil}, birthday = {Geburtstag}, note = {Notiz}, organization = {Organisation}, key = {Key}, nbirthday = {0101}, } @address{mustermann, name = {Hans Mustermann}, city = {Heimstatt}, zip = 01234, country = {D -}, street = {Einbahnstra{\ss}e 1}, phone = {01234 / 5 67 89}, fax = {01234 / 5 67 89}, email = {hm@work.com}, note = {Alles nur Erfindung}, } @address{AxelK, name = {Axel Kielhorn}, city = {Verden}, zip = 27283, street = {Lange Stra{\ss}e 17}, phone = {04231 / 12 34 56}, fax = {04231 / 65 34 21}, email = {a.kielhorn@web.de}, key = {Aki}, note = {Author of the modified addressen.bst}, birthday = {16.05.1967}, nbirthday = 0516, } @address{RalfK, name = {Ralf Kielhorn}, city = {Braunschweig}, zip = 38116, street = {Gro{\ss}e Stra{\ss}e 17}, phone = {0531 / 12 34 56}, key = {Rki}, birthday = {05.08.1969}, nbirthday = 0805, } @address{SabineK, name = {Sabine Kielhorn}, city = {Oldenburg}, zip = 26133, street = {Fraunhoferstra{\ss}e 21}, phone = {0441 / 12 34 56}, key = {Ski}, birthday = {13.11.1970}, nbirthday = 1113, } @address{OEKZ, name = {{{"O}kologisches Zentrum~e.\,V.}}, sortas = {Okologisches Zentrum}, organization = {Verband der Vereine}, city = {Heimstatt}, zip = 01234, country = {Germany}, street = {Mauerstra{\ss}e 1}, phone = {01234 / 5 67 89}, fax = {01234 / 5 67 89}, email = {hm@work.com}, key = {OEKZ}, } @address{DANTE, name = {{DANTE~e.\,V.}}, sortas = {Dante}, street = {Postfach 10 18 40}, zip = {69008}, city = {Heidelberg}, phone = {0 62 21 / 2 97 66}, fax = {0 62 21 / 16 79 06}, email = {dante@dante.de}, url = {http://www.dante.de}, key = {DANTE}, birthday = {14. April 1989}, nbirthday = {0414} } % \end{macrocode} % % \iffalse % % % \fi % \changes{v1.3}{2010/04/02}{Added support for PDF workflow.} %<*montage> % \begin{macrocode} \documentclass{article} \usepackage{geometry} \geometry{verbose,twoside,nofoot,pdftex,% %a5paper, top=0mm,bottom=0mm,inner=0mm} %a4paper,top=0mm,bottom=0mm,inner=0mm} \usepackage{pdfpages} \begin{document} \includepdf[pages={-}, landscape, nup=1x2, %signature=16, %signature=4, %noautoscale,scale=1]{adrdir.pdf} %noautoscale,scale=1]{adrmontage1.pdf} \end{document} % \end{macrocode} % % % \Finale \endinput % % end of file ``adrconv.dtx''