diff options
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-publist')
21 files changed, 1298 insertions, 132 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README index 3cebed7b7b..11885c9993 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/README +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/README @@ -46,7 +46,27 @@ instructions. == CHANGES == -* V. 2.9 (2025-05-09): +* V. 2.13 (2024-08-21): + - Add basic support for author annotations. + - Add support for information about number of citations. + - Add support for \citesecitem and \citesecitem* in + descending order. + - Fix \citeitem in first refsection. + +* V. 2.12 (2024-07-16): + - Externalize localization to *.lbx files. + - Add \citeitemrange and \citesecitemrange commands. + - Fix error with section count on first run. + +* V. 2.11 (2024-07-02): + - Add \citesecitem and \citesecitem* commands. + - Support multiple sections in \GetSectionCount. + +* V. 2.10 (2024-06-17): + - Add bibchecks to show only/no peer-reviewed items. + - Fix bibchecks to work with braced and non-braced values. + +* V. 2.9 (2024-05-09): - Add bibchecks to exclude (specific kinds of) unpublished work. * V. 2.8 (2024-03-08): diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf Binary files differindex fb8333ecf7..fd041e59a8 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex index aa64fc9861..241bba978e 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex @@ -115,7 +115,7 @@ \thanks{Please report issues via \protect\url{https://github.com/jspitz/biblatex-publist}.}% } -\date{Version 2.9, 2025/05/09} +\date{Version 2.13, 2024/08/21} \maketitle \begin{abstract} @@ -162,6 +162,7 @@ The list of features includes: \begin{itemize} \setlength\itemsep{0pt} \item Omit or hide selected author names, with a specific indication of co-authors in the former case + \item Indicate author roles \item Filter publications of specific authors from heterogeneous bibliography databases \item Date-centric sorting (as typical for publication lists) \item Number items in ascending or descending order, globally or sectional @@ -200,7 +201,7 @@ forms of citing may break or not produce the expected result. The reason is that The standard way of using the package is to load the style file via \begin{lstlisting}[moretexcs={[1]{plauthorname}}] -\usepackage[bibstyle=publist]{biblatex} +\usepackage[style=publist]{biblatex} \plauthorname[first name][von-part]{surname} \end{lstlisting} The \jcsmacro*{plauthorname} macro\footnote{The macro was named \jfcsmacro{omitname} until v.\,1.4 @@ -213,31 +214,27 @@ it defines the name(s) of the person(s) whose publications are listed. By default, the author\slash editor name(s) will be omitted completely for all publications which are authored or edited only by the specified person(s), as in: -\begin{quote} -\textbf{2012.} Some recent trends in gardening. In: \emph{Gardening -Practice} 56, pp.~34--86. -\end{quote} +\begin{itemize} +\item[{[1]}] \textbf{2012.} Some recent trends in gardening. In: \emph{Gardening + Practice} 56, pp.~34--86. +\end{itemize} If there are co-authors\slash co-editors, your name(s) will be filtered out and the collaborators added in parentheses, as in: -\begin{quote} -\textbf{1987} (with John Doe and Mary Hall). Are there new trends -in gardening? In: \emph{Gardening Practice} 24, pp.~10--15. -\end{quote} +\begin{itemize} +\item[{[2]}] \textbf{1987} (with John Doe and Mary Hall). Are there new trends + in gardening? In: \emph{Gardening Practice} 24, pp.~10--15. +\end{itemize} If \joption{plauthorhandling=highlight} is used (see next section), the plauthor(s) will be printed in bold face instead, as in: -\begin{quote} - Doe, John, \textbf{Myself, Me} and Hall, Mary, \textbf{1987}. Are there new trends - in gardening? In: \emph{Gardening Practice} 24, pp.~10--15. -\end{quote} +\begin{itemize} +\item[{[2]}] Doe, John, \textbf{Myself, Me}, and Hall, Mary. \textbf{1987}. Are there new trends + in gardening? In: \emph{Gardening Practice} 24, pp.~10--15. +\end{itemize} % Note that \jcsmacro{plauthorname} expects the name constituents as they are recorded in the database (special characters are handled). The option \joption{plauthorfirstinit} (see next section), however, allows you to pass only an initial character instead of a first name. -If you want to refer to an item number, use \jcsmacro*{citeitem}\jmacro{\{<key>\}} within your publication list. -This will print the item number in square brackets (like the \jfcsmacro{cite} command in numeric citation styles), -but as opposed to normal \jfcsmacro{cite} it also considers all numbering tweaks you make via the \bpl\ options. - \subsection{Additional Options}\label{sec:addopts} @@ -262,6 +259,10 @@ By default, the publist author (as defined with \jcsmacro{plauthorname}) is omit the author or editor list. If you use the option \joption{plauthorhandling=highlight}, it is highlighted instead (set in bold face by default; see sec.~\ref{sec:auxmacros} how to change that). +\item [{\joption{annotations=\{comma-separated list\}}}] + +A list of data annotations that should be handled in output. See sec.~\ref{sec:annotations} for details. + \item [{\joption{nameorder{[}=family-given|given-family{]}}}] default: \emph{family-given}. By default, the author and editor names with \joption{plauthorhandling=highlight} are output in the order \enquote{Lastname, Given Names}. @@ -333,6 +334,11 @@ with abbreviated and full first name (\textsc{J. Doe} and well as \textsc{John D works of colleagues with the same surname (maybe your family members), which you will not want to mark as your own's. Of course, the solution does not help if there is an entry with same surname and same first name initial (such as \textsc{Jane Doe}). +\item [{\joption{citinfo{[}=true|false{]}}}] default: \emph{false}. + +If this option is \joption{true}, the number of citations, as specified via the \texttt{citations} field +(see section~\ref{sec:citinfo}), will be appended to the entries. + \item [{\joption{jifinfo{[}=true|false{]}}}] default: \emph{false}. If this option is \joption{true}, the journal impact factor, as specified via the \texttt{impactfactor} field @@ -374,8 +380,8 @@ See section~\ref{sec:clicktitles} for details. All options listed here should be passed directly to \bibltx\ via \jfcsmacro{usepackage} when loading \bibltx, and they apply to the whole document. -For most options, it is possible to change them (repeatedly) within the document. To this end, the macro -\jcsmacro*[-3]{ExecutePublistOptions} is provided. It takes a comma-separated list of options as its mandatory argument +For most options, it is possible to change them within the document via the macro +\jcsmacro*[-3]{ExecutePublistOptions}. It takes a comma-separated list of options as mandatory argument and can be used (repeatedly) in preamble or anywhere in the document body. The executed options apply as of the next bibliography (\jfcsmacro{printbibliography}) that follows. Options that \emph{cannot} be changed within a document that way are \joption{plnumbering} and \joption{pubstateextra}, @@ -385,6 +391,57 @@ Also note that with the \joption{plauthor*} options, as opposed to repeated \jcs repeated setting of these name options respectively \emph{overwrite}, and not extend, the previous name settings. +\subsection{Referring to Entries}\label{sec:citeitems} + +Even though publication lists usually do not include citations, there might be cases where you need to refer +to specific entries within it. Especially with sectioned lists, it is arguably most advisable to refer to the items +by their number, as otherwise your readers will have a hard time to find the item you are referring to. +Of course, if you do not use global numbering, you should also specify the section the item is in, as in: +``see [13] (sec.~4)''. + +Since \bpl\ plays all sorts of tricks with the numbering (see sec.~\ref{sec:numbers}), the reference needs to take these +into account. The normal citation commands will often produce inadequate or even wrong output particularly in numeric +style. +To account for these peculiarities, the package ships its own cite style which is used if you load \bpl\ via +\joption{style=publist} (but not with \joption{bibstyle=publist}!). The features described in what follows require +this particular cite style. + +If you want to refer to an item number, use \jcsmacro*{citeitem}\jmacro{\{<key(s)>\}} within your publication list.% +\footnote{As with the normal citation commands, the argument might also be a comma-separated list of keys.} +This will print the item number in square brackets (like the \jfcsmacro{cite} command in numeric citation styles), +but as opposed to normal \jfcsmacro{cite} it also considers all numbering tweaks you make via the \bpl\ options. +Note, however, that with refsections (see sec.~\ref{sec:example}) \jcsmacro{citeitem} only works within a given +refsection because the references in a refsection are unknown outside of its scope. + +If you want to refer to an item number from outside a refsection, you can use \jcsmacro*{citesecitem}\jmacro{\{<key(s)>\}}. +This will try to access the number of the given entry from a stored list that is generated by \bpl. +References of this kind only make sense, of course, with global numbering and if an entry only occurs once in the bibliography, +since otherwise they would be too ambiguous. However, for locally numbered lists, there is the starred variant +\jcsmacro*{citesecitem*}\jmacro{\{<key(s)>\}} which will append a reference to the section the item is in. +By default, the form of this addition is ``(sec.~<no.>)'', with ``sec.'' being localized (see sec.~\ref{sec:auxmacros} +on how to customize this). + +All these commands have counterparts which can be used to refer to a range of entries: +\begin{itemize} + \setlength\itemsep{0pt} + \item \jcsmacro*{citeitemrange}\jmacro{\{<first key>\}}\jmacro{\{<last key>\}} + \item \jcsmacro*{citesecitemrange}\jmacro{\{<first key>\}}\jmacro{\{<last key>\}} + \item \jcsmacro*{citesecitemrange*}\jmacro{\{<first key>\}}\jmacro{\{<last key>\}} +\end{itemize} +% +The range will by default be indicated by an en-dash ([12]--[17]), you can change this by redefining the +macro \jcsmacro*{itemrangesep}. + +Note that due to the design of refsections, no hyperlinks can be generated for the item number with \jcsmacro{citesecitem} +(or its starred and range counterparts) and the \textsf{hyperref} package being loaded; the section reference of the starred +commands, however, is hyperlinked in this case. +If you need hyperlinked item references, consider refsegments rather than refsections and the \jcsmacro{citeitem} command +(although this will have other drawbacks). + +Of course, both \jcsmacro{citeitem} and \jcsmacro{citesecitem} presuppose that you do not disable numbering, and +\jcsmacro{citesecitem*} requires numbered section headers. + + \subsection{Numbers Games}\label{sec:numbers} Among the peculiarities of publication lists is the greater variety of numbering conventions, as compared @@ -474,12 +531,14 @@ The macro \jcsmacro*{GetTotalCount} outputs the total number of entries in your 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, +number or a comma-separated list of section numbers. 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}). +outputs the number of items in the first section, whereas \lstinline!\GetSectionCount[1,2]! outputs +the sum of the numbers of items in the first and second section. +If the optional argument is not given, the statistic 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. @@ -526,22 +585,101 @@ taken care of specifically. With \joption{plauthorhandling=omit}, the \jfoption{maxnames} value specifies how many co-authors are added in parenthesis (the omitted author name is not counted here). If the treshold is reached, \emph{et al.}\ (or the corresponding localized string) is appended (and the list truncated to the \jfoption{minnames} value, \jfoption{1} by default). So you get something like: -\begin{quote} - \textbf{2020} (with John Doe et al.). What's up in gardening? In: \emph{Gardening Practice} 44, pp.~1--7. -\end{quote} +\begin{itemize} + \item[{[3]}] \textbf{2020} (with John Doe et al.). What's up in gardening? In: \emph{Gardening Practice} 44, pp.~1--7. +\end{itemize} % With \joption{plauthorhandling=highlight}, \bpl\ outputs all publist authors, even if the \jfoption{maxnames} treshold has been reached. However, other authors (beyond \jfoption{minnames}) are omitted. If they come before a publist author, this is indicated by [\ldots\unkern], if authors follow after all publication list authors, \emph{et al.} is appended, as in: -\begin{quote} - Doe, John, [\ldots\unkern], \textbf{Myself, Me}, et al., \textbf{2020}. What's up in gardening? In: \emph{Gardening Practice} 44, pp.~1--7. -\end{quote} +\begin{itemize} + \item[{[3]}] Doe, John, [\ldots\unkern], \textbf{Myself, Me}, et al., \textbf{2020}. What's up in gardening? In: \emph{Gardening Practice} 44, pp.~1--7. +\end{itemize} % The omission indicator, \jcsmacro*{plnameomission}, can be redefined. The default definition is: \begin{lstlisting}[moretexcs={[4]{plnameomission,bibellipsis,addcomma,addspace}}] \newcommand*\plnameomission{\bibellipsis\addcomma\addspace} \end{lstlisting} + +\subsection{Indicating Author Roles}\label{sec:annotations} + +If you want to indicate author roles (e.\,g., signify who is corresponding or main author +of a paper), you need to add this information to the respective entries, +but you do not want to clutter the author data. +With \bibltx, separating such extra information from the actual data is well supported +via the data annotation feature, as in: +\begin{lstlisting}[morekeywords={[1]{author}}, otherkeywords={author+an}] +author = {John Doe and Mary Hall and Me Myself}, +author+an = {1=corresponding; 3=main}, +\end{lstlisting} +% +where the number (key) refers to the respective name in the list, and the value to the annotation category +which you can name as you wish. +Multiple annotations to a single person are possible if you pass multiple comma-separated categories to +one key, as in \texttt{1=corresponding,main} (please refer to the \bibltx\ manual \cite{bibltx} for details). + +To handle such annotations, however, the style file needs to know what to do with what kind of +annotation. Otherwise annotations are just ignored. + +For basic usage, \bpl\ provides some support for such annotations. +If you pass the annotation categories you have used in the \texttt{*.bib} file as a comma-separated list +to the \joption{annotations} option, +\bpl\ will go through these annotations and for each, it +will print a superscripted symbol in front of the author family name. +By default this uses a list similar\footnote{If have moved the single dagger (\textdagger) to a later place, + since some people associate this with the \enquote*{deceased} indicator.} +to the one you know from symbolic (\jfcsmacro{thanks}) footnotes +(in order of the passed category: \textasteriskcentered, \textdaggerdbl, \textsection, \textparagraph, +\textbardbl, \textdagger, {\textasteriskcentered\textasteriskcentered}, {\textdaggerdbl\textdaggerdbl}, +or {\textdagger\textdagger}). Nine different annotations are supported this way. + +With the example given above and \joption{annotations=\{main,correponding\}}, for instance, +you would get +\begin{itemize} + \item[{[4]}] \textsuperscript{\textdaggerdbl}Doe, John, Hall, Mary, and + \textbf{\textsuperscript{\textasteriskcentered}Myself, Me} \ldots +\end{itemize} +% +Of course, each category always gets the same symbol within a publication list, so you can add a caption +to explain those. For easy access to the symbols, you can use \jcsmacro*{GetAnnotSymbol}\jmacro{\{category\}}. +This prints the respective symbol in formatted way (superscripted with default settings). +A starred version of the command prints it without such formatting. + +If you want a different list of symbols, or need more, you can change it by means of the macro +\jcsmacro*{SetAnnotSymbols}\jmacro{\{comma-separated list of symbols/macros\}}. +This will overwrite the default list. + +You can also change the position of the symbol. The default definition is +\begin{lstlisting}[morekeywords={[1]{mkbibnamefamily,bplannot}}] +\renewcommand*{\mkbibnamefamily}[1]{\bplannot #1} +\end{lstlisting} +% +with \jcsmacro{bplannot} being the annotation. You can move it after the name, or to another name +part (e.g., \jfcsmacro{mkbibnamegiven}). + +To change the formatting, you can redefine +\begin{lstlisting}[morekeywords={[1]{mkbplannot,textsuperscript}}] +\newcommand*\mkbplannot[1]{\textsuperscript{#1}} +\end{lstlisting} +% +If you need a different markup (such as coloring or underlining) you need to set up +your own annotation handling as documented in the \bibltx\ manual. + +With \joption{plauthorhandling=omit}, the annotations of the omitted publist author(s) +are appended to the entry (as an annotation and with the specific entry-related information +discussed in the next section). If a \jfcsmacro{bibstring} +\texttt{annot:<category>} exists (predefined keys are \texttt{annot:main} and +\texttt{annot:corresponding}), the respective localized string is output, otherwise +the verbatim category. + +So, again with the example given above, you would get: +\begin{itemize} + \item[{[4]}] \ldots\ (with John \textsuperscript{\textdaggerdbl}Doe and Mary Hall) + \ldots\ [Main auth.]. +\end{itemize} + + \subsection{Adding Specific Entry-Related Information} Publication lists usually contain some information which is not commonly given in normal @@ -563,6 +701,17 @@ in a specific \texttt{@xdata} subset (please refer to the \bibltx\ documentation If the option \joption{jifinfo} is true, then \bpl\ will append the respective information to the entries. A specific localizable bibkey is used for this purpose (see section~\ref{sec:localization}). + +\subsubsection{Number of Citations}\label{sec:citinfo} + +Another common quantification of \enquote*{impact} is the number of citations of a publication +(by other publications). +To track this, \bpl\ provides a specific database field, \texttt{citations}. + +If the option \joption{citinfo} is true, then \bpl\ will append the respective information to the entries. +A specific localizable bibkey is used for this purpose (see section~\ref{sec:localization}). + + \subsubsection{Peer Review}\label{sec:peerreview} It is common, and sometimes mandatory, to add information to publication list entries indicating if @@ -663,6 +812,16 @@ The default definition is: \newcommand*\plextrainfosep{\addsemicolon\addspace} \end{lstlisting} % +The\jmcsmacro{secitemsecref} section reference with \jcsmacro{citesecitem*} is determined by +\jcsmacro{secitemsecref}, which has the following default definition: +\begin{lstlisting}[moretexcs={[2]{mkbibparens,secitemsecref,bibstring,addnbspace}}] +\newcommand*\secitemsecref[1]{% + \mkbibparens{\bibstring{section}\addnbspace\ref{refsection:#1}}% +} +\end{lstlisting} +% +Redefine this macro if you need a different output. + The indendation of the bibliographic entries (lines > 1) can be adjusted by setting the length \jmacro*{extralabel\-numberwidth} via \jfcsmacro{setlength} (default is \texttt{0pt}). This might be needed for long bibliographies (> 99 entries) in order to adjust to the extra @@ -715,31 +874,55 @@ are printed, so you might get redundant output. To control (e.\,g., omit) them, \section{Localization}\label{sec:localization} Since the package draws on \bibltx, it supports localization. -The following additional localization keys (\jfcsmacro{bibstrings}) -are added by the package: -\begin{itemize} +The following additional localization keys (\texttt{bibstrings}) +are added by the package, in verbose and abbreviated form (depending +on your setting of the \bibltx\ option \joption{abbreviate}): + +\begin{description} \setlength{\itemsep}{0pt} -\item \emph{impactfactor}: the expression \enquote{impact factor}. -\item \emph{openaccess:true}: the expression \enquote{OpenAccess}. -\item \emph{openaccess:gold}: the phrase \enquote{OpenAccess (gold)}. -\item \emph{openaccess:green}: the phrase \enquote{OpenAccess (green)}. -\item \emph{parttranslationof}: the expression \enquote{partial translation of} +\item[annot:corresponding] the expression \enquote{corresponding author} (short form: \enquote{corr. auth.}). +\item[annot:main] the expression \enquote{main author} (short form: \enquote{main auth.}). +\item[citations] the expression \enquote{citations} (short form: \enquote{cit.}). +\item[impactfactor] the expression \enquote{impact factor} (short form: \enquote{JIF}). +\item[openaccess:true] the expression \enquote{OpenAccess} (short form: \enquote{OA}). +\item[openaccess:gold] the phrase \enquote{OpenAccess (gold)} (short form: \enquote{OA (gold)}). +\item[{openaccess:green}] the phrase \enquote{OpenAccess (green)} (short form: \enquote{OA (green)}). +\item[{parttranslationof}] the phrase \enquote{partial translation of} (short form: \enquote{part.\ trans.\ of}) for entries referring to partially translated work via \bibltx's \enquote*{related entries} feature (see sec.~\ref{sec:partial-translations}). -\item \emph{peerreview:sb}: the phrase \enquote{single blind peer review}. -\item \emph{peerreview:db}: the phrase \enquote{double blind peer review}. -\item \emph{peerreview:op}: the phrase \enquote{open peer review}. -\item \emph{peerreview:co}: the phrase \enquote{collaborative peer review}. -\item \emph{peerreview:cc}: the phrase \enquote{cascading peer review}. -\item \emph{peerreview:tp}: the phrase \enquote{third-party peer review}. -\item \emph{peerreview:pp}: the phrase \enquote{post-publication peer review}. -\item \emph{peerreview:no}: the phrase \enquote{no peer review}. -\item \emph{with}: the preposition \enquote{with} that precedes the list of - co-authors by default (i.\,e., with \joption{plauthorhandling=omit}). +\item[{peerreview:sb}] the phrase \enquote{single blind peer review} (short form: \enquote{single blind peer rev.}). +\item[{peerreview:db}] the phrase \enquote{double blind peer review} (short form: \enquote{double blind peer rev.}). +\item[{peerreview:op}] the phrase \enquote{open peer review} (short form: \enquote{open peer rev}). +\item[{peerreview:co}] the phrase \enquote{collaborative peer review} (short form: \enquote{collab.\ peer rev.}). +\item[{peerreview:cc}] the phrase \enquote{cascading peer review} (short form: \enquote{casc.\ peer rev.}). +\item[{peerreview:tp}] the phrase \enquote{third-party peer review} (short form: \enquote{3rd-party peer rev.}). +\item[{peerreview:pp}] the phrase \enquote{post-publication peer review} (short form: \enquote{post-pub.\ peer rev.}). +\item[{peerreview:no}] the phrase \enquote{no peer review} (short form: \enquote{no peer rev.}). +\item[{with}] the preposition \enquote{with} that precedes the list of + co-authors by default (i.\,e., with \joption{plauthorhandling=omit}) (short and verbose forms identical). +\end{description} +% +Localization is provided in dedicated language definition files which follow +the naming scheme, \texttt{<language>-publist.lbx}. +The package currently ships such files for the following languages and their varieties: + +\begin{flushleft} +\begin{itemize} +\setlength{\itemsep}{0pt} + \item English (\texttt{american}, \texttt{australian}, \texttt{british}, + \texttt{canadian}, \texttt{english}, \texttt{newzealand}, + \texttt{UKenglish}, \texttt{USenglish}) + \item French (\texttt{french}) + \item German (\texttt{austrian}, \texttt{german}, \texttt{naustrian}, \texttt{ngerman}, + \texttt{nswissgerman}, \texttt{swissgerman}) \end{itemize} -Currently, these additional localization keys are available in the following -languages: English, French and German.% -\footnote{Please send suggestions for other languages to the package author.} +\end{flushleft} +% +If you want to add support for other languages, you can simply copy one of the existing +lbx files, name it \texttt{<yourlanguage>-publist.lbx} and adapt the localization keys. + +If you are confident enough, please send me your file so I can consider adding it to +the package. \section{Further Extensions} @@ -840,6 +1023,8 @@ Note that the \jfcsmacro{printbibliography} option \section{Filtering\label{sec:filtering}} +\subsection{Filter out own work} + If you have a bibliographic database consisting not only of your own publications, you can extract yours with the bibliography filter \joption{mine}, which has to be passed to \jfcsmacro{printbibliography}, as in: @@ -862,13 +1047,16 @@ entries of diverse type and authors, specify: Note that this method sometimes requires several reruns of \texttt{latex} to fix the numbering. +\subsection{Filter on publication or peer-review status}\label{sec:filterbc} + Sometimes you might also want to omit some publications from the list which are not yet published or not yet accepted (e.g., because they are under blind review and you do not want to reveal your identity yet). To this end, \bpl\ features some \joption{bibchecks} (for the concept, please refer to \cite[sec.~3.8.2]{bibltx}). Bibchecks can be activated -by passing \joption{check=<bibcheck>} to the optional argument of \jfcsmacro{printbibliography}. +by passing \joption{check=<bibcheck>} to the optional argument of \jfcsmacro{printbibliography} +(see example~\ref{bibcheckex}). -The following bibchecks are available: +The following bibchecks are available to this end: \begin{itemize} \item \joption{nosubmitted}: omits all entries with pubstate \joption{submitted}. \item \joption{noprepared}: omits all entries with pubstate \joption{inpreparation}. @@ -879,8 +1067,18 @@ The following bibchecks are available: (and thus accepted) entries. \end{itemize} % +The bibchecks below let you filter out publications depending on their peer-review +setting. This is helpful if you want to differentiate peer-reviewed from non-peer-reviewed +work in your publication list: +\begin{itemize} + \item \joption{onlypr}: include only peer-reviewed entries (displays only titles which have + the \texttt{peerreview} field set and do not have it set to \texttt{no}). + \item \joption{nopr}: exclude peer-reviewed entries (omits all entries which have the + \texttt{peerreview} field set, except for those which have it set to \texttt{no}). +\end{itemize} +% Several of these bibchecks might be used in a row, e.g.: -\begin{lstlisting}[moretexcs={[1]{printbibliography}}] +\begin{lstlisting}[moretexcs={[1]{printbibliography}},caption={Using bibchecks},label={bibcheckex}] \printbibliography[heading=none,filter=mine,check=nosubmitted,check=noprepared] \end{lstlisting} @@ -964,10 +1162,41 @@ until further change). \section{Revision Log} \begin{description} - \item [{V. 2.9 (2025/05/09):}]~ + \item [{V. 2.13 (2024/08/21):}]~ + \begin{itemize} + \item Add basic support for author annotations (see sec.~\ref{sec:annotations}). + \item Add support for information about number of citations (see sec.~\ref{sec:citinfo}). + \item Add support for \jcsmacro{citesecitem} and \jcsmacro{citesecitem*} in descending + order. + \item Fix \jcsmacro{citeitem} in first refsection. + \end{itemize} + + \item [{V. 2.12 (2024/07/16):}]~ + \begin{itemize} + \item Externalize localization to \texttt{*.lbx} files. + \item Add \jcsmacro{citeitemrange} and \jcsmacro{citesecitemrange} commands + (see sec.~\ref{sec:citeitems}). + \item Fix error with section count on first run. + \end{itemize} + + \item [{V. 2.11 (2024/07/02):}]~ + \begin{itemize} + \item Add \jcsmacro{citesecitem} and \jcsmacro{citesecitem*} commands + (see sec.~\ref{sec:citeitems}). + \item Support multiple sections in \jcsmacro{GetSectionCount}. + \end{itemize} + + \item [{V. 2.10 (2024/06/17):}]~ + \begin{itemize} + \item Add bibchecks to show only/no peer-reviewed items + (see sec.~\ref{sec:filterbc}). + \item Fix bibchecks to work with braced and non-braced values. + \end{itemize} + + \item [{V. 2.9 (2024/05/09):}]~ \begin{itemize} \item Add bibchecks to exclude (specific kinds of) unpublished work - (see sec.~\ref{sec:filtering}). + (see sec.~\ref{sec:filterbc}). \end{itemize} \item [{V. 2.8 (2024/03/08):}]~ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/UKenglish-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/UKenglish-publist.lbx new file mode 100644 index 0000000000..0b5cce13f5 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/UKenglish-publist.lbx @@ -0,0 +1,37 @@ +% UKenglish-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{UKenglish-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist UK English localisation (JSP)] + +% Inherit english +\InheritBibliographyStrings{british} +\InheritBibliographyExtras{british} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/USenglish-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/USenglish-publist.lbx new file mode 100644 index 0000000000..cc6526761d --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/USenglish-publist.lbx @@ -0,0 +1,37 @@ +% USenglish-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{USenglish-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist US English localisation (JSP)] + +% Inherit english +\InheritBibliographyStrings{english} +\InheritBibliographyExtras{english} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/american-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/american-publist.lbx new file mode 100644 index 0000000000..5476f022ab --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/american-publist.lbx @@ -0,0 +1,37 @@ +% american-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{american-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist US English localisation (JSP)] + +% Inherit english +\InheritBibliographyStrings{english} +\InheritBibliographyExtras{english} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/australian-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/australian-publist.lbx new file mode 100644 index 0000000000..0df359aa82 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/australian-publist.lbx @@ -0,0 +1,37 @@ +% australian-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{australian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist AU English localisation (JSP)] + +% Inherit english +\InheritBibliographyStrings{british} +\InheritBibliographyExtras{british} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/austrian-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/austrian-publist.lbx new file mode 100644 index 0000000000..0a82a48b77 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/austrian-publist.lbx @@ -0,0 +1,58 @@ +% austrian-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{austrian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist Austrian localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{austrian} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {austrian}, + peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}}, + with = {{mit}{mit}}, + citations = {{Zitationen}{Zit\adddot}}, + impactfactor = {{Impactfaktor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}}, + peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}}, + peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}}, + peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}}, + peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}}, + peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}}, + peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}}, + peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}}, + peerreview:no = {{keine Begutachtung}{keine Beg\adddot}}, + annot:main = {{Hauptautor}{Hauptaut\adddot}}, + annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/british-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/british-publist.lbx new file mode 100644 index 0000000000..b1dbaea5be --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/british-publist.lbx @@ -0,0 +1,58 @@ +% british-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{british-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist UK English localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{british} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {british}, + parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}}, + with = {{with}{with}}, + citations = {{citations}{cit\adddot}}, + impactfactor = {{impact factor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (green)}{OA (green)}}, + peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}}, + peerreview:db = {{double blind peer review}{double blind peer rev\adddot}}, + peerreview:op = {{open peer review}{open peer rev\adddot}}, + peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}}, + peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}}, + peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}}, + peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}}, + peerreview:no = {{no peer review}{no peer rev\adddot}}, + annot:main = {{main author}{main auth\adddot}}, + annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/canadian-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/canadian-publist.lbx new file mode 100644 index 0000000000..288c694155 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/canadian-publist.lbx @@ -0,0 +1,37 @@ +% canadian-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{canadian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist CDN English localisation (JSP)] + +% Inherit english +\InheritBibliographyStrings{english} +\InheritBibliographyExtras{english} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/english-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/english-publist.lbx new file mode 100644 index 0000000000..a9dc25db89 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/english-publist.lbx @@ -0,0 +1,58 @@ +% english-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{english-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist English localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{english} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {english}, + parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}}, + with = {{with}{with}}, + citations = {{citations}{cit\adddot}}, + impactfactor = {{impact factor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (green)}{OA (green)}}, + peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}}, + peerreview:db = {{double blind peer review}{double blind peer rev\adddot}}, + peerreview:op = {{open peer review}{open peer rev\adddot}}, + peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}}, + peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}}, + peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}}, + peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}}, + peerreview:no = {{no peer review}{no peer rev\adddot}}, + annot:main = {{main author}{main auth\adddot}}, + annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/french-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/french-publist.lbx new file mode 100644 index 0000000000..e2f982b03c --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/french-publist.lbx @@ -0,0 +1,58 @@ +% french-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{french-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist French localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{french} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {french}, + parttranslationof = {{traduction partielle de}{trad\adddotspace part\adddotspace de}}, + with = {{avec}{avec}}, + citations = {{citations}{cit\adddot}}, + impactfactor = {{facteur d'impact}{FI}}, + openaccess:true = {{libre acc\`es}{libre acc\`es}}, + openaccess:gold = {{libre acc\`es (dorée)}{libre acc\`es (dorée)}}, + openaccess:green = {{libre acc\`es (verte)}{libre acc\`es (verte)}}, + peerreview:sb = {{\'{e}valuation par des pairs anonymis\'{e}s}{\'{e}val\adddotspace par des pairs anon\adddot}}, + peerreview:db = {{\'{e}valuation par les pairs en double aveugle}{\'{e}val\adddotspace par les pairs en double aveugle}}, + peerreview:op = {{\'{e}valuation par les pairs ouverte}{\'{e}val\adddotspace par les pairs ouverte}}, + peerreview:co = {{\'{e}valuation par les pairs collaborative}{\'{e}val\adddotspace par les pairs collab\adddot}}, + peerreview:cc = {{\'{e}valuation par les pairs en cascade}{\'{e}val\adddotspace par les pairs en cascade}}, + peerreview:tp = {{\'{e}valuation par des pairs ext\'{e}rieurs}{\'{e}val\adddotspace par des pairs ext\adddot}}, + peerreview:pp = {{\'{e}valuation par les pairs apr\`{e}s publication}{\'{e}val\adddotspace par les pairs apr\`{e}s pub\adddot}}, + peerreview:no = {{pas d'\'{e}valuation par les pairs}{pas d'\'{e}val\adddotspace par les pairs}}, + annot:main = {{auteur principale}{aut\adddotspace princ\adddot}}, + annot:corresponding = {{auteur correspondant}{aut\adddotspace corr\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/german-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/german-publist.lbx new file mode 100644 index 0000000000..e67d8d44b1 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/german-publist.lbx @@ -0,0 +1,58 @@ +% german-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{german-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist German localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{german} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {german}, + parttranslationof = {{Teil\"ubersetzung von}{Teil\"ubers\adddotspace von}}, + with = {{mit}{mit}}, + citations = {{Zitationen}{Zit\adddot}}, + impactfactor = {{Impactfaktor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}}, + peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}}, + peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}}, + peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}}, + peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}}, + peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}}, + peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}}, + peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}}, + peerreview:no = {{keine Begutachtung}{keine Beg\adddot}}, + annot:main = {{Hauptautor}{Hauptaut\adddot}}, + annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/naustrian-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/naustrian-publist.lbx new file mode 100644 index 0000000000..3b202fe459 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/naustrian-publist.lbx @@ -0,0 +1,37 @@ +% naustrian-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{naustrian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist Austrian localisation (JSP)] + +% Inherit austrian +\InheritBibliographyStrings{austrian} +\InheritBibliographyExtras{austrian} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/newzealand-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/newzealand-publist.lbx new file mode 100644 index 0000000000..504410f851 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/newzealand-publist.lbx @@ -0,0 +1,58 @@ +% newzealand-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{newzealand-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist NZ English localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{newzealand} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {newzealand}, + parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}}, + with = {{with}{with}}, + citations = {{citations}{cit\adddot}}, + impactfactor = {{impact factor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (green)}{OA (green)}}, + peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}}, + peerreview:db = {{double blind peer review}{double blind peer rev\adddot}}, + peerreview:op = {{open peer review}{open peer rev\adddot}}, + peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}}, + peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}}, + peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}}, + peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}}, + peerreview:no = {{no peer review}{no peer rev\adddot}}, + annot:main = {{main author}{main auth\adddot}}, + annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/ngerman-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/ngerman-publist.lbx new file mode 100644 index 0000000000..185cbe903a --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/ngerman-publist.lbx @@ -0,0 +1,37 @@ +% ngerman-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{ngerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist German localisation (JSP)] + +% Inherit german +\InheritBibliographyStrings{german} +\InheritBibliographyExtras{german} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/nswissgerman-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/nswissgerman-publist.lbx new file mode 100644 index 0000000000..a2f1813b38 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/nswissgerman-publist.lbx @@ -0,0 +1,37 @@ +% nswissgerman-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{nswissgerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist Swiss German localisation (JSP)] + +% Inherit swissgerman +\InheritBibliographyStrings{swissgerman} +\InheritBibliographyExtras{swissgerman} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/swissgerman-publist.lbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/swissgerman-publist.lbx new file mode 100644 index 0000000000..9bc6f05118 --- /dev/null +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/lbx/swissgerman-publist.lbx @@ -0,0 +1,58 @@ +% swissgerman-publist.lbx, extra localizations for biblatex-publist +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Jürgen Spitzmüller. +% +% This work consists of the file publist.bbx +% +% +% This file adds some additional localizations that are used by +% the biblatex-publist bibliography style +% +% Please send suggestions and bug reports to +% https://github.com/jspitz/biblatex-publist +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} + +\ProvidesFile{swissgerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space + biblatex-publist Swiss German localisation (JSP)] + +% Inherit general localization +\InheritBibliographyExtras{swissgerman} + +% Localizations +\DeclareBibliographyStrings{% + inherit = {swissgerman}, + parttranslationof = {{Teil\"ubersetzung von}{Teil\"ubers\adddotspace von}}, + with = {{mit}{mit}}, + citations = {{Zitationen}{Zit\adddot}}, + impactfactor = {{Impactfaktor}{JIF}}, + openaccess:true = {{OpenAccess}{OA}}, + openaccess:gold = {{OpenAccess (gold)}{OA (gold)}}, + openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}}, + peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}}, + peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}}, + peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}}, + peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}}, + peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}}, + peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}}, + peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}}, + peerreview:no = {{keine Begutachtung}{keine Beg\adddot}}, + annot:main = {{Hauptautor}{Hauptaut\adddot}}, + annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}} +} + +\endinput + diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx index c7d385b452..d3f31a7a03 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx @@ -25,8 +25,8 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\bpl@version{2.9} -\def\bpl@rdate{2025/05/09} +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} \ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space biblatex bibliography style (JSP)] @@ -61,13 +61,14 @@ \newtoggle{bpl@linktitleissn} \newtoggle{bpl@linktitleurl} \newtoggle{bpl@linktitledoi} +\newtoggle{bpl@citinfo} \newtoggle{bpl@jifinfo} \newtoggle{bpl@prinfo} \toggletrue{bpl@prinfo} \newtoggle{bpl@oainfo} \newtoggle{bpl@oainfosimple} \newif\if@bpl@reversenum\@bpl@reversenumfalse - +\def\bpl@annots{} % Valid options % @@ -188,6 +189,9 @@ }, plnumbering.default:n = { global }, plnumbering.usage:n = preamble, + % annotations=<csv> + % Store author name prefix + annotations.tl_set:N = \bpl@annots, % linktitles=<all|url|doi|isbn|issn|none> linktitles .multichoice:, % Link all titles @@ -233,6 +237,18 @@ \toggletrue{bpl@linktitle} }, linktitles.default:n = { all }, + % citinfo=<true|false> + % Information about citation numbers + citinfo.code:n = + { + \str_if_eq:nnTF { #1 } { true } + { + \toggletrue{bpl@citinfo} + }{ + \togglefalse{bpl@citinfo} + } + }, + citinfo.default:n = { true }, % jifinfo=<true|false> % Impact factor information jifinfo.code:n = @@ -428,6 +444,7 @@ \DeclareBibliographyOption{plauthorhandling}[omit]{\ExecutePublistOptions{plauthorhandling=#1}} \DeclareBibliographyOption{nameorder}[family-given]{\ExecutePublistOptions{nameorder=#1}} \DeclareBibliographyOption{plsorting}[ydt]{\ExecutePublistOptions{plsorting=#1}} +\DeclareBibliographyOption{annotations}{\ExecutePublistOptions{annotations={#1}}} \DeclareBibliographyOption{plnumbering}[global]{\ExecutePublistOptions{plnumbering=#1}} \DeclareBibliographyOption{marginyear}[true]{\ExecutePublistOptions{marginyear=#1}} @@ -437,6 +454,7 @@ \DeclareBibliographyOption{jifinfo}[true]{\ExecutePublistOptions{jifinfo=#1}} \DeclareBibliographyOption{oainfo}[simple]{\ExecutePublistOptions{oainfo=#1}} \DeclareBibliographyOption{prinfo}[true]{\ExecutePublistOptions{prinfo=#1}} +\DeclareBibliographyOption{citinfo}[true]{\ExecutePublistOptions{citinfo=#1}} \DeclareBibliographyOption{linktitles}[all]{\ExecutePublistOptions{linktitles={#1}}}% Extra braces needed (multichoice) @@ -552,16 +570,31 @@ {}{\PackageWarning{biblatex-publist}{Patching refsection failed!}} }{} -\newcommand*\GetSectionCount[1][\empty]{% - \edef\bpl@secno{#1}% - \ifx\bpl@secno\empty% - \csnumdef{bpltmprefsection}{\c@refsection}% - \csuse{bpl@secitems:\bpltmprefsection}% - \else% - \csuse{bpl@secitems:#1}% - \fi% +% Section count. We use l3 here to split the argument and do calculations +\ExplSyntaxOn + +\int_new:N \l_bpl_sec_cnt_int + +\NewDocumentCommand \GetSectionCount { >{\SplitList{,}} o } +{ + \IfNoValueTF{#1}{% + \csnumdef{bpltmprefsection}{\c@refsection} + \ifcsdef{bpl@secitems:\bpltmprefsection}{\csuse{bpl@secitems:\bpltmprefsection}}{}% + }{ + \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 +{ + \cs_if_exist:cT {bpl@secitems:#1} + { \int_add:Nn \l_bpl_sec_cnt_int { \use:c{bpl@secitems:#1} } } } +\ExplSyntaxOff + \newcommand*\GetTotalCount{% \csuse{bpl@items}% } @@ -897,7 +930,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 @@ -963,23 +1004,37 @@ % Print the labelnumber as the total number of entries in the % current refsection, minus the actual labelnumber, plus one \ifbool{plnumgroup}{% - \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax% + \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\relax}% + \bpl@current@item@no% }{% \ifcsdef{bpl@secitems:\therefsection}{% - \number\numexpr\csuse{bpl@secitems:\therefsection}-#1+1% - +\csuse{bpl@shift@itemtotal}\relax% + \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@secitems:\therefsection}-#1+1% + +\csuse{bpl@shift@itemtotal}\relax}% + \bpl@current@item@no% }{% - \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax% + \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\relax}% + \bpl@current@item@no% }% }% }{% % Use decreasing counter \ifcsdef{bpl@items:\theprevrefsection}{% - \number\numexpr\csuse{bpl@itemtotal}-#1+1-\csuse{bpl@items:\theprevrefsection}\relax% + \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1% + -\csuse{bpl@items:\theprevrefsection}\relax}% + \bpl@current@item@no% }{% - \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax% + \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\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}% + \csedef{bpl@itemtotal}{\csuse{bpl@itemtotal}}% + }% + \fi% }% \renewrobustcmd{\mkbibsecstart}[1]{% \setcounter{prevrefsection}{\therefsection}% @@ -1014,6 +1069,64 @@ \fi }% +% +% Data annotation +% + +\newcommand*\mkbplannot[1]{\textsuperscript{#1}} + +% Symbol helpers +\ExplSyntaxOn + \clist_new:N \l_bpl_annot_symbols + \cs_new_nopar:Npn \SetAnnotSymbols #1 + { + \clist_gset:Nn \l_bpl_annot_symbols { #1 } + } + \SetAnnotSymbols + { \textasteriskcentered, \textdaggerdbl, \textsection, \textparagraph, + \textbardbl, \textdagger, {\textasteriskcentered\textasteriskcentered}, + {\textdaggerdbl\textdaggerdbl}, {\textdagger\textdagger} + } + % get symbol by position (int) + \cs_new_nopar:Npn \bpl@get@annot@symbol #1 + { + \clist_item:Nn \l_bpl_annot_symbols { #1 } + } +\ExplSyntaxOff + +% get symbol by category name +\NewDocumentCommand\GetAnnotSymbol { s m }{ + \edef\tmpa{}% + \setcounter{annotsymb}{1}% + \renewcommand*{\do}[1]{% + \ifstrequal{#2}{##1} + {\edef\tmpa{\bpl@get@annot@symbol{\theannotsymb}}}% + {}% + \stepcounter{annotsymb}% + }% + \expandafter\docsvlist\expandafter{\bpl@annots}% + \IfBooleanTF{#1}{\tmpa}{\mkbplannot{\tmpa}}% +} + +% handle the annotations as passed by annotations option +\AtEndOfPackage{% +\ifx\bpl@annots\empty\else + % helper function for annotations + \newcounter{annotsymb} + \newcommand*\bplannot{% + \setcounter{annotsymb}{1}% + \renewcommand*{\do}[1]{% + \ifitemannotation{##1} + {\mkbplannot{\bpl@get@annot@symbol{\theannotsymb}}}% + {}% + \stepcounter{annotsymb}% + }% + \expandafter\docsvlist\expandafter{\bpl@annots}% + } + % do annotation in family names + \renewcommand*{\mkbibnamefamily}[1]{\bplannot #1} +\fi +} % % New environment for (foreign) reviews @@ -1055,6 +1168,13 @@ } % +% Citation info +% +\DeclareFieldFormat{citations}{% + \bibstring{citations}\addcolon\addspace#1% +} + +% % Impact factor % \DeclareFieldFormat{impactfactor}{% @@ -1112,21 +1232,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,11 +1261,36 @@ \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 @@ -1327,6 +1476,26 @@ \iftoggle{isplauthor}% {% <- TRUE condition \global\toggletrue{hadplauthor}% + \ifx\bpl@annots\empty\else + \gdef\bpl@extra@annots{}% + \renewcommand*{\do}[1]{% + \ifitemannotation{##1} + {% + \iftoggle{bpl@have@extrainfo}% + {\gappto\bpl@extra@annots{\plextrainfosep\ifbibstring{annot:##1}% + {\bibstring{annot:##1}}% + {##1}}% + }% + {\gappto\bpl@extra@annots{\ifbibstring{annot:##1}% + {\bibstring{annot:##1}}% + {##1}}% + }% + \toggletrue{bpl@have@extrainfo}% + }% + {}% + }% + \expandafter\docsvlist\expandafter{\bpl@annots}% + \fi% }% <- end TRUE condition {% <- FALSE condition \stepcounter{nonpl#1}% @@ -1350,7 +1519,7 @@ {\ifdefvoid{\namepartgiven}{}{\mkbibnamegiven{\namepartgiven}\addspace}}% \ifdefvoid{\namepartprefix}{}{\mkbibnameprefix{\namepartprefix}\addspace}% \global\togglefalse{plauthorprecedes}% - \namepartfamily% + \mkbibnamefamily{\namepartfamily}% }% }% <- end FALSE condition % @@ -1689,6 +1858,12 @@ }% } +% +% Extra information +% + +\def\bpl@extra@annots{} + \newtoggle{bpl@have@extrainfo} \renewbibmacro*{addendum+pubstate}{% @@ -1710,14 +1885,35 @@ not test {\iffieldundef{impactfactor}} and test {\iftoggle{bpl@jifinfo}} ) + or + ( + not test {\iffieldundef{citations}} + and test {\iftoggle{bpl@citinfo}} + ) + or + ( + not test {\ifcsvoid{bpl@extra@annots}} + ) }{% \newunit\newblock% \printtext[plextrainfo]{% + \ifx\bpl@extra@annots\empty\else + \bpl@extra@annots% + \toggletrue{bpl@have@extrainfo}% + \fi \ifboolexpr{ not test {\iffieldundef{peerreview}} and test {\iftoggle{bpl@prinfo}} }{% - \toggletrue{bpl@have@extrainfo}% + \iftoggle{bpl@have@extrainfo}{\plextrainfosep}{}% \printfield{peerreview}% + \toggletrue{bpl@have@extrainfo}% + }{}% + \ifboolexpr{ not test {\iffieldundef{citations}} + and test {\iftoggle{bpl@citinfo}} + }{% + \iftoggle{bpl@have@extrainfo}{\plextrainfosep}{}% + \printfield{citations}% + \toggletrue{bpl@have@extrainfo}% }{}% \ifboolexpr{ not test {\iffieldundef{openaccess}} and test {\iftoggle{bpl@oainfo}} @@ -1739,6 +1935,11 @@ % % l7n % + +\DeclareLanguageMappingSuffix{-publist} + +% publist-specific bibstrings +\NewBibliographyString{citations} \NewBibliographyString{with} \NewBibliographyString{parttranslationof} \NewBibliographyString{impactfactor} @@ -1753,54 +1954,8 @@ \NewBibliographyString{peerreview:tp} \NewBibliographyString{peerreview:pp} \NewBibliographyString{peerreview:no} -\DefineBibliographyStrings{english}{% - parttranslationof = {partial translation of}, - with = {with}, - impactfactor = {impact factor}, - openaccess:true = {OpenAccess}, - openaccess:gold = {OpenAccess (gold)}, - openaccess:green = {OpenAccess (green)}, - peerreview:sb = {single blind peer review}, - peerreview:db = {double blind peer review}, - peerreview:op = {open peer review}, - peerreview:co = {collaborative peer review}, - peerreview:cc = {cascading peer review}, - peerreview:tp = {third-party peer review}, - peerreview:pp = {post-publication peer review}, - peerreview:no = {no peer review} -} -\DefineBibliographyStrings{french}{% - parttranslationof = {traduction partielle de}, - with = {avec}, - impactfactor = {facteur d'impact}, - openaccess:true = {libre acc\`es}, - openaccess:gold = {libre acc\`es (dorée)}, - openaccess:green = {libre acc\`es (verte)}, - peerreview:sb = {\'{e}valuation par des pairs anonymis\'{e}s}, - peerreview:db = {\'{e}valuation par les pairs en double aveugle}, - peerreview:op = {\'{e}valuation par les pairs ouverte}, - peerreview:co = {\'{e}valuation par les pairs collaborative}, - peerreview:cc = {\'{e}valuation par les pairs en cascade}, - peerreview:tp = {\'{e}valuation par des pairs ext\'{e}rieurs}, - peerreview:pp = {\'{e}valuation par les pairs apr\`{e}s publication}, - peerreview:no = {pas d'\'{e}valuation par les pairs} -} -\DefineBibliographyStrings{german}{% - parttranslationof = {Teil\"ubersetzung von}, - with = {mit}, - impactfactor = {Impactfaktor}, - openaccess:true = {OpenAccess}, - openaccess:gold = {OpenAccess (gold)}, - openaccess:green = {OpenAccess (gr\"un)}, - peerreview:sb = {Blindbegutachtung}, - peerreview:db = {Doppelblindbegutachtung}, - peerreview:op = {Offene Begutachtung}, - peerreview:co = {Kollaborative Begutachtung}, - peerreview:cc = {Cascading-Begutachtung}, - peerreview:tp = {Begutachtung durch Dritte}, - peerreview:pp = {Post-Publication-Begutachtung}, - peerreview:no = {keine Begutachtung} -} +\NewBibliographyString{annot:main} +\NewBibliographyString{annot:corresponding} % diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx index bfc159a131..d384445d63 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.cbx @@ -26,14 +26,50 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\bpl@version{2.9} -\def\bpl@rdate{2025/05/09} +\def\bpl@version{2.13} +\def\bpl@rdate{2024/08/21} \ProvidesFile{publist.cbx}[\bpl@rdate\space v.\bpl@version\space biblatex citation style (JSP)] \RequireCitationStyle{numeric} +\DeclareCiteCommand{\citesecitem} + {\defcounter{maxnames}{999}% + \boolfalse{citetracker}% + \boolfalse{pagetracker}% + \usebibmacro{prenote}} + {\usebibmacro{bpl:cite:secitem}} + {\multicitedelim} + {\usebibmacro{postnote}} + +\DeclareCiteCommand*{\citesecitem} + {\defcounter{maxnames}{999}% + \boolfalse{citetracker}% + \boolfalse{pagetracker}% + \usebibmacro{prenote}} + {\usebibmacro{bpl:cite:secitem}% + \usebibmacro{bpl:cite:secitemsec}% + } + {\multicitedelim} + {\usebibmacro{postnote}} + +\newbibmacro*{bpl:cite:secitem}{% + \ifcsdef{bpl@itemnumber:\thefield{entrykey}}% + {\mkbibbrackets{\csuse{bpl@itemnumber:\thefield{entrykey}}}}% + {\textbf{\mkbibbrackets{???}}}% +} + +\newcommand*\secitemsecref[1]{% + \mkbibparens{\bibstring{section}\addnbspace\ref{refsection:#1}}% +} + +\newbibmacro*{bpl:cite:secitemsec}{% + \ifcsdef{bpl@itemsec:\thefield{entrykey}}% + {\addspace\secitemsecref{\csuse{bpl@itemsec:\thefield{entrykey}}}}% + {}% +} + \DeclareCiteCommand{\citeitem} {\defcounter{maxnames}{999}% \boolfalse{citetracker}% @@ -55,6 +91,28 @@ \printtext[labelnumberwidth]{\mkrefdesc{\thefield{labelnumber}}}% } +\newcommand*\itemrangesep{\bibrangedash} + +\newcommand*\citeitemrange[2]{% + \citeitem{#1}\itemrangesep\citeitem{#2}% +} + +\NewDocumentCommand\citesecitemrange{s m m} +{% + \IfBooleanTF{#1}% + {\ifcsdef{bpl@itemsec:#2}% + {\ifcsdef{bpl@itemsec:#3}% + {\ifcsequal{bpl@itemsec:#2}{bpl@itemsec:#3}% + {\citesecitem{#2}\itemrangesep}% + {\citesecitem*{#2}\,\itemrangesep\,}% + \citesecitem*{#3}}% + {\citesecitem*{#2}\itemrangesep\citesecitem*{#3}}% + }% + {\citesecitem{#2}\itemrangesep\citesecitem*{#3}}% + }% + {\citesecitem{#2}\itemrangesep\citesecitem{#3}}% +} + % Manual way to adjust numbering \csdef{bpl@secstartshift}{0} \newcommand*\shiftciteitem[1]{\csdef{bpl@secstartshift}{#1}} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx index d43f60a465..27cb4068f5 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.dbx @@ -1,5 +1,5 @@ % publist.dbx, biblatex data model specification for the biblatex-publist -% package, version 2.9 (2025/05/09). +% package, version 2.13 (2024/08/21). % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -22,11 +22,13 @@ % Add peerreview and openaccess (literal) field \DeclareDatamodelFields[type=field, datatype=literal]{ + citations, impactfactor, openaccess, peerreview} \DeclareDatamodelEntryfields{ + citations, impactfactor, openaccess, peerreview} |