Absatz-Abstand innerhalb longtable anpassen

Tabellen und Grafiken erstellen und anordnen


Roman_95
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: So 5. Aug 2018, 02:07

Absatz-Abstand innerhalb longtable anpassen

Beitrag von Roman_95 »

Hallo zusammen,

ich möchte eine longtable erstellen, in der pro Zelle jeweils eine Liste steht. Hierfür habe ich bereits benutzerdefinierte Listen mit geringen inneren Abständen erstellt, was auch ohne Probleme funktioniert. Nun fügt die Liste allerdings vor und hinter den Einträgen vertikal immer \parskip hinzu, was (vgl. Abstände in Listen) zu viel Platz einnimmt. topsep, partosep habe ich schon auf '0' gesetzt.

Ich muss KOMA-Script mit parskip=half und dem geometry-Paket nutzen.
Nun fand ich im 'scrguide' die Anweisung \setparsizes, mit welcher man Einzug und Abstände des Absatzes einstellen kann. Meines bescheidenen LaTeX-Wissens nach würde das innerhalb einer Gleitumgebung sogar lokal funktionieren - nun kann man eine longtable aber nicht in eine Gleitumgebung setzen, da der Seitenumbruch dann nicht mehr funktioniert. Wie man den Absatzeinzug nur für die longtable ändern kann weiß konnte ich leider nicht, ebensowenig ob das überhaupt eine vertretbare Lösung ist. Eigentlich muss ich ja nur den vertikalen Abstand vor und nach den Listen entfernen!

Hier das MM:
\documentclass[
parskip=half,
a4paper,
12pt,
oneside,
onehalfspacing
]{scrbook}

\usepackage[T1]{fontenc}
\usepackage{setspace}	% einstellbarer Zeilenabstand
\onehalfspacing
\usepackage[includeheadfoot, inner=4cm, outer=2cm, top=3.5cm, bottom=2cm]{geometry}

\usepackage{booktabs, longtable, tabularx}	% schöne Tabellen, Tabellen über mehrere Seiten, erweiterte Tabellenfunktionalität

\usepackage[inline]{enumitem}	% Aufzählungsdarstellung beeinflussen
%\setlist{noitemsep}	% kein Leerraum zwischen Aufzählungspunkten
\newlist{tlist}{itemize}{3}		% Listenumgebung für innerhalb Tabellen
\setlist[tlist]{label={-}, partopsep=0pt, parsep=0pt, topsep=0pt, labelwidth=*, leftmargin=*, noitemsep}	% Einstellungen für tlist...
\setlist[tlist, 2]{label={}}	% ... Anpassungen für die zweite Ebene

\begin{document}
	\newlength{\LEffekt}						% Längenangabe, verwendet für die Tabellen-Definition
	\settowidth{\LEffekt}{transportieren\quad}
	\begin{longtable}{>{\bfseries}m{\LEffekt} m{\dimexpr0.5\textwidth-0.5\LEffekt-3\tabcolsep\relax} m{\dimexpr0.5\textwidth-0.5\LEffekt-3\tabcolsep\relax}}
\toprule
	Zeile 1 & \begin{tlist}
		\item Punkt 1 \item Punkt 2 \begin{tlist} \item Punkt 2.1 \item Punkt 2.2 \end{tlist}
	\end{tlist} & \begin{tlist}
		\item Punkt 3 \item Punkt 4\begin{tlist}	\item Punkt 4.1 \item Punkt 4.2 \end{tlist}
	\end{tlist} \\
\midrule
Zeile  2& \begin{tlist}
		\item Punkt 1 \begin{tlist}	\item Punkt 1.1 \item Punkt 1.2	\end{tlist} \item Punkt 2 \begin{tlist} \item Punkt 2.1 \item Punkt 2.2 \end{tlist}
	\end{tlist} & \begin{tlist}
		\item Punkt 3 \item Punkt 4\begin{tlist}	\item Punkt 4.1 \item Punkt 4.2 \end{tlist}
	\end{tlist} \\
\bottomrule
	\end{longtable}
