summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-03-19 21:49:24 +0000
committerKarl Berry <karl@freefriends.org>2018-03-19 21:49:24 +0000
commita198254d24ccfd63859b7ec9480d95775b087c4e (patch)
tree49bd922d8362e6398130515ef91e95c3550e3823 /Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx
parentd1c302ed5a53246283181ec1ab9a537ec5a6959e (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-numeric.cbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx87
1 files changed, 87 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx b/Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx
new file mode 100644
index 00000000000..4074467bedf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-ext/ext-numeric.cbx
@@ -0,0 +1,87 @@
+\ProvidesFile{ext-numeric.cbx}
+ [2018/03/18 v0.1 extended biblatex numeric citation style (MW)]
+
+\blx@inputonce{ext-biblatex-aux.def}{auxiliary code for ext-biblatex}{}{}{}{}
+
+\RequireCitationStyle{numeric}
+
+\DeclareOuterCiteDelim{cite}{\bibopenbracket}{\bibclosebracket}
+\DeclareOuterCiteDelimAlias{parencite}{cite}
+\DeclareOuterCiteDelim{textcite}{}{}
+
+\DeclareInnerCiteDelim{textcite}{\bibopenbracket}{\bibclosebracket}
+
+\renewbibmacro*{textcite}{%
+ \iffieldequals{namehash}{\cbx@lasthash}
+ {\setunit{\multicitedelim}}
+ {\ifnameundef{labelname}
+ {\printfield[citetitle]{labeltitle}}
+ {\printnames{labelname}}%
+ \setunit*{\printdelim{namelabeldelim}}%
+ \printtext{\csuse{extblx@citedelim@textcite@inner@open}}%
+ \global\booltrue{cbx:parens}%
+ \stepcounter{textcitecount}%
+ \savefield{namehash}{\cbx@lasthash}}%
+ \ifnumequal{\value{citecount}}{1}
+ {\usebibmacro{prenote}}
+ {}%
+ \usebibmacro{cite}%
+ \setunit{%
+ \ifbool{cbx:parens}
+ {\csuse{extblx@citedelim@textcite@inner@close}%
+ \global\boolfalse{cbx:parens}}
+ {}%
+ \textcitedelim}}
+
+\renewbibmacro*{textcite:postnote}{%
+ \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{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\parencite}[\mkouterparencitedelim]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\smartcite}[\iffootnote\mkouterparencitedelim\mkbibfootnote]
+ {\usebibmacro{prenote}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{cite}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
+
+\DeclareCiteCommand{\cbx@textcite}[\mkoutertextcitedelim]
+ {\usebibmacro{textcite:init}}
+ {\usebibmacro{citeindex}%
+ \usebibmacro{textcite}}
+ {}
+ {\usebibmacro{textcite:postnote}}
+
+\DeclareMultiCiteCommand{\cbx@textcites}[\mkoutertextcitedelim]{\cbx@textcite}{}
+
+\DeclareMultiCiteCommand{\cites}[\mkoutercitedelim]{\cite}{\multicitedelim}
+\DeclareMultiCiteCommand{\parencites}[\mkouterparencitedelim]{\parencite}{\multicitedelim}
+\DeclareMultiCiteCommand{\smartcites}[\iffootnote\mkouterparencitedelim\mkbibfootnote]
+ {\smartcite}{\multicitedelim}
+
+\endinput