Seite 1 von 1

griechische Buchstaben als Indizes vs. Indizes gerade stelle

Verfasst: Di 10. Jul 2012, 14:21
von dude-the-best
Hi,
ich habe in vielen Foren gesucht, aber leider keine Lösung für mein Problem gefunden.
Ich habe als Standard von einem Kollegen diesen Code im Hauptdokument eingefügt, der mir meine Indizes statt kursiv, gerade druckt:
%Indizes in den Formeln geradestehend statt kursiv setzen
\makeatother
\begingroup
 \catcode`\_=13
 \gdef_#1{\sb{\mathrm{#1}}}
\endgroup
\newcommand\enableuprightsubscripts{\catcode`\_=12\relax}
\newcommand\disableuprightsubscripts{\catcode`\_=8\relax}
\makeatletter
%Befehle für das geradestehende Setzen/schrägstehende Setzen von Indizes 
\enableuprightsubscripts %alle Indizes nach diesem Befehl geradestehend
%\disableuprightsubscripts %alle Indizes nach diesem Befehl kursiv
%\mathit %einzelne Indizes kursiv
1. Frage: Ist der Code sinnvoll? Für einfache Fälle funktioniert es zumindest.
2. Frage: wie kann ich nun einzelne Indizes trotzdem kursiv setzen.
3. Frage: Das Hauptproblem ist, dass ich keine griechsichen Zeichen tiefstellen kann.
z_{1-\delta}
resultiert in
z_{1-ffi}
und ich verstehe nicht was da genau passiert.

Kann mir jemand den kopierten Code erklären bzw. meine Fragen beantworten?


Vielen Dank!
Ben

Verfasst: Di 10. Jul 2012, 14:30
von bloodworks
1. Frage: Ist der Code sinnvoll? Für einfache Fälle funktioniert es zumindest.

Nein sondern gefährlich wie du selbst merkst. catcode als Anwender Finger davon.

2. Frage: wie kann ich nun einzelne Indizes trotzdem kursiv setzen.

Diesen Code raus nehmen.

3. Frage: Das Hauptproblem ist, dass ich keine griechsichen Zeichen tiefstellen kann

s.o.

Wenn du upright griechische Buchstaben willst, dann nimm das Paket upgreek oder wenns Einheiten sind siunitx.

Verfasst: Di 10. Jul 2012, 15:08
von dude-the-best
Hi.
Danke für die Anwort. Habe des hier eingefügten Codeteil raus genommen, jedoch wirre Fehlermeldungen an manchen Stellen erhalten, die ich im Text gar nicht finden konnte. Soweit ich es verstanden habe, fehlen im Reference Teil (erstellt mit BibTex) $-Zeichen. Ich kann aber nicht in die BibTex Erstellung rein sehen, habe daher keine Ahnung was vor sich geht.

Gibt es keine andere Möglichkeit, den Code so zu belassen und nur in den seltenen Fällen, dass ich den Index auch kursiv will bzw. einen griechischen Index habe, diesen zu überschreiben mit einem Zusatzbefehl?

Verfasst: Mi 11. Jul 2012, 10:02
von cgnieder
Ich sehe auf den ersten Blick keine Schwierigkeiten mit dem Code. Ohne ein Minimalbeispiel lassen sich Deine Fehlermeldungen nicht bewerten. Vielleicht musst Du mal die Hilfsdateien löschen und erneut kompilieren.
\documentclass{article}
\usepackage[T1]{fontenc}

\begingroup
 \catcode`\_=13
 \gdef_#1{\sb{\mathrm{#1}}}
\endgroup
\newcommand*\enableuprightsubscripts{\catcode`\_=12\relax}
\newcommand*\disableuprightsubscripts{\catcode`\_=8\relax}

\enableuprightsubscripts

\begin{document}

\(x_{Hallo}\) \(x_{\delta}\) \(x\sb{kursiv}\) A_b

\end{document}
Bild

Grüße