PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sections Sortieren



AureusPhoenix
19-01-2013, 17:31
Hi Leute,
ich bin dabei eine Art "Wörterbuch" mit wichtigen Begriffen einer Vorlesung anzulegen. Nun möchte ich aber nicht alle Einträge von Hand sortieren, sondern möchte gerne eine automatische, alphabetische Sortierung haben.

Wisst ihr, ob es ein Paket gibt, was das kann? Oder gibt es eine einfache Möglichkeit das selbst umzusetzen?

Vielen Dank!
Grüße

ElGato
19-01-2013, 21:17
Wieso legst Du kein Stichwortverzeichnis (http://www.google.de/url?sa=t&rct=j&q=latex%20makeindex&source=web&cd=3&ved=0CD4QFjAC&url=http%3A%2F%2Fwww2.informatik.hu-berlin.de%2F~piefel%2FLaTeX-PS%2FV03-index.pdf&ei=jg37UJfPIZHmtQaXooG4Dg&usg=AFQjCNHwBd-z4KvcO-GAf1c3cBpkFE0c1w&cad=rja) (Index) an? Oder willst Du etwas ganz spezielles?

AureusPhoenix
19-01-2013, 21:43
Ziel des Dokumentes soll es am Ende nicht sein, Etwas umfangreich zu erklären. Es soll eher sowas wie ein Wörterbuch oder Lexikon werden. (Natürlich vom Umfang her viel kleiner - Ich würde sagen 200-300 Begriffe).

Da es also keine inhaltlich sinnvolle Reihenfolge gibt, wollte ich alle Abschnitte alphabetisch Ordnen lassen. Am liebsten sollte das etwa so funktionieren:


\entry{Zellwand}
Die Zellwand besteht aus Cellulose

\entry{Glucose}
Glucose ist ein Einfachzucker.

LaTex müsste dann alle entry-Titel auslesen, in eine Datei zwischenspeichern, sortieren und beim nächsten Compilerdurchlauf die Abschnitte umsortieren.

Geht das irgendwie?

Feuersaenger
20-01-2013, 20:19
Hallo AureusPhoenix,

Da hilft Dir womoeglich ein Glossar weiter, und damit bestimmt http://www.ctan.org/pkg/glossaries . Wenn ich mich nicht irre, kann das sowas (ist bei mir schon was laenger her)

Mit liebem Gruss

Christian

ctansearch
20-01-2013, 22:41
Prinzipiell würde das schon gehen, wäre aber das gleiche, als ob man einen Nagel mit der Säge einschlägt. Geht auch, ist aber das falsche Werkzeug.

Die einfachste Lösung ist Disziplin beim Schreiben. Wenn Du Dir eine Struktur erstellst und diese verfolgst, geht alles wie von selbst.



%A
A
%AA
AA
%Aa
Aa
Aar

usw

ctansearch
23-01-2013, 00:28
wird später wieder eingestellt

ctansearch
28-01-2013, 22:51
Tja, leider gibt LaTeX das nicht her.
Zwar kann man die Einträge mit einer Ordnungszahl versehen, die alle Buchstaben ausser den Umlauten berücksichtigt, eine Abruf- und Sortierfunktion erfordert aber ein paar Millarden \if \fi Bedingungen, die LaTeX nicht verarbeiten kann. Man muß dann trotzdem noch auf die sort- Funktion des Betriebsssystems zurückgreifen, also macht der Umweg über LaTeX keinen Sinn. Mit viel Aufwand kann man den Aufwand um den Faktor 27 reduzieren, aber auch dann ist LaTeX überfordert.

Das Beste ist, das Sortieren über externe Programme durchzuführen und den LaTeX-Code seperat einzufügen.

Zum Sortieren eigenen sich sort, Tabellenkalkulationen oder Datenbanken.

ctansearch
04-05-2013, 22:58
So, Problem gelöst.
Mit Hilfe eines Code-Monsters von 7 MB ist es mir gelungen, eine solche Sortierfunktion mit den Bordmitteln von TeX zu erstellen.
Es ist auf 50000 Einträge getestet, vernünftige Laufzeiten erhält man bis <1000 Einträge. Mehr ist in TeX nicht machbar.

Man kann drei Ebenen sortieren (sections,subsections,subsubsections) und man kann es leicht auf Tabellen, Itemize und description übertragen, man kann auch zwischen diesen Umgebungen umschalten.

Quelltext unter http://biocoen.org

bobmalaria
04-05-2013, 23:11
du liebst diese programmieraufgaben, oder? :)

ctansearch
04-05-2013, 23:15
:-) :-)

Ja!
Die schönste Aussage ist: Das geht nicht!
Da fällt mein Ball um...