Seite 1 von 1

Reaktionsschema mit chemfig

Verfasst: Mo 24. Feb 2014, 15:42
von Domste
Hallo,

ich mache gerade meine ersten Gehversuche mit Latex und chemfig und stehe vor einer Fehlermeldung, die mit absolut nichts sagt:
\documentclass{article}

\usepackage{chemfig}

\begin{document}
\schemedebug{false}
\schemestart
%Valeriansäure
2 \chemfig{-[:30]-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{Valerians\"aure}
\arrow{[+8e^- +8H^+][-2 H_2O]}
%Lävulinsäure
2 \chemfig{-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{L\"avulins\"aure}
\schemestop

\end{document}
pdflatex wirft mir dazu diverse Fehlermeldung aus:
! Missing $ inserted.                                                           
<inserted text>                                                                 
                $                                                               
l.14 \chemfig                                                                   
             {-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{L\"avul... 
! Undefined control sequence.                                                  
\CF@arrow@vi ...ype []\@nil [][][][][][][][]\@nil                              
                                                  \def \CF@current@nodename ...
l.14 \chemfig                                                                  
             {-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{L\"avul...
! Missing $ inserted.
<inserted text>      
                $    
l.15 \schemestop     
Das resultierende pdf sieht fürchterlich aus. Die Moleküle sind da, aber statt dem Pfeil sind ne ganze Menge eckige Klammern sowie der zum Pfeil gehörige Text quer durchs erste Molekül. Ich sitze jetzt schon eine Weile drüber, aber ich werde nicht schlauer. Mag mich jemand erleuchten?

Gruß
Domste

Verfasst: Mo 24. Feb 2014, 16:45
von Johannes_B
Für Dinge wie sub- und Supscripts musst du in den Mathemodus wechseln. Ich würde dir aber für sowas zusätzlich das Paket chemmacros empfehlen.

Schau dir bitte unbedingt die Beiträge von Clemens auf TexweltWissen an. Das wird dir das Arbeiten erleichtern.
\listfiles
\documentclass{article}

\usepackage{selinput}
\SelectInputMappings{
	adieresis={ä},
	germandbls={ß}
}
\usepackage[T1]{fontenc}
\usepackage{chemmacros}
\usepackage{chemfig}
\usepackage{showframe}

\begin{document}
\schemedebug{false}
\schemestart
2
\chemfig{-[:30]-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{Valeriansäure}
\arrow{->[\ch{+ 8 e- + 8 H+}][\ch{- 2 H2O}]}
2
\chemfig{-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}{Lävulinsäure}
\schemestop


\begin{reaction}
2 "\chemfig{-[:30]-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}" 
->[8 e- + 8 H+ ][ - 2 H2O]
2
"\chemfig{-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}"
\end{reaction}

\end{document} 

Verfasst: Mo 24. Feb 2014, 17:40
von Domste
Danke für die schnelle Hilfe und insbesondere auch den Link, Johannes.
Ich habe das ganze jetzt soweit umgebaut, dass der Name unter dem Molekül steht und der Pfeil die passende Länge hat und was soll man sagen? Es sieht super aus. Ich versuche nur noch heraus zu finden, warum das erste Minus unter dem Pfeil hochgestellt ist. Macht das chemmacros?
\schemedebug{false}
\schemestart
2
\chemname{\chemfig{-[:30](=[:90]O)-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}}{Lävulinsäure}
\arrow{->[\ch{+ 8 e- + 8 H+}][\ch{- 2 H2O}]}[0,1.5]
2
\chemname{\chemfig{-[:30]-[:-30]-[:30]-[:-30](-[:30]OH)=[:270]O}}{Valeriansäure}
\schemestop

Verfasst: Mo 24. Feb 2014, 17:42
von Johannes_B
Schau einfach mal bei mir. Manchmal braucht der Parser von Chemmacros noch ein zusätzliches Leerzeichen.

Eventuell schreibt Clemens ja noch was dazu, ich hab mich damit noch nicht näher beschäftigt.

Trial and Error ;-)

Verfasst: Mi 12. Mär 2014, 12:08
von cgnieder
Domste hat geschrieben:Ich versuche nur noch heraus zu finden, warum das erste Minus unter dem Pfeil hochgestellt ist. Macht das chemmacros?
Bis Version 4.3 hat chemformula (das Paket vom chemmacros-Bümdel, das den Befehl \ch bereitstellt) ein einzelnes - als Zeichen für eine negative Ladung interpretiert. Seit Version 4.4 (2014/01/29) wird es ganz analog zum + behandelt. Mit einer aktuellen TeX-Distribution sollte also alles aussehen wie gewünscht.

Grüße