PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abkürzungsverzeichnis



Tommi875
13-12-2008, 18:11
Hey Leute,

arbeite erst seit kurzem mit Latex; naja bzw. mit Lyx. Will mich erstmal Schritt für Schritt an die Sachen rantasten.
Ich wollte ein Abkürzungsverzeichnis erstellen und habe dies auch mit

%Abkürzungsverzeichnis einfügen
\usepackage[intoc]{nomencl}
\makenomenclature

erreicht. Jetzt hätte ich es aber gern, dass das Ganze vierspaltig ist. D.h. 1. Spalte Abkürzung, 2. Spalte Erklärung und in die 3. und 4. Spalte fortlaufend das Gleiche. Hat dazu jemand ne Idee?
Außerdem wäre es schön, wenn man den Abstand zwischen der Abkürzung und der Erklärung definieren könnte, sowie, dass die Abkürzung fett gedruckt wird.

Ich weiß, dass sind viel Wünsche auf einmal, aber vielleicht kann mir ja jemand helfen. Ich wäre euch sehr dankbar.

Euer Tom

mechanicus
13-12-2008, 18:27
Hallo,



Jetzt hätte ich es aber gern, dass das Ganze vierspaltig ist. D.h. 1. Spalte Abkürzung, 2. Spalte Erklärung und in die 3. und 4. Spalte fortlaufend das Gleiche.
Was meinst du damit?


Außerdem wäre es schön, wenn man den Abstand zwischen der Abkürzung und der Erklärung definieren könnte,

\setlength{\nomlabelwidth}{.25\hsize}


dass die Abkürzung fett gedruckt wird.

einfach textbf in die Erklärung mit rein. Oder soll alles fett werdern? Dann musst du doch nur printnomenclatur in die Fettumgebung setzen.

Gruß
Marco

Tommi875
13-12-2008, 18:43
Ah supi, mit den Abständen das klappt schon mal.

Naja ich will, dass das Ganze so in etwa gedruckt wird.

AA Abkürzung für AA CC Abkürzung für CC
BB Abkürzung für BB DD Abkürzung für DD

Sinnloses Bsp. ich weiß, aber ich glaub jez wirds deutlich, oder?

Mit Fett meine ich, dass jetzt 'AA' und 'BB'... fett gedruckt erscheinen. Die Erklärung 'Abkürzung für AA' aber nich.

Haste dafür noch nen Lösungsvorschlag Marco?

mechanicus
13-12-2008, 20:02
Hallo,

das mit dem zweispaltig weiß ich nicht :confused: . Vielleicht kennt das jemand. Das mit der Fettschrift habe ich so gemacht:

