diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /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.cbx | 150 |
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 +% |