In Bezugnahme auf Clemens' Antwort auf die Frage Reaktionsschema/ Mechanismus ergibt sich bei mir mit der Anwendung ein Problem. Ich denke, dass ein anderes Paket, das ich nutze, auf die gleichen Befehle zurückgreift bin mir jedoch nicht sicher. Ich habe den oberen Teil des Minimalbeispiels so gelassen, da ansonsten noch mehr Fehlermeldungen auftauchen. Ich hoffe das Minimalbeispiel entspricht den Anforderungen (für Anregungen bin ich immer zu haben :)): Öffne in Overleaf
\documentclass[12pt,ngerman,smallheadings,pointlessnumbers]{scrreprt} \usepackage{ae} \usepackage{setspace} \usepackage[hyphens]{url} \usepackage[paper=a4paper,left=30mm,right=25mm,top=40mm,bottom=25mm, headheight=40pt]{geometry} \usepackage[latin1]{inputenc} \usepackage{babel} \usepackage[T1]{fontenc} \usepackage[headsepline, automark,footsepline,plainfootsepline]{scrpage2} \usepackage{chemfig} \newcommand\setpolymerdelim[2]{\def\delimleft{#1}\def\delimright{#2}} \def\makebraces[#1,#2]#3#4#5{% \edef\delimhalfdim{\the\dimexpr(#1+#2)/2}% \edef\delimvshift{\the\dimexpr(#1-#2)/2}% \chemmove{% \node[at=(#4),yshift=(\delimvshift)] {$\left\delimleft\vrule height\delimhalfdim depth\delimhalfdim width0pt\right.$};% \node[at=(#5),yshift=(\delimvshift)] {$\left.\vrule height\delimhalfdim depth\delimhalfdim width0pt\right\delimright_{\rlap{$\scriptstyle#3$}}$};}} \setpolymerdelim[] \newcommand{\pol}[1]{\rlap{${}^{^{\color{red} \delta #1}}$}} \newcommand{\ind}[0]{\text{ }} \usepackage{chemmacros} \definesubmol{nitro}{ -\chemabove{N}{\fscrp} (=[1]\lewis{20,O}) (-[7]\chemabove{\lewis{206,O}}{\hskip1.5em\fscrm}) } \tikzset{ elmove/.style={red,-el,shorten >=3pt, shorten <=3pt} } \usepackage{xstring} \usepackage{chemstyle} \usepackage[version=4, arrows=pgf-filled]{mhchem} \usepackage{mathtools} \usepackage{fixmath} \usepackage{amsmath} \usepackage{siunitx} \usepackage{tikz} % To generate the plot from csv \usetikzlibrary{positioning} \usetikzlibrary{tikzmark} \usepackage{tkz-euclide}% lädt tikz und damit auch xcolor \colorlet{lightgray}{black!10} \colorlet{pencil}{black!25} \usetkzobj{all} \usepackage{tikzorbital} \begin{document} \minisec{Aktivierung der Salpetersäure durch die Schwefelsäure} \vspace{2\baselineskip} \begin{center} \schemestart \chemfig{H@{O}\lewis{26,O}!{nitro}} \+ \chemfig{@{H}H-[@{b1}]@{O1}OSO_3H} \arrow(.base east--.base west){<=>[][][3.5pt]} \chemfig{H|\chemabove{\Lewis{2,O}}{\fscrp}(-[6,,2]H)!{nitro}} \+ \chemfig{HSO_4^{\fminus}} \schemestop \chemmove[elmove]{ \draw (O).. controls +(north:2cm) and +(105:2.5cm).. (H); \draw (b1).. controls +(north:1cm) and +(105:1cm).. (O1); } \end{center} \minisec{Bildung des Nitronium-Ions} \bigskip \begin{center} \schemestart \chemfig{ H|@{O}\chemabove{\Lewis{2,O}}{\fscrp}(-[6,,2]H) -[@{b1}]\chemabove{N}{\fscrp} (=[1]\lewis{20,O}) (-[@{b2}:315,,,,]@{O2}\chemabove{\lewis{206,O}}{\hskip1.5em\fscrm}) } \arrow(.base east--.base west){->[][][3.5pt]} \chemfig{H_2O} \+ \chemfig{\lewis{26,O}=\chemabove{N}{\fscrp}=\lewis{26,O}} \schemestop \chemmove[elmove]{ \draw[shorten >=10pt](b1).. controls +(90:1cm) and +(90:1cm).. (O);; \draw (O2).. controls +(90:7mm) and +(45:5mm).. (b2); } \end{center} \end{document} Wenn ich deinen Code nutze bekomme ich folgende Fehlermeldungen: Öffne in Overleaf
! LaTeX error: "kernel/property-unknown" ! LaTeX error: "kernel/property-unknown" ! LaTeX Error: Command \schemename already defined. ! LaTeX Error: Command \listschemename already defined. ! LaTeX Error: Command \listofschemes already defined. ! LaTeX Error: Command \orbital already defined. ! LaTeX error: "regex/replacement-missing-rbrace" ! chemmacros error: "new-Particle" ! chemmacros error: "undefined" ! No room for a new \dimen . \ch@ck ...\else \errmessage {No room for a new #3} Ist es auch möglich den Pfeil der von der Bindung zum O geht auch unten an das O zu bringen. In etwa so: Gruß Suku gefragt 12 Nov '17, 12:21 Suku |
Du musst zum einen ein Update Deiner TeX-Distribution machen, die Fehlermeldung Öffne in Overleaf
kernel/property-unknown deutet darauf hin, dass Deine Der Konflikt mit Das Paket Wenn man das alles berücksichtigt und Deine Präambel folgendermaßen ändert, dann gibt es keine Fehlermeldungen mehr und nur noch eine Warnung (die auf Öffne in Overleaf
\documentclass[12pt,ngerman,headings=small,numbers=noenddot]{scrreprt} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{babel} \usepackage[paper=a4paper,left=30mm,right=25mm,top=40mm,bottom=25mm, headheight=40pt]{geometry} \usepackage[headsepline, automark,footsepline,plainfootsepline]{scrpage2} \usepackage{lmodern} \usepackage{setspace} \usepackage[hyphens]{url} \usepackage{chemfig} % die folgenden Befehle sind unnötig, wenn man chemmacros verwendet, % siehe dessen `polymers'-Modul: % \newcommand\setpolymerdelim[2]{\def\delimleft{#1}\def\delimright{#2}} % \def\makebraces[#1,#2]#3#4#5{% % \edef\delimhalfdim{\the\dimexpr(#1+#2)/2}% % \edef\delimvshift{\the\dimexpr(#1-#2)/2}% % \chemmove{% % \node[at=(#4),yshift=(\delimvshift)] % {$\left\delimleft\vrule height\delimhalfdim depth\delimhalfdim % width0pt\right.$};% % \node[at=(#5),yshift=(\delimvshift)] % {$\left.\vrule height\delimhalfdim depth\delimhalfdim % width0pt\right\delimright_{\rlap{$\scriptstyle#3$}}$};}} % \setpolymerdelim[] % \newcommand{\pol}[1]{\rlap{${}^{^{\color{red} \delta #1}}$}} % \newcommand{\ind}[0]{\text{ }} \usepackage{chemmacros} \usepackage[version=4, arrows=pgf-filled]{mhchem} \chemsetup{ modules = all , formula = mhchem , % polymers/delimiters = [] % Default-Einstellung! } \definesubmol{nitro}{ -\chemabove{N}{\fscrp} (=[1]\lewis{20,O}) (-[7]\chemabove{\lewis{206,O}}{\hskip1.5em\fscrm}) } \tikzset{ elmove/.style={red,-el,shorten >=3pt, shorten <=3pt} } % \usepackage{xstring} % <<<<< wofür ? \usepackage{chemstyle} % <<<<< wofür ? Wahrscheinlich bietet chemmacros schon das benötigte % \usepackage{mathtools} % <<<<< wird von chemmacros geladen % \usepackage{fixmath} % <<<<< wofür ? % \usepackage{amsmath} % <<<<< wird von chemmacros geladen % \usepackage{siunitx} % <<<<< wird von chemmacros geladen % \usepackage{tikz} % <<<<< wird von chemfig geladen \usetikzlibrary{positioning,tikzmark} \usepackage{tkz-euclide} \colorlet{lightgray}{black!10} \colorlet{pencil}{black!25} \usetkzobj{all} % \usepackage{tikzorbital} % verursacht Konflikt mit chemmacros \begin{document} beantwortet 13 Nov '17, 13:36 cgnieder Ein Tipp: lade ein Paket nur dann, wenn Du sicher weißt, wofür es da ist
(13 Nov '17, 13:36)
cgnieder
Hallo zusammen, es tut mir leid, dass die Rückmeldung erst so spät kommt. Aber ich habe chemmacros endlich zum laufen bekommen. Ich habe die Tipps befolgt und ich hatte zuletzt eine Fehlermeldung die sich auf den Befehl el bezog. Ich konnte feststellen, dass sich jurabib (kann an meiner Einrichtung liegen) und chemmacros nicht vertragen... Ich kompiliere jetzt das Literaturverzeichnis einfach separat von meinem eigentlichen Dokument. Vielen Dank noch einmal für die Unterstützung. Liebe Grüße Suku
(27 Jan '18, 13:08)
Suku
|
Hi. Vielen Dank für den Hinweis. Ich versuche gleich mein Bestes. Mein Rechner installiert gerade ein Update -.- Gibt es eine Mögkichkeit in Kommentaren Bilder anzuhängen? Und gibt es evtl. einen Leitfaden zu dem Forum an dem ich mich orientieren kann? Bin leider nicht so erfahren im Umgang mit Foren. Viele Grüße Suku
Off-Topic:
ae
solltest Du überhaupt nicht mehr verwenden. Das war mehr oder weniger ein Hack, als eslmodern
noch nicht gab.latin1
eingestellt ist? Alle mir bekannten LaTeX-Editoren verwenden inzwischen in der Voreinstellungutf8
.latin1
kenne ich eigentlich nur noch von uralten LaTeX-Vorlagen.scrpage2
ist veraltet und sollte durchscrlayer-scrpage
ersetzt werden.amsmath
nachmathtools
ist überflüssig.…
…
\def
ist immer gefährlich.No room for a new …
kann man übrigens am einfachsten durch Umstieg auflualatex
vermeiden. Das kennt solche Probleme nicht. Dazu muss das Dokument aber wirklich inutf8
codiert werden undae
sollte man dann auch nicht mehr laden. Siehe auch: Wie steige ich auf Xe/LuaLaTeX um?Off-Topic: @saputello
Ich nutze die Dipl-Vorlage meines Mannes von 2007. Habe nichts aktualisiert, da es funktioniert. Ich arbeite mit TexMaker auf dem Mac, ob der die Pakete/ Optionen nun braucht oder nicht... keine Ahnung.
Ich habe mit der Zeit einfach Pakete, die ich brauche, anhand von Beispielen in Foren implementiert, d.h. in der Präambel sind wahrscheinlich einige überflüssige Pakete. Irgendwann nehme ich mir die Zeit um die Vorlage aufzuräumen, aber aktuell für mich nicht machbar.
Aber deine Anregungen werde ich gerne umsetzten. Danke.
Gruß Suku
@saputello ehrlicherweise muss man sagen, dass die Abstände nach den Überschriften aus meiner Antwort auf die vorherige Frage stammen und der Tatsache geschuldet sind, dass die mit
remember picture, overlay
(implizit durch\chemmove
gesetzt) gezeichneten Elektronenverschiebungspfeile sonst über die Überschriften gezeichnet worden wären.