From b2d29c83e3dbdd5e3c8e893771d5f5ac3c02e06b Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 2 Jul 2014 21:38:30 +0000 Subject: biblatex-bookinarticle (2jul14) git-svn-id: svn://tug.org/texlive/trunk@34502 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/biblatex-bookinarticle/README | 4 + .../documentation/biblatex-bookinarticle.pdf | Bin 0 -> 59464 bytes .../documentation/biblatex-bookinarticle.tex | 119 +++++++++++++++++++++ .../documentation/example.bib | 13 +++ .../documentation/example.pdf | Bin 0 -> 6160 bytes .../biblatex-bookinarticle/documentation/makefile | 10 ++ .../doc/latex/biblatex-bookinarticle/makefile | 19 ++++ .../biblatex-bookinarticle.sty | 72 +++++++++++++ Master/tlpkg/bin/tlpkg-ctan-check | 3 +- Master/tlpkg/tlpsrc/biblatex-bookinarticle.tlpsrc | 0 Master/tlpkg/tlpsrc/collection-bibtexextra.tlpsrc | 1 + 11 files changed, 240 insertions(+), 1 deletion(-) create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/README create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.pdf create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.tex create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.bib create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.pdf create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/makefile create mode 100644 Master/texmf-dist/doc/latex/biblatex-bookinarticle/makefile create mode 100644 Master/texmf-dist/tex/latex/biblatex-bookinarticle/biblatex-bookinarticle.sty create mode 100644 Master/tlpkg/tlpsrc/biblatex-bookinarticle.tlpsrc diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/README b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/README new file mode 100644 index 00000000000..6931cd05697 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/README @@ -0,0 +1,4 @@ +biblatex-bookinarticle +====================== + +Nouveau type biblatex: bookinarticle (et inarticle) diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.pdf b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.pdf new file mode 100644 index 00000000000..fa5a2580d0a Binary files /dev/null and b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.tex b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.tex new file mode 100644 index 00000000000..02eda54f455 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/biblatex-bookinarticle.tex @@ -0,0 +1,119 @@ +\documentclass{ltxdockit}[2011/03/25] +\usepackage{btxdockit} +\usepackage{fontspec} +\usepackage[mono=false]{libertine} +\usepackage{microtype} +\usepackage[american]{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={Book in article with biblatex}, + subtitle={New data type}, + email={maieul maieul net}, + author={Maïeul Rouquette}, + revision={1.0.0}, + date={02/07/2014}, + url={https://github.com/maieul/biblatex-bookinarticle}} + +% biblatex +\usepackage[citestyle=verbose]{biblatex} +\usepackage{biblatex-bookinarticle} +\addbibresource{example.bib} + +\begin{document} + +\printtitlepage +\tableofcontents + +\section{Introduction} + +In classical philology, it happens that ancient books are edited by modern scholar. So, when we refer to them, we have to not refer to the article, but, indeed, to the \emph{book which is in the article}. + +This package allows to create entry which's type is `bookinarticle`, and which are printed like this: + +\begin{quotation} +\cite{BHG226e} +\end{quotation} + + +\section{Use} + +\subsection{\bibtype{bookinarticle} Entry Type} + +A new entrytype is define: \bibtype{bookinarticle}. It use the standard fields of a \bibfield{article}, with those changes: + +\begin{itemize} + \item \bibfield{author} means the author of the ancient book. + \item \textbf{\bibfield{bookauthor} means the author of the article where the book is edited, e.g. the modern editor of the book}. + \item \bibfield{mainsubtitle} means the subtitle of the article where the book is edited. + \item \bibfield{maintitle} means the title of the article where the book is edited. In our example \enquote{Un mémoire anonyme sur saint Barnabé (BHG 226e)}. + \item \bibfield{pages} means the pages where the book is edited. + \item \bibfield{substitle} means the subtitle of the edited book. + \item \bibfield{title} means the title of the edited book. In our example \enquote{Mémoire sur le saint apôtre Barnabé}. + + +\end{itemize} + + +\subsection{Crossref's use} + +You can also use the Biber's crossref's facilities. The \bibfield{crossfield} of a \bibtype{bookinarticle} entry refering to a \bibtype{article} entry. The fields are inherited from \bibtype{article} following these rule: + +\begin{itemize} + \item \bibfield{author} becomes \bibfield{bookauthor}. + \item \bibfield{title} becomes \bibfield{maintitle}. + \item \bibfield{subtitle} becomes \bibfield{maisubtitle}. + +\end{itemize} + +See the following example: + +\inputminted{latex}{example.bib} + + + +\subsection{\bibtype{inarticle} Entry Type} + +The package also provides a \bibtype{inarticle} Entry Type, to show a section of an article with its own title. It's like \bibtype{bookinarticle}, but the \bibtype{title} field is printed with italic, and not with quotation marks. + +\subsection{Loading package} + +The package must be loaded after the \biblatex package: +\begin{minted}{latex} +\usepackage[…]{biblatex} +\usepackage{biblatex-bookinarticle} +\end{minted} + +\subsection{Customization} + +The way where \bibtype{bookinarticle} are printed is derivated from the \emph{verbose} bibliographic style. You can customize it by overriding bibliographic macros or bibliographic driver. Look at the file \verb+biblatex-bookinarticle+. + +\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}.}. + + +All issues can be submitted, in French or English, in the GitHub issues page\footnote{\url{https://github.com/maieul/biblatex-bookinarticle/issues}.}. + + +\section{Change history} + + +\begin{changelog} + + + +\begin{release}{1.0.0}{2014-07-02} +\item First public release. +\end{release} +\end{changelog} +\end{document} diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.bib b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.bib new file mode 100644 index 00000000000..e8f3e569342 --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.bib @@ -0,0 +1,13 @@ +@bookinarticle{BHG226e, + Crossref = {VanDeun1990}, + Pages = {326-335}, + Title = {Mémoire sur le saint apôtre Barnabé}} + +@article{VanDeun1990, + Author = {Van Deun, Peter}, + Journal = {Analecta Bollandiana}, + Number = {108}, + Pages = {323-335}, + Subtitle = {Édition et traduction}, + Title = {Un mémoire anonyme sur saint Barnabé (BHG 226e)}, + Year = {1990}} diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.pdf b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.pdf new file mode 100644 index 00000000000..0246d00877c Binary files /dev/null and b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/example.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/makefile b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/makefile new file mode 100644 index 00000000000..85ef2cfc1ad --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/documentation/makefile @@ -0,0 +1,10 @@ +all: *tex *bib + xelatex --shell-escape biblatex-bookinarticle.tex + xelatex --shell-escape biblatex-bookinarticle.tex + xelatex --shell-escape example.tex + biber example + xelatex --shell-escape example.tex + +clean:bookinarticle + $(MAKE) -C documentation clean + @$(RM) *.pdf *.toc *.aux *.out *.fdb_latexmk *.log *.bbl *.bcf *.blg *run.xml *.synctex.gz* diff --git a/Master/texmf-dist/doc/latex/biblatex-bookinarticle/makefile b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/makefile new file mode 100644 index 00000000000..6e51f82764d --- /dev/null +++ b/Master/texmf-dist/doc/latex/biblatex-bookinarticle/makefile @@ -0,0 +1,19 @@ +FILES = *.sty documentation makefile README + + +dist: all + rm -rf biblatex-bookinarticle + mkdir biblatex-bookinarticle + cp README *sty *makefile biblatex-bookinarticle + mkdir biblatex-bookinarticle/documentation + cp documentation/*tex documentation/*bib documentation/*pdf documentation/makefile biblatex-bookinarticle/documentation + $(RM) ../biblatex-bookinarticle.zip + zip -r ../biblatex-bookinarticle.zip biblatex-bookinarticle + + +clean: + $(MAKE) -C documentation clean + @$(RM) *.pdf *.toc *.aux *.out *.fdb_latexmk *.log *.bbl *.bcf *.blg *run.xml *.synctex.gz* + +all: documentation/biblatex-bookinarticle.tex documentation/example.bib + $(MAKE) -C documentation all \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/biblatex-bookinarticle/biblatex-bookinarticle.sty b/Master/texmf-dist/tex/latex/biblatex-bookinarticle/biblatex-bookinarticle.sty new file mode 100644 index 00000000000..de3dbe9471e --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-bookinarticle/biblatex-bookinarticle.sty @@ -0,0 +1,72 @@ +%% 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-bookinarticle}[2014/06/17 v1.0.0 Book in article with biblatex] + +% 1. The driver +\DeclareBibliographyDriver{inarticle}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \iffieldundef{author}{}{\setunit{\labelnamepunct}\newblock}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{bybookauthor}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{maintitle}% + \newunit\newblock + \usebibmacro{in:}% + \usebibmacro{journal+issuetitle}% + \newunit + \usebibmacro{byeditor+others}% + \newunit + \usebibmacro{note+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \usebibmacro{finentry}} + +% 2. The alias +\DeclareBibliographyAlias{bookinarticle}{inarticle} + +% 3. The formats + +\DeclareFieldFormat[inarticle]{title}{\mkbibquote{#1\isdot}} +\DeclareFieldFormat[inarticle,bookinarticle]{maintitle}{\mkbibquote{#1\isdot}} + + +%4. Inheritance + +\DeclareDataInheritance{article}{bookinarticle,inarticle}{ + \inherit{author}{bookauthor}% Il faudra modifier quand je saurais comment déclarer des nouveaux champs + \inherit{title}{maintitle}% + \inherit{subtitle}{mainsubtitle}% +} + +%5. Label name + +\DeclareLabelname[bookinarticle]{\field{author}} +\endinput \ No newline at end of file diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index bed693a7078..16a442d1cb9 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -74,7 +74,8 @@ my @TLP_working = qw( beebe begriff belleek bengali bera berenisadf besjournals betababel beton bez123 bezos bgreek bgteubner bguq bhcexam bib-fr bibarts biber bibhtml - biblatex biblatex-anonymous biblatex-apa biblatex-bwl + biblatex biblatex-anonymous biblatex-apa + biblatex-bookinarticle biblatex-bwl biblatex-caspervector biblatex-chem biblatex-chicago biblatex-dw biblatex-fiwi biblatex-gost biblatex-historian biblatex-ieee biblatex-juradiss diff --git a/Master/tlpkg/tlpsrc/biblatex-bookinarticle.tlpsrc b/Master/tlpkg/tlpsrc/biblatex-bookinarticle.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d diff --git a/Master/tlpkg/tlpsrc/collection-bibtexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-bibtexextra.tlpsrc index 42242409f4c..835c61e6d6b 100644 --- a/Master/tlpkg/tlpsrc/collection-bibtexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-bibtexextra.tlpsrc @@ -19,6 +19,7 @@ depend bibhtml depend biblatex depend biblatex-anonymous depend biblatex-apa +depend biblatex-bookinarticle depend biblatex-bwl depend biblatex-caspervector depend biblatex-chem -- cgit v1.2.3