Hallo,

das anhängende, frei kopierte Beispiel funktioniert fehlerfrei.

Was mir nicht gelingt, sind die erklärenden Indizes an Formelzeichen im Fließtext nicht in Klammern bei der ersten Erwähnung auftauchen zu lassen.

Beispiel: $m_{P}$

\newacronym{P}{P}{Permeat}

Eingabe:

Der Index P steht für ~\gls{P}.

Ausgabe derzeit:

Der Index P steht für Permeat (P).

Und im Verzeichnis dann:

P Permeat

Das Freilassen der zweiten Klammer quittiert glossaries mit einer Fehlermeldung.

\newacronym{p}{}{Permeat}

Ausgabe gewünscht:

Der Index P steht für Permeat.

Kann mir geholfen werden?

Danke. Th.

-------- %< -----------------------------------------------

\documentclass{scrreprt}
\usepackage[german]{babel}

\usepackage{tabu}

\usepackage[%
translate=babel,%
xindy={language=german-din},%
automake,%
acronym, %Abkürzungen
toc,
section
]{glossaries}
\makeglossaries

\setacronymstyle{long-short}

\newglossarystyle{acrotabu}{%
\renewenvironment{theglossary}{%
%\begin{tabu}{@{}lX<{\strut}l@{}}% ’spread 0pt’ defekt in v2.9
\begin{tabu}{@{}lX<{\strut}@{}}% ’spread 0pt’ defekt in v2.9
}{%
\end{tabu}\par\bigskip%
}%
\renewcommand*{\glossaryheader}{}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glsgroupskip}{}%
\renewcommand*{\glossentry}[2]{%
\glsentryitem{##1}% Entry number if required
\glstarget{##1}{\sffamily\glossentryname{##1}} &
\glsentrydesc{##1} %&
%##2
\tabularnewline
}%
}

\newacronym{p}{P}{Permeat}

% ========================================================
\begin{document}

Der Index~P steht für \gls{p}.

\printacronyms[style=acrotabu,title=Abkürzungen und Indizes]

\end{document}
Dieser Frage ist "Community Wiki" markiert.

gefragt 31 Dez '20, 07:54

JTh's gravatar image

JTh
1113
Akzeptiert-Rate: 0%

bearbeitet 01 Jan '21, 17:02

cgnieder's gravatar image

cgnieder
22.1k243463


Das Paket glossaries bietet verschiedene Befehle, um auf verschiedene Teile eines Stichworts zuzugreifen. Diese in in Abschnitt 6 der Anleitung ausführlich erklärt. In deinem Fall möchtest du lediglich die Beschreibung haben. Dafür dient u. a. \glsdesc. Allerdings würde ich auch empfehlen, das Formelzeichen selbst per Glossary-Zugriff zu setzen, also beispielsweise per \glstext:

\documentclass{scrreprt}
\usepackage[german]{babel}

\usepackage[%
translate=babel,%
xindy={language=german-din},%
automake,%
acronym, %Abkürzungen
toc,
section
]{glossaries}
\makeglossaries

\setacronymstyle{long-short}

\newglossarystyle{acrotabu}{%
\renewenvironment{theglossary}{%
%\begin{tabu}{@{}lX<{\strut}l@{}}% ’spread 0pt’ defekt in v2.9
\begin{tabu}{@{}lX<{\strut}@{}}% ’spread 0pt’ defekt in v2.9
}{%
\end{tabu}\par\bigskip%
}%
\renewcommand*{\glossaryheader}{}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glsgroupskip}{}%
\renewcommand*{\glossentry}[2]{%
\glsentryitem{##1}% Entry number if required
\glstarget{##1}{\sffamily\glossentryname{##1}} &
\glsentrydesc{##1} %&
%##2
\tabularnewline
}%
}

\newacronym{p}{P}{Permeat}

% ========================================================
\begin{document}

Der Index~\glstext{p} steht für \glsdesc{p}.

\printacronyms[style=acrotabu,title=Abkürzungen und Indizes]

\end{document}

Es sei außerdem darauf hingewiesen, dass bei Verwendung in einer Formel ggf. sicherzustellen wäre, dass das beschreibende Index-Symbol aufrecht gesetzt wird. Das geht beispielsweise mit \ensuremat und \text. Letzteres benötigt amsmath:

\documentclass{scrreprt}
\usepackage[german]{babel}

\usepackage{mathtools}
\usepackage{tabu}

\usepackage[%
translate=babel,%
xindy={language=german-din},%
automake,%
acronym, %Abkürzungen
toc,
section
]{glossaries}
\makeglossaries

\setacronymstyle{long-short}

\newglossarystyle{acrotabu}{%
\renewenvironment{theglossary}{%
%\begin{tabu}{@{}lX<{\strut}l@{}}% ’spread 0pt’ defekt in v2.9
\begin{tabu}{@{}lX<{\strut}@{}}% ’spread 0pt’ defekt in v2.9
}{%
\end{tabu}\par\bigskip%
}%
\renewcommand*{\glossaryheader}{}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glsgroupskip}{}%
\renewcommand*{\glossentry}[2]{%
\glsentryitem{##1}% Entry number if required
\glstarget{##1}{\sffamily\glossentryname{##1}} &
\glsentrydesc{##1} %&
%##2
\tabularnewline
}%
}

\newacronym{p}{\ensuremath{\text{P}}}{Permeat}

% ========================================================
\begin{document}

Der Index~\glstext{p} steht für \glsdesc{p}, beispielsweise in $A_{\glstext{p}}$.

\printacronyms[style=acrotabu,title=Abkürzungen und Indizes]

\end{document}
Permanenter link

beantwortet 31 Dez '20, 11:29

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×45
×7
×4

gestellte Frage: 31 Dez '20, 07:54

Frage wurde gesehen: 2,828 Mal

zuletzt geändert: 01 Jan '21, 17:02