我开始使用cleveref
这个包。我喜欢它。
但是现在我正在用西班牙语打字,当\cref
指向表格时,我希望在文本中使用单词“tabla”而不是“cuadro”。
当我输入“is \cref{tab:a1}”时,我想获得“is塔布拉鼓2”,而不是“是夸德罗2”
我尝试过
\renewcommand{\listtablename}{Índice de tablas}
\renewcommand{\tablename}{Tabla}
但正如您所见,这只会改变表格下方的单词。
以下是 MWE:
\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{mathtools,amsmath,amssymb}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[spanish]{cleveref}
\usepackage[spanish]{babel}
\begin{document}
\renewcommand{\listtablename}{Índice de tablas}
\renewcommand{\tablename}{Tabla}
La \cref{tab:1a} es bonita(beautifull)\\
\begin{table}[h!]
\centering
\begin{tabular}[h!]{ccc}
\ $a$ & $b$ & $c$ \\
\hline 0 & 0 & 0 \\
\ 1 & 1 & label label-tab:1a \\
\end{tabular}
\caption{A subtable}\label{tab:1a}
\end{table}
\end{document}
答案1
首先,我认为值得一读一下对“¿Por qué spanish para babel dice cuadro en lugar de tabla?” (为什么西班牙巴贝尔说“cuadro”而不是“tabla”?) 问题的回答。常见问题解答-CervanTeX(来自西班牙用户组的常见问题解答)。
如果你仍然坚持要更改这个词,添加es-tabla
选项就babel
可以了。cleveref
需要按照 lockstep 的建议进行一些自定义,但我认为
\crefname{table}{\spanishtablename}{\spanishtablename}
可能比hardcoded
解决方案更好。
最后一条注释如果spanish
作为选项传递给documentclass
,它将自动传递给babel
和cleveref
。
\documentclass[spanish]{article}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{mathtools,amsmath,amssymb}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[es-tabla]{babel}
\usepackage{cleveref}
\crefname{table}{\spanishtablename}{\spanishtablename}
\begin{document}
La \cref{tab:1a} es bonita (\emph{beautifull})\\
\begin{table}[h!]
\centering
\begin{tabular}[h!]{ccc}
\ $a$ & $b$ & $c$ \\
\hline 0 & 0 & 0 \\
\ 1 & 1 & label label-tab:1a \\
\end{tabular}
\caption{A subtable}\label{tab:1a}
\end{table}
\end{document}
答案2
添加
\crefname{table}{tabla}{tablas}
您的示例。有关详细信息,请参阅手册第 8.1.2 节。请注意,在序言的最后cleveref
加载也是很好的做法。cleveref