summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/biblatex-contrib/biblatex-anonymous
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/biblatex-contrib/biblatex-anonymous
Initial commit
Diffstat (limited to 'macros/latex/contrib/biblatex-contrib/biblatex-anonymous')
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/README4
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.pdfbin0 -> 60311 bytes
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.sty131
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.tex165
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/latexmkrc2
-rw-r--r--macros/latex/contrib/biblatex-contrib/biblatex-anonymous/makefile12
6 files changed, 314 insertions, 0 deletions
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/README b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/README
new file mode 100644
index 0000000000..9b603fd8b5
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/README
@@ -0,0 +1,4 @@
+biblatex-anonymous
+==================
+
+Manage anonymous works with biblatex
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.pdf
new file mode 100644
index 0000000000..9e0b3e9bf8
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.pdf
Binary files differ
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.sty b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.sty
new file mode 100644
index 0000000000..a703ba40c5
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.sty
@@ -0,0 +1,131 @@
+%% Copyright 2014-… Maïeul Rouquette
+%
+% 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 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Maïeul Rouquette
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{biblatex-anonymous}[2018/09/02 v2.6.2 Manage anonymous works with biblatex]
+
+%1. Just execute bibliographic option for some entries type
+\ExecuteBibliographyOptions[%
+ book,%
+ bookinbook,%
+ bookinarticle,%
+ bookincollection,%
+ bookinincollection,%
+ mvbook,%
+ inbook,%
+ bookininbook,%
+ bookininarticle,%
+ inreference,%
+ bookinreference,%
+ bookininreference%
+ ]{useeditor=false,usetranslator=false}
+\ifdefined\etb@tgl@blx@userealeditor
+ \ExecuteBibliographyOptions[%
+ book,%
+ bookinbook,%
+ bookinarticle,%
+ bookincollection,%
+ bookinincollection,%
+ mvbook,%
+ inbook,%
+ bookininbook,%
+ bookininarticle,%
+ inreference,%
+ bookinreference,%
+ bookininreference%
+ ]{userealeditor=false}
+\fi
+\ifdefined\etb@tgl@blx@usebookineditor
+ \ExecuteBibliographyOptions[%
+ book,%
+ bookinbook,%
+ bookinarticle,%
+ bookincollection,%
+ bookinincollection,%
+ mvbook,%
+ inbook,%
+ bookininbook,%
+ bookininarticle,%
+ inreference,%
+ bookinreference,%
+ bookininreference%
+ ]{usebookineditor=false,useineditor=false,usemaineditor=false}
+\fi
+% 2. Sorting
+\ifdef{\DeclareSortingTemplate}%
+ {}%
+ {\let\DeclareSortingTemplate\DeclareSortingScheme}%
+
+\def\bbx@anonymous@sorting{
+ \sort{
+ \field{sortname}
+ \field{author}
+ \field{editor}
+ \field{translator}
+ \literal{0000}
+ }
+ \sort{
+ \field{sorttitle}
+ \field{title}
+ }
+ \sort{
+ \field{sortyear}
+ \field{year}
+ }
+ \sort{
+ \field[padside=left,padwidth=4,padchar=0]{volume}
+ \literal{0000}
+ }
+}
+\DeclareSortingTemplate{anonymous}{
+ \sort{
+ \field{presort}
+ }
+ \sort[final]{
+ \field{sortkey}
+ }
+ \bbx@anonymous@sorting
+}
+
+\ifundef{\bbx@manuscripts@sorting}{}%
+ {
+ \DeclareSortingTemplate{anonymous+manuscripts}{
+ \sort{
+ \field{presort}
+ }
+ \sort[final]{
+ \field{sortkey}
+ }
+ \bbx@anonymous@sorting
+ \bbx@manuscripts@sorting
+ }
+ }
+
+%%3.1 And so, prevent the spurious space in case of \cites command
+%%% Hack suggested on https://github.com/plk/biblatex/issues/285#issuecomment-226918950
+\AtEveryCitekey{\iffieldundef{prenote}{\blx@initunit}{}}
+
+%4. Tools to prevent inhering author field (require biblatex > 3.4)
+\ifdefined\DeclareDatafieldSet
+
+ \DeclareDatafieldSet{author}{
+ \member[field=author]
+ }
+
+\fi
+%5. Language specific setting
+\DefineBibliographyStrings{french}{%
+ byeditor = %
+ {\ifuseeditor{dir\adddotspace}{\'ed\adddot}},
+}
+\endinput
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.tex b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.tex
new file mode 100644
index 0000000000..8da9ce65d2
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/biblatex-anonymous.tex
@@ -0,0 +1,165 @@
+\documentclass{ltxdockit}[2011/03/25]
+\usepackage{btxdockit}
+\usepackage{fontspec}
+\usepackage[mono=false]{libertine}
+\usepackage{microtype}
+\usepackage[main=english,french,latin]{babel}
+\usepackage[strict]{csquotes}
+\setmonofont[Scale=MatchLowercase]{DejaVu Sans Mono}
+\usepackage{shortvrb}
+\usepackage{pifont}
+\usepackage{minted}
+% Usefull commands
+\newcommand{\biblatex}{biblatex\xspace}
+\pretocmd{\bibfield}{\sloppy}{}{}
+\pretocmd{\bibtype}{\sloppy}{}{}
+\newcommand{\namebibstyle}[1]{\texttt{#1}}
+% Meta-datas
+\titlepage{%
+ title={Managing anonymous works with biblatex},
+ subtitle={},
+ email={maieul <at> maieul <dot> net},
+ author={Maïeul Rouquette},
+ revision={2.6.2},
+ date={02/09/2018},
+ url={https://github.com/maieul/biblatex-anonymous}}
+
+\begin{document}
+
+
+\printtitlepage
+\tableofcontents
+
+\section{Introduction}
+
+In some scholar fields, like history or philology, we have to work with anonymous works.
+
+This package provides facility to manage them with \biblatex, with citation and bibliography style of the \namebibstyle{verbose} family.
+It is compatible with the biblatex-morenames and biblatex-realeditor package.
+
+\section{What does the package do?}
+
+This package does those things for \bibtype{book}, \bibtype{bookinbook}, \bibtype{bookinarticle}, \bibtype{bookinincollection}, \bibtype{mvbook}, \bibtype{inbook}:
+\begin{enumerate}
+
+
+ \item Changing label name to author only, never editor.
+ \item Providing a sorting scheme to put all anonymous works at the beginning of a bibliography. This sorting scheme is derivated from \verb+nyt+ scheme.
+ \item For French, changing \enquote{\selectlanguage{french}dir.} by \enquote{\selectlanguage{french}éd.}.
+ \item Printing only the author name before the title, and never the editor, even if the book is anonymous.
+ \item Fixing \biblatex\ bug with \expandafter\cs\expandafter{\prm{xx}cites} command when using anonymous works.\footnote{\url{https://github.com/plk/biblatex/issues/285}.}
+
+\end{enumerate}
+
+\section{Using the package}
+
+\subsection{Loading}
+You must load the package after \biblatex package:
+\begin{minted}{latex}
+\usepackage[…]{biblatex}
+\usepackage{biblatex-anonymous}
+\end{minted}
+
+\subsection{Sorting with anonymous scheme}
+
+If you want your bibliographies to have all anonymous works at the begining, you can pass option \verb+sorting=anonymous+:
+
+\begin{itemize}
+ \item To \biblatex package, to apply it to all bibliographies.
+ \item To an optional argument of a \cs{refcontext} environment, to apply it to a single bibliography.
+\end{itemize}
+
+The package also provides a \verb-anonymous+manuscripts- sorting scheme to use in combination with the \emph{biblatex-manuscripts-philology} package (please read handbook of this package for more details about it).
+\subsection{Making exceptions}
+
+If you want to use the \bibfield{editor} or \bibfield{translator} for a entry concerned by this package (e.g. \bibtype{book}, \bibtype{bookinbook} etc.), you can use the \verb+useeditor=true+ or \verb+usetranslator=true+
+option in the \bibfield{options} field. However, in many case, such entry should be a \bibtype{proceedings} or \bibtype{collection}.
+
+\subsection{Anonymous works edited on not anonymous books}\label{noinherit}
+
+Sometime, an anonymous \bibtype{bookinbook} is printed in a NOT anonymous book.
+If you use cross-referencing system, you would like to NOT inherit the \bibfield{name} from the main entry in the subentry.
+
+\textbf{From \biblatex~3.4.0}, you can use entry option \opt{noinherit=author} as in the following example:
+
+\begin{minted}{latex}
+@book{mainentry,
+ Author = {Name},
+ …
+}
+@book{subentry,
+ Crossref = {mainentry},
+ Options = {noinherit=author},
+ …
+}
+\end{minted}
+\section{Credits}
+
+This package was created for Maïeul Rouquette's phd dissertation\footnote{\url{http://apocryphes.hypothese.org}.} in 2014. It is licensed on the \emph{\LaTeX\ Project Public License}\footnote{\url{http://latex-project.org/lppl/lppl-1-3c.html}.}.
+
+Its code was explained before (in French) on Maïeul Rouquette website\footnote{\url{http://geekographie.maieul.net/Gestions-des-oeuvres-anonymes}.}.
+
+All issues can be submitted, in French or English, in the GitHub issues page\footnote{\url{https://github.com/maieul/biblatex-multiple-anonymous/issues}.}.
+
+\section{Change history}
+
+\begin{changelog}
+
+\begin{release}{2.6.2}{2018-09-02}
+ \item Fix \verb+anonymous+manuscripts+ sorting scheme.
+\end{release}
+\begin{release}{2.6.1}{2017-11-19}
+ \item Improve compatibility with biblatex 3.8.
+\end{release}
+
+\begin{release}{2.6.0}{2017-01-24}
+ \item Add compatibility with the biblatex-morenames package.
+\end{release}
+
+\begin{release}{2.5.0}{2016-10-23}
+ \item Add \verb+anonymous+manuscripts+ sorting scheme.
+\end{release}
+
+\begin{release}{2.4.0}{2016-09-25}
+ \item Also works for anonymous \bibtype{inreference}, \bibtype{bookinreference} and \bibtype{bookininreference}.
+ \item Fix bug added by version 2.2.2 when using the \emph{biblatex-realauthor} package.
+\end{release}
+
+\begin{release}{2.3.0}{2016-09-08}
+ \item Add compatibility with \bibtype{bookininbook} and \bibtype{bookininarticle} of \emph{biblatex-bookinbook} package.
+\end{release}
+
+\begin{release}{2.2.3}{2016-06-27}
+ \item Fix bug added on v.~2.2.2 when using prenote argument.
+ \end{release}
+
+\begin{release}{2.2.2a}{2016-06-21}
+ \item Fix typo in handbook.
+ \end{release}
+
+\begin{release}{2.2.2}{2016-06-18}
+ \item Fix \biblatex\ bug with \expandafter\cs\expandafter{\prm{xx}cites} command when using anonymous works.
+ \item Fix bug added by version 2.0.0 when not using the \emph{biblatex-realauthor} package.
+ \end{release}
+\begin{release}{2.2.1}{2016-06-06}
+ \item Fix compatibility with biblatex < 3.4, broken by v. 2.2.0
+\end{release}
+\begin{release}{2.2.0}{2016-06-05}
+ \item Takes account of the \bibfield{realeditor} field of the \emph{biblatex-realauthor} package~2.4.0 and later.
+ \item Adds tools to prevent inherinting name from main entry \see{noinherit}.
+\end{release}
+
+\begin{release}{2.1.0}{2014-10-30}
+\item Coming back, and improve, the \verb+anonymous+ sorting scheme.
+\end{release}
+
+\begin{release}{2.0.0}{2014-10-27}
+\item Use less complex code, and more \enquote{biblatex friendly} code to suppress editor and translator.
+\item Compatibility with \bibtype{bookinincollection} type.
+\end{release}
+
+\begin{release}{1.0.0}{2014-07-23}
+\item First public release.
+\end{release}
+\end{changelog}
+\end{document}
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/latexmkrc b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/latexmkrc
new file mode 100644
index 0000000000..d6cfc714fa
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/latexmkrc
@@ -0,0 +1,2 @@
+$pdflatex = "xelatex --shell-escape %S";
+$pdf_mode = "1";
diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/makefile b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/makefile
new file mode 100644
index 0000000000..1f945315a7
--- /dev/null
+++ b/macros/latex/contrib/biblatex-contrib/biblatex-anonymous/makefile
@@ -0,0 +1,12 @@
+FILES = *sty *tex *pdf README makefile latexmkrc
+%.pdf: %.tex latexmkrc
+ latexmk *tex
+dist: biblatex-anonymous.pdf
+ @$(RM) ../biblatex-anonymous.zip
+ rm -rf biblatex-anonymous
+ mkdir biblatex-anonymous
+ ln $(FILES) biblatex-anonymous
+ zip -r ../biblatex-anonymous.zip biblatex-anonymous
+
+clean:
+ @$(RM) *.pdf *.toc *.aux *.out *.fdb_latexmk *.log *.bbl *.bcf *.blg *run.xml *.synctex.gz*