Glossaries, mehrere Parents unter einer Überschrift

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Glossaries, mehrere Parents unter einer Überschrift

von Knigge » Di 10. Feb 2015, 09:44

Dank meiner Kollegen habe ich das Problem nun lösen können. Daher will ich es euch nicht vorenthalten....
\documentclass[a4paper, 12pt]{scrreprt}
\usepackage[utf8]{inputenc}

\usepackage[nonumberlist,acronym,toc,sanitize=none]{glossaries}
\usepackage{xstring}	% If Else
 
% Parent Children
\newglossaryentry{Thema1}{
name={Thema1},
description = {},
sort=a,
}

\newglossaryentry{Thema2}{
name={Thema2},
description = {},
sort=b,
}

% % Style % %
\newglossarystyle{mystyle}{
\glossarystyle{index}
\renewcommand*{\glossaryheader}{}
\renewcommand*{\glsgroupheading}[1]{}

\renewcommand*{\glossaryentryfield}[5]{
\begin{minipage}[l]{\textwidth}
\hrule
\vspace*{0.3cm}
{\Large \textbf{\glsentryitem{##1}\glstarget{##1}{##2}}}
\vspace*{0.2cm}
\hrule
\end{minipage} \\ [1em]
}
\renewcommand*{\glossarysubentryfield}[6]{
\begin{minipage}[l]{\textwidth}
	\IfSubStr{\glsentryuseriv{##2}}{RegXYZ}{
		\makebox[2 cm][l]{\glstarget{##2}{##5}}
		% \makebox[2 cm][l]{\glsentryuserii{##2}}
		\makebox[13.2 cm][l]{\parbox[tt]{13 cm}{##4}}
		% \makebox[2 cm][c] {\glsentryuseri{##2}}
		}{
		\makebox[1.8 cm][l]{\glstarget{##2}{##5}}
		\makebox[9.15 cm][l]{\parbox[tt]{9.0 cm}{##4}}
		\makebox[2.1 cm][l]{\glsentryuseriii{##2}}
		\makebox[1.5 cm][l] {\glsentryuseri{##2}}
		}
\end{minipage} \\ [0.5em]
}
\renewcommand*{\glsgroupskip}{\\}
}

% Definition Inhaltsverzeichniss
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}
\renewcommand*{\glspostdescription}{}
\makeglossaries


% % Glosserie Einträge 1
\newglossaryentry{symb:MM1}{
parent=Thema1,
name=MM1,
symbol= \ensuremath{ M_{M1}},
description = {Moment am Motor 1},
sort=MM1,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

\newglossaryentry{symb:MM2}{
parent=Thema1,
name=MM2,
symbol= \ensuremath{ M_{M2}},
description = {Moment am Motor 2},
sort=MM2,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

% % Glosserie Einträge 2
\newglossaryentry{symb:MG1}{
parent=Thema2,
name=MG1,
symbol= \ensuremath{ M_{G1}},
description = {Moment am Getriebe 1, hier kann auch ein längerer Text stehen...},
sort=MG1,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --,
user4= RegXYZ
}

\newglossaryentry{symb:MG2}{
parent=Thema2,
name=MG2,
symbol= \ensuremath{ M_{G2}},
description = {Moment am Getriebe 2},
sort=MG2,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --,
user4= RegXYZ
}

\begin{document}

% % Glosseries darstellen
\printglossary[
type=symbolslist,
style=mystyle,
title=Nomenklatur,
]


\chapter{test}
Jetzt kommt viel Text mit \glssymbol{symb:MM1} und \glssymbol{symb:MM2} und außerdem noch \glssymbol{symb:MG1} und \glssymbol{symb:MG2}.

\end{document} 
Gelöst wurde es durch die If / Else Anweisung, welche die unterschiedlichen Styles generiert. Als Kriterium wurde user4 gewählt. Man kann dies auch beliebig ändern.
Dateianhänge
abc.pdf
(56.67 KiB) 510-mal heruntergeladen

Glossaries, mehrere Parents unter einer Überschrift

von Knigge » Di 27. Jan 2015, 18:10

Hallo,

ich versuche gerade in die Welt der Glossaries vorzustoßen und treffe dabei auf massiven Widerstand. Das Problem ist, das ich mehrere Parents unter der Überschrift Nomenklatur darstellen möchte. Diese sollen jedoch unterschiedliche Style's haben.
Ich habe dazu mal ein mini Beispiel generiert, wenn man bei Glosseries von mini sprechen kann....
\documentclass[a4paper, 12pt]{scrreprt}
\usepackage[utf8]{inputenc}

\usepackage[nonumberlist,acronym,toc,sanitize=none]{glossaries}
 
% Parent Children
\newglossaryentry{Thema1}{
name={Thema1},
description = {},
sort=a,
}

\newglossaryentry{Thema2}{
name={Thema2},
description = {},
sort=b,
}

% % % % % % % % % % Style 1 % % % % % % % % % % % % % %
\newglossarystyle{mystyle}{
\glossarystyle{index}
\renewcommand*{\glossaryheader}{}
\renewcommand*{\glsgroupheading}[1]{}

\renewcommand*{\glossaryentryfield}[5]{
\begin{minipage}[l]{\textwidth}
\hrule
\vspace*{0.3cm}
{\Large \textbf{\glsentryitem{##1}\glstarget{##1}{##2}}}
\vspace*{0.2cm}
\hrule
\end{minipage} \\ [1em]
}

\renewcommand*{\glossarysubentryfield}[6]{
\begin{minipage}[l]{\textwidth}
\makebox[2 cm][l]{\glstarget{##2}{##5}}
\makebox[9.2 cm][l]{\parbox[tt]{9 cm}{##4}}
\makebox[2.6 cm][l]{\glsentryuserii{##2}}
\makebox[1.5 cm][l] {\glsentryuseri{##2}}
\end{minipage} \\ [0.5em]
}
\renewcommand*{\glsgroupskip}{\\}
}
% % % % % % % % % % Style 2 % % % % % % % % % % % % % %
\newglossarystyle{mystyle2}{
\glossarystyle{index}
\renewcommand*{\glossaryheader}{}
\renewcommand*{\glsgroupheading}[1]{}

\renewcommand*{\glossaryentryfield}[5]{
\begin{minipage}[l]{\textwidth}
\hrule
\vspace*{0.3cm}
{\Large \textbf{\glsentryitem{##1}\glstarget{##1}{##2}}}
\vspace*{0.2cm}
\hrule
\end{minipage} \\ [1em]
}

\renewcommand*{\glossarysubentryfield}[6]{
\begin{minipage}[l]{\textwidth}
\makebox[2 cm][l]{\glstarget{##2}{##5}}
\makebox[9.2 cm][l]{\parbox[tt]{9 cm}{##4}}
\end{minipage} \\ [0.5em]
}
\renewcommand*{\glsgroupskip}{\\}
}

% Definition Inhaltsverzeichniss
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}
\renewcommand*{\glspostdescription}{}
\makeglossaries


% % Glosserie Einträge 1
\newglossaryentry{symb:MM1}{
parent=Thema1,
name=MM1,
symbol= \ensuremath{ M_{M1}},
description = {Moment am Motor 1},
sort=MM1,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

\newglossaryentry{symb:MM2}{
parent=Thema1,
name=MM2,
symbol= \ensuremath{ M_{M2}},
description = {Moment am Motor 2},
sort=MM2,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

% % Glosserie Einträge 2
\newglossaryentry{symb:MG1}{
parent=Thema2,
name=MG1,
symbol= \ensuremath{ M_{G1}},
description = {Moment am Getriebe 1},
sort=MG1,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

\newglossaryentry{symb:MG2}{
parent=Thema2,
name=MG2,
symbol= \ensuremath{ M_{G2}},
description = {Moment am Getriebe 2},
sort=MG2,
type=symbolslist,
user1= \ensuremath{Nm},
user2= --
}

\begin{document}

% % Glosseries darstellen
\printglossary[
type=symbolslist,
style=mystyle,
title=Nomenklatur,
]

\printglossary[
type=symbolslist,
style=mystyle2,
title=Nomenklatur
] 

\chapter{test} 
Jetzt kommt viel Text mit \glssymbol{symb:MM1} und \glssymbol{symb:MM2} und außerdem noch \glssymbol{symb:MG1} und \glssymbol{symb:MG2}.

\end{document}

Ich möchte nun, das Thema1 mit dem Style 1 dargestellt wird und Thema 2 entsprechend mit Style 2. Das ganze soll dann noch unter einer Überschrift (Nomenklatur ) sein.
Ich habe mal das PDF Ergebniss des aktuellen Codes mit angehangen. Die jeweiligen Styles von Seite 1 und 2 sollen auf einer Seite zusammengefügt werden.
Dateianhänge
ad.pdf
(56.87 KiB) 492-mal heruntergeladen

Nach oben