[XeTeX] Howto change captionlabels with Polyglossia and komascript

Ulrike Fischer news2 at nililand.de
Tue Oct 28 09:52:04 CET 2008


Am Tue, 28 Oct 2008 01:22:00 +0400 schrieb Alexey Kryukov:

>>> With the polyglossia package it doesn't work anymore. Does somebody
>>> know how to change the captionlabels when polyglossia is used? I
>>> work with the komascript class scrartcl.
>>
>> I would try simply \renewcommand\figurename{Abb.}
> 
> This will not work, because localized strings are redefined each time
> a language switching command is executed.

Yes, sorry I didn't thought about that. Try

\makeatletter
\g at addto@macro\captionsgerman{\renewcommand\figurename{Abb.}}
\makeatother


Or copy the definition of \addto to your preamble:

\makeatletter
\def\addto#1#2{%
  \ifx#1\@undefined
    \def#1{#2}%
  \else
    \ifx#1\relax
      \def#1{#2}%
    \else
      {\toks@\expandafter{#1#2}%
        \xdef#1{\the\toks@}}%
    \fi
  \fi
}
\makeother

(The difference between \addto and \g at addto@macro is that \addto defines
the command if it doesn't exist, \g at addto@macro gives an error in this
case).

-- 
Ulrike Fischer 



More information about the XeTeX mailing list