3.5 Notas a pie de página, notas finales y marginales
LaTEX has facilities to typeset “inserted” text, such as marginal notes, footnotes, figures, and tables. The present section looks more closely at different kinds of notes, while Chapter 7 describes floats in more detail.
We start by discussing the possibilities offered through standard LaTEX’s footnote commands and explain how (far) they can be customized. This is followed by a presentation of the footmisc package, which overcomes most of the limitations of the standard commands and offers a wealth of additional features. The packages footnoterange and fnpct deal specifically with the formatting of the footnote markers in text, how consecutive markers should be handled, and what should happen if they come next to a punctuation mark such as a comma or a period.
Some type of documents, e.g., critical editions, require an elaborate footnote apparatus with nested footnotes — something that standard LaTEX does not offer. Both the manyfoot and bigfoot packages (which can be combined with footmisc) extend the footnote support for disciplines like linguistics by providing several independent footnote commands.
Instead of producing footnotes at the end of the page, it is sometimes useful to place such notes directly below the paragraph in which they appeared or after a consecutive group of paragraphs. This kind of “paragraph notes” is offered by the parnotes package. For two-column documents, a special layout for footnotes is provided by the ftnright package, which moves all footnotes to the bottom of the right column.
Support for endnotes is offered through the enotez package, which allows for mixing footnotes and endnotes and can also be used to provide chapter notes, as required by some publishers. The section concludes with a discussion of marginal notes, which are already provided by standard LaTEX and with two packages (marginnote and snotez) that enhance LaTEX’s basic capabilities.
3.5.1 Usar notas a pie de página estándar
A sharp distinction is made between footnotes in the main text and footnotes inside a minipage environment. The former are numbered using the footnote counter, while inside a minipage the \footnote command is redefined to use the mpfootnote counter. Thus, the representation of the footnote mark is obtained by the or command depending on the context. By default, it typesets an arabic number in text and a lowercase letter inside a minipage environment. You can redefine these commands to get a different representation by specifying, for example, footnote symbols, as shown below:
3.5.2 Personalización de notas a pie de página estándar
Footnotes in LaTEX are generally simple to use and provide a quite powerful mechanism for typesetting material at the bottom of a page. This material can consist of several paragraphs and can include lists, inline or display mathematics, tabular material, and so on.
LaTEX offers several parameters for customizing footnotes. They are shown schematically in Figure 3.2 on the facing page and are described below:
The font size used inside footnotes (see also Table 9.1 on page 666).
The height of a strut placed at the beginning of every footnote. If it is greater than the used for , then additional vertical space is inserted above each footnote. See Appendix A.3.3 for more information about struts.
A low-level TEX length parameter that defines the space between the main text and the start of the footnotes. You can change its value with the or command by putting into the first argument, e.g., .
A macro to draw the rule separating footnotes from the main text that is executed right after the vertical space of . It should take zero vertical space; that is, it should use a negative skip to compensate for any positive space it occupies. The default definition is equivalent to the following:
3.5.3 footmisc - Varios estilos de notas al pie
Since standard LaTEX offers only one type of footnotes and only limited (and somewhat low-level) support for customization, several people developed small packages that provided features otherwise not available. Many of these earlier efforts were captured by Robin Fairbairns (1947–2022) in his footmisc package (these days maintained by Frank Mittelbach), which supports, among other things, page-wise numbering of footnotes and footnotes formatted as a single paragraph at the bottom of the page. In this section we describe the features provided by this package, showing which packages it supersedes whenever applicable.
The interface for footmisc is quite simple: nearly everything is customized by specifying options when the package is loaded, though in some cases further control is possible via parameters.
In the article class, footnotes are numbered sequentially throughout the document; in report and book, footnotes are numbered inside chapters. Sometimes,
3.5.4 footnoterange - Referencias a guardabosques de notas al pie
If you have to deal with many footnotes at a single point, then you may find the above layout still suboptimal. In that case you may want to try the footnoterange package by Martin Münch. It provides the environment footnoterange, and within its scope all footnotes are collected, and (at the end of the environment) a single mark with a range, e.g., “2–4” is displayed.
If hyperlinks to footnotes are enabled (through the package hyperref), then ranges of footnotes are hyperlinked as well, pointing to the first and last footnotes in the range. This can be suppressed by using the footnoterange* environment. Both environments provide the same results when hyperlinking is disabled.
It is possible to use the footnoterange package together with the multiple option from footmisc. In that case the option affects only those footnotes outside the scope of a footnoterange environment, as shown in the next example:
3.5.5 fnpct - Gestión de marcadores de notas al pie y puntuación
When footnote or endnotes are placed next to a punctuation character, there is the question of how to place the marker in relation to the punctuation. Bringhurst suggests that if the marker is a raised symbol, then it could placed (partly) over low punctuation, e.g., a period or a comma, to avoid the otherwise noticeable gap [25].
The package fnpct by Clemens Niederberger can be used to make this adjustment for you. It works by modifying footnote and endnote commands so that they look forward in the input for a comma or period and if found adjust the placement by exchanging the punctuation and the marker position and also move them closer together so that they partly overlap.
This has two consequences: the punctuation must always follow the note command, even if the footnote or endnote is meant to apply to the whole sentence or phrase.1 Furthermore, while fnpct works with nearly every other footnote or endnote package, the automatic detection of consecutive note commands as for example implemented by the multiple option of footmisc will not work well with it. For that reason fnpct provides its own, and the footmisc option is simply not needed.
We use the following text to demonstrate different aspects of the package and its customization possibilities. Here we show the results when the package is not loaded (we use footmisc to provide handling of consecutive footnotes and get all footnote text somewhat compressed at the bottom):
3.5.6 perpage - Restablecer contadores por página
As mentioned earlier, the ability to reset arbitrary counters on a per-page basis is implemented in the small package perpage written by David Kastrup.
3.5.7 manyfoot, bigfoot - Notas a pie de página independientes
Most documents have only a few footnotes, if any. For them LaTEX’s standard commands plus the enhancements offered by footmisc are usually sufficient. However, certain applications, such as critical editions, require several independently numbered footnote streams. For these situations the package manyfoot by Alexander Rozhenko, and the even more comprehensive package bigfoot by David Kastrup can provide valuable help.
Both packages use largely the same interfaces so we describe them together. They do, however, differ with respect to capabilities and results so that there are cases for favoring one over the other as discussed below. Differences are discussed as appropriate next to the examples.
3.5.8 parnotes - Presentar las notas dentro de la galera
Instead of placing notes at the bottom of the page as footnotes, in the margin or as endnotes, you may want to collect and place them into the main text, e.g., after each paragraph. For this Chelsea Hughes developed the small package parnotes that can be used on its own or together with one of the footnote or endnote packages. It provides its own command and can thus coexist with footnote or endnote commands.
3.5.9 ftnright - Notas a pie de página derecha en un entorno de dos columnas
It is sometimes desirable to group all footnotes in a two-column document at the bottom of the right column. This can be achieved by specifying the ftnright package written by the author. The effect of this package is shown in Figure 3.3 on the facing page— the first page of the original documentation (including its spelling errors) of the ftnright implementation. It is clearly shown how the various footnotes collect in the lower part of the right-hand column.
The main idea for the ftnright package is to assemble the footnotes of all columns on a page and place them all together at the bottom of the right column. The layout produced allows for enough space between footnotes and text and, in addition, sets the footnotes in smaller type.1 Furthermore, the footnote markers are placed at the baseline instead of raising them as superscripts.2
This package can be used together with most other class files for LaTEX. Of course, the ftnright package takes effect only with a document using a two-column layout specified with the twocolumn option on the \documentclass command — it does not for columns produced with multicols environments. In most cases, it is best to use ftnright as the very last package to make sure that its settings are not overwritten by other packages.
3.5.10 enotez - Notas finales, una alternativa a las notas a pie de página
Scholarly works usually group notes at the end of each chapter or at the end of the document. Such notes are called endnotes. Endnotes are not supported in standard LaTEX, but they can be created in several ways.
The standard in this area was set many years ago by the package endnotes (by John Lavagnino). It provides its own command, thus allowing footnotes and endnotes to coexist. In 2012 Clemens Niederberger started to develop the package enotez. It implements the same document interface but allows for a lot of extra customization and is thus a worthy successor to endnotes.3 In the following we describe his package (though most of the examples would also work with small modifications with the endnotes package).
3.5.11 Notas marginales
The standard LaTEX command generates a marginal note. This command typesets the text given as its argument in the margin, with the first line being at the same height as the line in the main text where the command occurs. When only the mandatory argument is specified, the text goes to the right margin for one-sided printing; to the outside margin for two-sided printing; and to the nearest margin for two-column formatting. When you also specify an optional argument, its text is used if the left margin is chosen, while the second (mandatory) argument is used for the right margin.
This placement strategy can be reversed (except for two-column formatting) using , which acts on all marginal notes from there on. You can return to the default behavior with .
As explained in Table 5.2 on page 369, there are three length parameters to customize the style of marginal notes: , , and . It is usually best to change them only in the preamble (or in a class file) but not in the middle of the document.
There are a few important things to understand when using marginal notes. First, the command does not start a paragraph so that it can be used between paragraphs without introducing extra vertical space. Thus, if it is used before the first word of a paragraph, the vertical alignment does not match the beginning of the paragraph. Second, the first word of its argument is not automatically hyphenated. Thus, for a narrow margin and long words (as in German), you may have to precede the first word by an command to allow hyphenation of that word. These two potential problems can be eased by defining a command like , which starts with an empty box , typesets a marginal note ragged right, and adds an in front of the argument.
3.5.12 marginnote - Una alternativa a marginpar
A different approach to the problem with is taken by Markus Kohm in his marginnote package.
3.5.13 snotez - Notas al margen numeradas o marcadas de otro modo
We have already seen the implementation of numbered or marked side notes with the side option of footmisc that turns footnotes into marginal notes. In contrast, the snotez package by Clemens Niederberger provides side notes that can be used in addition to footnotes. It introduces the command with the same syntax conventions as the \footnote command except that it additionally adds a vertical offset argument for adjusting the placement of the note.