%% %% This is file `philosophy-classic.bbx', %% generated with the docstrip utility. %% %% The original source files were: %% %% biblatex-philosophy.dtx (with options: `classic-bbx') %% %% The 'biblatex-philosophy' package %% Copyright (C) 2009-2020 Ivan Valbusa %% %% %% All rights reserved %% %% 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 2005/12/01 or later. %% %% This work consists of all files listed in README %% %% This work has the LPPL maintenance status "author-maintained". %% \ProvidesFile{philosophy-classic.bbx} [2020/09/30 v1.9.8c A set of styles for biblatex] \RequireBibliographyStyle{authoryear-comp} \RequireBibliographyStyle{philosophy-standard} \newtoggle{bbx:square} \newtoggle{bbx:nodate} \DeclareBibliographyOption{square}[true]{% \settoggle{bbx:square}{#1}} \DeclareBibliographyOption{nodate}[true]{% \settoggle{bbx:nodate}{#1}} \blx@kv@defkey{blx@bib1}{nodate}[]{}% \blx@kv@defkey{blx@bib2}{nodate}[true]{% \ifstrequal{#1}{false}{\togglefalse{bbx:nodate}}{}}% \def\bbx@opt@mergedate@maximum{% \renewbibmacro*{date+extradate}{% \iffieldundef{labelyear} {\usebibmacro{bbx:nodate}} {\postsepyear{% \iflabeldateisdate {\printfield{issue}% \setunit*{\addspace}% \printdateextra} {\printlabeldateextra}}}}% \renewbibmacro*{bbx:ifmergeddate}{\iflabeldateisdate}% \renewbibmacro*{date}{% \iflabeldateisdate {} {\printdate}}% \renewbibmacro*{issue+date}{% \usebibmacro{bbx:ifmergeddate} {} {\ifdefstring{\bbx@volnumformat}{parens}% {\printtext{% \printfield{issue}% \setunit*{\addspace}% \printdate}} {\printtext[pureparens]{% \printfield{issue}% \setunit*{\addspace}% \printdate}}}}} \def\bbx@opt@mergedate@compact{% \renewbibmacro*{date+extradate}{% \iffieldundef{labelyear} {\usebibmacro{bbx:nodate}} {\postsepyear{% \iflabeldateisdate {\printdateextra} {\printlabeldateextra}}}}% \renewbibmacro*{bbx:ifmergeddate}{\iflabeldateisdate}% \renewbibmacro*{date}{% \iflabeldateisdate {} {\printdate}}% \renewbibmacro*{issue+date}{% \ifboolexpr{not test {\iffieldundef{issue}} or not test {\iflabeldateisdate}} {\ifdefstring{\bbx@volnumformat}{parens}% {\printtext{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{bbx:ifmergeddate} {} {\printdate}% }}% {\printtext[pureparens]{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{bbx:ifmergeddate} {} {\printdate}% }}} {}% \newunit}} \def\bbx@opt@mergedate@basic{% \renewbibmacro*{date+extradate}{% \iffieldundef{labelyear} {\usebibmacro{bbx:nodate}} {\postsepyear{\printlabeldateextra}}}% \renewbibmacro*{bbx:ifmergeddate}{% \ifboolexpr{ test {\iflabeldateisdate} and not test {\ifdateshavedifferentprecision{label}{}} }% }% \renewbibmacro*{date}{% \ifboolexpr{ test {\iflabeldateisdate} and not test {\ifdateshavedifferentprecision{label}{}} } {} {\printdate}}% \renewbibmacro*{issue+date}{% \ifboolexpr{ test {\usebibmacro{bbx:ifmergeddate}} and test {\iffieldundef{issue}} } {} {\ifdefstring{\bbx@volnumformat}{parens}% {\printtext{% \printfield{issue}% \setunit*{\addspace}% \printdate}} {\printtext[parens]{% \printfield{issue}% \setunit*{\addspace}% \printdate}}}% \newunit}} \def\bbx@opt@mergedate@minimum{% \renewbibmacro*{date+extradate}{% \iffieldundef{labelyear} {\usebibmacro{bbx:nodate}} {\postsepyear{\printlabeldateextra}}}% \renewbibmacro*{bbx:ifmergeddate}{% \ifboolexpr{ test {\iflabeldateisdate} and not test {\ifdateshavedifferentprecision{label}{}} and test {\iffieldundef{extradate}} }% }% \renewbibmacro*{date}{% \ifboolexpr{ test {\iflabeldateisdate} and not test {\ifdateshavedifferentprecision{label}{}} and test {\iffieldundef{extradate}} } {} {\printdate}}% \renewbibmacro*{issue+date}{% \ifboolexpr{ test {\usebibmacro{bbx:ifmergeddate}} and test {\iffieldundef{issue}} } {} {\ifdefstring{\bbx@volnumformat}{parens}% {\printtext{% \printfield{issue}% \setunit*{\addspace}% \printdate}} {\printtext[pureparens]{% \printfield{issue}% \setunit*{\addspace}% \printdate}}}% \newunit}} \def\bbx@opt@mergedate@false{% \renewbibmacro*{date+extradate}{% \iffieldundef{labelyear} {\usebibmacro{bbx:nodate}} {\postsepyear{\printlabeldateextra}}}% \renewbibmacro*{bbx:ifmergeddate}{\@secondoftwo}% \renewbibmacro*{date}{\printdate}% \renewbibmacro*{issue+date}{% \ifdefstring{\bbx@volnumformat}{parens}% {\printtext{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{date}}} {\printtext[pureparens]{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{date}}}% \newunit}} \ExecuteBibliographyOptions{% nodate = true, mergedate = basic, uniquename = false, pagetracker = true, singletitle = false, square = false, dashed = true, } \newcommand*{\postsepyear}[1]{% \printtext[parens]{#1}} \newbibmacro*{bbx:nodate}{% \iftoggle{bbx:nodate}{% \postsepyear{\midsentence\bibstring{nodate}}{}}} \AtBeginShorthands{% \renewcommand{\labelnamepunct}{\addcomma\space}% \renewbibmacro*{relateddate}{% \setunit*{\addspace}% \printdate}% \renewbibmacro*{commarelateddate}{% \setunit*{\addcomma\space}% \printdate}% \savebibmacro{date+extradate} \renewbibmacro*{date+extradate}{} \DeclareCiteCommand{\bbx@crossref@inbook} {\renewcommand*{\postsepyear}{\printtext[parens]}% \restorebibmacro{date+extradate}}% {\iffieldundef{shorthand}{% \usebibmacro{citeindex}% \ifuseeditor{% \ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}}% {\usebibmacro{labeltitle}}% \setunit*{\addspace}% \usebibmacro{date+extradate}}% {\usebibmacro{cite:shorthand}}}% {}% {}% \DeclareCiteCommand{\bbx@crossref@incollection}% {\renewcommand*{\postsepyear}{\printtext[parens]}% \restorebibmacro{date+extradate}}% {\iffieldundef{shorthand}{% \usebibmacro{citeindex}% \ifuseeditor{% \ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}}% {\usebibmacro{labeltitle}}% \setunit*{\addspace}% \usebibmacro{date+extradate}}% {\usebibmacro{cite:shorthand}}}% {}% {}% }% \AtBeginDocument{% \ifdefstring{\bbx@editionformat}{superscript}% {\ClassError{biblatex-philosophy} {\MessageBreak**** Option 'editionformat=superscript' available only for philosophy-verbose style} {\MessageBreak**** Option 'editionformat=superscript' available only for philosophy-verbose style}}{} \iftoggle{bbx:square} {\renewcommand{\bibopenparen}{\bibopenbracket}% \renewcommand{\bibcloseparen}{\bibclosebracket}}% {}% \setcounter{maxnamesincross}{\value{maxnames}}% \setcounter{minnamesincross}{\value{minnames}}% }% \AtEveryBibitem{% \iffieldequalstr{entrysubtype}{classic}{% \togglefalse{bbx:nodate}}% }% \renewbibmacro*{relateddate}{} \renewbibmacro*{commarelateddate}{} \renewbibmacro*{author}{% \ifboolexpr{ test \ifuseauthor and not test {\ifnameundef{author}} } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\usebibmacro{bbx:savehash}% \printnames{author}% \iffieldundef{nameaddon}{}% {\setunit{\addspace}% \printfield{nameaddon}}%* \iffieldundef{authortype} {\setunit{\printdelim{nameyeardelim}}} {\setunit{\printdelim{editorstrgdelim}}}}%* \iffieldundef{authortype} {} {\usebibmacro{authorstrg}% \setunit{\printdelim{nameyeardelim}}}}% {\global\undef\bbx@lasthash \usebibmacro{labeltitle}% \setunit*{\printdelim{nonameyeardelim}}}% \usebibmacro{date+extradate}} \renewbibmacro*{bbx:editor}[1]{% \ifboolexpr{ test \ifuseeditor and not test {\ifnameundef{editor}} } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\printnames{editor}% \setunit{\printdelim{editorstrgdelim}}%MOD \usebibmacro{bbx:savehash}}% \usebibmacro{#1}% \clearname{editor}% \setunit{\printdelim{nameyeardelim}}}% {\global\undef\bbx@lasthash \usebibmacro{labeltitle}% \setunit*{\printdelim{nonameyeardelim}}}% \usebibmacro{date+extradate}} \renewbibmacro*{bbx:translator}[1]{% \ifboolexpr{ test \ifusetranslator and not test {\ifnameundef{translator}} } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\printnames{translator}% \setunit{\printdelim{editorstrgdelim}}%MOD \usebibmacro{bbx:savehash}}% \usebibmacro{#1}%MOD \clearname{translator}% \setunit{\printdelim{nameyeardelim}}}% {\global\undef\bbx@lasthash \usebibmacro{labeltitle}% \setunit*{\printdelim{nonameyeardelim}}}% \usebibmacro{date+extradate}} \renewbibmacro*{labeltitle}{% \iffieldundef{label} {\iffieldundef{shorttitle} {\printfield{title}% \clearfield{title}} {\printfield[title]{shorttitle}}\blx@postpunct} {\printfield{label}}} \DeclareCiteCommand{\bbx@crossref@inbook}% {}% {\usebibmacro{citeindex}% \ifuseeditor{% \ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}}% {\usebibmacro{labeltitle}}% \setunit*{\addspace}% \printtext[bibhyperref]{\usebibmacro{date+extradate}}}% {}% {}% \DeclareCiteCommand{\bbx@crossref@incollection}% {}% {\usebibmacro{citeindex}% \ifuseeditor{% \ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}}% {\usebibmacro{labeltitle}}% \setunit*{\addspace}% \printtext[bibhyperref]{\usebibmacro{date+extradate}}}% {}% {}% \endinput %% %% End of file `philosophy-classic.bbx'.