-
Notifications
You must be signed in to change notification settings - Fork 4
/
biblatex-publist.tex
1557 lines (1305 loc) · 76 KB
/
biblatex-publist.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
% !TeX spellcheck = en_US
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% File biblatex-publist.tex
%%
%% Manual of the biblatex-publist package.
%%
%% This file is part of the biblatex-publist package.
%%
%% Author: Juergen Spitzmueller <[email protected]>
%%
%% 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".
%%
%% The Current Maintainer of this work is Juergen Spitzmueller.
%%
%% Code repository and issue tracker: https://github.com/jspitz/jslectureplanner
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[english]{article}
\usepackage[osf]{libertine}
\usepackage[scaled=0.76]{beramono}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{listings}
\lstset{%
language={[LaTeX]TeX},
basicstyle={\small\ttfamily},
frame=single}
\usepackage{babel}
\usepackage{csquotes}
\usepackage{url}
\usepackage[svgnames]{xcolor}
\usepackage[unicode=true]{hyperref}
\hypersetup{%
pdftitle={The biblatex-publist manual},
pdfauthor={Jürgen Spitzmüller},
pdfkeywords={biblatex,publication list}
bookmarks=true,
bookmarksnumbered=false,
bookmarksopen=false,
breaklinks=false,
backref=false,
colorlinks,
linkcolor=black,
filecolor=Maroon,
urlcolor=Maroon,
citecolor=black
}
% Tweak the TOC (make it more compact)
\usepackage{tocloft}
\setlength{\cftaftertoctitleskip}{6pt}
\setlength{\cftbeforesecskip}{3pt}
\setlength{\cftbeforesubsecskip}{0pt}
\renewcommand{\cfttoctitlefont}{\normalsize\bfseries}
\renewcommand{\cftsecfont}{\small\bfseries}
\renewcommand{\cftsecpagefont}{\small\bfseries}
\renewcommand{\cftsubsecfont}{\small}
\renewcommand{\cftsubsecpagefont}{\small}
\renewcommand{\cftsubsubsecfont}{\small}
\renewcommand{\cftsubsubsecpagefont}{\small}
% Some semantic markup
\makeatletter
\newcommand*\@marginmacro[2][]{%
\marginpar{\IfBlankTF{#1}{}{\hspace*{#1em}}\raggedleft\small\textcolor{Maroon}{\texttt{#2}}}%
}
\def\jmacro{\@ifstar\@@jmacro\@jmacro}
\newcommand*\@jmacro[1]{\textbf{\texttt{#1}}}
\newcommand*\@@jmacro[2][]{\@jmacro{#2}\IfBlankTF{#1}{\@marginmacro{#2}}{\@marginmacro[#1]{#2}}}
\def\jcsmacro{\@ifstar\@@jcsmacro\@jcsmacro}
\newcommand*\@jcsmacro[1]{\@jmacro{\textbackslash{#1}}}
\newcommand*\@@jcsmacro[2][]{\IfBlankTF{#1}{\@@jmacro{\textbackslash{#2}}}{\@@jmacro[#1]{\textbackslash{#2}}}}
\newcommand*\joption[1]{\textbf{\texttt{#1}}}
\newcommand*\jfoption[1]{\texttt{#1}}
\newcommand*\jfmacro[1]{\texttt{#1}}
\newcommand*\jfcsmacro[1]{\jfmacro{\textbackslash{#1}}}
\newcommand*\jmmacro[1]{\@marginmacro{#1}}
\newcommand*\jmcsmacro[1]{\@marginmacro{\textbackslash{#1}}}
\def\jenviron{\@ifstar\@@jenviron\@jenviron}
\newcommand*\@jenviron[1]{\textbf{\texttt{#1}}}
\newcommand*\@@jenviron[1]{\marginpar{\raggedleft\small\textcolor{Maroon}{\texttt{#1}}}%
\textbf{\texttt{\textbackslash begin\{#1\}$\ldots$\textbackslash end\{#1\}}}%
}
\newcommand*\bpl{\texttt{biblatex-publist}}
\newcommand*\bibltx{\texttt{biblatex}}
\makeatother
\reversemarginpar
% Conditional page breaks
\def\condbreak#1{%
\vskip 0pt plus #1\pagebreak[3]\vskip 0pt plus -#1\relax}
% \condbr{<number of lines>}
\newcommand*\condbr[1]{\condbreak{#1\baselineskip}}
\renewcommand{\lstlistingname}{Example}
%
%%
\begin{document}
\title{biblatex-publist}
\author{Jürgen Spitzmüller%%
\thanks{Please report issues via \protect\url{https://github.com/jspitz/biblatex-publist}.}%
}
\date{Version 2.13, 2024/08/21}
\maketitle
\begin{abstract}
\noindent The \bpl\ package provides a \bibltx\ \cite{bibltx} style file
for publication lists -- a bibliography listing one's own
publications. It employs \bibltx's \emph{author\-year} style by default
(which can be changed), but provides extra features needed for publication lists,
such as the omission or highlighting of the own name from\slash in author or editor data
and specific numbering.
The package requires at least version 3.8 of \bibltx\ and \texttt{biber}
(the respective version as required by \bibltx).
\end{abstract}
\tableofcontents
\section{Aim of the Package}
The \bpl\ package provides a \bibltx\ bibliography style specifically for academic publication lists.
Such lists, which are a central part of the academic CV, contain all or selected
publications of a specific author, usually sorted by genre and year.
Even though publication lists are actually nothing else than (specific) bibliographies,
they diverge from those in some respects. Most notably, it is widespread practice
to omit your own name in your publication list and only list your co-authors,
if there are any, or to highlight your own name (e.\,g., with bold face letters).
If you want to follow this practice, a normal bibliography style does not
produce the desired result.
Given the fact that maintaining a publication list is a routine task
in an academian's life, it is surprising how few specified solutions
are at disposal to generate such lists (particularly from Bib\TeX\ data). For
classic Bib\TeX, Nicolas Markey provides (off CTAN) a Bib\TeX\ style file
dedicated to that task, \emph{publist.bst}%
\footnote{See \url{http://www.lsv.fr/~markey/BibTeX/publist/publist.bst}
for the style file, \url{http://www.lsv.fr/~markey/BibTeX/publist/doc.ps.gz}
for documentation; see also \cite{ttb}.}.
The \bpl\ package started off as the attempt to emulate the features of
\emph{publist.bst} with \bibltx's means; it thus partly draws on
its conceptual ideas. Meanwhile, however, it has significantly exceeded
that initial goal and provides many more features than \emph{publist.bst},
thereby accounting for my own needs and for requests that reached me.
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
\item Highlight the year of publication
\item Optionally indicate the year of publication (sets) in the margin
\item Clickable titles, linking to the URL, DOI, or a web catalog
\item Indicate if/how a title has been peer-reviewed
\item Mark OpenAccess publications
\item Give bibliometric information (journal impact factor)
\item List reviews of specific titles
\item Adjustable base bibliography style
\end{itemize}
%
Many features have been suggested by users of the package.
If you miss a specific feature, feel free to suggest it via
\url{https://github.com/jspitz/biblatex-publist/issues}.
\subsection*{Requirements and Caveats}
Note that \bpl\ relies on rather advanced features of \bibltx\ for some of its own features.
These are only available with the \texttt{biber} backend of \bibltx. Hence \bpl\ requires
the use of \texttt{biber} as well -- the \texttt{bibtex} backend won't work!
Furthermore, the package employs some newer \LaTeXe\ and \texttt{latex3} features. So a quite
recent \LaTeX\ distribution is required.
Also note that the aim of \bpl\ is to generate publication lists, so it is \emph{not suitable}
for normal bibliographies. Specifically, while basic citing works, more advanced
forms of citing may break or not produce the expected result. The reason is that
\bpl\ needs to perform internal tweaks (e.\,g., to \textsf{shortauthor},
\textsf{labelname} and numbering) which might bite you with customized cite formats.
\section{Usage}
\subsection{Standard Usage\label{sec:standard-usage}}
The standard way of using the package is to load the style file via
\begin{lstlisting}[moretexcs={[1]{plauthorname}}]
\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
of the \bpl\ package. The old macro still works, but is marked as deprecated.}
(at least with the mandatory \emph{surname} argument) needs to be given (at least\footnote{See
sec.~\ref{sec:multiauthors} for the case of handling multiple authors and name variants.}) once.
It informs the style file which name(s) it should suppress or highlight in the
author\slash editor list or which entries it should retrieve from a database. In other words,
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{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{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{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.
\subsection{Additional Options}\label{sec:addopts}
Currently, the following additional options are provided (next to the
options provided by the \bibltx\ package itself%
\footnote{Please refer to the \bibltx\ manual \cite{bibltx} for those.}):
\begin{description}
\item [{\joption{plauthorname=<surname>}}]
\item [{\joption{plauthorfirstname=<first name>}}]
\item [{\joption{plauthornameprefix=<von-part>}}] ~
This is an alternative to the \jcsmacro{plauthorname} macro
described in sec.~\ref{sec:standard-usage} to set the publication list author.%
\footnote{The options were called \jfoption{omitname}, \jfoption{omitfirstname} and \jfoption{omitnameprefix}
until v.\,1.4 of \bpl. The old options still work, but are marked as deprecated.}
As opposed to the macro, however, the options do not provide for multiple authors and name variants
(see sec.~\ref{sec:multiauthors}).
\item [{\joption{plauthorhandling{[}=omit|highlight{]}}}] default: \emph{omit}.
By default, the publist author (as defined with \jcsmacro{plauthorname}) is omitted from
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}.
To change the order to \enquote{Given Names Lastname}, pass the option \joption{nameorder=given-family} to \bibltx.
\item [{\joption{fixyear{[}=true|false{]}}}] default: \emph{true}.
By default, the year (or pubstate, if no year is given) is positioned on a fixed slot
(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}. 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.}
By default, the year (or pubstate, if no year is given) is highlighted (printed in bold face).
To prevent this, pass the option \joption{hlyear=false} to \bibltx. The form of highlighting
can be customized as well (see sec.~\ref{sec:auxmacros}). Note that this has no effect if
\joption{fixyear=false}.
\item [{\joption{marginyear{[}=true|false{]}}}] default: \emph{false}.
With this option set to \joption{true}, the publication year (or pubstate) will
be printed in the margin once a new year starts. The option also has
the effect that all marginpars are printed \enquote{reversed}, i.\,e.
on the left side in one-sided documents (via \jfcsmacro{reversemarginpar}).
\item [{\joption{pubstateextra{[}=true|false{]}}}] default: \emph{false}.
If this is \texttt{true}, the extradate marker (a, b etc.) is also appended to pubstates if there are multiple
indentical pubstates; e.\,g., \emph{Forthcoming(a)}, \emph{Forthcoming(b)}.
\item [{\joption{plsorting=<sorting scheme>}}] default: \emph{ydt}.
This option works like the \joption{sorting} option you know from \bibltx. It is provided since \bpl\ sets its
own sorting schemes (differently depending on \joption{plauthorhandling}) and thus overrides any setting made
via \bibltx. You can overwrite those settings here yourself and set an own sorting scheme (see also sec.~\ref{sec:sorting}).
\item [{\joption{plnumbering{[}=global|local|global-descending|local-descending|none{]}}}] default: \emph{global}.%
\footnote{Up to \bpl\ 1.27, numbering was controlled by two separate options, \joption{plnumbered} and \joption{reversenumbering}.
These options (and their differently named values) are still supported, but you get a warning if you use them and are encouraged
to use the new options.}
By default, the publication list is numbered in continuous ascending order. If you divide your publication list into sections
by means of \jfcsmacro{refsection}s (as documented in section~\ref{sec:example}), you will thus get a global numbering over
all sections.
If you prefer the numbering to start from 1 at each section instead, set this option to \joption{local}.
If you prefer descending rather than ascending enumeration, starting from the total
number of entries back to 1 (either globally or within each section), use the \joption{*-descending} variants.
If you do not want to have any numbers at all, set this option to \joption{none}.
Note that if you use descending enumeration, \bpl\ will have to do a full counting of all printed items first
in order to calculate the numbering properly (considering any filtering you might have done).
For this calculation, a specific auxiliary file, \emph{<filename>.bpx}, is used. The package will warn you if more
\texttt{latex} runs are required. See sec.~\ref{sec:numbers} for details.
\item [{\joption{plauthorfirstinit{[}=true|false{]}}}] default: \emph{false}.
If you set this option to \joption{true}, you can (and are supposed to) pass only an initial character as first name value of
\jcsmacro{plauthorname} (e.\,g., \jcsmacro{plauthorname[J]\{Doe\}} or \jcsmacro{plauthorname[J][van]\{Doe\}}).
In consequence, \bpl\ will consider all entries of the specified given name (and prefix, if specified)
whose prename starts with the specified character. This allows you to deal with databases that record entries of your work
with abbreviated and full first name (\textsc{J. Doe} and well as \textsc{John Doe} and \textsc{John Robert Doe}) \emph{as well as}
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
(see section~\ref{sec:impactfactor}), will be appended to the entries.
\item [{\joption{oainfo{[}=simple|verbose|none{]}}}] default: \emph{none}.
If \joption{simple} or \joption{verbose} is selected, open-access information, as specified via the \texttt{openaccess} field
(see section~\ref{sec:openaccess}), will be appended to the entries. With \joption{verbose}, different OpenAccess strategies
(\enquote*{gold}, \enquote*{green}) will be differentiated in the output.
\item [{\joption{prinfo{[}=true|false{]}}}] default: \emph{true}.
If this option is \joption{true}, peer review information, as specified via the \texttt{peerreview} field
(see section~\ref{sec:peerreview}), will be appended to the entries.
\end{description}
%
The following option is available if \textsf{hyperref} is loaded:
\begin{description}
\item [{\joption{linktitles={[}all|doi|url|isbn|issn|none{]}}}] default: \emph{none}.
Turns the title (and subtitle, if available) into a clickable hyperlink to either the DOI, the URL, the ISBN,
or the ISSN (the latter two via customizable search provider), if any of these is available.\footnote{%
Up to v.\,1.27, \bpl\ provided a range of boolean options for this task. These are still supported, but considered deprecated.
} The option \joption{all} activates all these targets, \joption{none} deactivates them.
To enable several targets, multiple values might be passed to the option, embraced and separated by comma
(e.\,g., \joption{linktitles=\{doi, isbn,issn\}}). If an entry provides several targets, the first found from
the order DOI \textrightarrow\ URL \textrightarrow\ ISBN \textrightarrow\ ISSN is used, so the order passed to the
option does not matter, except for \joption{all} and \joption{none}, which activate or deactivate all at their
position in the chain (and options that follow might re-enable them, as in \joption{linktitles=\{none,url\}}).
See section~\ref{sec:clicktitles} for details.
\end{description}
%
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 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},
as these options employ features that can only be set once per document.
However, please refer to sec.~\ref{sec:numbers} on how to address some frequently requested numbering changes.
Also note that with the \joption{plauthor*} options, as opposed to repeated \jcsmacro{plauthorname} calls,
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
with normal bibliographies in academic works. If a numeric citation style is used in the latter, the items are
as a rule numbered in ascending order, and each entry has a unique number. The main function of the
number here is to provide fast access from a reference to the referred entry, and a continuous ascending
enumeration fits this purpose best.
In publication lists, this is only a secondary function of the number, as publication lists are not meant for citing.
The main function here is, in fact, \emph{metrical}. In our increasingly metricalized academic cultures, and against the
backdrop of the \enquote{publish or perish} imperative scholars find themselves confronted with, the sheer number
of publications a scholar has is, next to weighted references to them (e.\,g., the\emph{ h-index}), social capital.
The numbering of items in publication lists is thus, if you will, a sort of account balance.
Now since publication genres (e.\,g., journal papers vs. chapters)
are usually valued differently (\enquote*{impact!}), many people prefer to have a more differentiated balance in
the sense that the publication lists should swiftly tell the reader how many papers, monographs, chapters, etc.,
a person has published. Hence those people prefer to number their publications by section rather than continuously.
On the other hand, since publication lists are often ordered reversely chronological, many people also prefer
to have a reversely ordered (descending) numbering, either globally over the whole list or, again, by section.
The \bpl\ package accounts for these needs and provides, via the option \joption{plnumbering}, five different numbering variants:
\begin{enumerate}\setlength{\itemsep}{0pt}
\item Global ascending numbers (that continue across sections) [\emph{default}]
\item Global descending numbers [\joption{plnumbering=global-descending}]
\item Local ascending numbers (that are reset to 1 in each section) [\joption{plnumbering=local}]
\item Local descending numbers [\joption{plnumbering=local-descending}]
\item No numbers at all [\joption{plnumbering=none}]
\end{enumerate}
%
Particularly reverse numbering is, technically, a bit of a challenge; \bibltx, for reasons, does not provide this
feature out of the box. In order to do descending numbering one has to know the number of entries in the
publication list, or in individual sections, before the first number can get assigned. Since items can be
filtered out, for instance via \bibltx's \joption{filter} or \joption{keyword} options, \bibltx\ itself
only knows this number after all entries have been processed for output. Yet since it only provides for
ascending numbers, \bibltx\ does not (need to) store this knowledge, and thus, it is not readily available
to \bpl.
Thus, with \joption{plnumbering=global-descending} and \joption{plnumbering=local-descending}, \bpl\ will first
count all printed entries, globally and per section, write the results in an auxiliary file (\emph{<filename>.bpx}),
and then do at least one additional pass in order to fix the numbering. This requires additional \texttt{latex}
cycles, but you will be given a warning if the numbering is not yet fully resolved.
Now in addition to these mentioned variants, some people still need a more fine-grained control over the numbering.
For instance, some scholars want to list both their publications and their conference papers (talks) in the
same document, but separately numbered. Both publications and talks might themselves be divided into different
sections (\emph{monographs}, \emph{papers}, $\ldots$; \emph{keynotes}, \emph{invited talks}, $\ldots$) which, however,
should be numbered continuously within their category. So \joption{plnumbering=local} alone does not produce
the desired result.
For this case, \bpl\ provides two alternative and slightly different features: First, an environment
\jenviron*{plnumgroup}.
All sections you embrace by this in the context of \joption{plnumbering=local} are numbered continuously,
so resetting is suspended within this environment. This works both with ascending and descending enumeration.
In the ascending case only, the macro \jcsmacro*{setplnum} is useful as a (more flexible) alternative.
It allows you to set the first label number of the next bibliography section that follows to a specific
(arbitrary) value.
All following numbers ascend or descend from this new value.
The adjustment applies to all following bibliography sections with continuous numbering, i.\,e., if
a \joption{global} numbering scheme is used.
With \joption{local} numbering, by contrast, following sections continue to be reset.
In all cases, the macro can be used repeatedly for re-adjustments in forthcoming sections.
So in the use case mentioned above, inserting \verb|\setplnum{1}| before the first section that lists
conference papers, together with \joption{plnumbering=global} (the default), will provide the desired result
(provided that ascending numbering is wished for). The desired result will also be achieved by embracing
all publication-related sections in a \jenviron{plnumgroup} environment and and all conference-paper-related
sections in another one, while using \joption{plnumbering=local} or \joption{plnumbering=local-descending}.
This second approach, as opposed to the former, also works for descending enumeration.
The macro \jcsmacro*{shiftplnum}, by contrast with \jcsmacro{setplnum}, provides a way to adjust the
subsequent numbering in a \emph{relative} way.
It takes a positive or negative integer value that determines how much and in which direction the adjustment
shall take place (e.\,g., \verb|\shiftpblnum{2}| or \verb|\shiftplnum{-1}|). This might be useful if you
insert items in the list manually or in some very specific settings. Again, this macro can be used
repeatedly and applies to all subsequent items as of the next section that follows. As opposed to
\jcsmacro{setplnum}, the shifting also persists with \joption{local} numbering schemes.
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 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, 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.
\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
in addition to a specification via the options \joption{plauthorname}, \joption{plauthorname} and
\joption{plauthornameprefix}), all of them will be considered.
Thus it is possible to highlight multiple authors in the publication
list (for instance to mark contributions of a research team):
\begin{lstlisting}[moretexcs={[2]{plauthorname}}]
\usepackage[style=publist,plauthorhandling=highlight]{biblatex}
\plauthorname[Cristiano]{Ronaldo}
\plauthorname[\'Angel][Di]{Mar\'ia}
\plauthorname{Neymar}
\end{lstlisting}
%
Multiple specifications can also be used to deal with name variants:
\begin{lstlisting}[moretexcs={[2]{plauthorname}}]
\plauthorname[Bill]{Gates}
\plauthorname[William]{Gates}
\plauthorname[William Henry]{Gates}
\plauthorname[William H.]{Gates}
\end{lstlisting}
%
Since the latter is also useful with \joption{plauthorhandling=omit}, this mode also considers multiple specifications.
By entering something such as the former, it is even possible to omit more than one and different authors from the entries
(and \bpl\ will take care of the change in the author separation this involves; think of final \emph{and} vs. \emph{comma},
which have to be adjusted accordingly if names are omitted). However, it does not strike me sensible to do so (in other words,
if you need to deal with a \emph{team} of authors, you should really consider to use \joption{plauthorhandling=highlight}).
Note that multiple specifications also affect filtering (see sec.~\ref{sec:filtering}), i.\,e., the \joption{mine} filter selects
entries authored or edited by any and all specified persons.
\subsection{Truncation of Name Lists}\label{sec:trunc}
Truncation of name lists via the \jfoption{maxnames} and \jfoption{minnames} \bibltx\ options is supported.
However, it works a bit differently than normal truncation, since the publication list authors have to be
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{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{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
bibliographies, information that is supposed to help ranking the author (bibliometrics; the
peer review procedures publications have been subject to) or their publication strategy (e.\,g.,
OpenAcess). To allow for this, \bpl\ provides some extra features which will be described in what
follows. Please also refer to sec.~\ref{sec:auxmacros} for some customization possibilities.
\subsubsection{Journal Impact Factor}\label{sec:impactfactor}
Although the meaningfulness of this measure has been heavily challenged, scholars in many fields are
supposed to give the impact factor (citation ratio) of the journals they have published in.
Thus, \bpl\ provides a specific database field, \texttt{impactfactor}, in which you can store
this value and maybe specify the metrics used.
If you publish in a journal repeatedly, it might make sense to store the journal name and impact factor
in a specific \texttt{@xdata} subset (please refer to the \bibltx\ documentation for details on such subsets).
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
and how listed work has been subject to peer review.
To this end, \bpl\ provides a specific database field, \texttt{peerreview}, in which you can use
the following shorthands:
\begin{itemize}\setlength{\itemsep}{0pt}
\item{\texttt{sb}} (=~single blind peer review)
\item{\texttt{db}} (=~double blind peer review)
\item{\texttt{op}} (=~open peer review)
\item{\texttt{co}} (=~collaborative peer review)
\item{\texttt{cc}} (=~cascading peer review)
\item{\texttt{tp}} (=~third-party peer review)
\item{\texttt{pp}} (=~post-publication peer review)
\item{\texttt{no}} (=~no peer review)
\end{itemize}
%
If the option \joption{prinfo} 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}). Instead of
the shorthands, you can also enter arbitrary text to the \texttt{peerreview} field, which is then output
as is (and not localized).
\subsubsection{OpenAccess Strategies}\label{sec:openaccess}
Some people also want, or need, to indicate whether and which (some of) their publications have
been published \enquote*{OpenAccess}, that is, free of charges and other access barriers.
To this end, \bpl\ provides a specific database field, \texttt{openaccess}, in which you can use
the following shorthands:
\begin{itemize}\setlength{\itemsep}{0pt}
\item{\texttt{true}} -- Indicates that this publication has been published OpenAccess, no matter which strategy
\item{\texttt{gold}} -- Indicates that this publication has been published OpenAccess from the beginning (\enquote*{gold} strategy)
\item{\texttt{green}} -- Indicates that a secondary version of this publication has been made openly accessible on a public document
server (repository) (\enquote*{green} strategy)
\end{itemize}
%
If you use the option \joption{oainfo=verbose} or \joption{oainfo=simple}, then \bpl\ will append the respective information to the entries.
In the former case, \enquote*{gold} and \enquote*{green} publications will be differentiated, in the latter, this differentiation is
not done.
Specific localizable bibkeys are used for this purpose (see section~\ref{sec:localization}). Instead of
the shorthands, you can also enter arbitrary text to the \texttt{openaccess} field, which is then output
as is (and not localized).
\section{Customization}
\subsection{Auxiliary Macros and Lengths}\label{sec:auxmacros}
The appearance of the \emph{marginyear} is controlled by the
\jcsmacro*{plmarginyear} macro, which has the following default definition:
\begin{lstlisting}[moretexcs={[2]{providecommand,plmarginyear}}]
\providecommand*\plmarginyear[1]{%
\raggedleft\small\textbf{#1}%
}
\end{lstlisting}
If you want to change the appearance, just redefine this macro via
\jfcsmacro{renewcommand{*}}.
The highlighting of the year within the entry, if \joption{hlyear=false} has not been set,
is controlled by the \jcsmacro*{plyearhl} macro, which has the following default definition:
\begin{lstlisting}[moretexcs={[2]{providecommand,plyearhl,mkbibbold}}]
\providecommand*\plyearhl[1]{%
\mkbibbold{#1}%
}
\end{lstlisting}
If you need another form of highlighting, redefine this macro via \jfcsmacro{renewcommand{*}}.
The highlighting of the publication list author, if \joption{plauthorhandling=highlight} has been set,
is controlled by the \jcsmacro*{plauthorhl} macro, which has the following default definition:
\begin{lstlisting}[moretexcs={[2]{providecommand,plauthorhl,mkbibbold}}]
\providecommand*\plauthorhl[1]{%
\mkbibbold{#1}%
}
\end{lstlisting}
If you need another form of highlighting, redefine this macro via \jfcsmacro{renewcommand{*}}.
The embracing of authors with \joption{plauthorhandlung=omit} (by default: in parentheses) is
controlled by the two macros \jcsmacro*{bplopenoa} and \jcsmacro*{bplcloseoa} which are defined
by default as:
\begin{lstlisting}[moretexcs={[2]{providecommand,bplopenoa,bplcloseoa,bibopenparen,bibcloseparen}}]
\providecommand*{\bplopenoa}{\bibopenparen}
\providecommand*{\bplcloseoa}{\bibcloseparen}
\end{lstlisting}
You can remove the parentheses by redefining these macros with empty arguments, respectively,
or add other delimiters instead. Note that if you use \jfcsmacro{bibopenbracket} in \jfcsmacro{bplopenoa},
you must also use \jfcsmacro{bibclosebracket} in \jfcsmacro{bplcloseoa}
to balance the delimitation (as with \jfcsmacro{bibopenparen} and \jfcsmacro{bibcloseparen}).
The\jmmacro{plextrainfo} embracing of extra information (brackets by default) can be customized by changing
\begin{lstlisting}[moretexcs={[4]{DeclareFieldFormat,mkbibbrackets}}]
\DeclareFieldFormat{plextrainfo}{\mkbibbrackets{#1}}
\end{lstlisting}
The\jmcsmacro{plextrainfosep} separator between extra information (peer review, OpenAccess) can be redefined.
The default definition is:
\begin{lstlisting}[moretexcs={[4]{plextrainfosep,addsemicolon,addspace}}]
\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
space the item number needs.
\subsection{Using a Different Base Style}\label{sec:basestyle}
By default, \bpl\ loads \bibltx's \emph{authoryear} style, and it has been written
to work with that style. However, it is possible to try a diffent base style, if
\emph{author\-year} does not fit your needs.\condbreak{2\baselineskip}
In order to do so, enter the following \emph{before} loading \bibltx:
\begin{lstlisting}[moretexcs={[2]{publistbasestyle}}]
\newcommand*\publistbasestyle{<stylename>}
\end{lstlisting}
where <stylename> is the name of the biblatex bibliography style (\emph{bbx}) you want to use, without the \emph{bbx} entension (e.\,g., \lstinline[moretexcs={[2]{publistbasestyle}}]|\newcommand*\publistbasestyle{mla}|).
Note, though, that there is (and can be) no guarantee that \bpl\ will work with all styles, although it has been successfully tested with several. Be prepared to bump into \LaTeX\ errors and carefully check the output for correctness if you try a different base style.
Note, further, that the order of author's and editor's given and family names is hardcoded in
\bpl\ due to the complex omission\slash highlighting mechanism. This might
differ from what you expect with specific base styles. To change the order,
use the package option \joption{nameorder} (see sec.~\ref{sec:addopts}).
The same applies to the position of the year, which is hardcoded to a specific position.
This can be opted out by the package option \joption{fixyear=false}
(see sec.~\ref{sec:addopts}). With this option, however, you lose the possibility to highlight the year.
\subsection{Clickable Titles}\label{sec:clicktitles}
With the option \joption{linktitles} (see sec.~\ref{sec:addopts}), titles and subtitles are turned into clickable
hyperlinks if the \textsf{hyperref} package is loaded, and the respective data is there, i.\,e., if either the
DOI field, the URL field, the ISBN field or the ISSN field is defined for the given entry (checked in this order
if multiple of these targets are enabled or \joption{linktitles=all} is used).
With URL and DOI, direct links are created. With ISBN or ISSN, a link to a search provider is created instead
(\textsf{worldcat} by default). The search provider can be customized by redefining the following macros:
\begin{lstlisting}[moretexcs={[2]{plisbnlink,plissnlink}}]
\newcommand*\plisbnlink[1]{https://www.worldcat.org/search?qt=worldcat_org_all&q=#1}
\newcommand*\plissnlink[1]{https://www.worldcat.org/search?qt=worldcat_org_all&q=#1}
\end{lstlisting}
%
where \verb|#1| is a placeholder for the ISBN or ISSN, respectively.
Note that the \joption{linktitles} option does not have any affect on whether URLs, DOIs, ISBNs and ISSNs
are printed, so you might get redundant output. To control (e.\,g., omit) them, use the \joption{url},
\joption{doi} and \joption{isbn} biblatex options.
\section{Localization}\label{sec:localization}
Since the package draws on \bibltx, it supports localization.
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[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[{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}
\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}
The following extensions of standard \bibltx\ features are provided.
\subsection{Review Bibliography Type}\label{sec:review-bibliography-type}
Although a \emph{review} entry type is provided by \bibltx, this
type is treated as an alias for \emph{article}. The \bpl\ package
uses this entry type for a specific purpose: Foreign reviews of your
own work. It therefore defines a new bibliography environment \emph{reviews}
with a specific look (particularly as far as the author names are
concerned) and its own numbering; furthermore, it redefines the \emph{review}
bibliography driver. The purpose of this is that you can add other
people's reviews of your work to your publication list, while these
titles are clearly marked and do not interfere with the overall numbering
(see sec.~\ref{sec:example} for an example).
\subsection{Partial Translations}\label{sec:partial-translations}
A new \enquote{related entry} type \emph{parttranslationof} is provided.
This is an addition to the \emph{translationof} related entry type
\bibltx\ itself provides. Please refer to the \bibltx\ manual \cite{bibltx}
on what \enquote{related entries} are and how to use them.
\section{An Example}\label{sec:example}
Publication lists are usually categorized by genre (monographs, articles,
book chapters, etc.). For this task, the use of \jfmacro{refsections} (see \cite[sec 3.7.4]{bibltx} for details) is
suggested. Other possibilities were not tested extensively and might fail (in particular as far as the numbering of the items
is concerned).
The suggested procedure is to maintain separate bib files for each
category, say \emph{mymonographs.bib}, \emph{myarticles.bib}, \emph{myproceedings.bib}.%
\footnote{But see sec.~\ref{sec:filtering} for an alternative.}
Then a typical file would look like example~\ref{example} (p.~\pageref{example}).
%
\begin{lstlisting}[caption={Typical document},
float,
frame=single,
label={example},
moretexcs={[5]{plauthorname,addbibresource,printbibliography,maketitle,newrefsection}}]
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{csquotes}% not required, but recommended
\usepackage[style=publist]{biblatex}
\plauthorname[John]{Doe}
\addbibresource{mymonographs.bib}
\addbibresource{myarticles.bib}
\addbibresource{myproceedings.bib}
\begin{document}
\title{John Doe's publications}
\date{\today}
\maketitle
\section{Monographs}
\newrefsection[mymonographs]
\nocite{*}
\printbibliography[heading=none]
\section{Proceedings}
\newrefsection[myproceedings]
\nocite{*}
\printbibliography[heading=none]
\section{Articles}
\newrefsection[myarticles]