Sie sind hier

Suche Lösung für tabellenartige Aufzählung

Hallo,

ich hab hier viele Auflistungen von Zutaten zu setzen. Hinter jeder Zutat steht der Hersteller mit Stadt und Land:

Zutat Hersteller (Stadt, Land)

Im Moment benutze ich dafür tabular:

\begin{tabular}{@{}ll@{}}
	Zucker & Rhein-Sühkre (Rheinau, Deutschland)\\

Also die Zutat in der ersten Spalte, der Hersteller in der zweiten. Zwischen den ganzen Aufzählungen/Tabellen stehen Unterüberschriften, die angeben, wofür diese Zutaten verwendet wurden.

Ich hab’s auch schon mit \begin{tabularx}{\textwidth}{@{}Xl@{}} probiert, da wird die Tabelle eben immer so breit wie der Satzspiegel. Wenn der Name der Zutat sehr kurz ist, ist der Abstand zwischen den Spalten riesig. Mit tabular ist dann stattdessen die ganze Tabelle schmaler. Linien gibt es keine.

Mit der labeling-Umgebung hab ich es auch schon probiert, aber da ist der vertikale Abstand zwischen den einzelnen Zutaten zu groß.

Die eigentliche Frage: Wie setzt man so eine Aufzählung generell am sinnvollsten? Es geht dabei um eine Arbeit für einen Freund. Der hätte am liebsten die Hersteller alle bündig untereinander, zumindest je Seite.

Das ist jetzt wahrscheinlich sehr abstrakt dargestellt, etwas besseres fällt mir im Moment leider nicht ein.

PS: Ich hab vergessen zu erwähnen, daß diese Tabellen nicht in Gleitumgebungen sitzen, weil sie sonst nicht gleich nach den Überschriften stehen. Außer den Überschriften und den Tabellen, die nicht nach Tabellen aussehen, steht in dem Teil des Dokuments nichts (außer ein paar »echte« Tabellen). Weil das technisch so nach Hack oder Workaround aussieht, frag ich mich, ob es nicht eine elegantere Methode gibt, die dann auch optisch/typografisch »mehr hermacht«.

forum: 

Hallo!

Ich habe noch nicht verstanden, wo das Problem liegt. Stellst du die Frage, wie Du eine Tabelle gut auf die Breite der Seite verteilen kannst, oder geht es dir darum, zwischen den einzelnen Zutaten Überschriften zu setzen?

Wenn es darum geht, eine Tabelle durch Überschriften zu unterbrechen, würde ich einfach die Überschriften in normaler Größe und kursiv setzen, so dass sie sich von den Tabellen kaum abheben. Bei den Tabellen würde ich mit p{} (und unter Verwendung des Paketes array) eine Tabelle vor definieren, die dann immer wieder verwendet wird. Dann ist die Spalte der Zutaten bzw. der erläuternde Text dazu immer in der gleichen Breite.

Gruß,

Alexander

Die Überschriften sind nicht das Problem. Es geht nur um die Darstellung der Aufzählungen. Ob das als Tabelle gemacht werden sollte, oder anders. Ich glaub, ich muß doch mal ein Minimalbeispiel dazu machen, sonst kann man sich das nicht richtig vorstellen.

Ich hab mal ein Beispiel mit den drei Möglichkeiten gemacht, die mir bis jetzt eingefallen sind. Die footsepline soll nur sichtbar machen, wie breit der Satzspiegel ist. Die Variante labeling braucht mir eigentlich zuviel Platz, deswegen hab ich sie bis jetzt kaum beachtet.

Da der Inhalt der »zweiten Spalte« so lang werden kann, daß er umgebrochen werden muß, hab ich (nicht im Beispiel) mit \renewcommand{\arraystretch}{1.1} den Zeilenabstand in den Tabellen erhöht, aber nicht so weit, daß es aussieht wie in der labeling-Umgebung.