\end{document}
PS: Bevor sich jemand fragt, weshalb ich die Listen in der Tabelle verwende; Dies ist die flexibelste Möglichkeit, da ich zu jedem Punkt in der ersten Spalte mehrere Punkte in den Spalten 2 und 3 benötige. Deren Anzahl ist nicht konstant, d.h. in verschiedenen Zeilen sind verschieden viele Punkte in den Spalten 2 und 3 unterzubringen. Mit \multicolumn würde das Ganze sehr unübersichtlich werden...


Roman_95
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: So 5. Aug 2018, 02:07

Funktioniert, aber...

Beitrag von Roman_95 »

Hallo,

danke für den Link mit der übersichtlichen Beschreibung. Leider habe ich jetzt ein kurioses neues Problem:

Wenn ich die Lösung benutze (Verwendung einer Minipage in der Spaltendefinition), wird der Text in den Kapiteln, welche Tabellen enthalten, zentriert (statt Blocksatz) gesetzt. Skurilerweise auch, wenn die entsprechenden Tabellentypen nirgendwo verwendet werden und sogar wenn die Definition auskommentiert ist - das einzige was hilft ist einen alten Stand des Headers (mit den Definitionen) in das Dokument-Verzeichnis zu kopieren.

Löschen der Hilfsdateien und Änderung/Weglassen der Textformatierung in den Spaltendefinitionen habe ich schon ausprobiert, macht alles keinen Unterschied...

Kann mir da jemand weiterhelfen??

VG, Roman

Gast

Beitrag von Gast »

Das kann zumindest ich so nicht reproduzieren. Ich habe sowohl in das Beispiel aus der verlinkten Frage als auch Deinen Code hier mit esdds Lösung kombiniert und mir sind keine Probleme aufgefallen. Bitte fertige doch ein kleines Minimalbeispiel an, das das Problem reproduziert uns genau zeigt, was Du tust.

Wenn es an der Präambel liegt und das Problem unabhängig von der Nutzung der Tabellen auftritt, dann muss irgendeine Definition in der Präambel auslaufen. Vielleicht hast Du Klammern vergessen?

Roman_95
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: So 5. Aug 2018, 02:07

Beitrag von Roman_95 »

Hallo,

das mit dem MM wird denke ich schwierig, es ist tatsächlich unabhängig von den Tabellen und der Fehler tritt jetzt sogar auf, wenn ich den kompletten Ordner mit dem alten Stand verwende. Gestern hat auf dem gleichen Computer noch alles einwandfrei funktioniert :?: Trotzdem passiert es nicht in allen Kapiteln...

Habe schonmal versucht ein verwaistes \centering oder so zu finden, alles ohne Erfolg.

Muss mich jetzt erstmal um andere Sachen kümmern, versuche es dann nochmal auf nem anderen Computer... Hoffe ich kann das Problem einkreisen.

Dir auf jeden Fall schonmal danke für die Hilfe!

Roman_95
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: So 5. Aug 2018, 02:07

... der Vollständigkeit halber

Beitrag von Roman_95 »

Habe den Fehler gefunden, hatte doch ein \centering übersehen :roll:

Eine Frage hätte ich jedoch noch: Die Abstands-Anpassung mittels minipage funktioniert ja einwandfrei.
Nun habe ich allerdings in einigen der Listen Fußnoten eingefügt, und eigentlich gefiel mir deren Verhalten sehr gut: Die Fußnoten werden über die ganze Tabelle nummeriert, aber jeweils am Fuß der Seite, wo sie aufgeführt sind, gesetzt.
Bei der Verwendung der minipages aber werden die Fußnoten am Ende derselbigen gesetzt, also im Tabellenkörper unterhalb der Auflistung. Gibt es eine Möglichkeit das zu ändern, z.B. indem man die "Ausgabe-Ebene" der Fußnoten vorgibt?

Rolli
Forum-Guru
Forum-Guru
Beiträge: 406
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

1. Verwende footnote und ändere minipage in minipage*

oder

2. Verwende in der minipage \footnotemark und direkt anschließend \footnotetext

Gruß vom Rolli

P.S.: Bei neuem Thema besser neuen Thread eröffnen!

Roman_95
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: So 5. Aug 2018, 02:07

Beitrag von Roman_95 »

Hallo Rolli,

danke für die Antwort, damit werde ich mir zu helfen wissen!


Gruß, Roman


PS: Habe deine Antwort grade erst gesehen, deshalb die späte Rückmeldung

Antworten