PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : siunitx und babel



LuPi
08-11-2012, 09:16
Bei dem folgenden Beispiel wäre ich ganz naiv davon ausgegangen, dass ich
"1 m bis 2 m" bekomme (die Doku hat mich auch noch nicht vom Gegenteil
überzeugt). Wieso ergibt sich weiterhin "1 m to 2 m"?



\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[locale=DE]{siunitx}
%\addto\extrasgerman{\sisetup{locale = DE}} % mit oder ohne spielt keine Rolle
\begin{document}
\SIrange{1}{2}{\meter}
\end{document}

esdd
08-11-2012, 09:42
Hallo,

bei mir funktioniert folgendes wie erwartet:

\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\usepackage{siunitx}
\begin{document}
\SIrange{1}{2}{\meter}
\end{document}
In der Dokumentation zu siunitx steht im Kapitel 6 Localisation:

Note that the in order for this to work correctly, languages should be given as global (class) options rather than as package options for babel.
Gruß
Elke

LuPi
08-11-2012, 09:43
Das habe ich schlicht überlesen. Vielen Dank für den Hinweis!

bobmalaria
08-11-2012, 09:46
hi,

das sollte wirklich so gehen, steht ja 1:1 auch so im manual. aber irgendwas scheint da nicht zu klappen.

so geht es aber bei mir


\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\usepackage{siunitx}
\sisetup{
list-final-separator = { \translate{and} },
list-pair-separator = { \translate{and} },
range-phrase = { \translate{to (numerical range)} },
}
\begin{document}
\SIrange{1}{2}{\meter}
\SIrange{1}{5}{\meter}
\end{document}

zu beachten ist, dass die sprache als klassenoption und nicht als paketoption mitgegeben werden muss

LuPi
08-11-2012, 10:03
zu beachten ist, dass die sprache als klassenoption und nicht als paketoption mitgegeben werden muss

Das war das stolpernde Semikolon!

hakaze
08-11-2012, 18:59
ES geht auch ohne Klassenoption. Allerdings muss man dem translator-Paket dann noch "sagen", dass ngerman=German bedeutet ;)


\documentclass[]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{siunitx}
\languagealias{ngerman}{German} % Sprache für translator-Paket

\sisetup{
list-final-separator = { \translate{and} },
list-pair-separator = { \translate{and} },
range-phrase = { \translate{to (numerical range)} },
}
\begin{document}
\SIrange{1}{2}{\meter}
\SIrange{1}{5}{\meter}
\end{document}

cgnieder
09-11-2012, 10:21
ES geht auch ohne Klassenoption. Allerdings muss man dem translator-Paket dann noch "sagen", dass ngerman=German bedeutet ;)

Z.B. so:


\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[ngerman]{translator}
\usepackage[locale=DE]{siunitx}
\begin{document}
\SIrange{1}{2}{\meter}
\end{document}

Gruß

LuPi
09-11-2012, 10:37
Aha, dann hat mir schlicht die Einbindung des translator-Pakets mit der
entsprechenden Option (alternativ zur Klassenoption) gefehlt. Danke für
den Hinweis.