publist produces entry “with and ” when omitting first author











up vote
3
down vote

favorite












I produce a publist with the current version of publist (File: publist.bbx 2018/09/01 v.1.11) and get in entries where I am the first author "(with and XX)", but not when I am not the first author (second or later).
the first entry is wrong, the second correct
Here is a MWE:



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
}
end{filecontents}

begin{document}

title{XX publications}
author{}
date{today}
maketitle


section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]


end{document}









share|improve this question




















  • 2




    I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
    – moewe
    yesterday












  • Thank you for checking. I have repored a bug, as you suggest!
    – user855443
    yesterday















up vote
3
down vote

favorite












I produce a publist with the current version of publist (File: publist.bbx 2018/09/01 v.1.11) and get in entries where I am the first author "(with and XX)", but not when I am not the first author (second or later).
the first entry is wrong, the second correct
Here is a MWE:



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
}
end{filecontents}

begin{document}

title{XX publications}
author{}
date{today}
maketitle


section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]


end{document}









share|improve this question




















  • 2




    I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
    – moewe
    yesterday












  • Thank you for checking. I have repored a bug, as you suggest!
    – user855443
    yesterday













up vote
3
down vote

favorite









up vote
3
down vote

favorite











I produce a publist with the current version of publist (File: publist.bbx 2018/09/01 v.1.11) and get in entries where I am the first author "(with and XX)", but not when I am not the first author (second or later).
the first entry is wrong, the second correct
Here is a MWE:



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
}
end{filecontents}

begin{document}

title{XX publications}
author{}
date{today}
maketitle


section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]


end{document}









share|improve this question















I produce a publist with the current version of publist (File: publist.bbx 2018/09/01 v.1.11) and get in entries where I am the first author "(with and XX)", but not when I am not the first author (second or later).
the first entry is wrong, the second correct
Here is a MWE:



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
}
end{filecontents}

begin{document}

title{XX publications}
author{}
date{today}
maketitle


section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]


end{document}






biblatex






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited yesterday









Bernard

162k767192




162k767192










asked yesterday









user855443

2728




2728








  • 2




    I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
    – moewe
    yesterday












  • Thank you for checking. I have repored a bug, as you suggest!
    – user855443
    yesterday














  • 2




    I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
    – moewe
    yesterday












  • Thank you for checking. I have repored a bug, as you suggest!
    – user855443
    yesterday








2




2




I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
– moewe
yesterday






I can reproduce the issue, but I don't have time right now to look into it. Even if you get an answer here quickly, please consider reporting this at github.com/jspitz/biblatex-publist/issues. It looks very much like a small bug in the style and I'm sure the developer would be happy to hear about it so he can have a look at it.
– moewe
yesterday














Thank you for checking. I have repored a bug, as you suggest!
– user855443
yesterday




Thank you for checking. I have repored a bug, as you suggest!
– user855443
yesterday










1 Answer
1






active

oldest

votes

















up vote
3
down vote



accepted










I'm not sure what might have changed or where, but if I had to guess the new name wrapper formatting directives introduced somehow a grouping for individual names thus messing with the toggles used by biblatex-publist in its name formatting directives.



Update: @moewe identified the place the grouping was introduced, and it was not in the new name wrapper formatting facilities as my uninformed hunch would have, but in https://github.com/plk/biblatex/pull/731.



Making the toggling of myselfprec and hadmyself global in the author and editor name formatting directives seems to solve the issue. And, as far as I can tell, these toggles are only used there, so making them global should be harmless.



Unfortunately, those formatting directives are quite long, even when the changes introduced are small.



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
end{filecontents}

makeatletter
DeclareNameFormat{author}{%
if@hlauthor%
% Embolden omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}%
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{author}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- % change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change here
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{author}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

DeclareNameFormat{editor}{%
if@hlauthor
% Embolden omitted editor
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{editor}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change herey
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{editor}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

makeatother

begin{document}

title{XX publications}
author{}
date{today}
maketitle

section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]

end{document}


enter image description here






share|improve this answer



















  • 1




    The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
    – moewe
    17 hours ago










  • @moewe Thanks! I added the info.
    – gusbrs
    16 hours ago










  • @moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
    – gusbrs
    16 hours ago










  • I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
    – user855443
    15 hours ago










  • @user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
    – gusbrs
    14 hours ago











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














 

draft saved


draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f461456%2fpublist-produces-entry-with-and-second-author-when-omitting-first-author%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes








up vote
3
down vote



accepted










I'm not sure what might have changed or where, but if I had to guess the new name wrapper formatting directives introduced somehow a grouping for individual names thus messing with the toggles used by biblatex-publist in its name formatting directives.



Update: @moewe identified the place the grouping was introduced, and it was not in the new name wrapper formatting facilities as my uninformed hunch would have, but in https://github.com/plk/biblatex/pull/731.



Making the toggling of myselfprec and hadmyself global in the author and editor name formatting directives seems to solve the issue. And, as far as I can tell, these toggles are only used there, so making them global should be harmless.



Unfortunately, those formatting directives are quite long, even when the changes introduced are small.



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
end{filecontents}

