diff options
author | Karl Berry <karl@freefriends.org> | 2013-04-13 22:55:37 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-04-13 22:55:37 +0000 |
commit | bf689f9057fa5b4deab72d085b6e483c480aefa7 (patch) | |
tree | 3ca895a3099338054fe382a6efe2c7d7ba8c2619 /Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx | |
parent | a3027590d416e99da1de28c8669669614850c97e (diff) |
biblatex-philosophy (13apr13)
git-svn-id: svn://tug.org/texlive/trunk@29893 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx | 148 |
1 files changed, 103 insertions, 45 deletions
diff --git a/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx b/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx index 1284c6900ec..101683970a8 100644 --- a/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx +++ b/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx @@ -93,7 +93,7 @@ %<verbose-cbx>\ProvidesFile{philosophy-verbose.cbx} %<italian-lbx>\ProvidesFile{italian-philosophy.lbx} %<english-lbx>\ProvidesFile{english-philosophy.lbx} - [2013/03/30 v0.8d valbusa beta] + [2013/04/13 v0.8e valbusa beta] %<*driver> \documentclass{ltxdoc} @@ -182,7 +182,7 @@ %</driver> % \fi % -% \CheckSum{2994} +% \CheckSum{3040} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -200,6 +200,7 @@ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % +% \changes{v0.8e}{2013/04/13}{Improved \opt{relatedformat} option for cascading entries. Implemented cross-referencing mechanism for \bibtype{inproceedings} entries. Improved \cmd{ccite} command. Changed the values for the \bibfield{entrysubtype} from \bibfield{classical} to \bibfield{classic}. Added \opt{nodate} package option.} % \changes{v0.8d}{2013/03/30}{Fixed some bugs related to \cmd{DeclareDriverSourcemap}, \cmd{ccite}, and \bibtype{review} entry type} % \changes{v0.8c}{2013/03/27}{Removed \sty{biber.conf} configuration file. Added internal \file{biber} settings with \cmd{DeclareDriverSourcemap} command. Added \bibfield{trans-} field alias} % \changes{v0.8b}{2013/03/22}{Added \sty{biber.conf} configuration file} @@ -483,11 +484,11 @@ % % \fielditem{entrysubtype}{literal} % This feature is active only for the \sty{classic} and \sty{modern} styles. -% With the \opt{classical} value the citation commands will produce an +% With the \opt{classic} value the citation commands will produce an % author-title label. This is useful for citing works from classical antiquity, such as \cite[\lefthand][]{aristotle:physics}: %\begin{verbatim} %@book{aristotle:physics, -% entrysubtype = {classical}, +% entrysubtype = {classic}, % author = {Aristotle}, % title = {Physics}, % ... @@ -636,6 +637,7 @@ %\printbibliography[restoreclassic] %\end{verbatim} %It restores the \sty{classic} style in a document typeset using the \sty{modern} style. It is useful to compose a ``Web List'' like that at the end of this document (active only for the \sty{philosophy-modern}). +%\boolitem[true]{nodate} Prints the \texttt{nodate} string when \bibfield{year} or \bibfield{date} is missing. % %\subsubsection{\sty{philosophy-verbose}}\label{sec:options-verbose} % @@ -765,7 +767,7 @@ %The treatment of the classical works and other writings with uncertain or omitted date is particularly difficult and inevitably imposes some choices. % %If there is a critical edition you should cite it directly, such as \lefthand\textcite{heidegger:sz}. If you do not like this anachronistic label you may use the \bibfield{shorthand} field, such as \lefthand\textcite{kant:kpv}. -% Note that a ``shorthand intro'' is automatically printed when the entry is cited for the first time and omitted afterwards. To turn off this capability load the option \opt{shorthandintro=false}. In this case you will need a list of shorthands (\cmd{printshorthands} command). If you do not like these solutions you can use the \bibfield{entrysubtype} field with \texttt{classical} value (see section \ref{sec:specific-fields}) or the \cmd{sdcite} command (section \ref{sec:commands:citations}). +% Note that a ``shorthand intro'' is automatically printed when the entry is cited for the first time and omitted afterwards. To turn off this capability load the option \opt{shorthandintro=false}. In this case you will need a list of shorthands (\cmd{printshorthands} command). If you do not like these solutions you can use the \bibfield{entrysubtype} field with \texttt{classic} value (see section \ref{sec:specific-fields}) or the \cmd{sdcite} command (section \ref{sec:commands:citations}). % % % @@ -1151,7 +1153,7 @@ {\textsc{\Rn{#1}}~\bibstring{edition}}% {\mkbibordedition{#1}~\bibstring{edition}}}}} {#1}}%\isdot?? -\DeclareFieldFormat{related:translatedas}{% +\DeclareFieldFormat{related}{% \ifdefstring{\bbx@relatedformat}{parens}% {\mkpureparens{#1}}% {\ifdefstring{\bbx@relatedformat}{brackets}% @@ -1555,13 +1557,11 @@ \newbibmacro*{commarelateddate}{% \setunit*{\addcomma\space}% \printdate} - -\DeclareCiteCommand{\relatedcite} - {}% - {\usedriver - {\DeclareNameAlias{sortname}{default}% - % trucco per modificare due righe in ogni driver - % e togliere l'autore/curatore nelle voci 'related' +% \end{macrocode} +% A trick to delete the author/editor list for related +% entries and \cmd{ccite} command: +% \begin{macrocode} +\newbibmacro*{related:clearauthors}{% \renewbibmacro*{author/translator+others}{\usebibmacro{bbx:savehash}}% \renewbibmacro*{author/editor+others/translator+others}{\usebibmacro{bbx:savehash}}% \renewbibmacro*{editor+others}{\usebibmacro{bbx:savehash}}% @@ -1569,7 +1569,13 @@ \renewbibmacro*{author/editor}{\usebibmacro{bbx:savehash}}% \renewbibmacro*{author}{\usebibmacro{bbx:savehash}}% \renewbibmacro*{editor}{\usebibmacro{bbx:savehash}}% - \renewcommand*{\labelnamepunct}{}% + \renewcommand*{\labelnamepunct}{}} + +\DeclareCiteCommand{\relatedcite} + {}% + {\usedriver + {\DeclareNameAlias{sortname}{default}% + \usebibmacro{related:clearauthors}% \renewbibmacro*{relateddate}{% \setunit*{\addspace}\printdate}% \renewbibmacro*{commarelateddate}{% @@ -1578,16 +1584,15 @@ {}% {}% -\newbibmacro*{related:translatedas}[1]{% +\renewbibmacro*{related:default}[1]{% \togglefalse{cbx:scauthorscite}% \togglefalse{bbx:annotation}% \iffieldundef{relatedstring}% {\bibstring{translationas}\space}% {\setunit{\bibstring{translationas}\space}}% + \renewcommand{\mkpureparens}{}% + \renewcommand*{\mkbibbrackets}{}% \relatedcite{\thefield{related}}} - -\renewbibmacro*{related:default}{% - \usebibmacro{related:translatedas}} % \end{macrocode} % \subsubsection{Bibliography drivers} % \begin{macrocode} @@ -1874,6 +1879,16 @@ \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% + \iffieldundef{xref}% + {\iffieldundef{crossref}{\usebibmacro{inproceedings:full}}% + {\bbx@crossref@incollection{\thefield{crossref}}% + \newunit\newblock + \usebibmacro{crossrefdata}}}% + {\bbx@crossref@incollection{\thefield{xref}}% + \newunit\newblock + \usebibmacro{xrefdata}}} + +\newbibmacro*{inproceedings:full}{% \usebibmacro{maintitle+booktitle}% \newunit\newblock \usebibmacro{event+venue+date}% @@ -1903,7 +1918,7 @@ \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock - \usebibmacro{addendum+pubstate}% + \usebibmacro{addendum+pubstate:article-inbook-incoll}% \setunit{\addsemicolon\space}\newblock \usebibmacro{related}% \newunit\newblock @@ -2247,12 +2262,12 @@ \usebibmacro{byeditor+others}% \newunit\newblock \printfield{edition}% - \newunit +% \newunit % \iffieldundef{maintitle} % {\printfield{volume}% % \printfield{part}} % {}% -% \newunit + \newunit \printfield{volumes}% \newunit\newblock \usebibmacro{series+number}% @@ -2282,8 +2297,6 @@ \printfield{part}} {}% \newunit\newblock - \printfield{note}% - \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} @@ -2291,8 +2304,6 @@ {}% \newunit\newblock \usebibmacro{doi+eprint+url}% - \newunit\newblock - \usebibmacro{addendum+pubstate:article-inbook-incoll}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{related}% \newunit\newblock @@ -2432,11 +2443,15 @@ \RequireBibliographyStyle{philosophy-standard} \newtoggle{bbx:square} +\newtoggle{bbx:nodate} \DeclareBibliographyOption{square}[true]{% \settoggle{bbx:square}{#1}} +\DeclareBibliographyOption{nodate}[true]{% + \settoggle{bbx:nodate}{#1}} \ExecuteBibliographyOptions{% + nodate = true, uniquename = false, pagetracker = true, singletitle = false, @@ -2492,10 +2507,16 @@ \newbibmacro*{date+extrayear:crossref}{% \begingroup% \clearfield{month}% - \iffieldundef{labelyear} - {\printtext[parens]{\midsentence\bibstring{nodate}}} + \ifboolexpr{ + test {\iffieldundef{date}} + and + test {\iffieldundef{year}} + }% + {\iftoggle{bbx:nodate}{\printtext[parens]{% + \midsentence\bibstring{nodate}}}{}} {\printtext[parens]{\printdateextra}}% \endgroup}% +\newbibmacro*{date+extrayear}{}% } \AtBeginDocument{% @@ -2506,6 +2527,11 @@ \setcounter{maxnamesincross}{\value{maxnames}}% \setcounter{minnamesincross}{\value{minnames}}% } + +\AtEveryBibitem{% +\iffieldequalstr{entrysubtype}{classic}{% + \togglefalse{bbx:nodate}}} + % \end{macrocode} % \subsubsection{New macros} % @@ -2539,8 +2565,13 @@ \renewbibmacro*{date+extrayear}{% \begingroup% \clearfield{month}% - \iffieldundef{labelyear} - {\printtext[parens]{\midsentence\bibstring{nodate}}} + \ifboolexpr{ + test {\iffieldundef{date}} + and + test {\iffieldundef{year}} + }% + {\iftoggle{bbx:nodate}{\printtext[parens]{% + \midsentence\bibstring{nodate}}}{}} {\printtext[parens]{\printdateextra}}% \endgroup}% % \end{macrocode} @@ -2683,8 +2714,13 @@ \begingroup% \clearfield{month}% \makebox[\bibhang][r]{\printtext{% - \iffieldundef{labelyear}% - {\printtext{\midsentence\bibstring{nodate}}}% + \ifboolexpr{ + test {\iffieldundef{date}} + and + test {\iffieldundef{year}} + }% + {\iftoggle{bbx:nodate}{\printtext{% + \midsentence\bibstring{nodate}}}{}}% {\printtext{\printdateextra}}% \hskip\yeartitle}}% \endgroup}% @@ -2776,8 +2812,13 @@ \newbibmacro*{classic:date+extrayear}{% \begingroup% \clearfield{month}% - \iffieldundef{labelyear} - {\printtext[parens]{\midsentence\bibstring{nodate}}}% + \ifboolexpr{ + test {\iffieldundef{date}} + and + test {\iffieldundef{year}} + }% + {\iftoggle{bbx:nodate}{\printtext[parens]{% + \midsentence\bibstring{nodate}}}{}}% {\printtext[parens]{% \printfield{labelyear}% \printfield{extrayear}}}% @@ -2793,8 +2834,13 @@ \renewbibmacro*{date+extrayear}{% \begingroup% \clearfield{month}% - \iffieldundef{labelyear} - {\printtext[parens]{\midsentence\bibstring{nodate}}}% + \ifboolexpr{ + test {\iffieldundef{date}} + and + test {\iffieldundef{year}} + }% + {\iftoggle{bbx:nodate}{\printtext[parens]{% + \midsentence\bibstring{nodate}}}{}}% {\printtext[parens]{\printdateextra}}% \endgroup}% \renewbibmacro*{author}{% @@ -2936,7 +2982,8 @@ % \begin{macrocode} \DeclareCiteCommand{\bbx@crossref@inbook} {}% - {\ifthenelse{\value{listtotal}=2}% + {\ifciteseen{% + \ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}% \setunit*{\addcomma\space}\printtext[bibhyperlink]{% @@ -2944,11 +2991,15 @@ \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}% {\setunit{\addspace\midsentence}}% \bibstring{cited}}}% + {\usedriver{% + \DeclareNameAlias{sortname}{default}}% + {\thefield{entrytype}}}}% {}% {}% \DeclareCiteCommand{\bbx@crossref@incollection} {}% - {\ifthenelse{\value{listtotal}=2}% + {\ifciteseen{% +\ifthenelse{\value{listtotal}=2}% {\printnames[][-\value{maxnamesincross}]{labelname}}% {\printnames[][-\value{minnamesincross}]{labelname}}% \setunit{\addspace}% @@ -2958,6 +3009,9 @@ \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}% {\setunit{\addspace\midsentence}}% \bibstring{cited}}}% + {\usedriver{% + \DeclareNameAlias{sortname}{default}}% + {\thefield{entrytype}}}}% {}% {}% % \end{macrocode} @@ -3010,7 +3064,7 @@ %%%% \newcommand{\switchclass}[2]{% - \iffieldequalstr{entrysubtype}{classical}% + \iffieldequalstr{entrysubtype}{classic}% {\usebibmacro{#1}}% {\usebibmacro{#2}}} % \end{macrocode} @@ -3221,7 +3275,7 @@ \renewbibmacro*{cite:shorthand}{% \printtext[bibhyperref]{\printfield{shorthand}}} % \end{macrocode} -% If the field \bibfield{entrysubtype} equals to \texttt{classical} +% If the field \bibfield{entrysubtype} equals to \texttt{classic} % the citation commands will use the author-title macros: % \begin{macrocode} \renewbibmacro*{cite:init}{% @@ -3308,7 +3362,7 @@ {\usebibmacro{textcite:postnote}} % \end{macrocode} % This command is now deprecated because it is substituted by -% the \bibfield{entrysubtype=classical} mechanism: +% the \bibfield{entrysubtype=classic} mechanism: % \begin{macrocode} \DeclareCiteCommand{\sdcite} {\boolfalse{citetracker}% @@ -3440,22 +3494,26 @@ {\thefield{entrytype}}}% \usebibmacro{shorthandintro}} -\newbibmacro*{cite:ccite}{% +\newbibmacro*{ccite:cite}{% +\usebibmacro{related:clearauthors}% \usebibmacro{cite:citepages}% \global\togglefalse{cbx:fullcite}% \global\togglefalse{cbx:loccit}% \bibhypertarget{cite\the\value{instcount}}{% - \iffieldundef{shorthand} + \ifciteseen + {\iffieldundef{shorthand} {\usebibmacro{cite:title}% - \usebibmacro{cite:save}}% - {\usebibmacro{cite:shorthand}}}} + \usebibmacro{cite:save}} + {\usebibmacro{cite:shorthand}}} + {\usebibmacro{cite:full}% + \usebibmacro{cite:save}}}} % \end{macrocode} % \subsubsection{Citation commands} % \begin{macrocode} \DeclareCiteCommand{\ccite} {\usebibmacro{prenote}}% {\usebibmacro{citeindex}% - \usebibmacro{cite:ccite}} + \usebibmacro{ccite:cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} |