Habe es geschafft, ein schönes Symbolverzeichnis zu erzeugen, mit einer Spalte Symbol, der Einheit und etwas Text.

Öffne in Overleaf
\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage[normalem]{ulem} 
\usepackage{acronym}
\usepackage[locale=DE]{siunitx} 
\begin{document}

\begin{acronym}
\acro{a}[$a$]{\acroextra{\makebox[25mm][l]{}Jahr}}
\acro{pinstsum}[$P_{inst,WUHU}^{S}$]{\acroextra{\makebox[25mm][l]{[\si{\kilo\watt}]}Installierte Wirkleistung über alle betrachteten tollen Anlagen mit diesem tollen Satz}}

\end{acronym}

\end{document}

Allerdings sieht es nicht immer schön aus. 1. Er umbricht den Text und schreibt vom Anfang der Seite an, ich möchte natürlich, dass das auf derselben Breite passiert und 2. Wie kann ich den Abstand von dem Symbol zur Einheit erhöhen?

Sieht jetzt so aus:

alt text

gefragt 23 Mär '17, 19:38

SF6's gravatar image

SF6
15953440
Akzeptiert-Rate: 0%

bearbeitet 24 Mär '17, 09:38

1

Du hattest bei den Themen das Paket acro statt acronym angegeben. Ich tendiere inzwischen dazu, dieses (also acro) zu empfehlen, weil es weit flexibler und mächtiger als acronym ist. Bist Du ggf. auch an Lösungen mit acro oder anderen Paketen wie glossaries interessiert oder interessieren Dich nur Lösungen mit acronym?

