@slide(layout=chapter-slide)
@number
11
@title
References and footnotes
@slide(layout=content-and-preview)
@title
Footnotes 📎
@content
``` {.hljs .lang-tex}
\usepackage{hyperref}
```
Footnotes are automatically numbered consecutively, independent of sections.
(Here, `hyperref` is used for the `\url` command, it is not necessary for footnotes per se.)
``` {.hljs .lang-tex}
The wild boar (\textit{Sus scrofa}), also
known as the wild swine, common wild pig,
or simply wild pig, is a suid native to
much of Eurasia and North Africa, and has
been introduced to the Americas and Oceania.
\footnote{\url{https://en.wikipedia.org/
wiki/Wild_boar}}
```
@preview

@slide(layout=content-and-preview)
@title
Cross-references
@content
Manually (just don’t!)
``` {.hljs .lang-tex}
As you can see in figure 23, …
```
Using the `\ref` command:
``` {.hljs .lang-tex}
\begin{figure}[H]
\includegraphics % …
\caption{Our mascot Fooboar}
\label{img:fooboar}
\end{figure}
As you can see in figure
\ref{img:fooboar}, …
```
@preview

@slide(layout=content-only)
@title
Assigning labels
@content
Both cross-reference commands work with **sections, figures, tables, listings, and equations,** as long as you use correct labels.
Labels have to be **unambiguous.** For clarity, certain prefixes are common, and some packages use them to derive information.
| `fig:` Figures |
`tbl:` Tables |
| `sec:` Sections |
`subsec:` Subsections |
| `ch:` Chapters |
`itm:` Enumeration items |
| `eq:` Equations |
`lst:` Source code listings |
@slide(layout=content-and-preview)
@title
Cross-references
@content
Using the `cleveref` package (with *one* ‘r’!):
``` {.hljs .lang-tex}
\begin{figure}[H]
\includegraphics % …
\caption{Our mascot Fooboar}
\label{img:fooboar}
\end{figure}
Fooboar is a young and highly engaged
boar (see \Cref{img:fooboar}).
```
The `\cref` command automatically inserts suitable prefixes.
@preview

@slide(layout=content-only)
@title
Things to consider
@content
* Terms inserted by `\cref` use the language specified with the document class (or `babel`):
``` {.hljs .lang-tex}
\documentclass[english]{article}
```
* Apart from sections, referenced elements need captions (`\caption{…}`), and the **captions have to be placed before the label.**
* For sectioning commands, the label is inserted directly after the section command.
``` {.hljs .lang-tex}
\section{Notes}\label{sec:notes}
```
@slide(layout=task)
@task-number
11a
@title
Inserting footnotes
@content
* Make the text *March 2023* in file `exercises/footnotes/footnotes.tex` appear as a **footnote**.
* Additionally, insert a **clickable URL** that leads to the download page for the Java Development Kit (`https://www.oracle.com/java/technologies/javase-downloads.html`).
@slide(layout=task)
@task-number
11b
@title
Inserting references
@content
* In file `exercises/references/references.tex`, replace *In the figure* and *The following source code listing* by **references** to the figure and to the source code listing.
* Use the command `\Cref` for the references.
* Make sure to add **labels** to the elements that you want to create a reference for.
* For source code listings, adding labels and captions is a bit different. Try to apply the knowledge you gained so far to retrieve the correct version of the `\lstinputlisting` command. Use the Internet, if necessary.
@slide(layout=extra-content-and-preview)
@title
Configuring footnotes
@content
The `footmisc` package provides additional options for the presentation of footnotes that can be activated by adding parameters to the `\usepackage` command.
``` {.hljs .lang-tex}
% Reset the counter on each page:
\usepackage[perpage]{footmisc}
% Display footnotes in-line:
\usepackage[para]{footmisc}
% Use symbols instead of numbers:
\usepackage[symbol]{footmisc}
```
@preview
{.thin-padding}
@slide(layout=extra-content-and-preview)
@title
A few more things
@content
* It is recommended that you include the package `hyperref` before `cleveref`.
* `\cref` can take multiple references at once, separated by commas.
``` {.hljs .lang-tex}
\section{An introduction}
\label{sec:section1}
% …
Reference be made to
\cref{sec:section1,sec:section2,
sec:section3,sec:section5}.
```
@preview
