goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 99338
Top-Poster: Johannes_B (5059)

Wir begrüßen unseren neuesten Benutzer Kayayay.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Herbarium mit LaTeX - Index erzeugen

 

jonasfitz
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 25.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.09.2010, 19:07     Titel: Herbarium mit LaTeX - Index erzeugen
  Antworten mit Zitat      
Hallo!

Ich möchte gerne mit LaTeX ein Herbarium anfertigen.
Unter de.comp.text.tex habe ich folgende Vorlage gefunden:
Code • Öffne in Overleaf

\documentclass[ngerman]{scrbook}
\usepackage{textmerg}
\usepackage{isodate}

\pagestyle{empty}

\Fields{\name\latname\familie\gattung\fundort\datum\lage\finder\bestimmer}

\begin{document}
\Merge{pflanzen.dat}{
\phantom{
}
\vfill
\hfill\fbox{
\begin{minipage
}{6cm}
{\center
{\bf\LARGE \name
}\\
{\em\latname}\\[2ex]}
Familie: \hfill{\em\familie}\\
Gattung: \hfill{\em\gattung}\\[2ex]
Finder: \hfill{\em\finder}\\
Bestimmer: \hfill{\em\bestimmer}\\[2ex]
Gefunden am \origdate\printdate{\datum}\ in \fundort\ (\lage).
\end{minipage}
}\newpage
}
\end{document}
 

Zitat:

pflanzen.dat enthält dann zeilenweise:
Name deutsch
Name lateinisch
Pflanzenfamilie
Pflanzenordnung
Fundort
Funddatum
Standort
Finder
Bestimmer


Soweit klappt das Ganze.
Jedoch möchte ich, dass auch ein Index der Pflanzen erstellt wird.
Bei dem Link oben gibt es schon einen Vorschlag, nämlich:
Zitat:
ach ja, der Index fehlte, dafuer noch \usepackage{makeidx}\makeindex
in den Vorspann, \index{\familie!\name} in das 2.Argument von Merge
und \printindex dorthin, wo das Verzeichnis stehen soll.


Wo genau füge ich die Codes ein? Mag mir jemand einen Tipp geben bzw. den ganzen Quelltext für obiges Herbarium samt Index geben?

"In das 2te Argument von \Merge..." verstehe ich nicht, bin relativer Anfänger.

Danke für alle Hinweise dazu oder sonstige Vorschläge.

MfG,
Jonas
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 25.09.2010, 19:57     Titel:
  Antworten mit Zitat      
Die Vorlage, so wie Du sie verwendest hast, taugt absolut nichts. Zum einen sind da diverse obsolete Anweisungen wie \bf drin (siehe auch l2tabu), zum anderen produziert die Vorlage auch noch Fehler. Ich habe mal versucht das Aussehen - ohne Fehler! - nachzubauen. Ich empfehle aber dringend die Anleitungen zu den verwendeten Paketen - auch die Anleitung zu textmerg - zu lesen. Das steht auch drin, was das zweite Argument von \Merge zu bedeuten hat: Das ist der Code, der für jeden Datensatz ausgeführt wird, wobei die Feldbefehle zuvor jeweils entsprechend der Datendatei definiert werden.

Code • Öffne in Overleaf
\begin{filecontents*}{pflanzen.dat}
Name deutsch
Name lateinisch
Pflanzenfamilie
Pflanzenordnung
Fundort
Funddatum
Standort
Finder
Bestimmer
Nume deutsch
Nume lateinisch
Pflunzenfamilie
Pflunzeordnung
Fandort
Fanddatum
Stundort
Funder
Bestummer
\end{filecontents*}
\documentclass[ngerman]{scrartcl}
\usepackage{textmerg}
\usepackage{isodate}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{tabularx}
\usepackage{makeidx}\makeindex

\pagestyle{empty}

\Fields{\name\latname\familie\gattung\fundort\datum\lage\finder\bestimmer}

\begin{document}
\tableofcontents

\Merge{pflanzen.dat}{%
  \addsec[\name\ \protect\normalfont\protect\emph{(\latname)}]
         {\name\\{\normalfont\normalsize\emph{\latname}}}%
  \index{\familie!\name}
  \begin{tabularx}{8cm}{|X>{\em}r|}
    \hline
    Familie:   & \familie\\
    Gattung:   & \gattung\\
    Finder:    & \finder\\
    Bestimmer: & \bestimmer\\
    Gefunden am: & \datum \\
    \strut\phantom{Gefunden} in: & \fundort\ (\lage)\\
    \hline
  \end{tabularx}
}

