Frequently Asked Question List for TeX
babel
uses
LaTeX uses symbolic names for many of the automatically-generated text it produces (special-purpose section headings, captions, etc.). As noted in “LaTeX fixed names” (which includes a list of the names themselves), this enables the user to change the names used by the standard classes, which is particularly useful if the document is being prepared in some language other than LaTeX’s default English. So, for example, a Danish author may wish that her table of contents was called “Indholdsfortegnelse”, and so would expect to place a command
\renewcommand{\contentsname}%
{Indholdsfortegnelse}
in the preamble of her document.
However, it’s natural for a user of a non-English language to use
babel
, because it offers many conveniences and typesetting
niceties for those preparing documents in those languages. In
particular, when babel
is selecting a new language, it
ensures that LaTeX’s symbolic names are translated appropriately
for the language in question. Unfortunately, babel
’s choice
of names isn’t always to everyone’s choice, and there is still a need
for a mechanism to replace the “standard” names.
Whenever a new language is selected, babel
resets all the
names to the settings for that language. In particular,
babel
selects the document’s main language when
\begin{document}
is executed, which immediately destroys
any changes to these symbolic names made in the prologue of a document
that uses babel
.
Therefore, babel defines a command to enable users to change the
definitions of the symbolic names, on a per-language basis:
\addto\captions<language>
is the thing
(<language>
being the language option you gave to
babel
in the first place). For example:
\addto\captionsdanish{%
\renewcommand{\contentsname}%
{Indholdsfortegnelse}%
}
FAQ ID: Q-latexwords
Tags: latex–macros