summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx')
-rw-r--r--Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx207
1 files changed, 161 insertions, 46 deletions
diff --git a/Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx b/Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx
index 0ca2204ad72..fd2b95fda5e 100644
--- a/Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx
+++ b/Master/texmf-dist/tex/latex/archaeologie/archaeologie.cbx
@@ -14,19 +14,34 @@
[2016/06/06 v2.0 archaeologie --
biblatex for archaeologists,
historians and philologists, cbx-Datei]
-\ExecuteBibliographyOptions{%
- citetracker=true,%
- idemtracker=false,%
- ibidtracker=true,%
- opcittracker=true,%
- loccittracker=true,%
- labeldate=true,%
-}
%-----------------------
\newbool{cbx:yearinparens}
\newbool{cbx:seenote}
\newbool{cbx:seen}
%-----------------------
+\newcommand*{\cbx@fseen@names}{}
+\newcommand*{\cbx@tseen@names}{}
+\newrobustcmd*{\cbx@nameseen}[1]{%
+ \iftoggle{blx@footnote}
+ {\listcsxadd{cbx@fseen@names}{#1}}
+ {\listcsxadd{cbx@tseen@names}{#1}}}
+\newrobustcmd*{\cbx@ifnameseen}[1]{%
+ \iftoggle{blx@footnote}
+ {\xifinlistcs{#1}{cbx@fseen@names}}
+ {\xifinlistcs{#1}{cbx@tseen@names}}}
+
+\renewcommand*{\multicitedelim}{\addsemicolon\addspace}
+\newcommand*{\labelyeardelim}{\addspace}
+\renewcommand{\textcitedelim}{\multicitedelim}
+\renewcommand{\postnotedelim}{%
+ \ifboolexpr{bool {cbx:ancient}%
+ or bool {cbx:frgancient}%
+ or bool {cbx:corpus}%
+ }%
+ {\addspace}%
+ {\newunitpunct}%
+}
+%-----------------------
\DeclareBibliographyOption{yearinparens}[true]{%
\ifstrequal{#1}{true}
{\DeclareFieldFormat{citeyear}{\mkbibparens{##1}}
@@ -36,11 +51,50 @@
{cbx:seenote}%
\ExecuteBibliographyOptions{maxnames=999}%
}%
+\DeclareBibliographyOption[string]{citeauthorformat}{%
+ \ifcsdef{cbx@arch@citeauthorformat@#1}
+ {\csuse{cbx@arch@citeauthorformat@#1}}
+ {\PackageError{biblatex-archaeologie}
+ {Option 'citeauthorformat=#1' invalid}
+ {The option you have supplied is invalid.\MessageBreak
+ Use one of the values 'initials', 'full', 'family' or 'firstfull'.}}}
%-----------------------
\DeclareFieldFormat{citeyear}{#1}
\DeclareFieldFormat{prenote}{#1\isdot}%
\DeclareFieldFormat{postnote}{#1}%
\DeclareFieldFormat{shorttitle}{#1}%
+\DeclareFieldFormat{pages}{#1}
+
+\DeclareNameFormat{labelname}{%
+ \ifcase\value{uniquename}%
+ \usebibmacro{name:family}
+ {\namepartfamily}
+ {\namepartgiven}
+ {\namepartprefix}
+ {\namepartsuffix}%
+ \or
+ \ifuseprefix
+ {\usebibmacro{name:family-given}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefix}
+ {\namepartsuffixi}}
+ {\usebibmacro{name:family-given}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefixi}
+ {\namepartsuffixi}}%
+ \or
+ \usebibmacro{name:family-given}
+ {\namepartfamily}
+ {\namepartgiven}
+ {\namepartprefix}
+ {\namepartsuffix}%
+ \fi
+ \usebibmacro{name:andothers}}
+
+
+
\DeclareNameFormat{frg}{%
\nameparts{#1}%
\ifgiveninits%
@@ -55,17 +109,85 @@
{\namepartprefix}
{\namepartsuffix}}%
\usebibmacro{name:andothers}}
-%-----------------------
-\renewcommand*{\multicitedelim}{\addsemicolon\addspace}
-\newcommand*{\labelyeardelim}{\addspace}
-\renewcommand{\textcitedelim}{\multicitedelim}
-\renewcommand{\postnotedelim}{%
- \ifboolexpr{bool {cbx:ancient}%
- or bool {cbx:frgancient}%
- or bool {cbx:corpus}%
- }%
- {\addspace}%
- {\newunitpunct}%
+
+\def\cbx@arch@citeauthorformat@family{%
+ \DeclareNameFormat{citeauthor}{%
+ \usebibmacro{name:family}
+ {\namepartfamily}
+ {\namepartgiven}
+ {\namepartprefix}
+ {\namepartsuffix}%
+ \usebibmacro{name:andothers}}}
+
+\def\cbx@arch@citeauthorformat@full{%
+ \DeclareNameFormat{citeauthor}{%
+ \usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiven}
+ {\namepartprefix}
+ {\namepartsuffix}%
+ \usebibmacro{name:andothers}}}
+
+\def\cbx@arch@citeauthorformat@initials{%
+ \DeclareNameFormat{citeauthor}{%
+ \ifuseprefix
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefix}
+ {\namepartsuffixi}}
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefixi}
+ {\namepartsuffixi}}%
+ \usebibmacro{name:andothers}}}
+
+\def\cbx@arch@citeauthorformat@firstfull{%
+ \DeclareNameFormat{citeauthor}{%
+ \cbx@ifnameseen{\thefield{hash}}
+ {\ifuseprefix
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefix}
+ {\namepartsuffixi}}
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefixi}
+ {\namepartsuffixi}}}
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiven}
+ {\namepartprefix}
+ {\namepartsuffix}%
+ \cbx@nameseen{\thefield{hash}}}%
+ \usebibmacro{name:andothers}}}
+
+\DeclareNameFormat{name:inreference}{%
+ \ifuseprefix
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefix}
+ {\namepartsuffixi}}
+ {\usebibmacro{name:given-family}
+ {\namepartfamily}
+ {\namepartgiveni}
+ {\namepartprefixi}
+ {\namepartsuffixi}}%
+ \usebibmacro{name:andothers}}
+%-----------------------
+\ExecuteBibliographyOptions{%
+ citetracker=true,%
+ idemtracker=false,%
+ ibidtracker=true,%
+ opcittracker=true,%
+ loccittracker=true,%
+ labeldate=true,%
+ citeauthorformat=initials,%
+ uniquename=minfull,%
}
%-----------------------
\renewbibmacro*{postnote}{%
@@ -97,13 +219,6 @@
\renewcommand{\postnotedelim}{\addspace}%
}%
%-----------------------
-\newbibmacro*{cite:name}{%
-% 0: only last names, 1: last name + first name initials, 2: full name
- \ifbool{cbx:fullnames}{\c@uniquename=2}{\ifbool{cbx:lastnames}{\c@uniquename=0}{\c@uniquename=1}}%
- \ifciteindex{\indexnames{labelname}}{}%
- \printtext[bibhyperref]{%
- \iffootnote{\c@uniquename=0 \printnames{labelname}}{\printnames{labelname}}}}
-%-----------------------
\newbibmacro*{cite:title}{\printfield{labeltitle}}%
%-----------------------
\newbibmacro*{cite:year}{%
@@ -112,22 +227,17 @@
{{\printtext[citeyear]{\printfield{labelyear}\printfield{extrayear}}}}}
%-----------------------
\newbibmacro*{cite:lexikon}{%
- \printfield{booktitle}%
- \setunit{\addspace}%
- \printfield{volume}%
- \setunit{\addspace}%
- \printfield[parens]{year}%
- \setunit{\addspace}%
- \iffieldundef{postnote}{\printfield{pages}}%
- {\printfield{postnote}}%
- \iffieldundef{title}{}{\setunit{\addspace}%
- \printtext{s\adddot\addnbthinspace v\adddot}}%
- \setunit{\addspace}\printfield{title}%
- \iffieldundef{number}{}{\setunit{\addspace}%
- \printtext[brackets]{\printfield{number}}}%
- \setunit{\addspace}%
- \printtext[parens]{\c@uniquename=1 \printnames{labelname}}%
- }
+ \printfield{booktitle}%
+ \setunit{\addspace}%
+ \printfield{volume}%
+ \setunit{\addspace}%
+ \printfield[parens]{year}%
+ \setunit{\addspace}%
+ \iffieldundef{postnote}%
+ {\printfield{pages}}%
+ {\printfield{postnote}}%
+ \usebibmacro{inreference:title+author}
+}
%-----------------------
\newbibmacro{cite:seenote}{%
\ifboolexpr{bool{cbx:ancient}%
@@ -274,7 +384,7 @@
\DeclareMultiCiteCommand{\textcites}%
{\textcite}{\textcitedelim}
%-----------------------
-\DeclareCiteCommand{\citeauthor}%
+\DeclareCiteCommand{\citeauthor}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\renewcommand*{\multinamedelim}{\addcomma\space}%
@@ -282,9 +392,13 @@
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\space}%
\usebibmacro{prenote}}%
- {\usebibmacro{cite:name}}%
- {\multicitedelim}%
- {\usebibmacro{postnote}}%
+ {\ifciteindex
+ {\indexnames{labelname}}
+ {}%
+ \printtext[bibhyperref]{%
+ \printnames[citeauthor]{labelname}}}
+ {\multicitedelim}
+ {\usebibmacro{postnote}}
%-----------------------
\DeclareCiteCommand{\citetitle} %
{\boolfalse{citetracker}%
@@ -300,5 +414,6 @@
}}}%
{\multicitedelim}%
{\usebibmacro{postnote}}%
+
\endinput
%% End of file `archaeologie.cbx'. \ No newline at end of file