Seite 1 von 3
siunitx und das Problem mit den Leerzeichen
Verfasst: Mo 28. Jun 2010, 22:41
von Münzi
Hallo,
weiß jmd von euch, ob es Optionen bei SiunitX gibt, die bewirken, dass zwischen Zahl und Einheit ein Leerzeichen gesetzt wird.
\documentclass[headsepline]{scrartcl}
\usepackage{scrpage2}
\usepackage[ngerman]{babel}
\usepackage{tabularx}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{varioref}
\usepackage{url}
\usepackage{rotating}
\usepackage{setspace}
\usepackage[lflt]{floatflt}
\usepackage{wrapfig}
\usepackage{graphicx}
\usepackage[per=frac]{siunitx}
\usepackage{amsmath}
\usepackage{caption}
\usepackage{longtable}
\usepackage{ltablex}\keepXColumns
\usepackage{rotating}
\usepackage{lscape}
\begin{document}
\begin{align*}
V_\textrm{Säule}&= 23,56 \si{\milli \liter}\\
V_\textrm{0}&= 0,916 \si{\milli\liter}
\end{align*}
\end{document}
Verfasst: Di 29. Jun 2010, 03:24
von KarlMarx
Moin Münzi!
Zunächst einmal: Dein Code ist kein
Minimalbeispiel, da Du viele unnötige (weil hier nicht gebrauchte) Pakete lädst.
Nein, eine solche Option gibt es nicht, sondern SIunitx setzt das alles richtig mit Leerzeichen, wenn man den Befehl richtig verwendet:
\documentclass{scrartcl}
\usepackage[ansinew]{inputenc}
\usepackage[decimalsymbol=comma,per=frac]{siunitx}
\usepackage{amsmath}
\begin{document}
\begin{align*}
V_\text{Säule} & = \SI{23,56}{ml}\\
V_\textrm{Säule} & = \SI{23,56}{\milli\litre}\\
V_0 & = \SI{0,916}{\milli\liter}
\end{align*}
\end{document}
Btw: Liter werden als Einheit immer noch klein geschrieben. Richtig sind daher die ersten beiden Zeilen der align-Umgebung aber nicht die dritte, wobei die erste Zeile offensichtlich die kürzeste Variante ist.
Warum setzt Du rein numerische Indizes in \texrm{}?
Gruß, Marx.
Verfasst: Di 29. Jun 2010, 07:28
von phi
KarlMarx hat geschrieben:Btw: Liter werden als Einheit immer noch klein geschrieben. Richtig sind daher die ersten beiden Zeilen der align-Umgebung aber nicht die dritte, wobei die erste Zeile offensichtlich die kürzeste Variante ist.
Die dritte Zeile bezeichnet lediglich die amerikanische Schreibweise, siehe Seite 14 der Dokumentation. Die erste Version ist zwar kürzer, aber auch weniger semantisch. Ich würde deshalb die zweite Version bevorzugen.
Verfasst: Di 29. Jun 2010, 13:52
von Münzi
Hallo Marx, danke für deine Hilfe.
Ich dachte ich zeige die "unnötigen" Pakete falls durch sie vllt. Einstellungen von SiUnitX überschrieben werden.
Der numerische Indizes wurde nicht von mir, sondern von einem Kommilitonen gesetzt. Habe ihm schon mehrfach gesagt, dass das sinnlos ist, aber er lernt es halt nicht.^^ Leider habe ich aber weder Zeit noch Muße das immer zu ändern.
Das große L wird zunehmend als Einheit für Liter in der Wissenschaft genutzt (habs mir nicht ausgedacht, sondern wurde vorgegeben!). Begründet wird das mit der Ähnlichkeit von 1 und l. Laut meinem Betreuer kann das schnell verwechselt werden und deswegen beugt man dem durch den Großbuchstaben vor.
Verfasst: Di 29. Jun 2010, 14:31
von KarlMarx
Mahlzeit Münzi!
Ein Minimalbeispiel zeichnet sich gerade dadurch aus, daß es wirklich nur die benötigten Pakete lädt und nur den Code ausführt, der zur Reproduktion des Fehlers führt. Wenn Du in Deinem Code also nach und nach alle überflüssigen Pakete auskommentierst, siehst Du, daß SIunitX von nix dort überschrieben wird und man die Pakete daher also rausläßt. Dieses Vorgehen hilft allen hier im Forum weiter, weil die Fehler mit weniger Aufwand schneller gefunden werden können.
Schönen Gruß an Deinen Kommilitonen. Wenn er sich die Arbeit machen will, ist das sein Problem. Wenn man das selbst aber ändern wollte, tut man das natürlich nicht manuell, sondern automatisch per "suchen und ersetzen". Jeder bessere Editor bietet diese Funktion. In TeXnicCenter z.B. erreicht man sie über "Strg+H".
Und auch einen schönen Gruß an Deinen Betreuer: Leute, die nicht lesen und/oder schreiben können sind mir suspekt. Ich habe zumindest das große L für Liter noch nie gesehen und finde es erstmal komisch.
Einen schönen Tag noch, Marx.
Verfasst: Di 29. Jun 2010, 15:10
von Münzi
Hallo KarlMarx,
du hast natürlich mit deinen Ausführungen recht und auch das mit dem L stößt bei mir auf Widerstand. Allerdings darf ich nicht meine eigene Arbeit kontrollieren/bewerten und muss mich daher an die Lehrstuhlvorgaben halten.
Die spinnen da sowieso etwas. Die Vorgaben umfassen 3 oder 4 Seiten.
Wenn du magst kann ich dir die Vorgaben per PN schicken.
Gruß Münzi
Verfasst: Di 29. Jun 2010, 15:26
von Münzi
Mhmm nun ergeben sich neue Fragen.
Habe gerade die Verbessungen versucht durchlaufen zu lassen, doch treten verschiedene Probleme auf.
1. Die Option decimalsymbol=comma bewirkt lediglich, dass die Zahl folgendermaßen geschrieben wird:
9comma12 statt 9,12.
2. Das Kommando \Si ist Led nicht bekannt. Akzeptieren tut er nur \si. Allerdings werden hier keine Leerzeichen zwischen Einheit und Zahl gesetzt.
Der Code ist ja bekannt. Habe ihn 1:1 in meine File eingefügt.
Das Paket SiunitX hat den Stand vom 18.06.2010. [/code]
Verfasst: Di 29. Jun 2010, 16:14
von KOMA
siunitx hat in Version 2 diverse inkompatible Änderungen gegenüber den 1er Versionen erfahren. KarlMarx Lösung bezieht sich offensichtlich auf die letzte 1er-Version. Einige Hinweise zu notwendigen Anpassungen sind in der Anleitung zu finden. Ich habe mir selbst noch keinen Überblick verschafft, so dass ich nichts näheres dazu sagen kann.
Verfasst: Di 29. Jun 2010, 16:44
von Münzi
Okay, das mit dem Leerzeichen ist geklärt. Der Fehler war, dass ich Si geschrieben habe, statt SI. Bleibt nur noch die Komma-Sache
Verfasst: Di 29. Jun 2010, 19:24
von phi
Falls du auf Deutsch schreibst, lade einfach die deutschen Einstellungen:
Das kümmert sich auch noch um weitere Einstellungen, beispielsweise das Wort „bis“ beim \SIrange-Befehl oder die Verwendung von Multiplikationspunkten statt Kreuzen.