From 685ba816f3dafba3b41b4679ab0a66524b04aae5 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 19 Oct 2015 22:23:55 +0000 Subject: biblatex-opcit-booktitle (18oct15) git-svn-id: svn://tug.org/texlive/trunk@38671 c570f23f-e606-0410-a88d-b1316a301751 --- .../biblatex-opcit-booktitle-example.pdf | Bin 20105 -> 20634 bytes .../biblatex-opcit-booktitle-example.tex | 1 + .../documentation/biblatex-opcit-booktitle.pdf | Bin 70683 -> 71936 bytes .../documentation/biblatex-opcit-booktitle.tex | 16 ++- .../biblatex-opcit-booktitle.sty | 140 ++++++++++++++++++--- 5 files changed, 137 insertions(+), 20 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.pdf b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.pdf index 0e3059af2f2..2e6ef0a4316 100644 Binary files a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.pdf and b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.tex b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.tex index 9c4e11394e2..3d190a3f4ee 100644 --- a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.tex +++ b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle-example.tex @@ -5,6 +5,7 @@ \usepackage[bibstyle=verbose,citestyle=verbose-trad2,citepages=omit]{biblatex} \usepackage{biblatex-opcit-booktitle} \bibliography{biblatex-opcit-booktitle-example.bib} +\usepackage{hyperref} \renewcommand{\mkibid}[1]{\emph{#1}} \begin{document} diff --git a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.pdf b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.pdf index 52341461fae..bc9a3e5cdc4 100644 Binary files a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.pdf and b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.pdf differ diff --git a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.tex b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.tex index 21b7f35bdea..f64025285fa 100644 --- a/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.tex +++ b/Master/texmf-dist/doc/latex/biblatex-opcit-booktitle/documentation/biblatex-opcit-booktitle.tex @@ -10,7 +10,7 @@ \usepackage{pifont} \usepackage{minted} \setminted{breaklines} - +\hypersetup{citecolor=black} % Usefull commands \newcommand{\biblatex}{biblatex\xspace} \pretocmd{\bibfield}{\sloppy}{}{} @@ -22,8 +22,8 @@ subtitle={Abbreviated references}, email={maieul maieul net}, author={Maïeul Rouquette}, - revision={1.1.1}, - date={2015/07/02}, + revision={1.2.0}, + date={2015/10/18}, url={https://git.framasoft.org/maieul/biblatex-opcit-booktitle}} % biblatex @@ -160,7 +160,7 @@ by: \subsection{Customization} -You can change the \verb+inbook:rel+ bibliographic driver to customize the way the main title is printed. +You can change the \verb+inbook:rel:verbose-trad-xxx+ bibliographic driver to customize the way the main title is printed, \verb+xxx+ meaning 1, 2, or 3, depending of you specific citation style. \section{Credits} @@ -175,6 +175,14 @@ All issues can be submitted, in French or English, in the Framasoft issues page\ \begin{changelog} + +\begin{release}{1.2.0}{2015-10-18} +\item Fix bug with internal hyperref. +\item Fix shorter form to be consistent with verbose-trad1 and verbose-trad2. +\item Use short form of name (idem or just last name, depending of style). +\item Change bibliography driver name. If you have customized your bibliographic driver, you should adapt name: \verb+inbook:rel:verbose-trad-1+ or \verb+inbook:rel:verbose-trad-2+ or \verb+inbook:rel:verbose-trad-3+. +\end{release} + \begin{release}{1.1.1}{2015-07-02} \item Fix spurious space. \end{release} diff --git a/Master/texmf-dist/tex/latex/biblatex-opcit-booktitle/biblatex-opcit-booktitle.sty b/Master/texmf-dist/tex/latex/biblatex-opcit-booktitle/biblatex-opcit-booktitle.sty index 0a1f524a728..a373b4927c1 100644 --- a/Master/texmf-dist/tex/latex/biblatex-opcit-booktitle/biblatex-opcit-booktitle.sty +++ b/Master/texmf-dist/tex/latex/biblatex-opcit-booktitle/biblatex-opcit-booktitle.sty @@ -15,9 +15,16 @@ % % The Current Maintainer of this work is Maïeul Rouquette \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{biblatex-opcit-booktitle}[2015/07/02 v1.1.1 Manage op. cit. when using subentry] +\ProvidesPackage{biblatex-opcit-booktitle}[2015/08/30 v1.2.0 Manage op. cit. when using subentry] \RequirePackage{xpatch} +\DeclareFieldFormat{bibhypertarget:crossref}{% + \bibhypertarget{\iffootnote{f}{t}:\cbx@resetcount:\thefield{crossref}}{#1}} + +\DeclareFieldFormat{bibhyperlink:crossref}{% + \bibhyperlink{\iffootnote{f}{t}:\cbx@resetcount:\thefield{crossref}}{#1}} + + \newbibmacro*{cite:seen:related}{% {\xifinlistcs{\thefield{crossref}}{blx@bsee@\the\c@refsection}% {}% @@ -28,6 +35,7 @@ {#2}% {#1}} +% verbose-trad-1 and verbose-trad2 \xpatchbibmacro{cite}% {\usebibmacro{cite:full}% \usebibmacro{cite:save}}% @@ -35,7 +43,12 @@ {}% {}% - +% verbose-trad3. Not that lines must be applied AFTER the previous one +\xpatchbibmacro{cite}% + {\usebibmacro{cite:full}}% + {\usebibmacro{cite:test:ifrelated:verbose-trad3}}% + {}% + {}% \newbibmacro*{cite:test:ifrelated}% {\ifboolexpr {% test {\iffieldundef{crossref}}% @@ -46,10 +59,27 @@ {\usebibmacro{cite:full}% \usebibmacro{cite:save}}% {\ifrelatedunseen% - {\usebibmacro{cite:seen:related}% + {\printtext[bibhypertarget:crossref]{% + \usebibmacro{cite:seen:related}% \usebibmacro{cite:full}% - \usebibmacro{cite:save}}% + \usebibmacro{cite:save}}}% {\usebibmacro{related:info}}}} + +\newbibmacro*{cite:test:ifrelated:verbose-trad3}% + {\ifboolexpr {% + test {\iffieldundef{crossref}}% + or not (test {\ifentrytype{inbook}}% + or test {\ifentrytype{incollection}}% + or test {\ifentrytype{inproceedings}}% + or test {\ifentrytype{bookinbook}})}% + {\usebibmacro{cite:full}% + }% + {\ifrelatedunseen% + {\printtext[bibhypertarget:crossref]{% + \usebibmacro{cite:seen:related}% + \usebibmacro{cite:full}% + }}% + {\usebibmacro{related:info}}}} \newbibmacro*{related:info}{% % Here an hack to use the short form of the booktitle without recurring to a .dbx file in order to define new fields (because recurring to a .dbx file for such feature is complex for a little feature) @@ -61,16 +91,21 @@ }% {}% \usebibmacro{cite:full:citepages}% - \usedriver% + \printtext[bibhypertarget]{\usedriver% {\DeclareNameAlias{sortname}{default}}% - {inbook:rel}% + {inbook:rel:\blx@cbxfile}}% } -\DeclareBibliographyDriver{inbook:rel}{% +\DeclareBibliographyDriver{inbook:rel:verbose-trad1}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% - \usebibmacro{author/translator+others}% - \setunit{\labelnamepunct}\newblock + \ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}% + {\usebibmacro{cite:idem}}% + {\ifnameundef{labelname}% + {}% + {\usebibmacro{cite:name}}% + }% + \newblock% \usebibmacro{title}% \newunit \printlist{language}% @@ -78,16 +113,89 @@ \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% + \printtext[bibhyperlink:crossref]{% \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit% + \iffieldundef{maintitle}% + {\printfield{volume}% + \printfield{part}} + {}% + }% + \newunit\newblock + \usebibmacro{chapter+pages}% \newunit\newblock - \usebibmacro{byeditor+others}% - \newunit% - \iffieldundef{maintitle}% - {\printfield{volume}% - \printfield{part}} + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} {}% - \newunit% - \bibstring[\mkibid]{opcit}% + \usebibmacro{finentry}} + + +\DeclareBibliographyDriver{inbook:rel:verbose-trad2}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \ifthenelse{\ifciteidem\AND\NOT\boolean{cbx:noidem}}% + {\usebibmacro{cite:idem}}% + {\usebibmacro{author/translator+others}\setunit{\labelnamepunct}}% + \newblock% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \printtext[bibhyperlink:crossref]{% + \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit% + \iffieldundef{maintitle}% + {\printfield{volume}% + \printfield{part}} + {}% + \newunit% + \bibstring[\mkibid]{opcit}% + }% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit\newblock + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inbook:rel:verbose-trad3}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \printnames{labelname}% + \setunit*{\nametitledelim}% + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \printtext[bibhyperlink:crossref]{% + \usebibmacro{maintitle+booktitle}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit% + \iffieldundef{maintitle}% + {\printfield{volume}% + \printfield{part}} + {}% + }% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock -- cgit v1.2.3