\documentclass[DIV=calc,footsepline]{scrartcl}
 
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{microtype}
\usepackage[german]{babel}
\usepackage{tabularx}
 
\begin{document}
\section{Variante tabular}
 
\verb|\begin{tabular}{@{}ll@{}}…|
 
\subsection{Aufzählung A}
 
\begin{tabular}{@{}ll@{}}
	Zucker & Rhein-Sühkre (Rheinau, Deutschland)\\
	Kartoffeln & Erdäpfi Huber (Dingolfing, Deutschland)\\
	Bananen & BRD (Neubonn, Deutschland)\\
	Erdbeeren & Feld (Oberschleißheim, Deutschland)\\
	Zwiebeln & Fa. Augenwasser (Hamburg, Deutschland)\\
	Salz & Salinibus (Bad Reichenhall, Deutschland)\\
	Curry & Kari (Augsburg, Deutschland)
\end{tabular}
 
\subsection{Aufzählung B}
 
\begin{tabular}{@{}ll@{}}
	Waterrabbit & Gozilla (Mountain View, CA, USA)\\
	Hippinti & Skatetical (London, UK)\\
	Doors XP & Macrohard (Bluearth, EU)\\
	Doors 7 & Macrohard (Bluearth, EU)\\
	Fedora 3 & Jones (Princeton, New Jersey)\\
	Walls 3.11 & Williace (Elderslie, Schottland)
\end{tabular}
 
\subsection{Aufzählung C}
 
\begin{tabular}{@{}ll@{}}
	Bernoulli-Gleichung & Daniel Bernoulli (Groningen, Niederlande)\\
	Gaußscher Integralsatz & J. C. Friedrich Gauß (Braunschweig, Deutschland)\\
	Jacobi-Matrix & Jacques Simon (Potsdam, Deutschland)\\
	Hamiltonsche Theorie & William Rowan Hamilton (Dublin, Irland)\\
	Kohlrausch-Funktion & Rudolf Kohlrausch (Göttingen, Deutschland)\\
	Feynman-Platz & Münchner (München, Deutschland)
\end{tabular}
\newpage
 
\section{Variante tabularx}
 
\verb|\begin{tabularx}{\textwidth}{@{}Xl@{}}…|
 
\subsection{Aufzählung A}
 
\begin{tabularx}{\textwidth}{@{}Xl@{}}
	Zucker & Rhein-Sühkre (Rheinau, Deutschland)\\
	Kartoffeln & Erdäpfi Huber (Dingolfing, Deutschland)\\
	Bananen & BRD (Neubonn, Deutschland)\\
	Erdbeeren & Feld (Oberschleißheim, Deutschland)\\
	Zwiebeln & Fa. Augenwasser (Hamburg, Deutschland)\\
	Salz & Salinibus (Bad Reichenhall, Deutschland)\\
	Curry & Kari (Augsburg, Deutschland)
\end{tabularx}
 
\subsection{Aufzählung B}
 
\begin{tabularx}{\textwidth}{@{}Xl@{}}
	Waterrabbit & Gozilla (Mountain View, CA, USA)\\
	Hippinti & Skatetical (London, UK)\\
	Doors XP & Macrohard (Bluearth, EU)\\
	Doors 7 & Macrohard (Bluearth, EU)\\
	Fedora 3 & Jones (Princeton, New Jersey)\\
	Walls 3.11 & Williace (Elderslie, Schottland)
\end{tabularx}
 
\subsection{Aufzählung C}
 
\begin{tabularx}{\textwidth}{@{}Xl@{}}
	Bernoulli-Gleichung & Daniel Bernoulli (Groningen, Niederlande)\\
	Gaußscher Integralsatz & J. C. Friedrich Gauß (Braunschweig, Deutschland)\\
	Jacobi-Matrix & Jacques Simon (Potsdam, Deutschland)\\
	Hamiltonsche Theorie & William Rowan Hamilton (Dublin, Irland)\\
	Kohlrausch-Funktion & Rudolf Kohlrausch (Göttingen, Deutschland)\\
	Feynman-Platz & Münchner (München, Deutschland)
