diff options
author | Karl Berry <karl@freefriends.org> | 2018-03-19 21:49:24 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-03-19 21:49:24 +0000 |
commit | a198254d24ccfd63859b7ec9480d95775b087c4e (patch) | |
tree | 49bd922d8362e6398130515ef91e95c3550e3823 /Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx | |
parent | d1c302ed5a53246283181ec1ab9a537ec5a6959e (diff) |
biblatex-ext (19mar18)
git-svn-id: svn://tug.org/texlive/trunk@47029 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx | 225 |
1 files changed, 225 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx b/Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx new file mode 100644 index 00000000000..3c35e97952b --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-ext/ext-authoryear-icomp.cbx @@ -0,0 +1,225 @@ +\ProvidesFile{ext-authoryear-icomp.cbx} + [2018/03/18 v0.1 extended biblatex authoryear-icomp + citation style (MW)] + +\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}{}{}{}{} + +\RequireCitationStyle{authoryear-icomp} + +\DeclareOuterCiteDelim{parencite}{\bibopenparen}{\bibcloseparen} + +\DeclareInnerCiteDelim{textcite}{\bibopenparen}{\bibcloseparen} + +\DeclareFieldFormat{citelabeldate}{#1} +\DeclareFieldFormat{parencitelabeldate}{#1} +\DeclareFieldFormat{textcitelabeldate}{#1} +\DeclareFieldFormat{footcitelabeldate}{#1} + +\newcommand*{\extradateonlycompcitedelim}{\addcomma} + +\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{\extradateonlycompcitedelim}% + \usebibmacro{cite:extradate}} + {\setunit{\compcitedelim}% + \usebibmacro{cite:labeldate+extradate}% + \savefield{labelyear}{\cbx@lastyear}}} + {\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*{cite:labeldate+extradate}{% + \iffieldundef{labelyear} + {} + {\printtext[bibhyperref]{% + \printtext[\blx@delimcontext labeldate]{% + \printlabeldateextra}}}} + +\renewbibmacro*{cite:extradate}{% + \iffieldundef{extradate} + {} + {\printtext[bibhyperref]{% + \printtext[\blx@delimcontext labeldate]{% + \printfield{extradate}}}}} + +\renewbibmacro*{cite:postnote}{% + \setunit{}% + \printtext{% + \ifbool{cbx:parens} + {\csuse{extblx@citedelim@\blx@delimcontext @inner@close}% + \global\boolfalse{cbx:parens}} + {}}% + \ifbool{cbx:loccit} + {} + {\usebibmacro{postnote}}} + +\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{\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@textcite@inner@open}}% + \ifnumequal{\value{citecount}}{1} + {\usebibmacro{prenote}} + {}% + \ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} + {\usebibmacro{cite:ibid}} + {\usebibmacro{cite:labeldate+extradate}}} + {\usebibmacro{cite:shorthand}}} + {\printnames{labelname}% + \setunit{% + \global\booltrue{cbx:parens}% + \printdelim{nameyeardelim}% + \csuse{extblx@citedelim@textcite@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@textcite@inner@close}% + \global\boolfalse{cbx:parens}} + {}% + \textcitedelim}} + +\renewbibmacro*{textcite:postnote}{% + \ifbool{cbx:loccit} + {} + {\usebibmacro{postnote}}% + \ifnumequal{\value{multicitecount}}{\value{multicitetotal}} + {\setunit{}% + \printtext{% + \ifbool{cbx:parens} + {\csuse{extblx@citedelim@textcite@inner@close}% + \global\boolfalse{cbx:parens}} + {}}} + {\setunit{% + \ifbool{cbx:parens} + {\csuse{extblx@citedelim@textcite@inner@close}% + \global\boolfalse{cbx:parens}} + {}% + \textcitedelim}}} + +\DeclareCiteCommand{\cite}[\mkoutercitedelim] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{cite:postnote}} + +\DeclareCiteCommand*{\cite}[\mkoutercitedelim] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{citeyear}} + {} + {\usebibmacro{cite:postnote}} + +\DeclareCiteCommand{\parencite}[\mkouterparencitedelim] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{cite:postnote}} + +\DeclareCiteCommand*{\parencite}[\mkouterparencitedelim] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{citeyear}} + {} + {\usebibmacro{cite:postnote}} + +\DeclareCiteCommand{\smartcite}[\iffootnote\mkouterparencitedelim\mkbibfootnote] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{cite:postnote}} + +\DeclareCiteCommand{\cbx@textcite}[\mkoutertextcitedelim] + {\usebibmacro{cite:init}} + {\usebibmacro{citeindex}% + \usebibmacro{textcite}} + {} + {\usebibmacro{textcite:postnote}} + + +\DeclareMultiCiteCommand{\cbx@textcites}[\mkoutertextcitedelim]{\cbx@textcite}{} + +\DeclareMultiCiteCommand{\cites}[\mkoutercitedelim]{\cite}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\parencites}[\mkouterparencitedelim] + {\parencite}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\smartcites}[\iffootnote\mkouterparencitedelim\mkbibfootnote] + {\smartcite}{\setunit{\multicitedelim}} + +\DeclareCiteCommand{\bbx@cite@inxref}[\mkouterbibinxrefcitedelim] + {\boolfalse{citetracker}% + \boolfalse{pagetracker}% + \boolfalse{backtracker}% + \usebibmacro{cite:init}} + {\usebibmacro{bbx:cite:inxref}} + {} + {\usebibmacro{cite:postnote}} + +\renewbibmacro*{bbx:cite:intro}{% + \usebibmacro{cite}% + \clearfield{postnote}% + \usebibmacro{cite:postnote}} + +\endinput |