diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx | 147 |
1 files changed, 110 insertions, 37 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx b/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx index 5e0c024ae92..460661290bd 100644 --- a/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx +++ b/Master/texmf-dist/tex/latex/biblatex/bbx/authoryear.bbx @@ -1,7 +1,7 @@ -% $Id: authoryear.bbx,v 1.1a 2011/01/08 13:30:00 lehman stable $ +% $Id: authoryear.bbx,v 1.1b 2011/02/04 11:36:21 lehman stable $ \ProvidesFile{authoryear.bbx} -[\abx@bbxid $Id: authoryear.bbx,v 1.1a 2011/01/08 13:30:00 lehman stable $] +[\abx@bbxid $Id: authoryear.bbx,v 1.1b 2011/02/04 11:36:21 lehman stable $] \RequireBibliographyStyle{standard} @@ -9,12 +9,116 @@ \ifstrequal{#1}{true} {\ExecuteBibliographyOptions{pagetracker}% \renewbibmacro*{bbx:savehash}{\savefield{fullhash}{\bbx@lasthash}}} - {\ExecuteBibliographyOptions{pagetracker=false}% - \renewbibmacro*{bbx:savehash}{}}} + {\renewbibmacro*{bbx:savehash}{}}} \DeclareBibliographyOption{mergedate}[true]{% - \setbool{bbx:mergedate}{#1}} -\newbool{bbx:mergedate} + \ifcsdef{bbx@opt@mergedate@#1} + {\csuse{bbx@opt@mergedate@#1}} + {\PackageError{biblatex} + {Invalid option 'mergedate=#1'} + {Valid values are 'maximum', 'compact', 'basic', 'minimum',\MessageBreak + 'true' (=compact), and 'false'.}}} + +\providebibmacro*{date+extrayear}{} + +\def\bbx@opt@mergedate@true{\bbx@opt@mergedate@compact} + +\def\bbx@opt@mergedate@maximum{% + \renewbibmacro*{date+extrayear}{% + \iffieldundef{year} + {} + {\printtext[parens]{% + \printfield{issue}% + \setunit*{\addspace}% + \printdateextra}}}% + \renewbibmacro*{date}{}% + \renewbibmacro*{issue+date}{}% +} + +\def\bbx@opt@mergedate@compact{% + \renewbibmacro*{date+extrayear}{% + \iffieldundef{year} + {} + {\printtext[parens]{\printdateextra}}}% + \renewbibmacro*{date}{}% + \renewbibmacro*{issue+date}{% + \iffieldundef{issue} + {} + {\printtext[parens]{\printfield{issue}}} + \newunit}% +} + +\def\bbx@opt@mergedate@basic{% + \renewbibmacro*{date+extrayear}{% + \iffieldundef{year} + {} + {\printtext[parens]{% + \printfield{labelyear}% + \printfield{extrayear}}}}% + \renewbibmacro*{date}{% + \iffieldundef{month} + {} + {\printdate}}% + \renewbibmacro*{issue+date}{% + \ifboolexpr{ + test {\iffieldundef{issue}} + and + test {\iffieldundef{month}} + } + {} + {\printtext[parens]{% + \printfield{issue}% + \setunit*{\addspace}% + \printdate}}% + \newunit}% +} + +\def\bbx@opt@mergedate@minimum{% + \renewbibmacro*{date+extrayear}{% + \iffieldundef{year} + {} + {\printtext[parens]{% + \printfield{labelyear}% + \printfield{extrayear}}}}% + \renewbibmacro*{date}{% + \ifboolexpr{ + test {\iffieldundef{month}} + and + test {\iffieldundef{extrayear}} + } + {} + {\printdate}}% + \renewbibmacro*{issue+date}{% + \ifboolexpr{ + test {\iffieldundef{issue}} + and + test {\iffieldundef{month}} + and + test {\iffieldundef{extrayear}} + } + {} + {\printtext[parens]{% + \printfield{issue}% + \setunit*{\addspace}% + \printdate}}% + \newunit}% +} + +\def\bbx@opt@mergedate@false{% + \renewbibmacro*{date+extrayear}{% + \iffieldundef{year} + {} + {\printtext[parens]{% + \printfield{labelyear}% + \printfield{extrayear}}}}% + \renewbibmacro*{date}{\printdate}% + \renewbibmacro*{issue+date}{% + \printtext[parens]{% + \printfield{issue}% + \setunit*{\addspace}% + \printdate}% + \newunit}% +} \ExecuteBibliographyOptions{labelyear,sorting=nyt,pagetracker,mergedate} @@ -145,15 +249,6 @@ {#1} {#2}} -\newbibmacro*{date+extrayear}{% - \iffieldundef{year} - {} - {\printtext[parens]{% - \ifbool{bbx:mergedate} - {\printdateextra} - {\printfield{labelyear}% - \printfield{extrayear}}}}} - \newbibmacro*{labeltitle}{% \iffieldundef{label} {\iffieldundef{shorttitle} @@ -162,26 +257,4 @@ {\printfield[title]{shorttitle}}} {\printfield{label}}} -\renewbibmacro*{issue+date}{% - \ifbool{bbx:mergedate} - {\iffieldundef{issue} - {} - {\printtext[parens]{\printfield{issue}}}} - {\printtext[parens]{% - \iffieldundef{issue} - {\usebibmacro{date}} - {\printfield{issue}% - \setunit*{\addspace}% - \usebibmacro{date}}}} - \newunit} - -\renewbibmacro*{date}{% - \ifboolexpr{ - bool {bbx:mergedate} - or - test {\iffieldundef{month}} - } - {} - {\printdate}} - \endinput |