diff options
author | Karl Berry <karl@freefriends.org> | 2020-08-23 20:40:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-08-23 20:40:58 +0000 |
commit | a3ad9d7a6bdda22d421b3dc72add472cf5b8d580 (patch) | |
tree | 369853f44c6850783d74862fe58ff64f0ba2b86d /Master/texmf-dist/tex | |
parent | 31b0b74a32fd2233afce3695c6db8106ef8b3e0c (diff) |
biblatex-publist
git-svn-id: svn://tug.org/texlive/trunk@56159 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx | 35 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx | 4 |
2 files changed, 27 insertions, 12 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx index 41843043321..cb96b21e281 100644 --- a/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx +++ b/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx @@ -25,8 +25,8 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\bpl@version{1.18} -\def\bpl@rdate{2020/07/31} +\def\bpl@version{1.19} +\def\bpl@rdate{2020/08/21} \ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space biblatex bibliography style (JSP)] @@ -225,8 +225,7 @@ % and normalize spaces \def\bpl@normalize#1#2{% \begingroup - \def\bibnamedelima{ }% - \def\bibnamedelimb{ }% + \blx@indexnamesetup% \def\IeC##1{##1}% \protected@edef\@tempa{#1}% \gdef\@gtempa{}% @@ -477,6 +476,12 @@ \DeclareIndexNameFormat[inbook,inproceedings,incollection]{editorfiltered}{}% +\DeclareDelimFormat{bpl:unfiltered:finalnamedelim}{% + \ifnumless{\value{listcount}}{\value{liststop}}% + {\multinamedelim}% + {\finalnamedelim}% +}% + \DeclareDelimFormat[author]{bplfinalnamedelim}{% \ifnumgreater{\value{nonplauthors}}{2}{\finalandcomma}{}% \addspace\bibstring{and}\space} @@ -582,12 +587,21 @@ }% } +% Add hook to check whether we are in a related entry. +% This is to prevent author omission in such cases. +\newtoggle{isinrelated} +\apptocmd{\abx@macro@begrelated}{\global\toggletrue{isinrelated}}{}% + {\PackageWarning{biblatex-publist}{Patching begrelated failed!}} +\apptocmd{\abx@macro@endrelated}{\global\toggletrue{isinrelated}}{}% + {\PackageWarning{biblatex-publist}{Patching endrelated failed!}} + % Omission/highlighting routine % (common code for authors and editors) % \usebibmacro{bpl:handlenames}[author|editor] \newbibmacro{bpl:handlenames}[1][author]{% \bpl@ifplauthor{\namepartgiven}{\namepartprefix}{\namepartfamily}% - {\global\toggletrue{isplauthor}\stepcounter{pl#1}}% + {\iftoggle{isinrelated}{\togglefalse{isplauthor}}% + {\global\toggletrue{isplauthor}\stepcounter{pl#1}}}% {\global\togglefalse{isplauthor}}% % % Calculate real list stop @@ -619,7 +633,7 @@ {\ifdefvoid{\namepartgiven}{}{\addcomma\addspace\namepartgiven\isdot\addspace}}% \fi }% - \ifnumequal{\value{listcount}}{\value{liststop}}{}{\usebibmacro{name:andothers}}% + \ifnumequal{\value{listcount}}{\value{liststop}}{}{\usebibmacro{bpl:name:andothers}}% }{% \ifnumgreater{\value{listcount}}{\value{realliststop}}{}{% \if@givenfirst% given name first @@ -640,7 +654,7 @@ {\ifdefvoid{\namepartgiven}{}{\addcomma\addspace\namepartgiven\isdot\addspace}}% \fi }% - \usebibmacro{name:andothers}% + \usebibmacro{bpl:name:andothers}% }% % % Second case: plauthorhandling=omit @@ -670,7 +684,8 @@ \ifnumgreater{\value{listcount}}{\value{realliststop}}{}{% \ifnumless{\value{nonpl#1}}{\value{nonpl#1s}}% {\multinamedelim}% - {\printdelim[#1]{bplfinalnamedelim}}% + {\iftoggle{isinrelated}{\printdelim{bpl:unfiltered:finalnamedelim}}% + {\printdelim[#1]{bplfinalnamedelim}}}% }% }% }% @@ -684,7 +699,7 @@ }% }% <- end FALSE condition % - \usebibmacro{name:andothers}% + \usebibmacro{bpl:name:andothers}% \ifthenelse{\value{nonpl#1s}>0\AND\value{listcount}=\value{liststop}}% {\unspace\bibcloseparen}% {}% @@ -824,7 +839,7 @@ \fi% end of \if@hlauthor else condition } -\renewbibmacro*{name:andothers}{% +\newbibmacro*{bpl:name:andothers}{% \ifthenelse{\value{listcount}=\value{liststop}\AND\value{liststop}>\value{realliststop}} {% \ifboolexpr{ diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx index 62d0525d23f..e638661e673 100644 --- a/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx +++ b/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx @@ -26,8 +26,8 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\bpl@version{1.18} -\def\bpl@rdate{2020/07/31} +\def\bpl@version{1.19} +\def\bpl@rdate{2020/08/21} \ProvidesFile{publist.cbx}[\bpl@rdate\space v.\bpl@version\space biblatex citation style (JSP)] |