多语言文档的 Cleveref 行为

多语言文档的 Cleveref 行为

我想要一个用外语(巴西语)写的章节(扩展摘要),其中所有对章节和章节的引用都用葡萄牙语写成(例如“Seção 3”、“Capítulo 6”)。

我可以让 cleveref 以葡萄牙语工作,但不能在中间改变语言。

参见mwe.tex:

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[brazilian, british]{babel}
\usepackage{cleveref}
\begin{document}
\section{Primeira}\label{primeira}
Blablabla blabla \cref{tbl1}. Na \cref{segunda} veremos....
\selectlanguage{brazilian}
\section{Segunda}\label{segunda}
Aqui....\cref{primeira} whaaat
\begin{table}[h]
\caption{Nananana} \label{tbl1}
\begin{tabular}{ll}
1 & 2 \\
3 & 4
\end{tabular}
\end{table}

\section{Another}
And now....\cref{segunda}
\selectlanguage{british}
\end{document}

奇怪的是,葡萄牙语中引用的唯一元素是 {tbl1},它变成了“Tabela 1”。

结果文本:

1 Primeira
Blablabla blabla table 1. Na section 2 veremos....

2 Segunda
Aqui....section 1 whaaat

Tabela 1: Nananana
1 2 
3 4

3 Another
And now....section 2


我怎样才能创建一个所有参考文献都使用外语名称的章节?

答案1

记录的行为表明cleveref它还必须接收您已告知的语言选项babel。最方便的方法是将语言选项提供给\documentclass,然后将其传递给babelcleveref(以及可能依赖它们的任何其他包)。

(不过,我也许是错的,但据我所知cleveref没有选择british,也许english对你来说就足够了)。

\documentclass[10pt,a4paper,brazilian,english]{article}
% \usepackage[utf8]{inputenc} % if you have an up-to-date distribution, this is default
\usepackage{babel}
\usepackage{cleveref}
\begin{document}

\section{Primeira}
\label{primeira}
Blablabla blabla \cref{tbl1}. Na \cref{segunda} veremos....

\selectlanguage{brazilian}
\section{Segunda}\label{segunda}
Aqui....\cref{primeira} whaaat
\begin{table}[h]
\caption{Nananana} \label{tbl1}
\begin{tabular}{ll}
1 & 2 \\
3 & 4
\end{tabular}
\end{table}

\selectlanguage{english}
\section{Another}
And now....\cref{segunda}

\end{document}

相关内容