summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/citeall/citeall.tex
blob: 40ad48b7c07a671f882ecc3f3eb09f3d3de6ecac (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
% !Mode:: "TeX:DE:UTF-8:Main"
\documentclass[]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear-ibid,hyperref=false]{biblatex}
\usepackage{citeall}
\usepackage{fourier}
\usepackage{ydoc-desc,tabularx}
\addbibresource{examples-citeall.bib}
\title{The \pkg{citeall} package, v1.0}
\author{Ulrike Fischer}

\begin{document}
\maketitle
\section{Important}
\pkg{citeall} works only together with \pkg{biblatex}.  \pkg{biblatex} should be loaded before \pkg{citeall}.

The package relies on some inner working of \pkg{biblatex}, so it could break with future versions.

\section{The aim of the package}
The \pkg{citeall} package is a package to help to adapt and debug \pkg{biblatex}
citation styles. When adapting such a style one often needs to inspect the
output of examples. While it is easy with \verb+\nocite{*}+ to output all entries of a bib-file in the bibliography it is more troublesome to show citations.
So I wrote a (very) small package which allows me to show citations of all entries of the bib-files.




\section{The command}
The main command of the package is called like the package and has two optional arguments:

\DescribeMacro\citeall[<list of commands>][<number of entries>]

The second optional argument sets the number of entries of the .bib (more precisely the .bbl-file) printed by \cs{citeall}. By default everything is cited.

The first optional argument is a comma separated list. 
For each entrykey in the .bbl \cs{citeall} will loop through this list and pass to each item the entrykey as last argument. By default this list consist simply of a \cs{cite} command.  The items don't need to be cite commands. As the examples show you can add text and other commands.

\begin{itemize}
\item The last command should be something that can handle the entry key argument. 
\item If there are brackets e.g. from optional argument of a \cs{cite} you should protect them with braces.
\item If there are commas you should protect them with braces.
\item If you want to insert a paragraph break, use \cs{endgraf}
\item Don't overdo the system. It is meant for simple debbugging not for complicated citation printouts.
\end{itemize}

\section{Some examples}
\verb+\citeall+            \begin{tabular}[t]{p{0.3\textwidth}}
                           \citeall
                           \end{tabular}
\verb+\citeall[][1]+       \begin{tabular}[t]{p{0.3\textwidth}}
                           \citeall[][1]
                           \end{tabular}
                           

\noindent
\verb+\citeall[\fullcite]+\begin{tabular}[t]{p{0.7\textwidth}}
                           \citeall[\fullcite]
                           \end{tabular}


\noindent
\verb+\citeall[\cite[15],\cite]+\begin{tabular}[t]{p{0.7\textwidth}}
                                \citeall[\cite[15],\cite]
                                \end{tabular}

\noindent
\verb+\citeall[Key: \textcolor{red},{\cite[15]},Test ibid: \cite]+

\begin{tabular}[t]{p{0.7\textwidth}}
 \citeall[Key: \textcolor{red},{\cite[15]},Test ibid: \cite]
\end{tabular}

\noindent
\verb+\citeall[{\cite[15]},\endgraf \cite]+

\begin{tabular}[t]{p{0.7\textwidth}}
 \citeall[{\cite[15]},\endgraf \cite]
\end{tabular}

\section{Configuration}

\DescribeMacro\citeallgroupseparator
\DescribeMacro\citeallseparator
\DescribeMacro\citeallfinentry   
\DescribeMacro\citealldefaultcite

By default the item of an entry are separated by a comma and a space. This can be changed by redefining \cs{citeallseparator}. The last item is finished by \cs{citeallfinentry} (default nothing). The entries are separated by a \cs{par}, this can be changed by redefining \cs{citeallgroupseparator}. 

\end{document}