PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Glossar mit package glossaries



Windwalker
04-01-2009, 18:50
Hallo,

ich versuche nach http://ewus.de/tipp-1029.html ein Glossar mit glossaries zu erstellen.

Jedoch erhalte ich die Fehlermeldung

! LaTeX Error: Command \theglossary already defined.

Könnt ihr mir helfen?

localghost
04-01-2009, 19:01
In dem anderen Thema hast Du erwähnt, dass Du glossary (http://ctan.org/pkg/glossary) installieren wolltest [1]. Das wird wohl mit glossaries (http://ctan.org/pkg/glossaries) kollidieren. Erstelle ein Minimalbeispiel (http://minimalbeispiel.de), das den Fehler reproduziert.

[1] Forums-Thema: Fehlermeldungen bei eingebundenen Grafiken nach MikTex-Update


MfG
Thorsten¹

Windwalker
04-01-2009, 19:11
Nach einigen Recherchen, v.a. hier im Forum, habe ich erfahren, dass glossaries dem älteren glossary vorzuziehen ist.
Selbstverständlich habe ich das usepackage{glossary} durch usepackage{glossaries} ersetzt.



\documentclass[12pt,a4paper,BCOR1cm,twoside,openright]{scrbook}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%

% PACKAGES:

\usepackage{amssymb,amsmath}
\usepackage[english]{babel}
\usepackage{tocbibind}
\usepackage{parskip}
\usepackage[latin1]{inputenc}
\usepackage{a4wide}
\usepackage{makeidx}
\usepackage{glossaries}
\usepackage{url}
\usepackage{capt-of}
\usepackage{algorithmic}
\usepackage{doc}
\usepackage{graphicx}
\usepackage{colortbl}
\usepackage{fancyhdr}
\definecolor{gray}{gray}{0.8}
\usepackage{color}
\usepackage{algorithmic}
\usepackage{algorithm}
\renewcommand{\algorithmiccomment}[1]{// #1}
\usepackage{longtable}
\usepackage{listings}
\usepackage[pdfpagelabels=true]{hyperref}

% OTHER SETTINGS:

% This is 'SCHUSTER.STY' as of 25. March 1990
%
% Disable single lines at the start of a paragraph (Schusterjungen)
\clubpenalty = 10000
%
% Disable single lines at the end of a paragraph (Hurenkinder)
\widowpenalty = 10000
\displaywidowpenalty = 10000
%
% - End of 'SCHUSTER.STY' -

\bibliographystyle{alpha}

% Pagestyle:
%\pagestyle{plain}
\pagestyle{fancy}% eigenen Seitestil aktivieren}

% Avoid 'overhang':
\sloppy

\makeindex
\makeglossaries

\begin{document}
\pagestyle{empty}
\pagestyle{fancy}% eigenen Seitestil aktivieren}
\fancyfoot[LE]{\thepage}
\fancyfoot[RO]{\thepage}
\fancyfoot[C]{}
\fancyhead[C]{}
\fancyhead[RO,LE]{\leftmark}

\chapter{Introduction}
\section{Background}
\subsection{Online Social Networks} \newglossaryentry{glos:OSN}{name=Online social networks,description={Web communities, in which people create profiles, describing their own person and connect to other users, whom they know or share interest with}}
\label{social_networks}

[...]

\printglossaries[style=altlist,title=Glossar]

\bibliography{literatur} %Literatur
\appendix
\begin{appendix}
\chapter{Appendix}
\printindex
\end{appendix}

\end{document}

mechanicus
04-01-2009, 20:16
Hallo,

du solltest vielleicht mal einen Blick in die Liste der veralten Pakete schauen (hier im Forum ganz oben).
Pakete doppelt laden ist auch nicht so toll. Und bist du dir sicher, dasss du algorithm,algorithmic und listings brauchst?
Url und longtable (glaube ich) zählen zu den Paketen, welche nach hyperref geladen werden sollten.

Gruß
Marco

René Geppert
04-01-2009, 20:37
ich glaube bei longtable irrst du nicht
ich meine mich zu erinnern, dass es bei ltxtable ein problem geben kann, wenn man es vor hyperref lädt

Windwalker
04-01-2009, 20:51
Hallo,

du solltest vielleicht mal einen Blick in die Liste der veralten Pakete schauen (hier im Forum ganz oben).
Pakete doppelt laden ist auch nicht so toll. Und bist du dir sicher, dasss du algorithm,algorithmic und listings brauchst?
Url und longtable (glaube ich) zählen zu den Paketen, welche nach hyperref geladen werden sollten.