\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{blindtext}
\usepackage[intoc,german]{nomencl}
\setlength{\nomlabelwidth}{.15\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\makenomenclature
\usepackage{ifthen}
\newcommand{\mysymbol}[3][\empty]{
\ifthenelse{\equal{#1}{\empty}}
{\nomenclature{\textbf{#2}}{#3}}
{\nomenclature[#1]{\textbf{#2}}{#3}}}



\begin{document}
\tableofcontents
\chapter{foo}
\blindtext
\mysymbol[Z]{AA}{Abkürzung für AA}
\mysymbol{BB}{Abkürzung für BB}
\mysymbol{CC}{Abkürzung für CC}
\mysymbol{DD}{Abkürzung für DD}
\printnomenclature

\end{document}

Wobei ich sagen muss, nebeneinander zu packen muss nicht unbedingt sein :D, dann hat man so oft einen Zeilenumbruch in den Erklärungen.

Gruß
Marco

voss
13-12-2008, 20:49
das mit dem zweispaltig weiß ich nicht

dazu muss man die thenomenclature-Umgebung umschreiben

Herbert


\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{blindtext,multicol}
\usepackage[intoc,german]{nomencl}
\setlength{\nomlabelwidth}{.15\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\makenomenclature
\usepackage{ifthen}
\newcommand{\mysymbol}[3][\empty]{
\ifthenelse{\equal{#1}{\empty}}
{\nomenclature{\textbf{#2}}{#3}}
{\nomenclature[#1]{\textbf{#2}}{#3}}}
\makeatletter
\def\thenomenclature{\@ifundefined{chapter}{
\section*{\nomname}
\if@intoc\addcontentsline{toc}{section}{\nomname}\ fi%
}{ \chapter*{\nomname}
\if@intoc\addcontentsline{toc}{chapter}{\nomname}\ fi}%

\nompreamble
\begin{multicols}{2}
\list{}{%
\labelwidth\nom@tempdim
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\itemsep\nomitemsep
\let\makelabel\nomlabel}}
\def\endthenomenclature{%
\endlist
\nompostamble
\end{multicols}}
\makeatletter


\begin{document}
\tableofcontents
\chapter{foo}
\blindtext
\mysymbol[Z]{AA}{Abkürzung für AA}
\mysymbol{BB}{Abkürzung für BB}
\mysymbol{CC}{Abkürzung für CC}
\mysymbol{DD}{Abkürzung für DD}

\printnomenclature
\end{document}

mechanicus
13-12-2008, 22:00
Hallo Herbert,

ich hätte dazu noch eine Frage. Ich habe den Originalcode in dem Paket gefunden. Jetzt meine Frage, durch def wird doch eine neue Definition festgelegt.?
Kann dieser nicht nur durch renewcommand geändert werden?
Aber tolle Idee mit der Multicol-Umgebung.

Gruß
Marco

voss
13-12-2008, 22:09
ich hätte dazu noch eine Frage. Ich habe den Originalcode in dem Paket gefunden. Jetzt meine Frage, durch def wird doch eine neue Definition festgelegt.?
Kann dieser nicht nur durch renewcommand geändert werden?


natürlich, meistens bin ich zu faul zum Tippen ... :D
Aber hier hatte ich erst eine andere Lösung im Kopf, die nur \thenomenclature
geändert hat, weshalb ich es dann nicht mehr geändert habe.

\def ist nicht ganz ungefährlich, da es gnadenlos alles vorhandene
überschreibt.

Herbert

autsch
11-02-2009, 18:26
Hallo,

ich fand die Lösung auch super. Habe damit aber noch ein kleines Problem und bin leider nicht in der Lage selbiges selbst zu lösen:

Habe den Code wie oben eingegeben, aber mein Abkürzungsverzeichnis sieht jetzt etwas seltsam aus, weil die beiden Spalten in der Mitte zu nahe zusammenrücken (kann man irgendwie einen Abstand definieren). Die Einträge sind in Blocksatz und damit werden die Leerzeichen teilweise zu breit. Und zu guter letzt beträgt der Abstand zwischen den einzelnen Einträgen ca. 2 cm (gut 2-facher Zeilenabstand).

Wäre gut, wenn mir jemand sagen könnte woran das liegt und ob und wie ich das ändern kann.

Danke schonmal

Steffi

mechanicus
11-02-2009, 19:20
Hallo,


\documentclass[a4paper,12pt,ngerman]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{blindtext,multicol}
\usepackage[intoc,german]{nomencl}
\setlength{\nomlabelwidth}{.15\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\makenomenclature
\usepackage{ifthen}
\newcommand{\mysymbol}[3][\empty]{
\ifthenelse{\equal{#1}{\empty}}
{\nomenclature{\textbf{#2}}{#3}}
{\nomenclature[#1]{\textbf{#2}}{#3}}}
\makeatletter
\def\thenomenclature{\@ifundefined{chapter}{
\section*{\nomname}
\if@intoc\addcontentsline{toc}{section}{\nomname}\ fi%
}{ \chapter*{\nomname}
\if@intoc\addcontentsline{toc}{chapter}{\nomname}\ fi}%
\nompreamble
\setlength{\columnsep}{70pt}
\begin{multicols}{2}
\list{}{%
\labelwidth\nom@tempdim
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\itemsep\nomitemsep
\let\makelabel\nomlabel}}
\def\endthenomenclature{%
\endlist
\nompostamble
\end{multicols}}
\makeatletter


\begin{document}
\tableofcontents
\chapter{foo}
\blindtext
\mysymbol[Z]{AA}{Abkürzung für AA}
\mysymbol{BB}{Abkürzung für BB Abkürzung für BB Abkürzung für BB Abkürzung für BB}
\mysymbol{CC}{Abkürzung für CC}
\mysymbol{DD}{Abkürzung für DD}

\printnomenclature
\end{document}

Was den Zeilenabstatn angeht, was willst du denn da haben? Hiermit kannst du es einstellen:

\setlength{\nomitemsep}{1.5c} %Zeilenabstand

Gruß
Marco

michbeck
29-09-2010, 21:23
Hallo,
ich finde die Lösung auch super! Nur leider stimmt bei mir jetzt der Abstand der Überschrift nicht mehr ganz mit den anderen Abständen in meinem Dokument überein. Der Abstand ist etwas groß geraten. Hat da vielleicht jemand einen Rat für mich, wie ich das hinbekomme, dass es mit dem restlichen Dokument übereinstimmt?

Vielen Dank im Voraus!

michbeck
30-09-2010, 16:42
Hallo,
meine Frage hat sich erledigt. Es hatten sich beim copy n paste Leerzeichen eingeschlichen vor den fi. Außerdem habe ich aus chapter section gemacht, wobei ich nicht weiß, ob es auch daran gelegen hat. Ich benutze in meinem Dokument nur section und subsection, dachte, dass es evt. daran liegen könnte.

Jetzt sieht es super aus!

rstuby
30-09-2010, 17:49
Wenn du section als höchste Ebene benutzt, welche Eigenschaften von scrreprt sind es dann, die dir besser passen als bei scrartcl? (nur weil ich das immer als den Hauptunterschied betrachtet habe)