makeatletter
DeclareNameFormat{author}{%
if@hlauthor%
% Embolden omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}%
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{author}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- % change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change here
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{author}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

DeclareNameFormat{editor}{%
if@hlauthor
% Embolden omitted editor
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{editor}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change herey
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{editor}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

makeatother

begin{document}

title{XX publications}
author{}
date{today}
maketitle

section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]

end{document}


enter image description here






share|improve this answer



















  • 1




    The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
    – moewe
    17 hours ago










  • @moewe Thanks! I added the info.
    – gusbrs
    16 hours ago










  • @moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
    – gusbrs
    16 hours ago










  • I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
    – user855443
    15 hours ago










  • @user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
    – gusbrs
    14 hours ago















up vote
3
down vote



accepted










I'm not sure what might have changed or where, but if I had to guess the new name wrapper formatting directives introduced somehow a grouping for individual names thus messing with the toggles used by biblatex-publist in its name formatting directives.



Update: @moewe identified the place the grouping was introduced, and it was not in the new name wrapper formatting facilities as my uninformed hunch would have, but in https://github.com/plk/biblatex/pull/731.



Making the toggling of myselfprec and hadmyself global in the author and editor name formatting directives seems to solve the issue. And, as far as I can tell, these toggles are only used there, so making them global should be harmless.



Unfortunately, those formatting directives are quite long, even when the changes introduced are small.



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
end{filecontents}

makeatletter
DeclareNameFormat{author}{%
if@hlauthor%
% Embolden omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}%
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{author}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- % change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change here
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{author}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

DeclareNameFormat{editor}{%
if@hlauthor
% Embolden omitted editor
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{editor}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change herey
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{editor}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

makeatother

begin{document}

title{XX publications}
author{}
date{today}
maketitle

section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]

end{document}


enter image description here






share|improve this answer



















  • 1




    The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
    – moewe
    17 hours ago










  • @moewe Thanks! I added the info.
    – gusbrs
    16 hours ago










  • @moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
    – gusbrs
    16 hours ago










  • I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
    – user855443
    15 hours ago










  • @user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
    – gusbrs
    14 hours ago













up vote
3
down vote



accepted







up vote
3
down vote



accepted






I'm not sure what might have changed or where, but if I had to guess the new name wrapper formatting directives introduced somehow a grouping for individual names thus messing with the toggles used by biblatex-publist in its name formatting directives.



Update: @moewe identified the place the grouping was introduced, and it was not in the new name wrapper formatting facilities as my uninformed hunch would have, but in https://github.com/plk/biblatex/pull/731.



Making the toggling of myselfprec and hadmyself global in the author and editor name formatting directives seems to solve the issue. And, as far as I can tell, these toggles are only used there, so making them global should be harmless.



Unfortunately, those formatting directives are quite long, even when the changes introduced are small.



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
end{filecontents}

makeatletter
DeclareNameFormat{author}{%
if@hlauthor%
% Embolden omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}%
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{author}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- % change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change here
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{author}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

DeclareNameFormat{editor}{%
if@hlauthor
% Embolden omitted editor
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{editor}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change herey
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{editor}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

makeatother

begin{document}

title{XX publications}
author{}
date{today}
maketitle

section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]

end{document}


enter image description here






share|improve this answer














I'm not sure what might have changed or where, but if I had to guess the new name wrapper formatting directives introduced somehow a grouping for individual names thus messing with the toggles used by biblatex-publist in its name formatting directives.



Update: @moewe identified the place the grouping was introduced, and it was not in the new name wrapper formatting facilities as my uninformed hunch would have, but in https://github.com/plk/biblatex/pull/731.



Making the toggling of myselfprec and hadmyself global in the author and editor name formatting directives seems to solve the issue. And, as far as I can tell, these toggles are only used there, so making them global should be harmless.



Unfortunately, those formatting directives are quite long, even when the changes introduced are small.



documentclass{article}

usepackage[bibstyle=publist]{biblatex}

plauthorname{Frank}
begin{filecontents}{mwebib.bib}

@Article{Frank1994e,
author = {Frank, Andrew U. and Timpf, Sabine},
title = {Multiple Representations for Cartographic Objects in a Multi-Scale Tree - An Intelligent Graphical Zoom},
journal = {Computers and Graphics Special Issue on Modelling and Visualization of Spatial Data in GIS},
year = {1994},
volume = {18},
number = {6},
pages = {823--829},
}

@Article{Buyong1991,
author = {Buyong, Taher and Kuhn, Werner and Frank, Andrew U.},
title = {A Conceptual Model of Measurement-Based Multipurpose Cadastral Systems},
journal = {Journal of the Urban and Regional Information Systems Association (URISA)},
year = {1991},
volume = {3},
number = {2},
pages = {35--49},
}
end{filecontents}

makeatletter
DeclareNameFormat{author}{%
if@hlauthor%
% Embolden omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}%
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{author}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{namepartprefix}{bpl@tvonpart}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
bpl@normalize{bpl@ovonpart}{bpl@evonpart}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- % change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change here
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{author}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

