Tabular: Geht über Seitenrand hinaus

Schriftbild, Absätze und Auflistungen einstellen


Achim
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: So 22. Jun 2014, 07:45

Tabular: Geht über Seitenrand hinaus

Beitrag von Achim »

Hallo zusammen,

ich bin noch relativ neu in LaTeX und schon allein die Problemformulierung bereitet mir leider etwas Schwierigkeiten. Ich bitte euch deshalb, etwas Nachsicht bei mir walten zu lassen :?

Ich schreibe gerade meine Masterarbeit und brauche da sehr viele Formeln und Gleichungen. Zu dem Zweck nutze ich folgende Vereinfachung, um alle Zeilen gleich auszurichten:
\newenvironment{derivation}
	{\vspace{8pt}\begin{tabular}[b]{p{0.3cm} p{0.2cm} p{15cm}}}
	{\end{tabular}\vspace{8pt}}
Als Veranschauling - das erzeugt mir dann solche Ausgaben (ohne Trennstriche):

(Schrittnummer) | = | [Gleichung]

Leider macht das mehrere Probleme:
1. Für untenstehendes Dokument ist die letzte Zeile über den Seitenrand hinausgerutscht
2. Es gibt immer einen Seitenumbruch, wenn das Environment über die vorherige Seite hinausgeht, siehe Seite 3/4

Habt ihr eine Idee, wie ich das bessermachen könnte?

Vielen Dank schonmal im Voraus!
%Das ist mein Dokument
\documentclass[a4paper, 12pt]{article}

