summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx')
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx80
1 files changed, 65 insertions, 15 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
index c7d385b452d..d3d4381a9ab 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{2.9}
-\def\bpl@rdate{2025/05/09}
+\def\bpl@version{2.11}
+\def\bpl@rdate{2024/07/02}
\ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space
biblatex bibliography style (JSP)]
@@ -552,16 +552,29 @@
{}{\PackageWarning{biblatex-publist}{Patching refsection failed!}}
}{}
-\newcommand*\GetSectionCount[1][\empty]{%
- \edef\bpl@secno{#1}%
- \ifx\bpl@secno\empty%
- \csnumdef{bpltmprefsection}{\c@refsection}%
+\ExplSyntaxOn
+
+\int_new:N \l_bpl_sec_cnt_int
+
+\NewDocumentCommand \GetSectionCount { >{\SplitList{,}} o }
+{
+ \IfNoValueTF{#1}{%
+ \csnumdef{bpltmprefsection}{\c@refsection}
\csuse{bpl@secitems:\bpltmprefsection}%
- \else%
- \csuse{bpl@secitems:#1}%
- \fi%
+ }{
+ \int_zero:N \l_bpl_sec_cnt_int
+ \ProcessList{#1}{\__bpl_add_section_count}
+ \int_use:N \l_bpl_sec_cnt_int
+ }
}
+\cs_new:Npn \__bpl_add_section_count #1
+{
+ \int_add:Nn \l_bpl_sec_cnt_int { \use:c{bpl@secitems:#1} }
+}
+
+\ExplSyntaxOff
+
\newcommand*\GetTotalCount{%
\csuse{bpl@items}%
}
@@ -897,7 +910,15 @@
\newrobustcmd{\mkbibdesc}[1]{%
% Print labelnumber as actual number, plus item total
- \number\numexpr\csuse{bpl@itemtotal}+#1+\csuse{bpl@shift@itemtotal}\relax%
+ \edef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}+#1+\csuse{bpl@shift@itemtotal}\relax}%
+ \bpl@current@item@no%
+ % Store number in pbx file
+ \if@filesw%
+ \protected@write\bpl@bpxfile{}{%
+ \csedef{bpl@itemnumber:\thefield{entrykey}}{\bpl@current@item@no}%
+ \csedef{bpl@itemsec:\thefield{entrykey}}{\therefsection}%
+ }%
+ \fi%
}%
% Way to manually shift the numbering
@@ -1112,21 +1133,25 @@
% from publist
\defbibcheck{nosubmitted}{%
\edef\tmpps{\bibstring{submitted}}%
- \iffieldequals{pubstate}{\tmpps}{\skipentry}{}%
+ \iffieldequals{pubstate}{\tmpps}{\skipentry}{%
+ \iffieldequalstr{pubstate}{submitted}{\skipentry}{}}%
}
% check to exclude work in preparation
% from publist
\defbibcheck{noprepared}{%
\edef\tmpps{\bibstring{inpreparation}}%
- \iffieldequals{pubstate}{\tmpps}{\skipentry}{}%
+ \iffieldequals{pubstate}{\tmpps}{\skipentry}{%
+ \iffieldequalstr{pubstate}{inpreparation}{\skipentry}{}}%
}
% check to exclude all work which is not (pre-)published
\defbibcheck{onlypublished}{%
\iffieldundef{pubstate}{}{%
\edef\tmpps{\bibstring{prepublished}}%
- \iffieldequals{pubstate}{\tmpps}{}{\skipentry}%
+ \iffieldequals{pubstate}{\tmpps}{%
+ \iffieldequalstr{pubstate}{prepublished}{}{\skipentry}%
+ }{\skipentry}%
}%
}
@@ -1137,12 +1162,37 @@
\edef\tmppss{\bibstring{forthcoming}}%
\iffieldequals{pubstate}{\tmpps}{}{%
\iffieldequals{pubstate}{\tmppss}{}{%
- \skipentry}%
- }%
+ \iffieldequalstr{pubstate}{prepublished}{}{%
+ \iffieldequalstr{pubstate}{forthcoming}{}{%
+ \skipentry}%
+ }%
+ }%
+ }%
+ }%
+}
+
+% check to exclude all work which is not peer-reviewed
+\defbibcheck{onlypr}{%
+ \iffieldundef{peerreview}{\skipentry}{%
+ \edef\tmppr{\bibstring{no}}%
+ \iffieldequals{peerreview}{\tmpps}{\skipentry}{%
+ \iffieldequalstr{peerreview}{no}{\skipentry}{}%
+ }%
+ }%
+}
+
+% check to exclude all work which *is* peer-reviewed
+\defbibcheck{nopr}{%
+ \iffieldundef{peerreview}{}{%
+ \edef\tmppr{\bibstring{no}}%
+ \iffieldequals{peerreview}{\tmpps}{}{%
+ \iffieldequalstr{peerreview}{no}{}{\skipentry}
+ }%
}%
}
+
%
% Count non-plauthors
%