From 00861fb907e725cd88cbc7636af954e858a91e1f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 25 Aug 2019 20:44:30 +0000 Subject: biblatex-ext (25aug19) git-svn-id: svn://tug.org/texlive/trunk@51959 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/latex/biblatex-ext/CHANGES.md | 10 ++ .../doc/latex/biblatex-ext/biblatex-ext.pdf | Bin 696307 -> 718456 bytes .../doc/latex/biblatex-ext/biblatex-ext.tex | 121 +++++++++++++-------- 3 files changed, 88 insertions(+), 43 deletions(-) (limited to 'Master/texmf-dist/doc/latex/biblatex-ext') diff --git a/Master/texmf-dist/doc/latex/biblatex-ext/CHANGES.md b/Master/texmf-dist/doc/latex/biblatex-ext/CHANGES.md index cf1365195fa..bc259954df5 100644 --- a/Master/texmf-dist/doc/latex/biblatex-ext/CHANGES.md +++ b/Master/texmf-dist/doc/latex/biblatex-ext/CHANGES.md @@ -1,5 +1,15 @@ # Changelog +## Version 0.8 (2019-08-25) +See + +### Added +- `\AtIntrocite` to customise initialisation code for introcite + citations. + +### Changed +- Require `biblatex` v3.13 (some backwards compatiblity is in place). + ## Version 0.7a (2019-04-04) See diff --git a/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.pdf b/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.pdf index 90cf8b74ef7..11f1bc404c4 100644 Binary files a/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.pdf and b/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.tex b/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.tex index fb9d70ebeac..3d9f5da103b 100644 --- a/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.tex +++ b/Master/texmf-dist/doc/latex/biblatex-ext/biblatex-ext.tex @@ -116,6 +116,7 @@ @collection,@commentary,@customa,@customb,@customc,@customd,% @custome,@customf,@inbook,@incollection,@inproceedings,% @inreference,@image,@jurisdiction,@legal,@legislation,@letter,% + @dataset, @manual,@misc,@movie,@music,@mvcollection,@mvreference,% @mvproceedings,@mvbook,@online,@patent,@performance,@periodical,% @proceedings,@reference,@report,@review,@set,@software,@standard,% @@ -462,13 +463,13 @@ \newcommand*{\ctan}{\mkbibacro{CTAN}} \newcommand*{\gitbaseurl}{https://github.com/moewew/biblatex-ext} -\newcommand*{\extblxversion}{0.7a} +\newcommand*{\extblxversion}{0.8} \newcommand*{\biber}{Biber} \newcommand*{\gitissuelink}[1]{% \href{\gitbaseurl/issues/#1}{issue \##1 on github}} \newrobustcmd*{\CSdelim}{% - \textcolor{spot}{\margnotefont context sensitive}} + \textcolor{spot}{\margnotefont\footnotesize context sensitive}} \newrobustcmd*{\CSdelimMark}{% \leavevmode\marginpar{\CSdelim}} @@ -530,7 +531,7 @@ author = {Moritz Wemheuer}, link = {mwemheu@gmail.com},% revision = {\extblxversion}, - date = {\DTMDate{2019-04-04}}, + date = {\DTMDate{2019-08-25}}, } \hypersetup{% @@ -1388,13 +1389,14 @@ labels in a \hyperblxstyle[ext-numeric]{numeric} bibliography. \makeatother \endgroup + The label produced by the \optval{plain} option can be customised as follows. \begin{ltxsyntax} \csitem{introcitepunct} -The punctuation insterted between the label and the - rest of the entry with \kvopt{introcite}{plain}. - The default value is a colon followed by a space. +The punctuation inserted between the label and the +rest of the entry with \kvopt{introcite}{plain}. +The default value is a colon followed by a space. \begin{bibexample} \togglefalse{bbx:doi} \renewcommand*{\introcitepunct}{\highlight{\textbf{\addcolon}\textvisiblespace}} @@ -1493,6 +1495,22 @@ overlay={% \end{bibexample} \makeatother +In order to reproduce the citation label accurately in the bibliography, +some initialisation and housekeeping needs to be done. +\begin{ltxsyntax} +\cmditem{AtIntrocite}{code} +\cmditem*{AtIntrocite}*{code} + +Appends the \prm{code} to an internal hook executed when initializing +\cmd{introcite}. +The starred variant of the command clears the initialisation hook, +so the defaults can be overwritten. +The default settings execute the internal macro +\cs{extblx@introcite@init}, which makes sure that the label produced +for introcite takes into account the citation settings and suppresses +unwanted citation tracking and hyperlinks. +\end{ltxsyntax} + The appearance of the citation label can be customised mostly as if it were produced by a true citation command called \cmd{bbx@introcite}. The delimiter context is \gencode{bbx@introcite}, the inner citation delimiters @@ -1586,8 +1604,9 @@ so it might not be a bad idea to have \filename{ext-standard.bbx} open when perusing this section of the manual. \subsection{Field formats}\label{sec:opt:field} -In a few places where the standard styles employ hard-coded formatting -directives the styles of this bundle offer customisable formats instead. +The styles of this bundle offer customisable field formats +in a few places where the standard styles employ hard-coded formatting +directives instead. Field formats can be modified with \cmd{DeclareFieldFormat}. \begin{bibfieldformatlist} @@ -1700,10 +1719,15 @@ It is probably too late now.} \begin{bibexample} \toggletrue{bbx:innamebeforetitle} \togglefalse{bbx:isbn} +\DeclareFieldFormat{editortype}{\mkbibparens{#1}} +\DeclareDelimFormat{editortypedelim}{\addspace} \DeclareDelimFormat[bib,biblist]{innametitledelim}{\highlight{\textbf{% \addperiod}\textvisiblespace}\bibsentence}% <- hacky & hard-coded! \exampleprintbib{pines} \end{bibexample} +Note that \bibfieldformat{editortype} and \cmd{editortypedelim} +were changed for this example to avoid punctuation clashes. + Since \cmd{nametitledelim} and \cmd{innametitledelim} are independent, the following output is easily achieved. Note that the optional argument to \cmd{DeclareDelimFormat} is used @@ -1945,8 +1969,8 @@ See \cref{tab:citationdelims} for more details. The delimiters are set up to work as paired delimiters, but you are free to use non-matching pairs or to leave the opening or closing delimiter empty. If you want to add punctuation, the context-sensitive delimiters -\gencode{nameyeardelim}, \gencode{nametitledelim} and friends as well as -the context-insensitive \cmd{postnotedelim} and friends are more approriate. +\gencode{nameyeardelim}, \gencode{nametitledelim}, +\gencode{postnotedelim} and friends are more approriate. \begin{remindbox} Although the outer delimiters can be set up using \cmd{DeclareCiteCommand}'s @@ -2489,14 +2513,16 @@ bibliography macro \hyperbibmacro{oamark}. \usepackage[(*@\prm{\sty{biblatex-ext-oa} options}@*)]{biblatex-ext-oa} \end{biblatexcode} -The package may load the support packages \hypersty{biblatex-ext-oa-doiapi}, -\hypersty{biblatex-ext-oasymb-pict2e}, \hypersty{biblatex-ext-oasymb-l3draw} - and \hypersty{biblatex-ext-oasymb-tikz}. -The preferred way to load these packages is via \sty{biblatex-ext-oa}'s -package options. +The package may load the support packages +\hypersty{biblatex-ext-oa-doiapi}, +\hypersty{biblatex-ext-oasymb-pict2e}, +\hypersty{biblatex-ext-oasymb-l3draw} +and \hypersty{biblatex-ext-oasymb-tikz}. +The preferred way to use those packages is to have them loaded +automatically via \sty{biblatex-ext-oa}'s package options. It should usually not be necessary to load any of these support packages -directly with \cmd{usepackage}, but it is possible to use them as stand-alone -packages should the need arise in other situations. +directly with \cmd{usepackage}, but it is possible to use them as +stand-alone packages should the need arise in other situations. \begin{warnbox} Note that the macro \hypercmd{oasymbol} must be defined and should contain an @@ -2569,10 +2595,11 @@ Set \hypercmd{oasymbol} to output the symbol identified as \prm{symbol}. The available options can be found in \cref{sec:oa:symbol}. \begin{warnbox} -Note that this option is only available if \hypercmd{symbolpackage} has been -set to a valid value different from \optval{false} or one of the open access -symbol packages has been loaded manually (the latter is usually not recommended, -the option \hypercmd{symbolpackage} is the preferred way to load those +Note that this option is only available if the +option~\hyperopt{symbolpackage} has been set to a valid value different +from \optval{false} or one of the open access symbol packages has +been loaded manually (the latter is usually not recommended, the +option~\hyperopt{symbolpackage} is the preferred way to load those packages). \end{warnbox} @@ -2670,7 +2697,8 @@ or \bibmacro{doi+eprint+url}. The heart of the package \sty{biblatex-ext-oa} is the bibliography option \hyperopt{openaccess}, which can be set globally, per type or per entry. -A short example document can be found at +A longer example document exploring various aspects of open access +detection can be found at \url{https://github.com/moewew/biblatex-ext/blob/master/oaslinks.tex}. \begin{optionlist} @@ -2683,8 +2711,9 @@ The initial value is \optval{auto} unless the package is loaded with the \hyperopt{enable} option set to \optval{false} in which case the initial value changes to \optval{none}. -All following values are valid at all three levels (global, per-type and -per-entry), but it may not be useful to use a particular option at all levels. +All of the following values are valid at all three levels (global, +per-type and per-entry), but not all options may be useful at all +available levels. \begin{valuelist} \item[auto] Use a semi-automatic heuristic to find the best open access URL. @@ -2732,7 +2761,7 @@ per-entry), but it may not be useful to use a particular option at all levels. \item[\prm{open access field}] Specifies that the open access version is given by \prm{open access field}. - This value would normally be used only on a per-enry level. + This value would normally be used only on a per-entry level. Any field for which \hypercmd{DeclareOpenAccessFieldUrl} has declared a URL specification is a valid \enquote{open access field}. @@ -2796,8 +2825,9 @@ the following declarations are active. \DeclareOpenAccessEprintUrl[always]{arxiv}{% https://arxiv.org/\abx@arxivpath/\thefield{eprint}} \end{biblatexcode} -Note the optional argument \texttt{always} for \bibfield{arxiv}, because -articles on the arXiv are always open access. +Since articles on the arXiv are always open access, the declaration +for \bibfield{arxiv} features the optional \prm{openness} argument +\texttt{always}. \cmditem{DeclareOpenAccessEprintAlias}{alias}{eprinttype} @@ -2850,8 +2880,9 @@ The \optval{auto} detection works as follows. \end{itemize} \end{itemize} -For \optval{auto}-detection, an open access article with DOI would ideally -look like this. +For \optval{auto}-detection, an open access article with DOI would +ideally use the field annotation \texttt{openaccess} +(\lstinline[style=extblxstylebibtex]|{doi+an = {=openaccess},|). % cipriani \inputexamplebibfile[listing options={linerange={27-38}, style = extblxstylebibtex}] @@ -2902,7 +2933,7 @@ Unpaywall API\fnurl{https://unpaywall.org/}. This package can only be used with \lualatex{} and needs online access. Furthermore the Unpaywall API requires an email address and asks to limit -calls to 100000 per day\fnurl{https://unpaywall.org/products/api}. +requests to 100,000 calls per day\fnurl{https://unpaywall.org/products/api}. \end{warnbox} To avoid too many calls to the API, the package caches its information in the @@ -2923,7 +2954,7 @@ an email. There is no predefined default email address. If the package is loaded and no email was provided until the beginning of the document (as tested in an \cmd{AtEndPreamble} hook) -you will recieve a warning. +you will receive a warning. A fatal error will be thrown if you try to query the Unpaywall database without an email address. \end{warnbox} @@ -2953,30 +2984,30 @@ API is the DOI and to \prm{false} otherwise. \subsection{Open access symbols}\label{sec:oa:symbol} -Currently, this bundle offers three options to provide the open access +Currently, this bundle offers three methods of drawing the open access symbols. +Each method is packed up in a little sub-package, end users are not +expected to load these packages manually, instead they should use +the option~\hyperopt{symbolpackage} of \hypersty{biblatex-ext-oa}. + The package \hypersty{biblatex-ext-oasymb-pict2e} draws the symbols using \sty{pict2e}'s \env{picture} environment. The package \hypersty{biblatex-ext-oasymb-tikz} uses \pgftikz's \env{tikzpicture}. The package \hypersty{biblatex-ext-oasymb-l3draw} finally uses \LaTeX3's \sty{l3draw} package. -The main purpose of these packages is to define the macro \cmd{oasymbol} for -use with \sty{biblatex-ext-oa}. +The main purpose of these packages is to define the macro \cmd{oasymbol} +for use with \sty{biblatex-ext-oa}. -The packages should usually not have to be loaded explicitly, instead -they are loaded via the \hyperopt{symbolpackage} option of -\hypersty{biblatex-ext-oa}. - -All packages define a similar set of macros, so they can not be loaded -together. +All packages define a similar set of macros, so they are not indended to +be loaded together. If used as stand-alone packages, all packages only have one option. \begin{optionlist} \optitem[plos]{symbol}{\optval{plos}, \optval{oanet}} -This options determines which of the two provided symbols is going to be used -for \hypercmd{oasymbol}. +This options determines which of the two available symbols is going to +be used for \hypercmd{oasymbol}. The possible values are \begin{valuelist} @@ -3136,8 +3167,12 @@ See also \filename{CHANGES.md}. The numbers on the right indicate the relevant section of the manual. \begin{changelog} +\begin{release}{0.8}{2019-08-25} + \item Added \hypercmd{AtIntrocite} \see{sec:opt:style} + \item Require \sty{biblatex} v3.13 (2010/08/17)\see{sec:req} +\end{release} \begin{release}{0.7a}{2019-04-04} - \item Fix bug in the \opt{env} option of \hypercmd{printbibtabular}% + \item Fixed bug in the \opt{env} option of \hypercmd{printbibtabular}% \see{sec:tabularbib} \end{release} \begin{release}{0.7}{2019-02-08} -- cgit v1.2.3