From de8e68502f2756ea9ec69667d4ceb3da26cea84d Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 14 Jan 2015 22:23:55 +0000 Subject: biblatex-philosophy (13jan15) git-svn-id: svn://tug.org/texlive/trunk@36056 c570f23f-e606-0410-a88d-b1316a301751 --- .../biblatex-philosophy/biblatex-philosophy.dtx | 172 ++++++++++++--------- 1 file changed, 103 insertions(+), 69 deletions(-) (limited to 'Master/texmf-dist/source') 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 5372a555a0f..b03c1462bd1 100644 --- a/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx +++ b/Master/texmf-dist/source/latex/biblatex-philosophy/biblatex-philosophy.dtx @@ -97,7 +97,7 @@ %\ProvidesFile{italian-philosophy.lbx} %\ProvidesFile{english-philosophy.lbx} %<*standard-bbx|classic-bbx|modern-bbx|verbose-bbx|classic-cbx|modern-cbx|verbose-cbx|italian-lbx|english-lbx> - [2014/03/28 v0.9f valbusa beta] + [2015/01/14 v0.9h valbusa beta] % %<*driver> \documentclass{ltxdoc} @@ -265,7 +265,7 @@ % % \fi % -% \CheckSum{3374} +% \CheckSum{3394} % % \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 @@ -283,6 +283,7 @@ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % +% \changes{v0.9h}{2015/01/14}{New option \opt{lowscauthors}. Corrected some bugs. Updated documentation.} % \changes{v0.9g}{2014/12/12}{Added localization module for spanish. Corrected a bug in \bibtype{inbook} and \bibtype{incollection} entries when using \bibfield{crossref} field. Updated documentation.} % \changes{v0.9f}{2014/03/28}{Updated documentation. Corrected a bug in the \opt{volnumformat} option.} % \changes{v0.9e}{2014/02/12}{Maintenance release. Updated documentation.} @@ -676,6 +677,10 @@ %\boolitem[false]{scauthorscite} %Same as the previous, but only for the citations. % +%\boolitem[false]{lowscauthors} +% Prints the initials of the names in lowercase small capitals. +% For example you will obtain \textsc{donald e. knuth} instead of \textsc{Donald E. knuth}. If you need the uppercase for some specific entries use the \cmd{MakeUppercase} command. +% %\optitem[publocyear]{publocformat}{\opt{publocyear}, \opt{locpubyear}, \opt{loccolonpub}} % This option provides three styles for typesetting the ``publisher/location/date'' block. % It is active also for the related entry (see above) and for the \bibfield{orig-}fields (see section \ref{sec:origfields}). @@ -843,7 +848,7 @@ % %\section{New lengths}\label{sec:lengths} % -% +% \enlargethispage{-2\baselineskip} % %The new lengths described in this section are defined only for the \sty{modern} style. For the other customizable lengths see the \sty{biblatex} documentation \parencite{lehman:biblatex}. % @@ -860,9 +865,7 @@ % %The \sty{modern} style redefines also the following \sty{biblatex} lengths: %\begin{ltxsyntax} -% %\lenitem{bibnamesep} The vertical space between two blocks of authors. -% %\lenitem{bibitemsep} The vertical space between the individual entries in the bibliography. % %\lenitem{bibhang} The hanging indentation of the bibliography. @@ -1077,6 +1080,7 @@ \newtoggle{bbx:scauthorsbib} \newtoggle{bbx:inbeforejournal} \newtoggle{bbx:classical} +\newtoggle{bbx:lowscauthors} \DeclareBibliographyOption{annotation}[true]{% \settoggle{bbx:annotation}{#1}} @@ -1090,6 +1094,10 @@ \settoggle{bbx:inbeforejournal}{#1}} \DeclareBibliographyOption{classical}[true]{% \settoggle{bbx:classical}{#1}} +\DeclareBibliographyOption{lowscauthors}[true]{% + \settoggle{bbx:lowscauthors}{#1}} + + \newcommand{\bbx@publocformat}{} \newcommand{\bbx@volnumformat}{} @@ -1117,6 +1125,7 @@ \renewcommand{\bbx@origfields}{origed}} \ExecuteBibliographyOptions{% + lowscauthors = false, publocformat = publocyear, annotation = false, library = true, @@ -1149,13 +1158,21 @@ % \end{macrocode} % \subsubsection{Name format} % \begin{macrocode} +\AtBeginDocument{% +\iftoggle{bbx:lowscauthors}% + {\newrobustcmd*{\mkbibsc}[1]{\textsc{\MakeLowercase{#1}}}}% + {\newrobustcmd*{\mkbibsc}[1]{\textsc{#1}}}% +\iftoggle{bbx:scauthors}{% + \toggletrue{bbx:scauthorsbib}% + \toggletrue{cbx:scauthorscite}}% +{}} \AtBeginBibliography{% \iftoggle{bbx:scauthorsbib}{% \DeclareNameFormat{sortname}{% -\renewcommand{\mkbibnamefirst}{\textsc}% -\renewcommand{\mkbibnamelast}{\textsc}% -\renewcommand{\mkbibnameprefix}{\textsc}% -\renewcommand{\mkbibnameaffix}{\textsc}% + \let\mkbibnamelast\mkbibsc% + \let\mkbibnamefirst\mkbibsc% + \let\mkbibnameprefix\mkbibsc% + \let\mkbibnameaffix\mkbibsc \ifnumequal{\value{listcount}}{1} {\iffirstinits {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}% @@ -1168,12 +1185,6 @@ {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}}% \usebibmacro{name:andothers}}}% {}}% - -\AtBeginDocument{% -\iftoggle{bbx:scauthors}{% - \toggletrue{bbx:scauthorsbib}% - \toggletrue{cbx:scauthorscite}}% -{}} % \end{macrocode} % \subsubsection{New internal commands} % \begin{macrocode} @@ -1186,7 +1197,7 @@ % in order to get pure parenthese for some specific fields % when using the \opt{square} option: % \begin{macrocode} -\newrobustcmd{\mkpureparens}[1]{% +\newrobustcmd*{\mkpureparens}[1]{% \begingroup \blx@blxinit \blx@setsfcodes @@ -1704,7 +1715,7 @@ \iffieldundef{relatedstring}% {\bibstring{translationas}\space}% {\setunit{\bibstring{translationas}\space}}% - \renewcommand{\mkpureparens}{}% + \renewcommand*{\mkpureparens}{}% \renewcommand*{\mkbibbrackets}{}% \relatedcite{\thefield{related}}} % \end{macrocode} @@ -1880,6 +1891,7 @@ \usebibmacro{finentry}} \DeclareBibliographyDriver{inbook}{% +\togglefalse{cbx:scauthorscite}% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% @@ -1941,6 +1953,7 @@ \usebibmacro{finentry}} \DeclareBibliographyDriver{incollection}{% +\togglefalse{cbx:scauthorscite}% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% @@ -2000,6 +2013,7 @@ \usebibmacro{finentry}} \DeclareBibliographyDriver{inproceedings}{% +\togglefalse{cbx:scauthorscite}% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% @@ -3192,11 +3206,53 @@ % \end{macrocode} % \subsubsection{Internal commands for crossreferences} % \begin{macrocode} +\newbibmacro*{nodash:author}{% + \ifboolexpr{% + test \ifuseauthor + and + not test {\ifnameundef{author}} + }% + {\printnames{author}% + \iffieldundef{nameaddon}{}% + {\setunit{\addspace}% + \printtext[brackets]{\printfield{nameaddon}}}% +\setunit{\addcomma\space}% + \usebibmacro{authorstrg}}% + {\global\undef\bbx@lasthash}} + +\newbibmacro*{nodash:editor+others}{% + \usebibmacro{nodash:bbx:editor}{editor+othersstrg}}% +\newbibmacro*{nodash:bbx:editor}[1]{% + \ifboolexpr{% + test \ifuseeditor + and + not test {\ifnameundef{editor}} + }% + {\printnames{editor}% +\setunit{\addspace}% + \usebibmacro{#1}% + \clearname{editor}}% + {\global\undef\bbx@lasthash}} + +\newbibmacro*{nodash:author/editor+others/translator+others}{% + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } + {\usebibmacro{nodash:author}} + {\ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } + {\usebibmacro{nodash:editor+others}} + {\usebibmacro{translator+others}}}} + \newbibmacro*{usedriver:book}{% -\renewbibmacro*{bbx:savehash}{}% \usebibmacro{bibindex}% \usebibmacro{begentry}% - \usebibmacro{author/editor+others/translator+others}% + \usebibmacro{nodash:author/editor+others/translator+others}% \setunit{\labelnamepunct}\newblock \usebibmacro{maintitle+title}% \newunit @@ -3241,10 +3297,9 @@ \usebibmacro{pageref}% } \newbibmacro*{usedriver:collection}{% -\renewbibmacro*{bbx:savehash}{}% \usebibmacro{bibindex}% \usebibmacro{begentry}% - \usebibmacro{editor+others}% + \usebibmacro{nodash:editor+others}% \setunit{\labelnamepunct}\newblock \usebibmacro{maintitle+title}% \newunit @@ -3318,40 +3373,6 @@ \usebibmacro{usedriver:collection}}}% {}% {}% -%\DeclareCiteCommand{\bbx@crossref@inbook}% -% {}% -% {\ifciteseen{% -% \ifthenelse{\value{listtotal}=2}% -% {\printnames[][-\value{maxnamesincross}]{labelname}}% -% {\printnames[][-\value{minnamesincross}]{labelname}}% -% \setunit*{\addcomma\space}\printtext{% -% \printfield[citetitle]{labeltitle}% -% \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}% -% {\setunit{\addspace\midsentence}}% -% \bibstring{cited}}}% -% {\usedriver{% -% \DeclareNameAlias{sortname}{default}}% -% {\thefield{entrytype}}}}% -% {}% -% {}% -%\DeclareCiteCommand{\bbx@crossref@incollection}% -% {}% -% {\ifciteseen{% -%\ifthenelse{\value{listtotal}=2}% -% {\printnames[][-\value{maxnamesincross}]{labelname}}% -% {\printnames[][-\value{minnamesincross}]{labelname}}% -% \setunit{\addspace}% -% \usebibmacro{editorstrg}% -% \setunit*{\addcomma\space}\printtext{% -% \printfield[citetitle]{labeltitle}% -% \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}% -% {\setunit{\addspace\midsentence}}% -% \bibstring{cited}}}% -% {\usedriver{% -% \DeclareNameAlias{sortname}{default}}% -% {\thefield{entrytype}}}}% -% {}% -% {}% % \end{macrocode} % \iffalse % @@ -3383,11 +3404,10 @@ \AtEveryCite{% \iftoggle{cbx:scauthorscite}% - {% - \renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}% - \renewcommand*{\mkbibnamefirst}[1]{\textsc{#1}}% - \renewcommand*{\mkbibnameprefix}[1]{\textsc{#1}}% - \renewcommand*{\mkbibnameprefix}[1]{\textsc{#1}}}% + {\let\mkbibnamelast\mkbibsc% + \let\mkbibnamefirst\mkbibsc% + \let\mkbibnameprefix\mkbibsc% + \let\mkbibnameaffix\mkbibsc} {}}% \DeclareNameFormat{labelname}{% \bibhyperref{% @@ -3814,10 +3834,10 @@ {}}% \iftoggle{cbx:scauthorscite}{% \DeclareNameFormat{labelname}{% -\renewcommand{\mkbibnamefirst}{\textsc}% -\renewcommand{\mkbibnamelast}{\textsc}% -\renewcommand{\mkbibnameprefix}{\textsc}% -\renewcommand{\mkbibnameaffix}{\textsc}% + \let\mkbibnamelast\mkbibsc% + \let\mkbibnamefirst\mkbibsc% + \let\mkbibnameprefix\mkbibsc% + \let\mkbibnameaffix\mkbibsc \ifcase\value{uniquename}% \usebibmacro{name:last}{#1}{#3}{#5}{#7}% \or @@ -3830,10 +3850,10 @@ \usebibmacro{name:andothers}}}{}}% \DeclareNameFormat{scdefault}{% -\renewcommand{\mkbibnamefirst}{\textsc}% -\renewcommand{\mkbibnamelast}{\textsc}% -\renewcommand{\mkbibnameprefix}{\textsc}% -\renewcommand{\mkbibnameaffix}{\textsc}% + \let\mkbibnamelast\mkbibsc% + \let\mkbibnamefirst\mkbibsc% + \let\mkbibnameprefix\mkbibsc% + \let\mkbibnameaffix\mkbibsc \iffirstinits {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}% {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}% @@ -3876,6 +3896,12 @@ {\thefield{entrytype}}}% \usebibmacro{shorthandintro}} +\renewbibmacro*{cite:idem}{% +\iftoggle{cbx:scauthorscite}{% + \bibstring[\mkbibsc]{idem\thefield{gender}}}{% + \bibstring[\mkibid]{idem\thefield{gender}}}% + \setunit{\nametitledelim}} + \newbibmacro*{ccite:cite}{% \usebibmacro{related:clearauthors}% \usebibmacro{cite:citepages}% @@ -3898,7 +3924,15 @@ \usebibmacro{ccite:cite}} {\multicitedelim} {\usebibmacro{cite:postnote}} - +\DeclareCiteCommand{\fullcite} + {\usebibmacro{prenote}} + {\usedriver + {\iftoggle{cbx:scauthorscite}% + {\DeclareNameAlias{sortname}{scdefault}}% + {\DeclareNameAlias{sortname}{default}}}% + {\thefield{entrytype}}} + {\multicitedelim} + {\usebibmacro{postnote}} % \end{macrocode} % \iffalse % -- cgit v1.2.3