(23 Mär '17, 20:18) saputello

Der Kommentar ging etwas unter. Möglichst simpel, ich möchte keine großen Änderungen mehr vornehmen.

(24 Mär '17, 08:47) SF6

Die acronym-Umgebung ist normalerweise eine description-Umgebung. Jede \acro-Anweisung resultiert dabei in einem \item, wobei das optionale Argument von \acro zum optionalen Argument von \item wird. Entsprechend wird der Text, wenn er über mehrere Zeilen umbrochen wird, nur teilweise eingezogen. acronym ist auch nur recht mäßig auf eine Art Mehrspalten Satz eingestellt.

Man kann mit dem Paket xpatch die description-Umgebung beispielsweise durch eine labeling-Umgebung ersetzen:

Öffne in Overleaf
\usepackage{xpatch}
\xpatchcmd{\acronym}{\begin{description}}{\begin{labeling}{\hspace{10em}}}{}{}
\xpatchcmd{\endacronym}{\end{description}}{\end{labeling}}{}{}

Die Umgebung ist in der KOMA-Script-Anleitung erklärt. Sie hat (neben einem optionalen Argument) ein obligatorisches Argument, das als Muster für den gewünschten Einzug verwendet wird. Im Beispiel habe ich dafür \hspace{10em} angegeben. Der Text des Items wird also 10em vom linken Rand des Labels eingezogen. Das betrifft auch weitere Zeilen falls der Text über mehrere Zeilen umbrochen wird.

Für die Ausgabe der Einheit kann man eine neue Anweisung definieren:

Öffne in Overleaf
\newcommand*{\acroeinheit}[1]{\acroextra{\makebox[0mm][r]{#1\quad}}}

Hier wird die Einheit ebenfalls mit \acroextra von der normalen Ausgabe ausgenommen. Bei der Ausgabe in der Liste wird sie nicht nach rechts, also nicht 10em vom linken Rand ausgegeben, sondern von dieser Position aus nach links. Das wird mit \makebox[0mm][r]{…} erreicht. Damit sie dann nicht am Text danach klebt, wird mit \quad noch ein Abstand von 1em eingefügt.

Das ganze funktioniert so lange gut, solange das optionale Argument von \acro und die Einheit zusammen mit dem erwähnten Abstand kleiner als der Einzug, also kleiner als 9em (besser 8em) sind. Danach kollidieren die beiden. Man müsste dann insgesamt den Einzug von 10em erhöhen.

Hier als komplettes Beispiel:

Öffne in Overleaf
\documentclass{scrartcl}
\usepackage{acronym}
\usepackage[locale=DE]{siunitx}

\usepackage{xpatch}
\xpatchcmd{\acronym}{\begin{description}}{\begin{labeling}{\hspace{10em}}}{}{}
\xpatchcmd{\endacronym}{\end{description}}{\end{labeling}}{}{}
\newcommand*{\acroeinheit}[1]{\acroextra{\makebox[0mm][r]{#1\quad}}}

\begin{document}

\begin{acronym}
\acro{a}[$a$]{\acroeinheit{}Jahr}
\acro{pinstsum}[$P_{inst,WUHU}^{S}$]{\acroeinheit{[\si{\kilo\watt}]}Installierte Wirkleistung über alle betrachteten tollen Anlagen mit diesem tollen Satz}
\end{acronym}

\end{document}

alt text

Permanenter link

beantwortet 23 Mär '17, 20:39

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

-1

Bei mir will das nicht so recht funktionieren:

\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage[normalem]{ulem} 
\usepackage{acronym}
\usepackage[locale=DE]{siunitx} 
\DeclareSIUnit\quarterhour{15\,\minute}
\usepackage{amssymb}
\usepackage{xfrac}
\usepackage{xpatch}
\xpatchcmd{\acronym}{\begin{description}}{\begin{labeling}{\hspace{10em}}}{}{}
\xpatchcmd{\endacronym}{\end{description}}{\end{labeling}}{}{}
\newcommand*{\acroeinheit}[1]{\acroextra{\makebox[0mm][r]{#1\quad}}}

\begin{document}

\sisetup{per-mode=fraction,fraction-function=\sfrac}

\begin{acronym}[$P_{inst,WUHU}^{S}$]

\acro{ematrix}[$\uwave{\,A}_{ein,i}$]{\acroeinheit{[\si{\kilo\watt}]}testtest (Spaltenmatrix) der eingespeisten Arbeit eines Jahres viele tollen sachen bezogen für }
\acro{a}[$a$]{\acroeinheit{}Jahr}
\acro{pinstsum}[$P_{inst,WUHU}^{S}$]{\acroeinheit{[\si{\kilo\watt}]}Installierte Wirkleistung über alle betrachteten tollen Anlagen mit diesem tollen Satz}

\end{acronym}

\end{document}

Wenn ich an hspace{10em} etwas ändere, passiert bei mir rein gar nichts. Bei mir taucht da kein Abstand zwischen acro und der Einheit auf. Die kollidieren in meinem MWE.

(24 Mär '17, 08:34) SF6

Das ist keine Antwort auf die Frage, hier also vollkommen falsch! Langsam solltest Du wirklich lernen, wie diese Seite funktioniert!

(24 Mär '17, 08:42) saputello

Meine Güte, nicht so aggressiv am frühen Morgen. Ist mir echt etwas unübersichtlich hier, da passiert das schon.

(24 Mär '17, 08:46) SF6

Schau Dir doch einfach einmal an, was der Unterschied zwischen Deinem Code und meinem ist. Lies dann die Anleitung nach. Dort heißt es klipp und klar, dass acronym eine description-Umgebung ist, solange die Umgebung ohne optionales Argument aufgerufen wird. Nachdem ich erklärt habe, wie man den Platz für Label und Einheit und damit für den Einzug ändert, ist es nicht sehr sinnvoll die Voraussetzungen nun derart abzuändern. Mit optionalem Argument kann man den Einzug nicht so einfach ändern.

(24 Mär '17, 08:51) saputello

@SF6 ich hab Deine „Antwort“ mal in einen Kommentar umgewandelt. So wahnsinnig schwer ist die Seite nicht zu verstehen: es wird eine Frage gepostet, auf dieses Frage gibt es ein oder mehrere Antworten, bei Unklarheiten und Rückfragen stellt man zur Frage oder den Antworten Kommentare. Was diese Seite nicht ist, ist ein Diskussionsforum. (Dafür gibt es golatex.de und andere…) :)

(24 Mär '17, 09:13) cgnieder

Soweit so verstanden, also das mit der description Umgebung. Habe das opt. Argument bei begin{acronym} entfernt und die Änderungen am Verzeichnis vorgenommen und

xpatch... in die Präambel meiner Hauptdatei kopiert.

Wenn ich das MWE laufen lasse, sieht es so aus, wie von dir gezeigt. Alles in bester Ordnung. In meiner Arbeit ist das nicht so. Da sieht es dann so aus, wie oben im Anfangspost im Bild dargestellt. Offensichlich macht er das mit den Boxen nicht.

Muss ich bei {hspace{10em}}}{}{} oder newcommand*{acroeinheit}[1]{acroextra{makebox[0mm][r]{#1quad}}} abändern?

(24 Mär '17, 09:42) SF6

... ich habe mal xpatchmcmd...newcommand direkt vor begin{document} gekopiert, und jetzt geht alles. Vorher war es weiter oben platziert und hat dann den Output wie im Startpost geliefert.

(24 Mär '17, 10:52) SF6

@SF6: Du kannst natürlich Befehle und Umgebungen von acronym erst patchen, wenn acronym geladen ist. Das sollte eigentlich selbstverständlich sein. Am besten lädt man erst alle Pakete und fängt dann an zu konfigurieren und zu patchen. Schließlich kann es sein, dass ein anderes Paket (guter Kandidat ist oftmals hyperref dessen Funktionsweise notwendigerweise Befehle andere Pakete ändern muss) auch noch etwas umdefiniert.

(24 Mär '17, 12:06) saputello

@SF6: Unübersichtlich wird es hier übrigens nur, wenn Leute ständig aus der Reihe tanzen. Mit klarer Abfolge von gut gestellter Frage gefolgt von Antworten auf die Frage und mit einem Minimum an Kommentaren (also insbesondere keine neuen Fragen in Kommentaren verstecken!) ist das hier sehr übersichtlich. Aber wenn Dir ein solches Format nicht gefällt, gibt stellt Stefan auch diverse klassische Foren für LaTeX zur Verfügung. Du findest diese für unterschiedliche Sprachen in der rechten Spalte bei TeXblog.net. Und unterstelle nicht anderen Aggressivität, dann bekommt Du auch nichts unterstellt.

(24 Mär '17, 12:09) saputello

Ich bin Anwender, ich möchte weder ein Studium absolvieren um Latex anwenden zu können, noch um eine Frage stellen zu können. Ich bin ja dankbar für die durchaus notwendigen Hilfestellungen, aber es ist doch wohl illusorisch anzunehmen, dass sich jeder eurem Format hier anpassen wird. Es sei denn, dieser kommt auf den Latex Geschmack und verbringt darin sein Leben.

(25 Mär '17, 17:51) SF6
Ergebnis 5 von 10 show 5 more comments

===========Einschub======================

@saputello: Ich habe deine Beispieleinträge kopiert. Hoffe es geht in Ordnung.

=======================================

Ich persönlich empfehle an dieser Stelle die Nutzung von glossaries. Dieses Paket erlaubt eine Vielzahl von Einstellung und ist m. E. durch die Nutzung des Skripts makeglossaries unschlagbar. Das Skript hat eine ähnliche Funktion wie bibtex/biber und sortiert u.a. deine Einträge. Zudem werden keine Doppelungen übernommen.

Selbstverständlich haben umfangreiche Pakete häufig eine umfangreiche Dokumentation. Du solltest dich davon nicht abschrecken lassen.

Nachstehend ein Beispiel für die Nutzung.

Zum Kompilieren habe ich arara genutzt, was die Sache deutlich vereinfacht.

Öffne in Overleaf
\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\usepackage[locale=DE]{siunitx}
\usepackage[toc,symbols,xindy]{glossaries}
\makeglossaries

\glsaddkey{unit}{}{\glsentryunit}{\Glsentryunit}{\glsunit}{\Glsunit}{\GLSunit}
\glssetnoexpandfield{unit}
\newrobustcmd\newsymbol[2]{\newglossaryentry{#1}{type=symbols,#2}}
\newglossarystyle{symbolstyle}{%
  \setglossarystyle{long3col}%
  \renewenvironment{theglossary}%
    {\begin{longtable}[l]{@{}l@{\quad}l@{\quad}p{\glsdescwidth}}}%
    {\end{longtable}}%
  \renewcommand*{\glossaryheader}{%
    \bfseries\entryname&\bfseries Einheit&
    \bfseries\descriptionname\tabularnewline\endhead}%
  \renewcommand{\glossentry}[2]{%
    \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} &
    \glsentryunit{##1} & \glossentrydesc{##1} \tabularnewline
  }%
}
%List of Symbols
\newsymbol{sym:a}{name=a,sort=a,description={Jahr}}
\newsymbol{sym:pinstsum}{name=$P_{inst,WUHU}^{S}$,sort=P,unit={},unit=\si{\kilo\watt},description={Installierte Wirkleistung über alle betrachteten tollen Anlagen mit diesem tollen Satz}}
\glsaddall[types={symbols}]

\begin{document}
\tableofcontents
\section{foo}
Some text \gls{sym:pinstsum}

\printsymbols[style=symbolstyle]
\end{document}

Nachstehend das Ergebnis:

alt text

Permanenter link

beantwortet 23 Mär '17, 21:48

Marco_D's gravatar image

Marco_D
43015
Akzeptiert-Rate: 36%

bearbeitet 23 Mär '17, 21:50

Die Beispieleinträge stammen aus der Frage von SF6. Ich habe die auch nur übernommen.

(24 Mär '17, 08:37) saputello

Das sieht natürlich klasse aus. Allerdings habe ich 5 Tagen Abgabe, bin mir also nicht sicher, ob das klug ist, jetzt noch solche Änderungen vorzunehmen.

(24 Mär '17, 08:38) SF6

Für den Fragesteller laut Kommentaren wahrscheinlich uninteressant, aber mit acro würde ich das so angehen:

Öffne in Overleaf
\documentclass[german]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{acro,longtable}
\usepackage{siunitx}

\DeclareAcroListStyle{units}{extra-table}{
  table   = longtable ,
  reverse = true ,
  table-spec = llp{.5\linewidth}l
}

\acsetup{
  list-style   = units ,
  extra-format = \si ,
  extra-style  = plain
}

\DeclareAcronym{a}{
  short = $a$ ,
  long  = Jahr
}
\DeclareAcronym{pinstsum}{
  short = $P_{inst,WUHU}^{S}$ ,
  long  = Installierte Wirkleistung über alle betrachteten tollen Anlagen mit
    diesem tollen Satz ,
  extra = \kilo\watt
}

\begin{document}

\acuseall
\printacronyms

\end{document}

alt text

Mit

Öffne in Overleaf
\usepackage{acro,longtable,tabu}

\DeclareAcroListStyle{units}{extra-table}{
  table   = longtabu ,
  reverse = true ,
  table-spec = @{}llXl@{}
}

alt text

Permanenter link

beantwortet 24 Mär '17, 14:49

cgnieder's gravatar image

cgnieder
22.1k253463
Akzeptiert-Rate: 60%

bearbeitet 25 Mär '17, 11:58

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:

×9
×5

gestellte Frage: 23 Mär '17, 19:38

Frage wurde gesehen: 11,330 Mal

zuletzt geändert: 25 Mär '17, 17:52