\end{tabularx}
\newpage
 
\section{Variante labeling}
 
\subsection{Aufzählung A}
 
\begin{labeling}[~]{Erdbeeren}
	\item[Zucker] Rhein-Sühkre (Rheinau, Deutschland)
	\item[Kartoffeln] Erdäpfi Huber (Dingolfing, Deutschland)
	\item[Bananen] BRD (Neubonn, Deutschland)
	\item[Erdbeeren] Feld (Oberschleißheim, Deutschland)
	\item[Zwiebeln] Fa. Augenwasser (Hamburg, Deutschland)
	\item[Salz] Salinibus (Bad Reichenhall, Deutschland)
	\item[Curry] Kari (Augsburg, Deutschland)
\end{labeling}
 
\subsection{Aufzählung B}
 
\begin{labeling}[~]{Waterrabbit}
	\item[Waterrabbit] Gozilla (Mountain View, CA, USA)
	\item[Hippinti] Skatetical (London, UK)
	\item[Doors XP] Macrohard (Bluearth, EU)
	\item[Doors 7] Macrohard (Bluearth, EU)
	\item[Fedora 3] Jones (Princeton, New Jersey)
	\item[Walls 3.11] Williace (Elderslie, Schottland)
\end{labeling}
\end{document}

Hallo,

mir ist immer noch nicht klar, worin Dein Anliegen besteht. Alle Deine Ansätze sind brauchbar. Du verstehst offenkundig genug von LaTeX, um alle Pakete für ein aufgemotzeres Design zu finden, also die vordere Spalte fett und serifenlos zu setzen, jede zweite Zeile grau zu hinterlegen oder bei gewünschtem Zeilenumbruch in einer Spalte mit p{5cm} deren Breite festzulegen; was eben zum Rest des Dokumentes passt.

Was sollen die Tabellen sonst noch können? Willst Du sie alphabetisch sortieren? Ändern sie sich irgendwie dynamisch? Sollen sie aus einer anderen Datei übernommen werden? Sollen die Zutaten durchnummeriert werden?

Falls nein, ist die erste Lösung die in meinen Augen einfachste. Da kann man die Tabellen sogar in einem Spreadsheet verwalten und vor einem Ausdruck mit calc2latex unproblematisch exportieren.

Gruß,
Alexander

Mir geht es darum, was für eine Darstellung typografisch am sinnvollsten ist. Das kann auch etwas ganz anderes sein, als das was ich hier zeige.

Zum Beispiel:

Ist es eine gute Idee, bei allen Aufzählungen die Spalten gleich breit zu machen, zumindest je Seite, damit je Seite die Spalten bündig untereinander erscheinen? Das führt dazu, daß man mehr oder vielleicht sogar überhaupt erst Zeilenumbrüche benötigt und die Tabellen länger werden. Dann sollte man wahrscheinlich auch die Abstände der Tabellenzeilen erhöhen, damit man zweizeilige Einträge sofort als solche erkennt und nicht erst für zwei getrennte Einträge hält.

Sollte man den Text in der ersten Spalte fett und serifenlos setzen? Das wird ziemlich viel fetter Text. Das Dokument hat auf zehn Seiten zwölf solche Aufzählungen wie hier gezeigt, dazwischen drei (richtige) Tabellen und dreizehn winzige Tabellen, die ähnlich wie diese Aufzählungen nicht nach vollwertigen Tabellen aussehen. Die haben keinen Tabellenkopf, keine Linien, keine Numerierung.