DeclareNameFormat{editor}{%
if@hlauthor
% Embolden omitted editor
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{toggletrue{ismyself}}{togglefalse{ismyself}}
ifthenelse{value{listcount}=1}{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{finalnamedelim}%
}%
iftoggle{ismyself}{plauthorhl{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}}{%
if@givenfirst% given name first
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
else% family name first
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
namepartfamily%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{addcommaaddspacenamepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{addcommaaddspacenamepartgivenaddspace}}%
fi
}%
usebibmacro{name:andothers}%
else% if@hlauthor false
ifthenelse{value{listcount}=1}{ifthenelse{value{editor}>1}{bibopenparenbibstring{with}addspace}{}}{}%
% Exclude omitted author
bpl@normalize{namepartfamily}{bpl@tsurname}%
bpl@normalize{namepartgiven}{bpl@tfirstname}%
bpl@normalize{bpl@osurname}{bpl@esurname}%
bpl@normalize{bpl@ofirstname}{bpl@efirstname}%
ifboolexpr{
test { ifdefstrequal{bpl@esurname}{bpl@tsurname} }
and
( test { ifdefstrequal{bpl@efirstname}{bpl@tfirstname} } or test { ifdefstring{bpl@ofirstname}{} })
and
( test { ifdefstrequal{bpl@evonpart}{bpl@tvonpart} } or test { ifdefstring{bpl@ovonpart}{} }) }
{globaltoggletrue{myselfprec}globaltoggletrue{hadmyself}% <- change here
ifthenelse{value{listcount}=1ANDvalue{liststop}=1}
{stepcounter{liststop}}{}}
{ifthenelse{value{listcount}=1}{globaltogglefalse{hadmyself}}{% <- change herey
ifboolexpr{
test { iftoggle{myselfprec} }
and
test { ifnumless{value{listcount}}{3} } }
{}{%
ifnumless{value{listcount}}{value{liststop}-1}%
{multinamedelim}%
{iftoggle{hadmyself}{%
ifnumless{value{listcount}}{value{liststop}}%
{multinamedelim}%
{finalnamedelim}}
{finalnamedelim}}%
}%
}%
ifgiveninits
{ifdefvoid{namepartgiveni}{}{namepartgiveniaddspace}}%
{ifdefvoid{namepartgiven}{}{namepartgivenaddspace}}%
ifdefvoid{namepartprefix}{}{namepartprefixaddspace}%
globaltogglefalse{myselfprec}% <- change here
namepartfamily}%
usebibmacro{name:andothers}%
ifthenelse{value{listcount}=value{liststop}ANDvalue{editor}>1}{unspacebibcloseparen}{}%
fi% end of if@hlauthor else condition
}

makeatother

begin{document}

title{XX publications}
author{}
date{today}
maketitle

section{Articles}
newrefsection[mwebib]
nocite{*}
printbibliography[heading=none]

end{document}


enter image description here







share|improve this answer














share|improve this answer



share|improve this answer








edited 16 hours ago

























answered yesterday









gusbrs

6,2142838




6,2142838








  • 1




    The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
    – moewe
    17 hours ago










  • @moewe Thanks! I added the info.
    – gusbrs
    16 hours ago










  • @moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
    – gusbrs
    16 hours ago










  • I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
    – user855443
    15 hours ago










  • @user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
    – gusbrs
    14 hours ago














  • 1




    The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
    – moewe
    17 hours ago










  • @moewe Thanks! I added the info.
    – gusbrs
    16 hours ago










  • @moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
    – gusbrs
    16 hours ago










  • I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
    – user855443
    15 hours ago










  • @user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
    – gusbrs
    14 hours ago








1




1




The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
– moewe
17 hours ago




The analysis is spot on, but one small correction: The grouping that keeps the toggles here local was not introduced by the new wrappers (phew!), it was introduced explicitly in github.com/plk/biblatex/pull/731 to fix a different bug in biblatex.
– moewe
17 hours ago












@moewe Thanks! I added the info.
– gusbrs
16 hours ago




@moewe Thanks! I added the info.
– gusbrs
16 hours ago












@moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
– gusbrs
16 hours ago




@moewe Btw, the new name/list wrappers are a very neat addition. Thanks a bunch.
– gusbrs
16 hours ago












I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
– user855443
15 hours ago




I fixes indeed the issue for me. Thank you very much for the quick response! - the fix is quite long and I have put it in a file to include; is there a better solution?
– user855443
15 hours ago












@user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
– gusbrs
14 hours ago




@user855443 There's no harm in that and, if it helps keeping your stuff organized in a way that suits you, it is fine. Anyway, until the fix arrives in the package itself, you will have to maintain this being called somehow in your preamble. Just keep an eye to remove it when the fix does come.
– gusbrs
14 hours ago


















 

draft saved


draft discarded



















































 


draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f461456%2fpublist-produces-entry-with-and-second-author-when-omitting-first-author%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Accessing regular linux commands in Huawei's Dopra Linux

Can't connect RFCOMM socket: Host is down

Kernel panic - not syncing: Fatal Exception in Interrupt