Gruß
Marco

Danke für die Tipps.
algorithm,algorithmic und listings benötige ich, da ich in meinem Projekt Algorithmen an Hand von Pseudo-Code-Beispielen erkläre.

Dennoch, mein glossaries-Problem ist leider nicht gelöst...
Besteht ein Konflikt mit einem der anderen Pakete?

René Geppert
04-01-2009, 21:08
Besteht ein Konflikt mit einem der anderen Pakete?

Ja...

indem ich einzelne pakete auskommentiere, konnt das problem auf das packet url reduziert werden, was-wie mechanicus meinte-hinter hyperref gehört

also entweder schmeißt du glossaries hinter url in der reihenfolge (kA, ob dann noch alles funktioniert) oder du schmeißt url raus

mechanicus
04-01-2009, 21:52
ich glaube bei longtable irrst du nicht
ich meine mich zu erinnern, dass es bei ltxtable ein problem geben kann, wenn man es vor hyperref lädt

Hallo Rene,

Na irdendwas war mit table :D

Gruß
Marco

Tastenbimbo
20-01-2009, 09:48
Hallo Community,

ich habe bereits im Forum gesucht, leider nicht das passende zu meinem Problem gefunden.
Ich arbeite mit MikTex und TeXnic Center (aktuelle stable Versionen).

Sobald ich einen \newglossaryentry mit Umlauten anlege, spuckt TeXnic den Fehler "Missing \endcsname inserted" aus und es zerhaut mir alles!

Die Pakete:


\documentclass[12pt,a4paper,oneside,ngerman]{scrartcl}
\usepackage[acronym]{glossaries}
\usepackage[german]{babel}
\usepackage[latin1]{inputenc}
\usepackage[pdftex]{graphicx}
\usepackage{fancyhdr}
\usepackage{geometry}
\usepackage{hyperref}
\usepackage[acronym]{glossaries}
\usepackage{listings}
\renewcommand*{\glspostdescription}{}
\makeglossaries


Der Glossar Eintrag:



\newglossaryentry{glos:Domänenwald}{
name={Domänenwald},
description={Strukturbezeichnung für die Domänengesamtstruktur}}


Ich inkludiere alle Dateien, sobald ich den obigen Eintrag auskommentiere funktioniert alles einwandfrei.

Danke & Gruß,

Tastenbimbo

rais
20-01-2009, 10:16
Hallo und Herzlich Willkommen :)


Der Glossar Eintrag:



\newglossaryentry{glos:Domänenwald}{
name={Domänenwald},
description={Strukturbezeichnung für die Domänengesamtstruktur}}


Ich inkludiere alle Dateien, sobald ich den obigen Eintrag auskommentiere funktioniert alles einwandfrei.

versuche es mit


\newglossaryentry{glos:Domaenenwald}{
name={Domänenwald},
description={Strukturbezeichnung für die Domänengesamtstruktur}}

oder erstelle ein komplettes Minimalbeispiel (http://www.minimalbeispiel.de)

MfG

Tastenbimbo
20-01-2009, 10:22
Hallo rais,

Manchmal sieht man den Wald vor lauter Bäumen nicht mehr!
Hat alles geklappt, ich finde mich jetzt einfach damit ab, dass Umlaute als Eintragsnamen nicht erlaubt sind!

Wenn das Forum weiterhin so effizient zu Lösungen kommt, hab ich in 2 Wochen die Weltformel gehackt!

Danke und Liebe Grüße,

Tastenbimbo

Pauerbuhn
20-01-2009, 16:38
Hi Community,

weiß jemand, wie ich in einem glossaries-Abkürzungsverzeichnis die ganzen Wörter im Index am Anfang groß geschrieben bekomme?

Mein Code ist:


\usepackage[acronym,nonumberlist,toc]{glossaries}
\makeglossaries

\printglossary[type=\acronymtype,style=index,title=List of Abbreviations,toctitle=List of Abbreviations]

\newacronym{RD}{R\&D}{research and development}


Ergebnis ist:

List of Abbreviations
R&D research and development

Nun würde ich aber gern "R&D Research and development" stehen haben, da dies ja dem allgemeinen Standard entspricht (oder nicht?).

Danke!!

mechanicus
20-01-2009, 16:54
Hallo,

Ich kenne den Standard nicht, aber hier eine Möglichkeit:

\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[normalem]{ulem}
\usepackage[acronym,nonumberlist,toc]{glossaries}
\makeglossaries



\begin{document}
\printglossary[type=\acronymtype,style=index,title=List of Abbreviations,toctitle=List of Abbreviations]
\newacronym{RD}{R\&D}{\uline{R}esearch and \uline{D}evelopment}
TExt \gls{RD} Text \gls{RD}
\end{document}
Gruß
Marco

Pauerbuhn
20-01-2009, 17:03
Danke & Sorry, ich meinte nicht unterstrichen sondern nur groß geschrieben am Anfang. Die Unterstreichung sollte nur auf die Großschreibung aufmerksam machen, mein Fehler ;)

