我想知道是否有一个平台可以为 latex 创建扩展。如果有,以下是我想要的扩展:我的主要语言是土耳其语。土耳其语是黏着语。例如,当美国人说“如图 2.5 bla bla 所示”时,我们会说“图 2.5'te”的意思是“在图 2.5 中”,并且这个“te”会根据它之前的语句而变化。示例:1'de、2'de 3'te、4'te ... 9'da... 因此添加的总数是 4 => “te/ta/de/da”..
现在我的扩展应该执行以下操作:
\myExtension{\ref{fig:myFigure}} (I am making up this syntax for now)
function myExtension{
take the last number of the figure label (lastNumber)
if (lastNumber == 1) then myAddition="de";
.
.
if (lastNumber == 9) then myAddition="da";
return label+"'"+myAddition
}
有没有什么平台可以让我这样做?提前谢谢大家。
答案1
我曾见过根据图号更改后缀但我觉得这里有些复杂,没用。也许,以下六行就足够了:
\def\myref#1{\ref{#1}%
\expandafter\ifx\csname r@#1\endcsname\relax \else
\expandafter\expandafter\expandafter\myrefA\csname r@#1\endcsname \fi
}
\def\myrefA#1#2{\expandafter\myrefB#1\relax}
\def\myrefB#1#2{\def\tmp{#1}\ifx\relax#2\myrefC \else\expandafter\myrefB\expandafter#2\fi}
\def\myrefC{'\ifcase\tmp\space da\or de\or de\or te\or te\or te\or te\or te\or te\or da\fi}