Ich kann das Paket ragged2e nicht benutzen, um andere Spaltentypen zu definieren, weil ich das Makro \KOMAoptions{parskip=full-} benutzen muß. Ich setze Fließtext mit Absatzeinzug, da am Anfang aber auch mal mehrere Tabellen pro section oder subsection vorkommen, die nicht in einer Gleitumgebung sitzen, würden die eingerückt und zur Seite verschoben, wenn ich dort nicht auf parskip umschalte. Das Minus an der Option ist nur der Tatsache geschuldet, daß eine Tabelle die letzte Zeile eines Absatzes bis zum Ende füllt und dies erlaubt werden soll. Zumindest glaube ich, daß das so ist.

Hallo,

Du kennst den Befehl \noindent ? Damit kannst Du natürlich bei jedem Absatz den ersten Zeileneinzug unterdrücken. Jedenfalls sagt das meine Erinnerung.

Damit kannst Du dann auch bereits in den Optionen zur Dokumentenklasse angeben, dass du Absätze haben willst oder eben nicht.

Welche typografische Ausgestaltung sinnvoll ist, lässt sich doch ohne Kenntnis des gesamten Dokumentes schlecht sagen. Außerdem muss ich einräumen, dass meine typografischen Fähigkeiten außerordentlich begrenzt sind. Deswegen benutze ich ja LaTeX!

\noindent kenn ich, aber wenn ich es mir sparen kann, mehreren Tabellen \noindent voranzustellen, warum nicht? Eleganter ist das mit \KOMAoptions. Außerdem könnte es ja sein, daß sich die Reihenfolge der Tabellen ändert. Dann wäre unter Umständen irgendwo ein \noindent zuviel, während woanders eines fehlt.

Mir ist da gerade eine Idee gekommen: Ist es sehr kompliziert, eine eigene Verzeichnisart zu definieren? Also neben dem Inhalts-, dem Abbildungs- und dem Tabellenverzeichnis noch ein weiteres. Man müßte mindestens zwei Argumente übergeben:

  1. ein obligatorisches, das eine Liste/Reihe von Paaren bekommt, wobei der erste Teil eines Paares hier die Zutat wäre, der zweite Teil der Hersteller, und
  2. ein optionales für die Auffüllung dazwischen, wie die Punkte im Inhaltsverzeichnis.

Die Umgebung bzw. dieses Verzeichnis müßte irgendwie dafür sorgen, daß die Ausgabe der zweiten Paarelemente (Hersteller) rechtsbündig untereinanderstehen. Evtl. bräuchte man noch zwei weitere optionale Argumente für das, was vor und nach der Auffüllung stehen soll. Das könnte dann so aussehen:

\listofthings[~][.][~]{%
Vorwort & 19\\
Dokumentaufbau & 20\\
Die Geschichte von KOMA-Script & 21\\}

Das hab ich jetzt nur mal beispielhaft aus dem scrguide eingetragen, damit man sieht, was ich meine. In dem Beispiel würde die Gliederungsnumerierung fehlen. Für soetwas könnte man natürlich noch eine weitere Option einbauen …

Das sieht mir bis jetzt nach der elegantesten Lösung aus, nur gibt es das leider nicht. Man kann das in simpler Form mit Tabellen nachbilden, aber mit eigenem Verzeichnis wäre das schicker und einfacher. Mit Tabellen muß man Spaltenbreiten mit dem Lineal messen und dann angeben bzw. rumexperimentieren.

Was ist von der Idee zu halten?

Bild von Markus Kohm

Natürlich kann man eigene Verzeichnisse definieren. Dazu gibt es Pakete wie tocbasic, glossaries u. v. m. Man kann auch Verzeichnisse komplett neu aufbauen. Die Frage ist für mich eher, inwiefern das, was Du da haben willst, überhaupt ein Verzeichnis ist. Ich dachte bisher, das wären alles eher einzelne Listen oder Tabellen. Für Listen wiederum gibt es eine ganze Menge Pakete. Ebenso gibt es für Tabellen inzwischen eine Reihe von Erweiterungen, von denen mir tabu zunehmend gut gefällt.

