texlive[67302] Master/texmf-dist: biblatex-publist (8jun23)

commits+karl at tug.org commits+karl at tug.org
Thu Jun 8 21:49:38 CEST 2023


Revision: 67302
          http://tug.org/svn/texlive?view=revision&revision=67302
Author:   karl
Date:     2023-06-08 21:49:38 +0200 (Thu, 08 Jun 2023)
Log Message:
-----------
biblatex-publist (8jun23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/biblatex-publist/README
    trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.pdf
    trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.tex
    trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
    trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx
    trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx

Modified: trunk/Master/texmf-dist/doc/latex/biblatex-publist/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/biblatex-publist/README	2023-06-07 23:41:26 UTC (rev 67301)
+++ trunk/Master/texmf-dist/doc/latex/biblatex-publist/README	2023-06-08 19:49:38 UTC (rev 67302)
@@ -46,6 +46,10 @@
 
 == CHANGES ==
 
+* V. 2.5 (2023-06-08):
+	- New macros \GetSectionCount[<int>] and \GetTotalCount to output statistics (#46).
+	- Fix issues with fixyear=false (#47).
+
 * V. 2.4 (2023-05-18)
 	- New option "fixyear" to opt-out special year handling and positioning (#45).
 	- Make delimiters of author list with plauthorhandling=omit configurable.

Modified: trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.tex	2023-06-07 23:41:26 UTC (rev 67301)
+++ trunk/Master/texmf-dist/doc/latex/biblatex-publist/biblatex-publist.tex	2023-06-08 19:49:38 UTC (rev 67302)
@@ -115,7 +115,7 @@
 \thanks{Please report issues via \protect\url{https://github.com/jspitz/biblatex-publist}.}%
 }
 
-\date{Version 2.4, 2023/05/18}
+\date{Version 2.5, 2023/06/08}
 \maketitle
 
 \begin{abstract}
@@ -273,7 +273,8 @@
 (at the very beginning with \joption{plauthorhandling=omit}, after the author list with
 \joption{plauthorhandling=highlight}). If you want to have the year at the position determined
 by your base style instead, use \joption{fixyear=false}. Note that this removes any highlighting
-of the year, independent of \joption{hlyear}.
+of the year, independent of \joption{hlyear}. Also note that \bibltx's \jfoption{mergedate} option
+is not well supported by \bpl.
 
 \item [{\joption{hlyear{[}=true|false{]}}}] default: \emph{true}.\footnote{%
    Named \joption{boldyear} up to \bpl\ 1.27. The old option is still supported.}
@@ -467,6 +468,22 @@
 For the numbering output by \jfcsmacro{citeitem}, analogous shifting can be done via the macro
 \jcsmacro*{shiftciteitem}.
 
+\subsection{Statistics}\label{sec:stats}
+
+The macro \jcsmacro*{GetTotalCount} outputs the total number of entries in your publication list.
+
+If you want to output the number of publications per section (when employing \jfcsmacro{refsection}),
+you can use the macro \jcsmacro*{GetSectionCount} which takes one optional argument, the section
+number. For instance,
+\begin{lstlisting}[moretexcs={[4]{GetSectionCount}}]
+\GetSectionCount[1]
+\end{lstlisting}
+outputs the number of items in the first section. If the optional argument is not given, the
+statistics for the current section is output (this requires the macro to be within a \jfcsmacro{refsection}).
+
+Note that both values might require additional \LaTeX\ runs to get properly set. You will
+get a package warning if additional runs are needed.  
+
 \subsection{Handling Multiple Authors and\slash or Name Variants}\label{sec:multiauthors}
 
 If multiple \jcsmacro{plauthorname} specifications have been entered (or a \jcsmacro{plauthorname} specification
@@ -927,11 +944,18 @@
 
 \begin{description}
 	
+	\item [{V. 2.5 (2023/06/08):}]~
+	\begin{itemize}
+		\item New macros \jcsmacro{GetSectionCount[<int>]} and \jcsmacro{GetTotalCount}
+		      to output statistics (see sec.~\ref{sec:stats}).
+		\item Fix issues with \joption{fixyear=false}.
+	\end{itemize}
+	
 	\item [{V. 2.4 (2023/05/18):}]~
 	\begin{itemize}
 		\item New option \joption{fixyear} to opt-out special year handling and positioning.
 		\item Make delimiters of author list with \joption{plauthorhandling=omit} configurable
-		      (see sec.~\ref*{sec:auxmacros}).
+		      (see sec.~\ref{sec:auxmacros}).
 	\end{itemize}
 	
 	\item [{V. 2.3 (2023/03/18):}]~

Modified: trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
===================================================================
--- trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx	2023-06-07 23:41:26 UTC (rev 67301)
+++ trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx	2023-06-08 19:49:38 UTC (rev 67302)
@@ -25,8 +25,8 @@
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\def\bpl at version{2.4}
-\def\bpl at rdate{forthcoming}
+\def\bpl at version{2.5}
+\def\bpl at rdate{2023/06/08}
 
 \ProvidesFile{publist.bbx}[\bpl at rdate\space v.\bpl at version\space
                            biblatex bibliography style (JSP)]
@@ -553,6 +553,20 @@
      {}{\PackageWarning{biblatex-publist}{Patching refsection failed!}}
 }{}
 
+\newcommand*\GetSectionCount[1][\empty]{%
+  \edef\bpl at secno{#1}%
+  \ifx\bpl at secno\empty%
+    \csnumdef{bpltmprefsection}{\c at refsection}%
+    \csuse{bpl at secitems:\bpltmprefsection}%
+  \else%
+    \csuse{bpl at secitems:#1}%
+  \fi%
+}
+
+\newcommand*\GetTotalCount{%
+  \csuse{bpl at items}%
+}
+
 %
 % Removing braces from names (courtesy of egreg at
 % http://tex.stackexchange.com/a/79583/19291)
@@ -838,30 +852,33 @@
       \fi
       \csnumgdef{bpl at saverefsection}{\c at refsection}%
       \if at bpl@reversenum%
+         % Check if we have a changed value
+         \global\boolfalse{needbpxrerun}%
+         \ifcsdef{bpl at items:\therefsection}{%
+             \ifnumequal{\value{bplitems}}{\numexpr\csuse{bpl at items:\therefsection}\relax}{}{%
+                  \global\booltrue{needbpxrerun}
+             }
+         }{\global\booltrue{needbpxrerun}}
          % Write item count to the bpx file
-         \global\boolfalse{needbpxrerun}%
          \if at filesw%
-           % Check if we have a changed value
-           \ifcsdef{bpl at items:\therefsection}{%
-              \ifnumequal{\value{bplitems}}{\numexpr\csuse{bpl at items:\therefsection}\relax}{}{%
-                   \global\booltrue{needbpxrerun}
-              }
-           }{\global\booltrue{needbpxrerun}}
            \protected at write\bpl at bpxfile{}{%
               \protect\csdef{bpl at items:\therefsection}{\thebplitems}%
-              \protect\csdef{bpl at items}{\thebplitems}%
-              \protect\csdef{bpl at secitems:\therefsection}{\thebplsecitems}%
               \protect\csdef{bpl at savesecitems:\theplnumgroup}{\thebplbgitems}%
            }%
          \fi
       \fi
+      % Write item count to the bpx file
+      \if at filesw%
+         \protected at write\bpl at bpxfile{}{%
+             \protect\csdef{bpl at items}{\thebplitems}%
+             \protect\csdef{bpl at secitems:\therefsection}{\thebplsecitems}%
+         }%
+      \fi
     }
     {%
-      \if at bpl@reversenum%
-         % We count all really output items for proper reverse numbering
-         % (global and per section)
-         \stepcounter{bplitems}%
-      \fi%
+      % We count all really output items for proper reverse numbering
+      % (global and per section) and \GetTotalCount
+      \stepcounter{bplitems}%
       \stepcounter{bplsecitems}%
       \ifbool{plnumgroup}{%
          \stepcounter{bplbgitems}%
@@ -916,30 +933,28 @@
 % Reverse numbering
 %
 \AtBeginDocument{%
-  \if at bpl@reversenum
-    \newread\bpl at read@bpxfile
-    \immediate\openin\bpl at read@bpxfile=\jobname.bpx
-    \loop\unless\ifeof\bpl at read@bpxfile
-        \read\bpl at read@bpxfile to\bpx at data
-        \ifeof\bpl at read@bpxfile%
-        \else
-            \bpx at data
-        \fi
-    \repeat
-    \immediate\closein\bpl at read@bpxfile
-    \newwrite\bpl at bpxfile
-    \immediate\openout\bpl at bpxfile=\jobname.bpx
-    \if at filesw%
-        \protected at write\bpl at bpxfile{}{\@percentchar\space biblatex-publist auxiliary file:
-                                       count of items for reverse numbering}%
-    \fi
-    \AtEndDocument{%
-       \ifbool{needbpxrerun}{%
-           \PackageWarning{biblatex-publist}{Please rerun LaTeX!\MessageBreak
-                                             Still counting items}%
-       }{}
-    }
+  \newread\bpl at read@bpxfile
+  \immediate\openin\bpl at read@bpxfile=\jobname.bpx
+  \loop\unless\ifeof\bpl at read@bpxfile
+      \read\bpl at read@bpxfile to\bpx at data
+      \ifeof\bpl at read@bpxfile%
+      \else
+          \bpx at data
+      \fi
+  \repeat
+  \immediate\closein\bpl at read@bpxfile
+  \newwrite\bpl at bpxfile
+  \immediate\openout\bpl at bpxfile=\jobname.bpx
+  \if at filesw%
+      \protected at write\bpl at bpxfile{}{\@percentchar\space biblatex-publist auxiliary file:
+                                     count of items for reverse numbering and stats}%
   \fi
+  \AtEndDocument{%
+     \ifbool{needbpxrerun}{%
+         \PackageWarning{biblatex-publist}{Please rerun LaTeX!\MessageBreak
+                                           Still counting items}%
+     }{}
+  }
 }
 
 \AtEndOfPackage{%
@@ -1387,8 +1402,10 @@
                \usebibmacro{bpl:year+labelyear}%
                \addspace%
              \fi%
-             \printnames[][-\value{listtotal}]{author}%
-             \setunit{\addspace}%
+             \ifthenelse{\value{nonplauthors}>0\AND{\value{plauthors}}>0}
+                {\printnames[][-\value{listtotal}]{author}%
+                 \setunit{\addspace}}%
+                {}%
              \iffieldundef{nameaddon}
                  {}
                  {%
@@ -1490,6 +1507,10 @@
              \printtext[parens]{%
              \printfield{issue}%
              \setunit*{\addspace}%
+             \if at fixyear\else%
+                % turn of mergedate, as this doesn't play well with us.
+                \renewbibmacro*{bbx:ifmergeddate}{\@secondoftwo}%
+             \fi%
              \usebibmacro{date}}%
             }%
         \newunit%

Modified: trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx
===================================================================
--- trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx	2023-06-07 23:41:26 UTC (rev 67301)
+++ trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx	2023-06-08 19:49:38 UTC (rev 67302)
@@ -26,8 +26,8 @@
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\def\bpl at version{2.4}
-\def\bpl at rdate{forthcoming}
+\def\bpl at version{2.5}
+\def\bpl at rdate{2023/06/08}
 
 \ProvidesFile{publist.cbx}[\bpl at rdate\space v.\bpl at version\space
                            biblatex citation style (JSP)]

Modified: trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx
===================================================================
--- trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx	2023-06-07 23:41:26 UTC (rev 67301)
+++ trunk/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx	2023-06-08 19:49:38 UTC (rev 67302)
@@ -1,5 +1,5 @@
 % publist.dbx, biblatex data model specification for the biblatex-publist
-% package, version 2.4 (2023/05/18). 
+% package, version 2.5 (2023/06/08). 
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3



More information about the tex-live-commits mailing list.