summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-philosophy/philosophy-verbose.cbx
blob: 52bca74dca4901ec48319821d59c2441a5ce5311 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
% $Id: philosophy-verbose.cbx,v 0.8b 2012/05/06 valbusa beta $
%	Copyright 2009-2012 Ivan Valbusa. This package is author-maintained. 
%	Permission is granted to copy, distribute and/or modify this software under the 
%	terms of the LaTeX Project Public License, version 1.3c 
%	http://www.ctan.org/tex-archive/macros/latex/base/lppl.txt.

\ProvidesFile{philosophy-verbose.cbx}
[$Id: philosophy-verbose.cbx,v 0.8b 2012/05/06 Valbusa$]

\RequireCitationStyle{verbose-trad2}

\newtoggle{cbx:scauthorscite}
\newtoggle{cbx:latinemph}
\newtoggle{cbx:commacit}
\DeclareBibliographyOption{scauthorscite}[true]{%
  \settoggle{cbx:scauthorscite}{#1}}
\DeclareBibliographyOption{latinemph}[true]{%
  \settoggle{cbx:latinemph}{#1}}
\DeclareBibliographyOption{commacit}[true]{%
  \settoggle{cbx:commacit}{#1}}
\ExecuteBibliographyOptions{%
	idemtracker=false,
	loccittracker=strict,
	scauthorscite=false,
	latinemph=false,
	commacit=false}

\AtEveryCite{%
	\togglefalse{bbx:annotation}%
	\iftoggle{cbx:latinemph}{\renewcommand*{\mkibid}{\emph}}{}%
	\iftoggle{cbx:scauthorscite}{\DeclareNameFormat{labelname}{%
	\ifcase\value{uniquename}%
		  \usebibmacro{name:last}{\textsc{#1}}{\textsc{#3}}{\textsc{#5}}{\textsc{#7}}%
		\or
		  \ifuseprefix
		    {\usebibmacro{name:first-last}{\textsc{#1}}{\textsc{#4}}{\textsc{#5}}{\textsc{#8}}}%
		    {\usebibmacro{name:first-last}{\textsc{#1}}{\textsc{#4}}{\textsc{#6}}{\textsc{#8}}}%
		\or
		    \usebibmacro{name:first-last}{\textsc{#1}}{\textsc{#3}}{\textsc{#5}}{\textsc{#7}}%
		\fi
	\usebibmacro{name:andothers}}}{}}

\DeclareNameFormat{scdefault}{%
	\iffirstinits
	  {\usebibmacro{name:first-last}{\textsc{#1}}{\textsc{#4}}{\textsc{#5}}{\textsc{#7}}}
	  {\ifblank{#3}%
	    {\usebibmacro{name:first-last}{\textsc{#1}}{#3}{#5}{\textsc{#7}}}%
	    {\usebibmacro{name:first-last}{\textsc{#1}}{\textsc{#3}}{\textsc{#5}}{\textsc{#7}}}}%
	\usebibmacro{name:andothers}}

  
\newbibmacro*{cite:opcit}{%
  \printtext[bibhyperlink]{\bibstring[\mkibid]{opcit}}}
                
\newbibmacro*{cite:loccit}{%
  \printtext{%
    \bibhyperlink{cite\csuse{cbx@lastcite@\thefield{entrykey}}}{%
      \bibstring[\mkibid]{loccit}}}%
  \global\toggletrue{cbx:loccit}}
  
\renewbibmacro*{cite:ibid}{%
 \ifloccit
   {\usebibmacro{cite:loccit}}{%
  \printtext{%
    \bibhyperlink{cite\csuse{cbx@lastcite@\thefield{entrykey}}}{%
      \bibstring[\mkibid]{ibidem}}}}}%

\renewbibmacro*{cite:title}{%OK
 \ifsingletitle{\usebibmacro{cite:opcit}}{%
  \printtext[bibhyperlink]{%
    \printfield[citetitle]{labeltitle}%
    \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}}%
      \bibstring{cited}\midsentence}}

 \renewbibmacro*{cite:full}{%OK
  \usebibmacro{cite:full:citepages}%
  \global\toggletrue{cbx:fullcite}%
  \printtext[bibhypertarget]{%
    \usedriver
      {\iftoggle{cbx:scauthorscite}{%
      \DeclareNameAlias{sortname}{scdefault}}%
      {\DeclareNameAlias{sortname}{default}}}%
      {\thefield{entrytype}}}%
  \usebibmacro{shorthandintro}}

\DeclareNameFormat{noname}{} 
    
\DeclareCiteCommand{\ccite}               
	{\usebibmacro{prenote}\unspace\addspace}% 
	{\global\togglefalse{cbx:loccit}% 
	\usedriver{\DeclareNameAlias{sortname}{noname}} 
	{\thefield{entrytype}}} 
	{\multicitedelim} 
	{\usebibmacro{cite:postnote}} 

\DeclareCiteCommand{\cbx@crossref}
  {}%
  {\ifciteseen{\usebibmacro{editor+others}%
  \setunit*{\addcomma\space}\printtext[bibhyperlink]{%
    \printfield[citetitle]{labeltitle}%
       \iftoggle{cbx:commacit}{\setunit{\addcomma\space}}%
    {\setunit{\addspace\midsentence}}%
        \bibstring{cited}}}{\usebibmacro{incollection:full}}}%
  {}%
  {}%	

\DeclareCiteCommand{\cbx@inbookcrossref}
  {}%
  {\ifciteseen
  	{\usebibmacro{bybookauthor}\setunit*{\addcomma\space}%
	\printtext[bibhyperlink]{%
		\printfield[citetitle]{labeltitle}%
			\iftoggle{cbx:commacit}
				{\setunit{\addcomma\space}}%
				{\setunit{\addspace\midsentence}}%
		\bibstring{cited}}}{\usebibmacro{inbook:full}}}%
  {}%
  {}%

\endinput