Man kann natürlich Tabellen auch über Makros füllen, bzw. aus Makros einzelne Tabellen erzeugen. Ich mache das in scrguide.cls – der Klasse, die für das Setzen der KOMA-Script-Anleitung verwendet wird und in den KOMA-Script-Quellen in jeder Installation vorhanden sein sollte – selbst.

Genauso kann man für eigene Listenelemente eigene Makros definieren. Dabei kann man auch auf Dinge wie \dotfill oder \hrulefill zurück greifen. Im einfachsten Fall:

\documentclass{article}
 
\begin{document}
\begin{flushleft}
Blubber \dotfill\ Hier\\
Blabber \dotfill\ Dort
\end{flushleft}
\end{document}

Du siehst, ich verstehe Dein Problem nicht. Vielleicht habe ich die Diskussion nicht gründlich genug gelesen. Jedenfalls ist mir weder klar, was das Ganze einmal werden soll, noch habe ich verstanden, was bei der Realisierung eigentlich das Problem ist.

Naja, ich hab mir gedacht, man könnte das ganze Kapitel mit den Aufzählungen auch als Verzeichnis der Zutaten auffassen. Andererseits beinhaltet ein Verzeichnis normalerweise keinen eigenständigen Inhalt, sondern spiegelt die Strukturierung des Dokumentes wider o.ä.

Wenn ich es als normale Liste setze, werden die Abstände zwischen den einzelnen Listeneinträgen zu groß. Das kann man wahrscheinlich ändern, aber da die Aufzählungen nicht von Fließtext umgeben sind, brauche ich keine Listensymbole vor den Einträgen. In der Breite ist der Platz eh schon (zu) knapp.

Daher waren Tabellen erstmal das naheliegendste. Nur schauen die Aufzählungen nicht nach Tabellen aus, deswegen hab ich mich gefragt, ob das nicht eine etwas unelegante Lösung ist. Zusätzlich bin ich mir nicht sicher, was aus typographischer Sicht am sinnvollsten ist, denn:

Der Abstand zwischen Tabellenspalten ist standardmäßig wohl so eingestellt, wie er eingestellt ist, damit Einträge einer Zeile voneinander unterscheidbar bzw. als getrennte Einträge erkennbar sind, aber nicht soweit auseinanderstehen, daß der Blick das Segeln anfangen muß, um in der Zeile zu bleiben.

Behält man diesen Abstand bei, werden die Tabellen zwangsläufig unterschiedlich breit. Dann hat man die Wahl, die Tabellen an den linken Rand zu rücken (Standard), oder sie zu zentrieren. Linksbündig sieht unruhig aus, zentriert noch viel mehr.

Deswegen kamen wir auf die Idee, den geringen/normalen Spaltenabstand beizubehalten, aber bezogen auf eine Seite. Das geht aber glaube ich nicht automatisch. Außerdem sind die Tabellen auf manchen Seiten dann immer noch schmaler als der Satzspiegel. Für mich sieht das irgendwie seltsam aus.

Bei manchen Tabellen hingegen gibt es Einträge, die ihre Tabellenzeile zu lang werden lassen und einen Umbruch verlangen. Dann bräucht man zusätzlichen Abstand zwischen den Tabellenzeilen, ähnlich wie bei Listen, aber geringer.

Wenn man dann noch die Tabellen auf die ganze Satzspiegelbreite dehnt, sieht es irgendwie nach einem »Verzeichnis der Zutaten« aus. Die horizontalen Leerräume innerhalb einer Zeile werden wie gesagt zum Teil so groß, daß man nicht auf den ersten Blick sieht, welcher Hersteller (zweite Spalte) zur nachgeschlagenen Zutat (erste Spalte) gehört.

*schon wieder das falsche Antworten-Feld*

Comments for "Suche Lösung für tabellenartige Aufzählung" abonnieren