summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/latex-bib2-ex/04-06-5.ltx
blob: 3fec73ce2a8465b9c49c0a489be98573f025fc00 (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
%% 
%%  Ein Beispiel der DANTE-Edition
%%  Bibliografie mit LaTeX
%%  2. Auflage
%%  Beispiel 04-06-5 auf Seite 162.
%%  Copyright (C) 2016 Herbert Voss
%% 
%%  It may be distributed and/or modified under the conditions
%%  of the LaTeX Project Public License, either version 1.3
%%  of this license or (at your option) any later version.
%%  See http://www.latex-project.org/lppl.txt for details.
%% 
%% ==command biber ++FILE++== 
% Show page(s) 1
%% 
%% 
\documentclass[]{exaarticle}
\pagestyle{empty}
\setlength\textwidth{352.81416pt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[autostyle]{csquotes}
\usepackage{filecontents}
\begin{filecontents*}{test.bbx}
\ProvidesFile{test.bbx}[ 2016/01/01 v1.0 biblatex bib style ]
\newtoggle{bbx:issn}\newtoggle{bbx:url}\newtoggle{bbx:doi}\newtoggle{bbx:eprint}
%
\DeclareBibliographyOption{issn}[true]{\settoggle{bbx:issn}{#1}}
\DeclareBibliographyOption{url}[true]{\settoggle{bbx:url}{#1}}
\DeclareBibliographyOption{doi}[true]{\settoggle{bbx:doi}{#1}}
\DeclareBibliographyOption{eprint}[true]{\settoggle{bbx:eprint}{#1}}
%
\ExecuteBibliographyOptions{issn,url,doi,eprint}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}
%
\defbibenvironment{bibliography}
  {\list{\printtext[labelnumberwidth]{\printfield{labelnumber}}}
        {\setlength\labelwidth{\labelnumberwidth}%
         \setlength\leftmargin{\labelwidth}\setlength\labelsep{\biblabelsep}%
         \addtolength\leftmargin{\labelsep}\setlength\itemsep{\bibitemsep}%
         \setlength\parsep{\bibparsep}}%
    \renewcommand*\makelabel[1]{\hss##1}}
  {\endlist}{\item}
%
\newbibmacro*{finentry}{\finentry}
%
\DeclareBibliographyDriver{article}{\usebibmacro{bibindex}%
  \usebibmacro{author/translator+others}\setunit{\labelnamepunct}\newblock % Autor
  \usebibmacro{title}\newunit                                       % Titel
  \usebibmacro{in:}\usebibmacro{journal+issuetitle}\newunit         % Zeitschrift
  \usebibmacro{note+pages}\newunit\newblock                         % Note und Seiten
  \iftoggle{bbx:issn}{\printfield{issn}}{}\newunit\newblock         % ISSN
  \usebibmacro{doi+eprint+url}\newunit\newblock                     % DOI, EPrint, URL
  \usebibmacro{finentry}}

\DeclareFieldFormat[article]{title}{\mkbibemph{#1\isdot}}
\DeclareFieldFormat[article]{smallcaps}{\textsc{#1}}

\newbibmacro*{doi+eprint+url}{%
  \iftoggle{bbx:doi}{\printfield{doi}}{}\newunit\newblock
  \iftoggle{bbx:eprint}{\usebibmacro{eprint}}{}\newunit\newblock
  \iftoggle{bbx:url}{\usebibmacro{url+urldate}}{}}
\newbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}\setunit*{\addspace}%
  \iffieldundef{series}{}{\newunit\printfield{series}\setunit{\addspace}}%
  \usebibmacro{volume+number+eid}\setunit{\addspace}%
  \usebibmacro{issue+date}\setunit{\addcolon\space}%
  \usebibmacro{issue}\newunit}
\newbibmacro*{volume+number+eid}{%
  \printfield{volume}\setunit*{\adddot}%
  \printfield{number}\setunit{\addcomma\space}\printfield{eid}}
\newbibmacro*{issue+date}{%
  \printtext[parens]{%
    \iffieldundef{issue}%
      {\usebibmacro{date}}
      {\printfield{issue}\setunit*{\addspace}\usebibmacro{date}}}%
  \newunit}
\newbibmacro*{note+pages}{\printfield{note}\setunit{\bibpagespunct}%
  \printfield{pages}\newunit}
\endinput
\end{filecontents*}
\begin{filecontents*}{test.cbx}
\ProvidesFile{test.cbx}[ 2016/01/01 v1.0 biblatex citation style ]
\ExecuteBibliographyOptions{labelnumber}
\newbibmacro*{cite}{\printtext{\printfield{labelnumber}}}
\DeclareCiteCommand{\cite}[\mkbibbrackets]
                          {\usebibmacro{prenote}}
                          {\usebibmacro{citeindex}\usebibmacro{cite}}
                          {\multicitedelim}
                          {\usebibmacro{postnote}}
\endinput
\end{filecontents*}
%StartShownPreambleCommands
\usepackage[style=test]{biblatex}
\addbibresource{examples.bib}
%StopShownPreambleCommands
\begin{document}
Normale Verweise~\cite[S.\,77]{kastenholz} und \cite{bertram}.\qquad
\ldots~\cite[siehe][77--99]{kastenholz} und \cite{kastenholz,bertram}.
\printbibliography
\end{document}