\printindex
\end{document}

Typografisch ist das IMHO grauenvoll. Aber wenigstens funktioniert es und zeigt auch, wie man einen Index erstellen kann.

Die Aufrufreihenfolge sollte übrigens sein:
  • latex Dokumentname.tex
  • latex Dokumentname.tex
  • makeindex Dokumentname.idx
  • latex Dokumentname.tex
Die Endungen .tex und .idx kann man auch weglassen. Statt latex kann man natürlich auch pdflatex verwenden. Je nach verwendetem Editor gibt es auch Knöpfe für den Aufruf der einzelnen Programme.

BTW: LaTeX selbst können wir Dir hier leider nicht beibringen. Falls Dir also noch die Grundkenntnisse fehlen, sei ausdrücklich auf die zweite Zeile meiner Signatur hingewiesen. Falls Du dann aber noch Probleme hast, frag ruhig möglichst konkret nach.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

jonasfitz
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 25.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.09.2010, 20:44     Titel: Danke.
  Antworten mit Zitat      
Hallo KOMA,

vielen Dank für den Code und die schnelle Antwort.
Du hast mir sehr weitergeholfen.

Ausgehend von deiner Vorlage werde ich noch ein bisschen basteln.

MfG,
Jonas
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 26.09.2010, 11:33     Titel:
  Antworten mit Zitat      
Da Du praktisch alle Informationen geliefert hattest, die für das Verständnis, Analyse und Lösungsvorschlag notwendig waren, war es mir ein Vergnügen. Vor allem war es eine Herausforderung, bei der ich sehr zuversichtlich sein konnte, auch zu einem Ergebnis zu kommen. Das einzige, was verbesserungsfähig gewesen wäre, wäre ein vernünftiger Datensatz (möglichst in einer filecontents*-Umgebung) gewesen. So habe ich eben einen Blödsinnsdatensatz selbst erstellt.

BTW: Wenn die Frage damit beantwortet ist, solltest Du den Status entsprechend anpassen. Wenn die Frage noch nicht beantwortet ist, bitte angeben, was noch fehlt. Falls Du zunächst davon ausgehst, dass die Frage beantwortet ist und Du später feststellst, dass doch noch etwas fehlt, kannst Du natürlich den Status auch mehrfach ändern.

Markus
(Moderator)
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

jonasfitz
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 25.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.09.2010, 13:31     Titel:
  Antworten mit Zitat      
Hallo!

Zitat:
Wenn die Frage damit beantwortet ist, solltest Du den Status entsprechend anpassen.

Ja, die Frage ist damit beantwortet.

Zur weiteren Info - für alle, die auch ein Herbarium mit LaTeX erstellen wollen:
Nach
Code • Öffne in Overleaf
\end{tabularx}
habe ich noch
Code • Öffne in Overleaf
\newpage
eingefügt, weil ich ja möchte, dass pro Seite nur eine Pflanze eingeklebt wird.

Habe noch
Code • Öffne in Overleaf
\pagestyle{empty}
ersetzt durch
Code • Öffne in Overleaf
\pagestyle{plain}
, damit auch Seitenzahlen angezeigt werden.

Desweiteren werde ich mit dem geometry-Paket folgenden Code in die Präambel einfügen, um die Ränder zu verkleinern. Es soll ja möglichst viel Platz für das Trockenpräparat sein, also sollte die Tabelle möglichst weit an den Rand gedrängt werden können.
Code • Öffne in Overleaf

\usepackage[%
left=2.7cm, right=2.7cm,%
top=2.3cm, bottom=2.3cm]{geometry}
 


Als nächstes möchte ich, dass die Tabelle ziemlich weit unten (entweder links oder rechts) platziert wird - auf diese Weise soll mehr Platz für die getrocknete Pflanze auf der Seite sein.
Ich denke, das kann ich irgendwie mit
Code • Öffne in Overleaf
\vfill
bewerkstelligen.
Ich weis noch nicht genau wie, jedoch werde ich es herausfinden.
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de