\usepackage{array}
\usepackage{fixltx2e}
\usepackage[top=1in, bottom=1in, left=1in, right=1in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{stmaryrd}		% for evaluation brackets
\usepackage{qtree}			% for tree design
\usepackage{lscape} 		%for landscape mode
\usepackage{setspace}		% line spacing
\usepackage[normalem]{ulem} % striking through words

\newcommand{\evalleft}{\llbracket}
\newcommand{\evalright}{\rrbracket}
\newcommand{\variable}[2]{#1\textsubscript{#2}}
\newcommand{\var}[2]{#1\textsubscript{#2}}
\newcommand{\step}[1]{-- #1}

\newenvironment{derivation}
	{\vspace{8pt}\begin{tabular}[b]{p{0.3cm} p{0.2cm} p{15cm}}}
	{\end{tabular}\vspace{8pt}}

\newenvironment{evaluation}
	{$\evalleft$}
	{$\evalright$}

\newcommand{\derstart}[1]{\\ \\ (#1) &	$=$	&}

\newcommand{\type}[1]{$<$#1$>$}
\newcommand{\example}[1]{(#1)}

%================================================%

\begin{document}
\onehalfspacing

\begin{derivation}
	\derstart{1} $\evalleft$$R$$\evalright$ (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 f I \var{w}{2} be f you \var{w}{2}$\evalright$ \step{lexical entry for R}
	\derstart{2} [$\lambda$\variable{w}{a}.[$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{a}]] (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 f I \var{w}{2} be f you \var{w}{2}$\evalright$ \step{via variable assignment function}
	\derstart{3} [$\lambda$\variable{w}{a}.[$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{a}]] (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$ \step{via lambda conversion}
	\derstart{4} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& $\evalleft$Sim \var{w}{0} 2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$ \step{lexical entry for Sim}
	\derstart{5} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$w.[$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',w) $<$ dist(w'', w)] ]]] (\var{w}{0}) ($\evalleft$2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$)) \step{via lambda conversion}
	\derstart{6} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ($\evalleft$2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$)) \step{via lambda abstraction}
	\derstart{7} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ([$\lambda$\var{w}{2}.$\evalleft$\var{speaker}{w2} be \var{hearer}{w2}$\evalright$]) \step{function application \& lexical entry}
	\derstart{7a} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ([$\lambda$\var{w}{2}.[$\lambda$x.[$\lambda$y.y is in a contextually relevant sense similar to x]] (\var{hearer}{\var{w}{2}}) (\var{speaker}{\var{w}{2}})]) \step{lexical entry}
	\derstart{7b} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ([$\lambda$\var{w}{2}.\var{speaker}{\var{w}{2}} is in a contextually relevant sense similar to \var{speaker}{\var{w}{2}}]) \step{$\lambda$-conversion x2}
	\derstart{9} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ([$\lambda$\var{w}{2}.\var{speaker}{w2} is in a contextually relevant sense similar to \var{hearer}{w2}]) \step{$\lambda$-conversion}
	\derstart{0} [$\lambda$\var{w}{b}.\var{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& \newline
	[$\lambda$w'.	\variable{speaker}{w'} is in a contextually relevant sense similar to \variable{hearer}{w'} \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\variable{w}{0}) $<$ dist(w'', \variable{w}{0})] ] \step{simplification}
	\derstart{$\alpha$} [$\lambda$w'.w' is compatible with what \var{speaker}{w0} knows in \variable{w}{0} \& \variable{speaker}{w'} is in a contextually relevant sense similar to \variable{hearer}{w'} \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\variable{w}{0}) $<$ dist(w'', \variable{w}{0})] ]
\end{derivation}

\newpage

\par Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\par Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\par Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.


\begin{derivation}
	\derstart{1} $\evalleft$$R$$\evalright$ (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 f I \var{w}{2} be f you \var{w}{2}$\evalright$ \step{lexical entry for R}
	\derstart{2} [$\lambda$\variable{w}{a}.[$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{a}]] (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 f I \var{w}{2} be f you \var{w}{2}$\evalright$ \step{via variable assignment function}
	\derstart{3} [$\lambda$\variable{w}{a}.[$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{a}]] (\var{w}{0}) \& $\evalleft$Sim \var{w}{0} 2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$ \step{via lambda conversion}
	\derstart{4} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& $\evalleft$Sim \var{w}{0} 2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$ \step{lexical entry for Sim}
	\derstart{5} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$w.[$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',w) $<$ dist(w'', w)] ]]] (\var{w}{0}) ($\evalleft$2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$)) \step{via lambda conversion}
	\derstart{6} [$\lambda$\variable{w}{b}.\variable{w}{b} is compatible with what \var{speaker}{w0} knows in \variable{w}{0}] \& [$\lambda$p.[$\lambda$w'.w'$\in$p \& $\forall$w''$\in$p, w'' $\neq$ w' [dist(w',\var{w}{0}) $<$ dist(w'', \var{w}{0})] ]] ($\evalleft$2 \var{speaker}{w2} be \var{hearer}{w2}$\evalright$)) \step{via lambda abstraction}
\end{derivation}

\end{document}
%Ende des Dokumentes
Dateianhänge
PDF-Ausgabe zu meinem Problem
(58.11 KiB) 350-mal heruntergeladen
TeX File zu meinem Problem
(8.28 KiB) 364-mal heruntergeladen

Besserwisser

Beitrag von Besserwisser »

Und warum verwendest du nicht beispielsweise die align-Umgebung des von dir bereits geladenen amsmath-Pakets?

fixltx2e braucht man übrigens seit LaTeX 2015/01/01 nicht mehr.

Achim
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: So 22. Jun 2014, 07:45

Beitrag von Achim »

align kenne ich noch nicht :) Kannst du mir da vielleicht kurz ein Beispiel schreiben mit drei Spalten?

Ich weiß leider gar nicht mehr, warum ich amsmath geladen hab. Ich hab das nur so aus einem vorherigen file von mir übernommen ;)

Dank schonmal!

PS: Und was heißt eigentlich, dass man das nicht mehr braucht? Muss ich jetzt MikTex updaten, damit es auch ohne funktioniert? Wenn ich es auskommentiere, kompiliert mein file nicht mehr :-/

Besserwisser

Beitrag von Besserwisser »

Klick auf den Link, den ich dir gegeben habe, wähle dort die Anleitung aus und lies sie. Alternativ: Schau in das TOP-Thema im Mathematik-Forum und wähle dort die erste ausführliche Dokumentation.

Dass du die Umgebung nicht kennst, aber das Paket lädst, lässt mich vermuten, dass du noch mehr von den geladenen Paketen nicht verwendest. Siehe daher: »Minimale Vorlage vs. maximale Probleme«

Achim
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: So 22. Jun 2014, 07:45

Beitrag von Achim »

Ah, sorry, ich wusste nicht, dass da ein richtiger Link dahinter steckt. Ich dachte, das wäre eine Autokorrektur des Boards, das automatisch Pakete beschreibt.

Ich hab \begin{align} ausprobiert. Das scheint mir aber nur für zwei Argumente nützlich zu sein. Wenn ich drei Sachen habe ...

(1) & = & Hallo Welt\\
(2) & = & Lorem Ipsum

... dann wird das erste & einfach ignoriert :-/

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4300
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

tabular ist eine Box. Da gibt es keinen Seitenumbruch zwischen den Zeilen. Du könntest longtable nehmen, aber für mich sieht das Ganze nach einer Liste aus. Versuche es mal mit
\usepackage{enumitem}
\newenvironment{derivation}
   {\begin{enumerate}[label={\arabic*~=}]}
   {\end{enumerate}}
\newcommand{\derstart}[1]{\item\relax}
(Statt all den \derstart{x} kannst du dann auch einfach \item{} benutzen).

Achim
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: So 22. Jun 2014, 07:45

Beitrag von Achim »

Oh, hm, das ist ja einfach :D

Kann ich bei bestimmten Zeilen auch irgendwie noch die Beschriftung ändern? Manchmal brauche ich da z.B. ein Alpha in der Klammer statt der nächsten Zahl.

Ansonsten gefällt mir die Lösung gut! Wodurch wird da erreicht, dass es immer untereinander ausgerichtet wird? Ist das das ~ nach \arabic ?

Vielen Dank nochmal!

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Crosspost zu LaTeX-community
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Achim
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: So 22. Jun 2014, 07:45

Beitrag von Achim »

Ja, ähm, sorry ...! Die Zeit drängt leider. Ich hätte euch schon informiert, wenn ich eine Lösung gefunden hätte :-/ Ich sitze seit Stunden dran, das Dokument richtig zu formatieren und verzweifle etwas :-(

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4300
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Achim hat geschrieben:Oh, hm, das ist ja einfach :D

Kann ich bei bestimmten Zeilen auch irgendwie noch die Beschriftung ändern? Manchmal brauche ich da z.B. ein Alpha in der Klammer statt der nächsten Zahl.
Du kannst das optionale Argument von \item nutzen:

\item[$\alpha$] blalblal

Das \relax hinter \item in meinem Code ist nur da, damit deine [...] nicht plötzlich als Beschriftung angesehen werden.
Wodurch wird da erreicht, dass es immer untereinander ausgerichtet wird? Ist das das ~ nach \arabic ?
Nein, das ist bloß für den Abstand da. Labels von Listen kann man nun mal ausrichten. Eine normale enumerate oder itemize macht es ja auch.

Antworten