diff options
author | Karl Berry <karl@freefriends.org> | 2011-01-08 00:40:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-01-08 00:40:13 +0000 |
commit | 686b506d441e4258181e3c918e94f3bc767b9b34 (patch) | |
tree | 76447946afa14a129ad641b43ec73b7bcbbacc85 /Master/texmf-dist/tex/latex/biblatex/blx-mcite.def | |
parent | 3fa71c8703f40728cf20c8d9f6ed721cbe9bfd44 (diff) |
biblatex 1.1 (5jan11)
git-svn-id: svn://tug.org/texlive/trunk@20968 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex/blx-mcite.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex/blx-mcite.def | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex/blx-mcite.def b/Master/texmf-dist/tex/latex/biblatex/blx-mcite.def new file mode 100644 index 00000000000..db56f8ce2f2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex/blx-mcite.def @@ -0,0 +1,78 @@ +% $Id: blx-mcite.def,v 1.1 2011/01/05 21:45:11 lehman stable $ + +\ProvidesFile{blx-mcite.def} +[\abx@rcsid $Id: blx-mcite.def,v 1.1 2011/01/05 21:45:11 lehman stable $ + mcite-like citation commands] + +\newrobustcmd*{\mcite}{\mcitelike\cite} +\newrobustcmd*{\Mcite}{\mcitelike\Cite} +\newrobustcmd*{\mparencite}{\mcitelike\parencite} +\newrobustcmd*{\Mparencite}{\mcitelike\Parencite} +\newrobustcmd*{\mfootcite}{\mcitelike\footcite} +\newrobustcmd*{\mfootcitetext}{\mcitelike\footcitetext} +\newrobustcmd*{\mtextcite}{\mcitelike\textcite} +\newrobustcmd*{\Mtextcite}{\mcitelike\Textcite} +\newrobustcmd*{\msupercite}{\mcitelike\supercite} + +% \mcite{key1,setA,*keyA1,*keyA2,*keyA3,key2,setB,*keyB1,*keyB2,*keyB3} +% => \mcitelike\cite{key1,setA,*keyA1,*keyA2,*keyA3,key2,setB,*keyB1,*keyB2,*keyB3} +% => \defbibentryset{setA}{keyA1,keyA2,keyA3} +% \defbibentryset{setB}{keyB1,keyB2,keyB3} +% \cite{key1,setA,key2,setB} + +\newrobustcmd*{\mcitelike}[1]{% + \@ifstar + {\blx@citeargs{\blx@mclike{#1*}}} + {\blx@citeargs{\blx@mclike{#1}}}} + +\long\def\blx@mclike#1#2#3#4{% + \begingroup + \let\blx@mclike@tempa\@empty + \let\blx@mclike@tempb\@empty + \let\blx@mclike@tempc\@empty + \blx@xsanitizeafter\blx@mclike@i{#4}% + \edef\blx@mclike@tempa{\endgroup\unexpanded{#1[#2][#3]}{\blx@mclike@tempa}}% + \blx@mclike@tempa} + +\def\blx@mclike@i#1{% + \forcsvlist\blx@mclike@ii{#1}% + \blx@mclike@iv} + +\def\blx@mclike@ii#1{\blx@mclike@iii#1&} + +\def\blx@mclike@iii#1#2&{% + \if*#1% + \blx@mclike@tail{#2}% + \else + \blx@mclike@head{#1#2}% + \fi} + +\def\blx@mclike@iv{% + \ifx\blx@mclike@tempb\@empty + \else + \ifx\blx@mclike@tempc\@empty + \nocite{\blx@mclike@tempb}% preserve citation order for sorting=none + \else + \defbibentryset{\blx@mclike@tempb}{\blx@mclike@tempc}% + \let\blx@mclike@tempc\@empty + \fi + \let\blx@mclike@tempb\@empty + \fi} + +\def\blx@mclike@head#1{% + \blx@mclike@iv + \edef\blx@mclike@tempa{% + \ifx\blx@mclike@tempa\@empty + \else + \blx@mclike@tempa,% + \fi#1}% + \def\blx@mclike@tempb{#1}} + +\def\blx@mclike@tail#1{% + \edef\blx@mclike@tempc{% + \ifx\blx@mclike@tempc\@empty + \else + \blx@mclike@tempc,% + \fi#1}} + +\endinput |