summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx')
-rw-r--r--macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx173
1 files changed, 173 insertions, 0 deletions
diff --git a/macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx b/macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx
new file mode 100644
index 0000000000..319fcf2aaa
--- /dev/null
+++ b/macros/latex/contrib/biblatex-ms/latex/cbx/authoryear-ibid-ms.cbx
@@ -0,0 +1,173 @@
+\ProvidesFile{authoryear-ibid-ms.cbx}
+[\abx@cbxid]
+
+\ExecuteBibliographyOptions{labeldateparts,uniquename,uniquelist,pagetracker,
+ ibidtracker=constrict,autocite=inline}
+
+\providecommand*{\mkibid}[1]{#1}
+\renewcommand*{\iffinalcitedelim}{\iflastcitekey}
+
+\newbool{cbx:parens}
+\newbool{cbx:loccit}
+
+\DeclareBibliographyOption[boolean]{ibidpage}[true]{%
+ \ifstrequal{#1}{true}
+ {\ExecuteBibliographyOptions{loccittracker=constrict}}
+ {\ExecuteBibliographyOptions{loccittracker=false}}}
+
+\newbibmacro*{cite}{%
+ \global\boolfalse{cbx:loccit}%
+ \iffieldundef{shorthand}
+ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
+ {\usebibmacro{cite:label}%
+ \setunit{\printdelim{nonameyeardelim}}}
+ {\printnames{labelname}%
+ \setunit{\printdelim{nameyeardelim}}}%
+ \usebibmacro{cite:labeldate+extradate}}}
+ {\usebibmacro{cite:shorthand}}}
+
+\newbibmacro*{citeyear}{%
+ \global\boolfalse{cbx:loccit}%
+ \iffieldundef{shorthand}
+ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\iffieldundef{labelyear}
+ {\usebibmacro{cite:label}}
+ {\usebibmacro{cite:labeldate+extradate}}}}
+ {\usebibmacro{cite:shorthand}}}
+
+\newbibmacro*{textcite}{%
+ \global\boolfalse{cbx:loccit}%
+ \ifnameundef{labelname}
+ {\iffieldundef{shorthand}
+ {\usebibmacro{cite:label}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nonameyeardelim}\bibopenparen}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \usebibmacro{cite:labeldate+extradate}}
+ {\usebibmacro{cite:shorthand}}}
+ {\printnames{labelname}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nameyeardelim}\bibopenparen}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \iffieldundef{shorthand}
+ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\iffieldundef{labelyear}
+ {\usebibmacro{cite:label}}
+ {\usebibmacro{cite:labeldate+extradate}}}}
+ {\usebibmacro{cite:shorthand}}}}
+
+\newbibmacro*{cite:shorthand}{%
+ \printtext[bibhyperref]{\printfield{shorthand}}}
+
+\newbibmacro*{cite:ibid}{%
+ \printtext[bibhyperref]{\bibstring[\mkibid]{ibidem}}%
+ \ifloccit
+ {\global\booltrue{cbx:loccit}}
+ {}}
+
+\newbibmacro*{cite:label}{%
+ \iffieldundef{label}
+ {\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}
+ {\printtext[bibhyperref]{\printfield{label}}}}
+
+\newbibmacro*{cite:labeldate+extradate}{%
+ \iffieldundef{labelyear}
+ {}
+ {\printtext[bibhyperref]{\printlabeldateextra}}}
+
+\newbibmacro{cite:labelyear+extrayear}{%
+ \blx@warning{bibmacro 'cite:labelyear+extrayear' is deprecated.\MessageBreak
+ Please use 'cite:labeldate+extradate'.\MessageBreak
+ Using 'cite:labeldate+extradate' instead}%
+ \usebibmacro{cite:labeldate+extradate}}
+
+\newbibmacro*{cite:postnote}{%
+ \ifbool{cbx:loccit}
+ {}
+ {\usebibmacro{postnote}}}
+
+\newbibmacro*{textcite:postnote}{%
+ \ifthenelse{\iffieldundef{postnote}\OR\boolean{cbx:loccit}}
+ {\ifbool{cbx:parens}
+ {\bibcloseparen}
+ {}}
+ {\ifbool{cbx:parens}
+ {\printdelim{postnotedelim}}
+ {\printdelim{extpostnotedelim}\bibopenparen}%
+ \printfield{postnote}\bibcloseparen}}
+
+\DeclareCiteCommand{\cite}
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand*{\cite}
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{citeyear}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\parencite}[\mkbibparens]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand*{\parencite}[\mkbibparens]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{citeyear}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\footcite}[\mkbibfootnote]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\footcitetext}[\mkbibfootnotetext]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\smartcite}[\iffootnote\mkbibparens\mkbibfootnote]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{cite:postnote}}
+
+\DeclareCiteCommand{\textcite}
+ {\boolfalse{cbx:parens}}
+ {\usebibmacro{citeindex}%
+ \iffirstcitekey
+ {\setcounter{textcitetotal}{1}}
+ {\stepcounter{textcitetotal}%
+ \textcitedelim}%
+ \usebibmacro{textcite}}
+ {\ifbool{cbx:parens}
+ {\bibcloseparen\global\boolfalse{cbx:parens}}
+ {}}
+ {\usebibmacro{textcite:postnote}}
+
+\DeclareMultiCiteCommand{\textcites}{\textcite}{}
+
+\endinput