Chemische Formel im Akürzungsverzeichnis Thema ist als GELÖST markiert

Inhalt, Abbildungen, Tabellen, Quellcodes und andere Verzeichnisse


Chemiker1328

Chemische Formel im Akürzungsverzeichnis

Beitrag von Chemiker1328 »

Hallo, ich hätte gerne eine chemische Formel in der Liste der Abkürzungen, wie im Beispiel gezeigt. Kann mir da jemand helfen?

\documentclass[a4paper,10pt]{scrreprt}
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage[english]{babel}
\usepackage{lmodern}\usepackage[xindy,acronym,toc,nonumberlist,nopostdot]{glossaries}
\makeglossaries
\loadglsentries{glossary}
\usepackage[method=mhchem]{chemmacros}
\chemsetup{modules=reactions}

\begini{document}
\newacronym{abc}{ABC}{\ch{A2B3C4}}

\printglossary[type=\acronymtype,style=long]
\end{document}

Gast

Beitrag von Gast »

Davon abgesehen, dass Dein Beispiel wegen verschiedener vermeidbarer Fehler nicht lauffähig ist: \printglossary zeigt in der Voreinstellung nur die Abkürzungen an, die auch verwendet wurden. Wie man das ändern kann, steht in der Anleitung.

Chemiker1328

Beitrag von Chemiker1328 »

natürlich habe ich im dokument die einträge mit \gls{abc} aufgerufen, des weiteren hat bei meinem dokument alles funktioniert, nur wenn ich deb befehl für eine chemische formel \ch{...} bei \newacronym einfüge, erzeugt das einen fehler. nur text ohne \ch{...} erzeugt keinen fehler....

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Chemiker1328 hat geschrieben:natürlich habe ich im dokument die einträge mit \gls{abc} aufgerufen,
Warum nicht in Deinem Beispiel?

Du könntest den Befehl \glsnoexpandfields vor \newacronym{abc}{ABC}{\ch{A2B3C4}} aufrufen.

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

  1. Die Option method=mhchem gibt es seit September 2015 nicht mehr; sie heißt formula=mhchem und sollte via \chemsetup gesetzt werden und nicht als Paketoption.
  2. Wenn Du mhchem verwendest, solltest Du auch dessen Befehl \ce verwenden. Der Befehl \ch stammt von chemformula
Also entweder
\usepackage{chemmacros}
\chemsetup{
  formula = chemformula ,
  modules=reactions
}

\newacronym{abc}{ABC}{\ch{A2B3C4}}
oder
\usepackage{chemmacros}
\chemsetup{
  formula = mhchem ,
  modules=reactions
}

\newacronym{abc}{ABC}{\ce{A2B3C4}}
Beides funktioniert…
Clemens
Paketauthor

Gast

Beitrag von Gast »

Chemiker1328 hat geschrieben:wenn ich deb befehl für eine chemische formel \ch{...} bei \newacronym einfüge, erzeugt das einen fehler.
Bei mir nach Beseitigung der offensichtlichen Fehler in deinem Beispiel und Erweiterung um einen entsprechenden \gls-Befehl nicht. Mach also bitte wirklich ein Minimalbeispiel nach Anleitung. Sonst ist dir nicht zu helfen.

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Anonymous hat geschrieben:
Chemiker1328 hat geschrieben:wenn ich deb befehl für eine chemische formel \ch{...} bei \newacronym einfüge, erzeugt das einen fehler.
... Beseitigung der offensichtlichen Fehler in deinem Beispiel und Erweiterung um einen entsprechenden \gls-Befehl nicht...
Außer eben man hat eine alte Version von chemmacros (vor v5.0). Dann nämlich bedeutet \usepackage[formula=mhchem]{chemmacros}, dass mhchem geladen wird und nicht chemformula. Und wenn das der Fall ist, dann ist auch \ch tatsächlich nicht definiert. Die moderne Entsprechung der Situation wäre:
\documentclass{article}
\usepackage{glossaries}
\makeglossaries

\usepackage{chemmacros}
\chemsetup{
  formula = mhchem ,
  modules=reactions
}

\newacronym{abc}{ABC}{\ch{A2B3C4}}

\begin{document}

\gls{abc}

\end{document}
Grüße
Clemens
Paketauthor

Gast

Beitrag von Gast »

Sollte nicht ein Update bei einem Problem der erste Schritt sein? Wenn ein solches nicht in Frage kommt, sollte man dann nicht zumindest die verwendete Paketversion ermitteln und angeben?

Antworten