summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
Initial commit
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx150
1 files changed, 150 insertions, 0 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
new file mode 100644
index 0000000000..22c7fef241
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx
@@ -0,0 +1,150 @@
+\ProvidesFile{ext-authoryear-ticomp.cbx}
+ [2019/08/25 v0.8 extended biblatex authoryear-ticomp citation style
+ (MW)]
+
+\RequireCitationStyle{ext-authoryear-icomp}
+\ExecuteBibliographyOptions{singletitle, uniquename, uniquelist,
+ autocite=inline}
+
+\renewcommand*{\iffinalcitedelim}{%
+ \ifnumequal{\value{textcitecount}}{\value{textcitetotal}-1}}
+
+\renewbibmacro*{cite}{%
+ \iffieldundef{shorthand}
+ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\ifboolexpr{test {\ifnameundef{labelname}}
+ or test {\iffieldundef{labelyear}}}
+ {\usebibmacro{cite:label}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nonameyeardelim}%
+ \csuse{extblx@citedelim@\blx@delimcontext @inner@open}}%
+ \usebibmacro{cite:labeldate+extradate}%
+ \usebibmacro{cite:reinit}}
+ {\iffieldequals{namehash}{\cbx@lasthash}
+ {\ifboolexpr{
+ test {\iffieldequals{labelyear}{\cbx@lastyear}}
+ and ( test {\ifnumequal{\value{multicitecount}}{0}}
+ or test {\iffieldundef{postnote}})}
+ {\setunit{\printdelim{extradateonlycompcitedelim}}%
+ \usebibmacro{cite:extradate}}
+ {\setunit{\compcitedelim}%
+ \usebibmacro{cite:labeldate+extradate}%
+ \savefield{labelyear}{\cbx@lastyear}}}
+ {\ifsingletitle
+ {\printtext[bibhyperref]{\printnames{labelname}}}
+ {\printnames{labelname}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nameyeardelim}%
+ \csuse{extblx@citedelim@\blx@delimcontext
+ @inner@open}}%
+ \usebibmacro{cite:labeldate+extradate}%
+ \savefield{namehash}{\cbx@lasthash}%
+ \savefield{labelyear}{\cbx@lastyear}}}}}}
+ {\usebibmacro{cite:shorthand}%
+ \usebibmacro{cite:reinit}}%
+ \setunit{%
+ \ifbool{cbx:parens}
+ {\csuse{extblx@citedelim@\blx@delimcontext @inner@close}%
+ \global\boolfalse{cbx:parens}}
+ {}%
+ \multicitedelim}}
+
+\renewbibmacro*{textcite}{%
+ \iffieldequals{namehash}{\cbx@lasthash}
+ {\iffieldundef{shorthand}
+ {\ifboolexpr{
+ test {\iffieldequals{labelyear}{\cbx@lastyear}}
+ and ( test {\ifnumequal{\value{multicitecount}}{0}}
+ or test {\iffieldundef{postnote}})}
+ {\setunit{\printdelim{extradateonlycompcitedelim}}%
+ \usebibmacro{cite:extradate}}
+ {\setunit{\compcitedelim}%
+ \usebibmacro{cite:labeldate+extradate}%
+ \savefield{labelyear}{\cbx@lastyear}}}
+ {\setunit{\compcitedelim}%
+ \usebibmacro{cite:shorthand}%
+ \global\undef\cbx@lastyear}}
+ {\ifnameundef{labelname}
+ {\iffieldundef{shorthand}
+ {\usebibmacro{cite:label}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nonameyeardelim}%
+ \csuse{extblx@citedelim@\blx@delimcontext @inner@open}}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\usebibmacro{cite:labeldate+extradate}}}
+ {\usebibmacro{cite:shorthand}}}
+ {\ifthenelse{\ifsingletitle\AND
+ \(\iffieldundef{prenote}\OR\value{citecount}>1\)}
+ {\printtext[bibhyperref]{\printnames{labelname}}}
+ {\printnames{labelname}%
+ \setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{nameyeardelim}%
+ \csuse{extblx@citedelim@\blx@delimcontext @inner@open}}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \iffieldundef{shorthand}
+ {\iffieldundef{labelyear}
+ {\usebibmacro{cite:label}}
+ {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
+ {\usebibmacro{cite:ibid}}
+ {\usebibmacro{cite:labeldate+extradate}}}%
+ \savefield{labelyear}{\cbx@lastyear}}
+ {\usebibmacro{cite:shorthand}%
+ \global\undef\cbx@lastyear}}%
+ \stepcounter{textcitecount}}%
+ \savefield{namehash}{\cbx@lasthash}}%
+ \setunit{%
+ \ifbool{cbx:parens}
+ {\csuse{extblx@citedelim@\blx@delimcontext @inner@close}%
+ \global\boolfalse{cbx:parens}}
+ {}%
+ \textcitedelim}}
+
+\renewbibmacro*{textcite:postnote}{%
+ \ifbool{cbx:parens}
+ {\setunit{\printdelim{postnotedelim}}}
+ {\setunit{%
+ \global\booltrue{cbx:parens}%
+ \printdelim{extpostnotedelim}%
+ \csuse{extblx@citedelim@\blx@delimcontext @inner@open}}}%
+ \ifbool{cbx:loccit}
+ {}
+ {\printfield{postnote}}%
+ \ifnumequal{\value{multicitecount}}{\value{multicitetotal}}
+ {\setunit{}%
+ \printtext{%
+ \ifbool{cbx:parens}
+ {\csuse{extblx@citedelim@\blx@delimcontext @inner@close}%
+ \global\boolfalse{cbx:parens}}
+ {}}}
+ {\setunit{%
+ \ifbool{cbx:parens}
+ {\csuse{extblx@citedelim@\blx@delimcontext @inner@close}%
+ \global\boolfalse{cbx:parens}}
+ {}%
+ \textcitedelim}}}
+
+\endinput
+%
+% This file is part of the biblatex-ext bundle.
+% biblatex-ext is released under the LaTeX Project Public License v1.3c
+% or later.
+%
+% A complete list of files included in that package can be found in
+% README.md or - failing that - in ext-standard.bbx.
+%
+% Official releases of this package are on CTAN
+% https://www.ctan.org/pkg/biblatex-ext
+% development takes place on GitHub
+% https://github.com/moewew/biblatex-ext
+%