PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anzeigen von Acronymen mit glossaries



roehrich
25-01-2013, 08:33
Hallo,

ich benutze das package glossaries mit dem Aufruf "\usepackage[toc]{glossaries}" um eine Liste von Acronymen zu erstellen, bei der ersten Verwendung verweise ich dann auf diesen Eintrag per \gls{} was mir folgende Darstellung erstellt: "Langform (Kurzform)"

Nun möchte ich die Art der Darstellung ändern: Der Eintrag im Glossar soll weiterhin erstellt werden (damit ich am Schluss eine Liste aller Abkürzungen habe) jedoch soll im Text an der Stelle des Aufrufs die folgende Darstellung stehen: "Kurzform (Langform)", also quasi genau verkehrt herum.

Ist das möglich?

Gruß
Thomas

klops
25-01-2013, 09:15
Ohne vollständiges Minimalbeispiel (http://www.mrunix.de/forums/showthread.php?t=66921) kann ich nur auf \defglsdisplayfirst in der glossaries-Anleitung verweisen, bin aber nicht 100% sicher, dass Dir das weiter hilft.

roehrich
25-01-2013, 09:47
\documentclass[oneside,pdftex,a4paper]{scrreprt}
\usepackage[ansinew]{inputenc}
\usepackage[left=3cm,right=2.5cm,top=2cm,bottom=2cm,includehea dfoot]{geometry}
\usepackage[T1]{fontenc}
\usepackage{ae,aecompl}
\usepackage[pdftex, pdfpagemode={UseOutlines}, bookmarks, colorlinks,linkcolor={blue}, citecolor={blue}, urlcolor={red}, pdfstartview={Fit},plainpages=false,pdfpagelabels]{hyperref}
\usepackage[toc]{glossaries}

\glossarystyle{long3col}
\glsdisablehyper
\setlength{\glsdescwidth}{0.82\linewidth}
\renewcommand{\glsgroupskip}{}
\renewcommand*{\glossaryname}{Glossar}
\renewcommand{\glsnamefont}[1]{\textbf{#1}}
\renewcommand{\glsdisplayfirst}[4]{#3 (#1#4)}
\makeglossaries

\newacronym{CAN}{CAN}{Controller Area Network}

\begin{document}

\gls{CAN}

\newpage

\printglossary %Glossar ausgeben

\end{document}

Eigentlich dachte ich, dass der Befehl \renewcommand{\glsdisplayfirst}[4]{#3 (#1#4)} mein Problem löst, leider hat das nicht funktioniert.

cgnieder
25-01-2013, 11:51
Vielleicht so:


% arara: pdflatex
% arara: makeglossaries
% arara: pdflatex
\documentclass{scrreprt}
\usepackage[toc]{glossaries}

\glossarystyle{long3col}
\glsdisablehyper
\setlength{\glsdescwidth}{0.82\linewidth}
\renewcommand{\glsgroupskip}{}
\renewcommand*{\glossaryname}{Glossar}
\renewcommand{\glsnamefont}[1]{\textbf{#1}}
\renewcommand{\glsdisplayfirst}[4]{#3 (#1#4)}
\makeglossaries

\renewcommand*{\CustomAcronymFields}{%
name={\the\glslongtok},%
text={\textsc{\the\glsshorttok}},%
plural={\textsc{\the\glsshorttok}\noexpand\acrplur alsuffix}%
}
\renewcommand*\SetCustomDisplayStyle[1]{%
\defglsdisplayfirst[#1]{##1##4 (\glsentrylong{\glslabel})}%
\defglsdisplay[#1]{##1##4}%
}
\SetCustomStyle

\newacronym{CAN}{CAN}{Controller Area Network}

\begin{document}

\gls{CAN}

\newpage

\printglossary %Glossar ausgeben

\end{document}

Grüße

roehrich
28-01-2013, 07:54
Vielen Dank für den Vorschlag,
leider funktioniert das nicht.

Ich bekomme den Fehler:

Undefined control sequence.
\gls@main@displayfirst ...#4->#1#a (\glsentrylong {\glslabel})
1.31 \gls{CAN}