Wenn ich es direkt im \newacronym groß schreibe, wird es trotzdem klein, aber im Fließtext, wo es klein sein soll, groß :o

mechanicus
20-01-2009, 17:26
Hallo,

bei mir nicht.

\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[normalem]{ulem}
\usepackage[acronym,nonumberlist,toc]{glossaries}
\makeglossaries



\begin{document}
\tableofcontents
\printglossary[type=\acronymtype,style=index,title=List of Abbreviations,toctitle=List of Abbreviations]
\clearpage
\newacronym{RD}{R\&D}{Research and Development}
\chapter{foo}
TExt \gls{RD} Text \gls{RD}
\end{document

Ergebnis: ANHANG

Gruß
Marco

rais
20-01-2009, 18:22
Moin moin,
ohne Änderung sieht es bei mir auch wie bei Marco aus ...


Nun würde ich aber gern "R&D Research and development" stehen haben,

aber im Fließtext, wo es klein sein soll (...)
aber auch das lässt sich hinbiegen;-)


\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[acronym,nonumberlist,toc]{glossaries}
\makeglossaries
\newglossarystyle{mylist}{%
\glossarystyle{index}%
\renewcommand*\glossaryentryfield[5]{%
\item \textbf{\glstarget{##1}{##2}}%
\ifx\relax ##4\relax \else \space (##4)\fi
\space \makefirstuc{##3}\glspostdescription\space##5
}
}
\begin{document}
\printglossary[type=\acronymtype,style=mylist,title=List of Abbreviations,toctitle=List of Abbreviations]
\newacronym{RD}{R\&D}{research and development}

Im Text dann \gls{RD} oder kurz \gls{RD}
\end{document}

also `research and development' im Text und `Research and development' in der Liste, vgl. ``creating a new glossary style based on an existing style'' in der glossaries-Doku -- die Beschreibung zu \makefirstuc kommt da auch gleich als Nächstes.;-)
(getestet mit glossaries v1.18)

MfG

Pauerbuhn
20-01-2009, 20:53
Hi,

danke euch beiden. Die Ursache liegt wahrscheinlich darin, dass ich kein ngerman verwende, da ich englisch schreibe. Aber mit deinem Code und der v1.18 klappt es ja so :)

Wenn ihr mir nun noch sagen könnt, ob es einen Weg gibt, dass die 2. Spalte linksbündig ist (also das #3, der Begriff, wie eine eigene Spalte mit konstantem Abstand zum linken Rand ist), dann ist es perfekt :)

Oder alternativ ausgedrückt: wie kann ich \glossarystyle{long} als Vorlage nehmen?

rais
20-01-2009, 21:44
Moin moin,


Oder alternativ ausgedrückt: wie kann ich \glossarystyle{long} als Vorlage nehmen?
etwa so:


\documentclass[a4paper,12pt,english]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[acronym,nonumberlist,toc]{glossaries}
\makeglossaries
\newglossarystyle{fucdlong}{%<--first (letter) uppercase in description, based on long style
\glossarystyle{long}%
\renewcommand*\glossaryentryfield[5]{%
\textbf{\glstarget{##1}{##2}} & \makefirstuc{##3}\glspostdescription\space##5\\
}
}
\begin{document}
\printglossary[type=\acronymtype,style=fucdlong,title=List of Abbreviations,toctitle=List of Abbreviations]
\newacronym{RD}{R\&D}{research and development}
\newacronym{ASCII}{ASCII}{american standard code for information interchange}

Im Text dann \gls{RD} oder kurz \gls{RD}

\gls{ASCII}
\end{document}

MfG

Pauerbuhn
21-01-2009, 10:47
Tausend Dank :)


Ich würde mich auch über Eure Antworten hier freuen: http://www.mrunix.de/forums/showthread.php?p=285588