hekeus@51: %%%% This sty file contains all necessary bibliographic code to hekeus@51: %%%% produce AAAI / AI Magazine author-year style referecnes. hekeus@51: %%%% Stolen from ijcai97.sty by Dan Weld 1/27/99 hekeus@51: hekeus@51: % Lists hekeus@51: \leftmargini 2em hekeus@51: \leftmarginii 2em hekeus@51: \leftmarginiii 1em hekeus@51: \leftmarginiv 0.5em hekeus@51: \leftmarginv 0.5em hekeus@51: \leftmarginvi 0.5em hekeus@51: hekeus@51: \leftmargin\leftmargini hekeus@51: \labelsep 5pt hekeus@51: \labelwidth\leftmargini\advance\labelwidth-\labelsep hekeus@51: hekeus@51: \def\@listI{\leftmargin\leftmargini hekeus@51: \parsep 2pt plus 1pt minus 0.5pt% hekeus@51: \topsep 4pt plus 1pt minus 2pt% hekeus@51: \itemsep 2pt plus 1pt minus 0.5pt% hekeus@51: \partopsep 1pt plus 0.5pt minus 0.5pt} hekeus@51: hekeus@51: \let\@listi\@listI hekeus@51: \@listi hekeus@51: hekeus@51: \def\@listii{\leftmargin\leftmarginii hekeus@51: \labelwidth\leftmarginii\advance\labelwidth-\labelsep hekeus@51: \parsep 1pt plus 0.5pt minus 0.5pt hekeus@51: \topsep 2pt plus 1pt minus 0.5pt hekeus@51: \itemsep \parsep} hekeus@51: \def\@listiii{\leftmargin\leftmarginiii hekeus@51: \labelwidth\leftmarginiii\advance\labelwidth-\labelsep hekeus@51: \parsep 0pt plus 1pt hekeus@51: \partopsep 0.5pt plus 0pt minus 0.5pt hekeus@51: \topsep 1pt plus 0.5pt minus 0.5pt hekeus@51: \itemsep \topsep} hekeus@51: \def\@listiv{\leftmargin\leftmarginiv hekeus@51: \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} hekeus@51: \def\@listv{\leftmargin\leftmarginv hekeus@51: \labelwidth\leftmarginv\advance\labelwidth-\labelsep} hekeus@51: \def\@listvi{\leftmargin\leftmarginvi hekeus@51: \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} hekeus@51: hekeus@51: % We're never going to need a table of contents, so just flush it to hekeus@51: % save space --- suggested by drstrip@sandia-2 hekeus@51: %\def\addcontentsline#1#2#3{} hekeus@51: hekeus@51: %%%% named.sty hekeus@51: hekeus@51: \typeout{Named Citation Style, version of 30 November 1994} hekeus@51: hekeus@51: % This file implements citations for the ``named'' bibliography style. hekeus@51: % Place it in a file called named.sty in the TeX search path. (Placing it hekeus@51: % in the same directory as the LaTeX document should also work.) hekeus@51: hekeus@51: % Prepared by Peter F. Patel-Schneider, with the assistance of several, hekeus@51: % since forgotten, LaTeX hackers. hekeus@51: % This style is NOT guaranteed to work. It is provided in the hope hekeus@51: % that it will make the preparation of papers easier. hekeus@51: % hekeus@51: % There are undoubtably bugs in this style. If you make bug fixes, hekeus@51: % improvements, etc. please let me know. My e-mail address is: hekeus@51: % pfps@research.att.com hekeus@51: hekeus@51: % The preparation of this file was supported by Schlumberger Palo Alto hekeus@51: % Research and AT\&T Bell Laboratories. hekeus@51: hekeus@51: % This file can be modified and used in other conferences as long hekeus@51: % as credit to the authors and supporting agencies is retained, this notice hekeus@51: % is not changed, and further modification or reuse is not restricted. hekeus@51: hekeus@51: % The ``named'' bibliography style creates citations with labels like hekeus@51: % \citeauthoryear{author-info}{year} hekeus@51: % these labels are processed by the following commands: hekeus@51: % \cite{keylist} hekeus@51: % which produces citations with both author and year, hekeus@51: % enclosed in square brackets hekeus@51: % \shortcite{keylist} hekeus@51: % which produces citations with year only, hekeus@51: % enclosed in square brackets hekeus@51: % \citeauthor{key} hekeus@51: % which produces the author information only hekeus@51: % \citeyear{key} hekeus@51: % which produces the year information only hekeus@51: hekeus@51: \def\leftcite{\@up[}\def\rightcite{\@up]} hekeus@51: hekeus@51: \def\cite{\def\citeauthoryear##1##2{\def\@thisauthor{##1}% hekeus@51: \ifx \@lastauthor \@thisauthor \relax \else##1, \fi ##2}\@icite} hekeus@51: \def\shortcite{\def\citeauthoryear##1##2{##2}\@icite} hekeus@51: hekeus@51: \def\citeauthor{\def\citeauthoryear##1##2{##1}\@nbcite} hekeus@51: \def\citeyear{\def\citeauthoryear##1##2{##2}\@nbcite} hekeus@51: hekeus@51: % internal macro for citations with [] and with breaks between citations hekeus@51: % used in \cite and \shortcite hekeus@51: \def\@icite{\leavevmode\def\@citeseppen{-1000}% hekeus@51: \def\@cite##1##2{\leftcite\nobreak\hskip 0in{##1\if@tempswa , ##2\fi}\rightcite}% hekeus@51: \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} hekeus@51: % internal macro for citations without [] and with no breaks hekeus@51: % used in \citeauthor and \citeyear hekeus@51: \def\@nbcite{\leavevmode\def\@citeseppen{1000}% hekeus@51: \def\@cite##1##2{{##1\if@tempswa , ##2\fi}}% hekeus@51: \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} hekeus@51: hekeus@51: % don't box citations, separate with ; and a space hekeus@51: % also, make the penalty between citations a parameter, hekeus@51: % it may be a good place to break hekeus@51: \def\@citex[#1]#2{% hekeus@51: \def\@lastauthor{}\def\@citea{}% hekeus@51: \@cite{\@for\@citeb:=#2\do hekeus@51: {\@citea\def\@citea{;\penalty\@citeseppen\ }% hekeus@51: \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi hekeus@51: \@ifundefined{b@\@citeb}{\def\@thisauthor{}{\bf ?}\@warning hekeus@51: {Citation `\@citeb' on page \thepage \space undefined}}% hekeus@51: {\csname b@\@citeb\endcsname}\let\@lastauthor\@thisauthor}}{#1}} hekeus@51: hekeus@51: % raise the brackets in bibliography labels hekeus@51: \def\@biblabel#1{\def\citeauthoryear##1##2{##1, ##2}\@up{[}#1\@up{]}\hfill} hekeus@51: hekeus@51: \def\@up#1{\leavevmode\raise.2ex\hbox{#1}} hekeus@51: hekeus@51: % Optional changes hekeus@51: hekeus@51: %%%% use parentheses in the reference list and citations hekeus@51: %\def\leftcite{(}\def\rightcite{)} hekeus@51: %\def\@biblabel#1{\def\citeauthoryear##1##2{##1, ##2}(#1)\hfill} hekeus@51: hekeus@51: %%%% no key in the reference list hekeus@51: %\def\@lbibitem[#1]#2{\item\if@filesw hekeus@51: % { \def\protect##1{\string ##1\space}\immediate hekeus@51: % \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} hekeus@51: %\def\thebibliography#1{\section*{References\@mkboth hekeus@51: % {REFERENCES}{REFERENCES}}\list hekeus@51: % {}{\labelwidth 0pt\leftmargin\labelwidth \itemsep 0.5ex} hekeus@51: % \def\newblock{\hskip .11em plus .33em minus .07em} hekeus@51: % \sloppy\clubpenalty4000\widowpenalty4000 hekeus@51: % \sfcode`\.=1000\relax}