Bei meinen ersten Versuchen mit LaTeX (ich verwende TeXnicCenter) steht bei Fehlern immer unten
Type H <return> for immediate help.
Ich drücke H
und anschließend enter
, aber nichts passiert.
Wie bekomme ich denn Hilfe von LaTeX?
Bei meinen ersten Versuchen mit LaTeX (ich verwende TeXnicCenter) steht bei Fehlern immer unten
Type H <return> for immediate help.
Ich drücke H
und anschließend enter
, aber nichts passiert.
Wie bekomme ich denn Hilfe von LaTeX?
Wenn ich nodes bzw. Knoten nebeneinander platziere und sich deren Inhalt aufgrund beispielsweise von Unterlänge oder Exponenten unterscheiden, passen die Grundlinien nicht mehr zusammen. In diesem kleinen Beispiel bemerkt man bei genauem Hinsehen, dass die Grundlinie rechts höher ist, man braucht nur dem Pfeil zu folgen:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[node distance=5em]
\node (A) {$A^2$};
\node [right of=A] (AxA) {$A\otimes A$};
\draw [->] (A) edge node [above] {$\scriptstyle\varphi$} (AxA);
\end{tikzpicture}
\end{document}
Wie kann ich das korrigieren?
In meiner Arbeit habe ich unter meinen Grafiken mittels
\caption{}
eine Beschreibung meiner Abbildung (Figur) erzeugt. Ausserdem lasse ich mir ein Abbildungsverzeichnis erstellen. Da ich in der Bildbeschreibung (also in der \caption{}
) oft lange oder komplexe Beschreibungen habe, und diese nicht in dieser Form in meinem Abbildungsverzeichnis sehen möchte, frage ich euch, ob es eine Möglichkeit gibt, für das Abbildungsverzeichnis seperat einen Text anzulegen.
In meinen Diagrammen sind die Pfeile manchmal etwas schief. Wie in diesem kleinen Beispiel, aufgrund der unterschiedlichen Höhe der Objekte:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\newcommand*{\mal}{\mathbin{\raisebox{0.4ex}{\scriptsize$\otimes$}}}
\begin{document}
\begin{tikzpicture}[node distance=3em]
\node (A) {$A^2$};
\node [base right = of A] (AxA) {$A\mal A$};
\draw [->] (A) edge node [above] {$\scriptstyle\varphi$} (AxA);
\draw[black!20] (A.base) ++(-0.5,0) -- ++(3.2,0);% Hilfslinie
\end{tikzpicture}
\end{document}
Nun kann man sich behelfen, indem man manuell die gleiche node-Höhe einstellt bzw. bei vertikalen Pfeilen die gleiche node-Breite. Das ist Gebastel, gerade bei großen Diagrammmen mit unterschiedlichen Inhalten, und kann schnell bei inhaltlicher Änderung wieder unpassend werden.
Kann ich für die Pfeile bestimmen, dass sie nur waagerecht bzw. senkrecht verlaufen dürfen?
Ich benutze eine recht gute und umfangreiche Präambel für meine Bachelorarbeit, von der ich nach einigen Anpassungen meinerseits ausgehe, dass sie funktioniert. Leider habe ich das Problem das meine Bilder nicht im Abbildungsverzeichnis sowie Tabellen nicht im Tabellenverzeichnis auftauchen und ich einfach nicht verstehe was ich falsch mache. Die .lof-Datei enthält die entsprechenden Informationen, eine Überschrift wird erstellt, nur der Rest wird nicht in die PDF überschrieben. Es taucht außerdem auch keine Fehlermeldung auf und das Literaturverzeichnis funktioniert z.B. einwandfrei.
Allerdings habe ich bei dem Versuch die entsprechende Passage gefunden, die den Fehler auslöst. Sie befindet sich im Anhang:
\addtocontents{toc}{\protect\setcounter{tocdepth}{-1}}
Die Anhang.tex
mit dem obigen Befehl steht nach den beiden Verzeichnissen und wird via \input
eingebunden. Vorher steht der tocdepth
-Zähler auf 3, aber warum wird die Erstellung der beiden Verzeichnisse trotzdem unterdrückt?
Weiß jemand Rat?
Zu vielen Befehlen gibt es eine Sonderform, die durch ein *
gekennzeichnet ist, wie zum Beispiel \chapter*
und \section*
. Diverse Pakete definieren auch *-Varianten, wie \caption*
und \ref*
.
Wir kann ich bewirken, dass das *
ignoriert wird? Dies für den Fall, dass so ein *
-Befehl implizit aufgerufen wird und ich daher den Aufruf nicht einfach editieren kann.
Beispielsweise führen Literaturverzeichnis, Nomenklatur und andere Verzeichnisse \section*
oder \chapter*
aus, wie kann ich den *
abschalten, so dass es wie der originale Befehl \section*
bzw. \chapter*
ausgeführt wird, und ich nummerierte Gliederung erhalte? Im Sinne von \let\section*\section
, nur geht dies ja nicht.
Dies ist eine Folgefrage die sich aus diesem Problem ergeben hat. Das Abbildungs- und Tabellenverzeichnis wird mittlerweile einwandfrei erstellt. Nun möchte ich erreichen, dass Tabellen die sich im Anhang befinden, nicht im Tabellenverzeichnis aufgeführt werden.
Dafür wurde mir netterweise schon der Befehl \addtocontents{toc}{\protect\value{tocdepth}=0\relax}
empfohlen, allerdings habe ich noch nicht herausgefunden wo ich ihn positionieren muss damit mein Problem gelöst wird...?!
Ich habe es nun sogar geschafft, ein Minimalbeispiel zu erstellen anhand dessen sich mein Problem zeigen lässt. ;)
\documentclass[a4paper, oneside, 12pt, headings=normal]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
%--------------------------------------------------------------------------------------------------------------------
\usepackage{tabularx}
\usepackage{array}
\renewcommand{\arraystretch}{1.2}
\usepackage{booktabs}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcolumntype{L}{>{\arraybackslash}X}
\newcolumntype{R}{>{\raggedleft\arraybackslash}X}
%------------------------------------------------------------------------------------------------------------------
\setcounter{secnumdepth}{3} % bis zu subsubsection wird nummeriert
\setcounter{tocdepth}{3} % bis zu subsubsection wird im Inhaltsverzeichnis angezeigt
%--------------------------------------------------------------------------------------------------------------------
\usepackage{appendix} % für den Anhang
\usepackage{hyperref}
\usepackage[numbers,square]{natbib}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Ende Kopf
\begin{document} %Dokument beginnen
\tableofcontents
%----------------------------------------------------------------------------------
\section{Test}
\begin{table}[ht!]
\centering
\captionabove{Tabelle Kapitel}
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{ll}
\toprule
\multicolumn{2}{c}{\textbf{Test}} \\
\midrule
A & B \\
E & F \\
G & H \\
\bottomrule
\end{tabular}
\end{table}
\subsection{Test2}
\subsubsection{Test3}
%---------------------------------------------------------------------------------
\newpage
\listoftables
\addcontentsline{toc}{section}{Tabellenverzeichnis}
%-------------------------------------------------------------------------------------------------------------------
\appendix
\renewcommand{\appendixpagename}{Anhang}
\appendixpage
\renewcommand{\appendixtocname}{Anhang}
\addcontentsline{toc}{section}{Anhang}
\begin{table}[ht!]
\centering
\captionabove{Tabelle Anhang}
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{ll}
\toprule
\multicolumn{2}{c}{\textbf{Test}} \\
\midrule
A & B \\
E & F \\
G & H \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
Ich verwende TikZ zum Erstellen von Diagrammen, nun übertrage ich Text und Diagramme für einen Seminarvortrag in eine Präsentation. Jedoch funktionieren TikZ-Diagramme mit beamer
nicht mehr, die einwandfrei mit scrartcl
liefen. Scheinbar sind es die, wo ich das Diagramm mit einer TikZ matrix erstelle. Hier ein Beispiel:
\documentclass{beamer}
\usetheme{Montpellier}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{positioning,matrix,arrows}
\newcommand*{\mal}{\mathbin{\raisebox{0.3ex}{\scriptsize$\otimes$}}}
\DeclareMathOperator{\id}{id}
\begin{document}
\title{Kategorientheorie}
\section{Koalgebren}
\begin{frame}
\begin{center}
Koassoziativitätsgesetz der Komultiplikation
\bigskip
\begin{tikzpicture}
\matrix (m) [matrix of math nodes,row sep=3em,column sep=3em,]
{
A & A\mal A \\
A\mal A & A\mal A \mal A \\
};
\path[-stealth]
(m-1-1) edge node [left] {$\scriptstyle\varphi$} (m-2-1)
edge node [above] {$\scriptstyle\varphi$} (m-1-2)
(m-2-1.east|-m-2-2) edge node [above]
{$\scriptstyle\varphi\otimes\id$} (m-2-2)
(m-1-2) edge node [right]
{$\scriptstyle\id\otimes\varphi$} (m-2-2);
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
Ich erhalte die Fehlermeldung
! Missing $ inserted.
<inserted text>
$
l.32 \end{frame}
Warum ist das so, und wie kann ich es reparieren?
Wenn ich \cleardoublepage
verwende, oder ein Kapitel auf einer ungeraden Seite endet und das nächste Kapitel wieder auf einer ungeraden Seite beginnen soll, also rechts, dann werden ja leere Seiten eingefügt.
Auf diesen "leeren" Seiten taucht dennoch Kopfzeile und Seitennummer auf. Das finde ich unnötig, denn man braucht keinen titelnden Kopf für keinen Inhalt. Auch ist eine Seitennummer überflüssig, weil da nichts zu referenzieren ist und die Seite auch nicht im Inhaltsverzeichnis auftaucht.
Hier habe ich mein Dokument mal extrem reduziert, um so eine leere Seite mit ungewolltem header und footer zu zeigen:
\documentclass{book}
\pagestyle{headings}
\begin{document}
\chapter{Erstes Kapitel}
Text
\chapter{Zweites Kapitel}
Text
\end{document}
Wie kriege ich diese Seiten wirklich leer?
In meiner beamer-Präsentation verwende ich \centering
, um den Inhalt der ganzen Folie zu zentrieren. Ist nur eine Grafik auf der Folie und sonst nichts, landet sie einfach links:
\begin{frame}
\centering
\includegraphics{diagram}
\end{frame}
Dann merkte ich, dass das auch für Text gilt, und zwar für den letzten Absatz.
\begin{frame}
\centering
Ein Absatz mit Text
Ein Absatz mit Text
\end{frame}
Hier mal so eine typische Folie mit Grafik als komplettes Minimalbeispiel:
\PassOptionsToPackage{demo}{graphicx}
\documentclass{beamer}
\usetheme{Singapore}
\begin{document}
\begin{frame}
\centering
\Huge
Motivation
\bigskip
\includegraphics{diagram}
\end{frame}
\end{document}
Wir kann ich das fehlgeschlagene Zentrieren korrigieren?
Ich erhalte schon beim Laden weniger Pakete den Fehler
! No room for a new \dimen .
Ich habe es auf ein kleines Minimalbeispiel reduzieren können, hierbei verwende ich XeLaTeX zum Übersetzen:
\documentclass{beamer}
\usepackage{multicol}
\usepackage{pstricks}
\usepackage{pst-circ}
\usepackage{pstricks-add}
\begin{document}
\begin{frame}
Text
\end{frame}
\end{document}
Das passierte mir auch schon mit TikZ statt PSTricks und mit anderer Klasse als beamer
. Da ging der Fehler weg, wenn ich einige nicht benötigte Pakete aus der Präambel entfernte.
Wie kann ich den Fehler sonst beseitigen?
Im beamer
-Handbuch las ich, dass die verbatim
-Umgebung in einem beamer-frame nur funktioniert, wenn man die fragile
-Option setzt, also \begin{frame}[fragile]
schreibt.
Nun fand ich hier auf TeXwelt, dass mit TikZ unter Umständen fragile
auch nötig sein kann.
Welche Befehle, Umgebungen oder Pakete erfordern fragile
frames?
Meine Gleichungen sollen genau am linken Rand anfangen, bündig mit dem Text. Hier ein Beispiel:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\section{Substitutionsregel}
\begin{align*}
\int_a^b f(g(t))g'(t)\,\mathrm{d}t &= (F \circ g)(b) - (F \circ g)(a) \\
&= F(g(b)) - F(g(a)) \\
&= \int_{g(a)}^{g(b)} f(x)\,\mathrm{d}x
\end{align*}
\end{document}
Wie kann ich das erreichen? Ich habe gelesen das kann man mit der Klassen-Option fleqn
machen, doch auch dann sind die Gleichungen noch etwas eingerückt.
Ich möchte Indizes und Exponenten an die linke Seite von Variablen schreiben, wie beispielsweise hier auf der linken Seite:
(Quelle)
Die Höhe sollte gleich sein wie beim rechten Index bzw. Exponent, und die Ausrichtung rechts zur Variablen hin, wegen der Symmetrie. Mein Versuch {}^m_1 F^1_i
sieht nicht gut aus, da m und 1 linksbündig sind.
Wie kann man solche linken Indizes schreiben?
Manchmal sind Klammern zu groß und überragen den Inhalt asymmetrisch. Das passiert, wenn ein Ausdruck weit nach oben oder unten ragt, wie z.B. wenn sich Indizes stapeln, wie hier:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\left[ \int\limits_{\substack{x\in\Omega\\x>0}} f(x)
\,\mathrm{d}x \right]
\]
\end{document}
Mir ist hier nicht wichtig, dass die Grundlinie der inneren Formel in der Mitte der Klammer wäre.
Wie kriege ich in so einem Fall die Klammern so hin, dass sie dem Inhalt gut einschließen, ohne diesen Leerraum?
Ich möchte die Höhe von Tabellen-Zeilen vergrößern, und auch die Tiefe - also nicht nur oben Abstand anfügen. Ich habe \extrarowheight
gefunden (bringt mir noch einen Fehler), es scheint aber kein \extrarowdepth
zu geben.
Hier ein Minimalbeispiel mit so einer zu eng gesetzten Tabelle, die in meinem Original mehr Zeilen hat:
\documentclass{article}
%\setlength{\extrarowheight}{1cm}
\usepackage[utf8]{inputenc}
\begin{document}
\begin{tabular}{ccc}\hline
\textbf{Bezeichnung} & \textbf{Schreibweise} & \textbf{Sprechweise} \\\hline
Implikation & $p \Rightarrow q$ & aus $p$ folgt $q$\\
Äquivalenz & $p \Leftrightarrow q$ & $p$ genau dann, wenn $q$\\\hline
\end{tabular}
\end{document}
Was ist eine gute Möglichkeit, Abstand oben und unten zu setzen?
Nach einem Tipp zum Abstand vergrößern fügte ich am Ende von Tabellen-Zeilen Abstand mittels \\[<Länge>]
hinzu. Da ich in den Zeilen sowohl Abstand nach oben als auch nach unten haben wollte, versah ich die Spalten mit Typ m
, womit sie alle mittig ausgerichtet werden. Dachte ich. Die letzte Spalte tanzt jedoch aus der Reihe, hier wirkt m
nicht:
\documentclass{article}
\usepackage{array}
\renewcommand*{\arraystretch}{1.3}
\usepackage[utf8]{inputenc}
\begin{document}
\begin{tabular}{m{2.5cm}m{2.5cm}m{4cm}}
\hline
\textbf{Bezeichnung} & \textbf{Schreibweise} & \textbf{Sprechweise} \\
\hline
Implikation & $p \Rightarrow q$ & aus $p$ folgt $q$ \\[4ex]
Äquivalenz & $p \Leftrightarrow q$ & $p$ genau dann, wenn $q$ \\[4ex]
\hline
\end{tabular}
\end{document}
Warum ist das so, und wie kann ich das beheben?
Ich würde gerne einen Zahlenstrahl erstellen. Als Basis habe ich folgenden Code benutzt, den ich im Internet gefunden habe:
\documentclass{minimal}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[thick]
\draw(0,0)--(12.5,0);
\foreach \x/\xtext in {0/0,3/1,6/2,9/3,12/4}
\draw(\x,0pt)--(\x,3pt) node[above] {\xtext};
\foreach \x in {0,1,...,12}
\draw(\x,0pt)--(\x,-3pt) node[below] {$\frac{\x}{3}$};
\end{tikzpicture}
\end{document}
Ich würde ihn gerne wie folgt modifizieren:
Mehr Teilintervalle, d.h. nicht nur [0,1] [1,2] [2,3] und [3,4] sondern auch [4,5] [5,6] und [6,7].
Ich hätte gerne anstatt der "0", "1", "2", "3" und "4" eine andere Bezeichnung wie .
Weiterhin hätte ich gerne eine waagrechte, geschweifte Klammer undterhalb und oberhalb des ersten Teilintervalls und eine weitere geschweifte Klammer unterhalb des zweiten und 4. Teilintervalls.
Unterhalb und oberhalb jener geschweifter Klammern würde ich gerne ein oder zwei Begriffe eintippen.
Innerhalb der ersten zwei Teilintervalle hätte ich gerne ganz viele kleine Striche.
Zu Punkt 1.) Im Prinzip habe ich das hingekriegt, das Problem was dann aber entstand, war, dass der Zahlenstrahl länger wurde als die Seitenbreite, das heißt, die Länge passt sich nicht automatisch an.
Zu Punkt 2.) Habe ich weitesgehend gelöst, allerdings entsteht folgendes Problem: Wenn ich die Bezeichnungen unterhalb des Zahlenstrahls setzen möchte, also "above" durch "below" ersetze, sind die Ziffern, bzw. die Buchstaben zu nah an den Begrenzungsstrichen der jeweiligen Teilintervalle. Weiterhin verstehe ich nicht, wo sich im Code die Art der Begrenzungsstriche der Teilintervalle widerspiegelt.
Zu Punkt 3.)+4.) Hier wurde mir auf dem matheplanet von Stefan_K empfohlen, die foreach Syntax zu verstehen. Allerdings bin ich als absoluter TikZ Neuling nicht schlauer geworden, nachdem ich im Handbuch von Till Tantau nachgeschlagen habe.
zu Punkt 5.) Das könnte ich im Prinzip lösen, meine Lösung ist aber sehr unelegant, ich habe nämlich folgendes gemacht:
\foreach \x/\xtext in {0/0,0.1/{},0.2/{},0.3/{},0.4/{},0.5/{},
0.6/{},0.7/{},0.8/{},0.9/{},1/{},3/1,6/2,9/3,12/4,15/5,18/6}
Weiterhin habe ich den Eindruck, dass die Striche nicht alle gleich aussehen.
Ich wollte an die Grafik noch ein Untertitel hinzufügen, sowas wie: "Figur 1: Zahlenstrahl". Googeln ergab, dass ich mit "caption" arbeiten sollte. Wenn ich aber an den Code
\centering
\caption{M1} \label{fig:M1}
anfüge, spuckt er mir einen Fehler aus:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{tikzpicture}[decoration=brace]
% Die Grundlinie:
\draw(0,0)--(12,0);
% Striche und Beschriftung in Abständen 0, 2, 4, 6, ...
\foreach \x/\xtext in {0/0,2/$n_1$,4/$n_2$,6/$n_3$,8/$n_4$,10/$n_5$,12/$n_6$}
\draw(\x,5pt)--(\x,-5pt) node[below] {\xtext};
% obere geschweifte Klammer mit Text darüber:
\draw[decorate, yshift=2ex] (0,0) -- node[above=0.4ex] {Text oberhalb} (2,0);
% untere geschweifte Klammer mit Text darunter:
\draw[decorate, yshift=-4ex] (2,0) -- node[below=0.4ex] {Text unterhalb} (0,0);
% z.B. untere geschweifte Klammer unter dem 3. Intervall:
\draw[decorate, yshift=-4ex] (6,0) -- node[below=0.4ex] {3. Intervall} (4,0);
% Schleife für die kleinen Striche in Abstand, 10 pro Intervall
\foreach \x in {0.1,0.2,...,2} \draw (\x,0) -- (\x,-3pt);
% noch so ein paar Striche in weiterem Intervall:
\foreach \x in {8.1,8.2,...,10} \draw (\x,0) -- (\x,-3pt);
\foreach \x in {4.1,4.2,...,6} \draw (\x,0) -- (\x,-3pt);
\centering
\caption{M1} \label{fig:M1}
\end{tikzpicture}
\end{document}
Ich verwendete das Paket algorithm2e
bislang problemlos mit der article
-Klasse. Nun habe ich auf scrartcl
umgestellt, und es wirft eine Fehlermeldung aus.
\documentclass{scrartcl}
\usepackage{algorithm2e}
\begin{document}
\tableofcontents
\section{Testdokument}
\end{document}
Die Fehlermeldung ist:
! Undefined control sequence.
\chapter ...ace {10\p@ }}\algocf@original@chapter
l.4 \tableofcontents
Was kann ich machen, damit es wieder läuft?