[XeTeX] Howto change captionlabels with Polyglossia and komascript

François Charette firmicus at ankabut.net
Tue Oct 28 15:51:24 CET 2008


Ulrike Fischer a écrit :
> 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).
>
>   

Ah, and I even thought \addto had been kept intact in polyglossia!
OK, this will be fixed in the next release then.

Best
François




More information about the XeTeX mailing list