如何改变 \ref 输出?

如何改变 \ref 输出?

我正在用 latex(使用 babel)写我的希腊语博士论文。仅供参考,默认情况下表格在希腊被称为:Πίνακας。例如,当我使用环境制作表格时tablebabel会自动翻译单词桌子作为Πίνακας 1. blabla

因此,当我使用\ref{tab:label}交叉引用该表时,该命令的输出是“Πίνακας 1. blabla“,正如您所期望的那样。

然而,由于希腊语的特殊性,它有很多种称呼名词的方式,因此我想将输出改为\ref{tab:label}Πίνακα 1. blabla“(请注意,区别在于缺少ς在表名的末尾)。

我怎样才能做到这一点?

请记住,我只想在调用命令后更改文本中引用表名的方式\ref,而不是更改标题中出现的名称(babel 正确将其转换为 Πίνακας)

答案1

要添加所引用内容的名称(表格、图形等),可以使用cleveref 包裹。正如我在babel使用时看到的那样greek,它会自动将表名更改为共 1 个。因此,您只需改变引用它的方式。您可以通过使用 重新定义格式table来实现这一点\crefformat{element}{new format}

\documentclass{article}
\usepackage[greek]{babel}
% Clever references
\usepackage{cleveref}

% Change the name of the reference
\crefformat{table}{P'inaka. #1}

\begin{document}
\cref{tab:dummy} bla bla bla.

\begin{table}[ht]
  \centering
  \rule{8cm}{4.5cm}
  \caption{A dummy table}\label{tab:dummy}
\end{table}

\end{document}

片段结果

我不确定你是不是在这么做。我需要看 MWE 才能更好地帮助你。

相关内容