TUDreport: leere Seite nach Titelblatt

Posted by quark007 | Posted in Fehler, LaTeX | Posted on 21-01-2011-05-2008

0

Bei der Erstellung einer Diplomarbeit gab es ein Problem: nach dem Titelblatt, wird eine leere Seite eingefügt, die eigentlich dazu dient, dass auf der Rückseite des Titelblattes kein Text erscheint sondern erst wieder auf der nächsten rechten Seite.

Das Problem wurde im Endeffekt von der Option „longdoc“ verursacht. Wird diese Option aus der Angabe der \documentclass entfernt, so wird die leere Seite nicht mehr eingefügt. Ist jedoch longdoc von Nöten, so muss man sich die Definition von Longdoc einmal genauer anschauen und den Part mit \openright entfernen.

So weit ich weiß, trifft das auf alle Dokumentenklassen zu, die mit dem KOMA Skript arbeiten.

Tabular/Longtable: !Misplaced \omit

Posted by quark007 | Posted in Fehler, LaTeX | Posted on 21-01-2011-05-2008

7

Folgender Fehler ergab sich mir, den ich beim googlen im Internet nicht erfolgreich gelöst bekam:

! Misplaced \omit.
\multispan ->\omit
\@multispan
l.1068 …-mechanismen (einzeln oder kombiniert)}} &    \textbf{Beispiel}    \\ \h…
I expect to see \omit only after tab marks or the \cr of an alignment. Proceed, and I’ll ignore this case.

Ich hatte mir schon gedacht, dass es um das \multicolumn{} ging, jedoch war ich auf einer falschem Fährte.

Nach dem Fehler wird ausgegeben, in welchem Abschnitt sich der Fehler befindet. Diese Angabe ist in diesem Fall aber irreführend. Der Fehler liegt vor dem Quellcode-Ausschnitt.

Der Fehler will sagen, dass vor einem \multicolumn{} oder auch \multirow{} kein weiterer Wert stehtn darf. Das soll heißen, dass vor \multicolumn{} bzw \multirow{} ein Spaltentrenner also & stehen muss oder eben eine neue Zeile angefangen worden sein muss.

Mich hat verwirrt, dass ich keinen \cr Fehler bekam, der normalerweise ausgegeben wird, wenn die Spaltenangaben der Tabelle nicht mit dem Inhalt der Tabelle übereinstimmen. Dieser Fehler kommt jedoch nicht, sodass ich EINIGE Zeit nach dem Fehler gesucht habe.

Package inputenc Error

Posted by quark007 | Posted in Fehler | Posted on 03-01-2011-05-2008

0

Beim kompilen meines aktuellen Projektes bekam ich den folgenden Fehler

! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding 'latin1'.
See the inputenc package documentation for explanation.
Type H<return> for immediate help.

Zunächst dachte ich an ein Zeichen, dass meine Tastatur zwar kennt LaTeX aber nicht… Diese Vermutung stellt sich aber als falsch heraus.

Den bearbeiteten Text habe ich aus einem anderen PDF übernommen, also mit copy&paste übernommen. Was ich jedoch natürlich nicht bedacht habe, dass Bindestriche (Gedankenstriche) auch anders kodiert sein könnten. Nach ein wenig googlen habe ich meinen Fehler dann gefunden.

Gleiches gilt im Übrigen auch für Anführungszeichen die einfach so übernommen werden! Diese müssen in LaTeX nochmals neu eingegeben werden um die Kodierung korrekt zu gestallten.

Abkürzungsverzeichnis mit nomencl

Posted by quark007 | Posted in LaTeX | Posted on 13-12-2010-05-2008

9

Ich habe mich heute intensiver mit einem Abbildungsverzeichnis auseinander gesetzt und gemerkt, dass es garnicht so einfach ist, wie es ausschaut. Leider gibts es auch kein Paket das man einbindet und ohne weiteres loslegen kann. Es ist noch etwas Handarbeit notwendig. Ich habe das Problem mit dem Paket nomencl gelöst.

zunächst ist wie bei allen Anderen Erweiterungen auch hier wieder ein Paket einzubinden. Funktioniert ganz einfach mittels

\usepackage{nomencl}

Doch damit ist es noch nicht getan. Das Paket funktioniert zwar, aber es gibt noch einige Dinge die zunächst erledigt werden müssen. Diese habe ich in foldem Code zusammen gefasst:

\usepackage{nomencl}
\renewcommand{\nomname}{Überschrift für das Abkürzungsverzeichnis}
\setlength{\nomlabelwidth}{.20\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep}
\makenomenclature
  1. Die erste Zeile erklärt sich von alleine, dabei wird lediglich die Erweiterung geladen.
  2. Der zweite Befehl ändert den Titel des Abkürzungsverzeichnisses. Dieser ist beliebig zu wählen.
  3. Mit \setlength wird der Abstand zwischen Abkürzung und Erläuterung festgelegt.
  4. Anschließend wir noch der Zwischenraum mit Punkte ausgefüllt zur leichteren Zuordnung von Abkürzung und Erklärung
  5. Es folgt die Variation des Abstandes der einzelnen Abkürzungen zu einander.
  6. \makenomenclature ist dabei jedoch der wichtigste Befehl: mit ihm wird festgelegt, dass ein Index erzeugt werden soll, in dem alle Abkürungen auftauchen. Wird dieser nicht erstellt, so kann auch das Abkürzungsverzeichnis nicht erstellt werden.

!!ACHTUNG!! Außerdem muss dieser Befehl auch im Header, also vor \begin{document} geschrieben werden !!ACHTUNG!!

Um das Abkürzungsverzeichnis auch im Inhaltsverzeichnis aufgelistet zu sehen muss noch eine Option beim Laden des Paketes gesetzt werden. Der Befehl sieht dann wie folgt aus:

\usepackage[intoc]{nomencl}

mit [intoc] tauchen die Abkürzungen dann auch im Inhaltsverzeichnis auf. Wo diese Liste auftaucht kann ganz einfach mit bestimmt werden.

Abkürzungen selber werden wie folgt definiert:

\nomenclature[prefix]{symbol}{description}

Die Abkürzungen müssen nicht im Header sondern können auch im Fließtext definiert werden. Zum Beispiel sähe dies wie folgt aus

\nomenclature{PC}{\uline{P}ersonal \uline{C}omputer}

Um das Abkürzungsverzeichnis abzubilden muss an diese Stelle lediglich der folgende Befehl eingefügt werden:

\printnomenclature

Jetzt kommt aber die eigentliche Schwierigkeit: LaTeX gibt lediglich (in den neuen Versionen) eine *.nlo-Datei aus. Darin sind die Abkürzungen jedoch noch nicht sortiert und außerdem kann LaTeX mit dem File so noch nichts anfangen! Dieses muss erst noch konvertiert werden. Dazu kopiert (oder läd sich) die Datei nomencl.ist in das aktuelle Arbeitsverzeichnis (anders hat es bei mir nicht geklappt). Mit dieser Datei kann nun die *.nlo in eine *.nls konvertiert werden, die LaTeX dann lesen kann und auch als Abkürzungsverzeichnis einbinden kann. Der Code dafür

makeindex [Dokument].nlo -s nomencl.ist -o [Dokument].nls

muss über die Eingabeaufforderung (CMD) in dem aktuellen Arbeitsverzeichnis ausgeführt werden, in dem sich also die LaTeX-Dateien befinden. Navigieren funktioniert immernoch über „..“ (eine Ebene zurück) und „cd [ORDNER-NAME]“ (In den angebenen Ordner wechseln).

Benutzt man allerdings das TexnicCenter so gibt es eine Vereinfachung: man kann diesen Befehl als standardmäßig ausführen lassen. Dazu geht man wie folgt vor:

  1. Im TexnicCenter auf „Ausgabe“ in der Datei-Leiste klicken und „Ausgabeprofile definieren“ auswählen
  2. „LaTeX =>pdf (oder euer entsprechends Profil auswählen)
  3. Den Reiter „Nachbearbeitung“ aufrufen.
  4. Dort eine neue Prozedur hinzufügen (oben rechts sind die Knöpfe dafür)
  5. Einen Namen eingeben für die Prozedur
  6. als Anwendung den Pfad zu eurer makeindex eingeben (z.B. C:\MiKTeX\miktex\bin\makeindex.exe)
  7. "%bm".nlo -s nomencl.ist -o "%bm".nls

    als Argumente übergeben Lars hat darauf hingewiesen, dass meine Losung bei ihm zu Fehlern führte. Beim ihm mussten die Argumente wie folgt aussehen:

    %tm.nlo" -s "C:\Pfad zu MiKTeX 2.9\makeindex\nomencl\nomencl.ist" -o "%tm.nls<\pre> vielleicht hilft das dem einen oder Anderen weiter
    
  8. auf OK klicken und das Dokument nun wie gewohnt kopilieren

Das ganze sieht dann so aus:TexnicCenter Konfiguration

Falls man kein TexnicCenter benutzen möchte kann man sich alternativ auch eine *.bat-Datei schreiben und diese immer vorm kompilieren manuell ausführen :P

Nun noch ein paar Links die mir nützlich waren und euch vielleicht auch noch weiter helfen:

  • [LINK] Dokumentation zu nomencl
  • [LINK] ein Blog von Timo Meinen
  • [LINK] nochmals ein Blog diesmal von Stefan Macke

URL in Text einfügen

Posted by quark007 | Posted in LaTeX | Posted on 20-05-2010-05-2008

0

Häufig werden für Protokolle im Internet aufgefundene Bilder eingefügt. Jedoch muss deren Herkunft angegeben werden. Nichts einfacher als das, jedoch gibt LaTeX einige Fehler aus, wenn die URL sowie sie im Browser steht eingegeben wird.

Abhilfe schafft da ein kleines Package: URL. Mit diesem Package ist es nun ganz simpel eine URL einzugeben. Gleichzeitig macht dieses Packet die URL im PDF auch noch anklickbar. Der Befehl dafür lautet einfacher Weise:

\url{htt://www.deine-url.com/ordner/file.pdf}

So schlägt man zwei Fliegen ganz einfach mit einer Klappe. Lediglich die Paketliste erhöht sich etwas, wobei das Paket recht klein ist und somit die Compilierungszeit nicht wirklich erhöht.

Hier findet ihr dazu auch noch Beispiel und etwas weiter gehende Erklärungen
http://www.rohrbold.de/cs_latex.php

Abstand nach Punkt z.B. bei Abkürzungen

Posted by quark007 | Posted in LaTeX | Posted on 29-04-2010-05-2008

1

Viele Schreibfaule Menschen benutzen gerne Abkürzungen in ihren Protokollen oder sonstigen geschriebenen Texten. Doch was auffällt: wenn man eine Abkürzung wie „z.B.“ verwendet, fügt LaTeX nach dem letzten Punk einen größeren Abstand ein. Das kann jedoch verhindern.

Durch ein \ vor dem Leerzeichen wird dies verhindert. Ein Beispiel

i.\ Allgemeinen

Soll ein bestimmter Textbaustein nicht getrennt werden, also z.B. ein Titel und ein Name, muss an Stelle des Leerzeichens eine Tilde ~ eingefügt werden. Das verhindert außerdem, dass ein größerer Abstand nach dem Punkt eingefügt wird. Hier ein kleines Beispiel

Dr.~Matzat

Außerdem wird ein Punkt hinter einem Großbuchstaben nicht als Satzende erkannt. Da ein Punkt nach einem Großbuchstaben so ungewöhnlich ist, verhindert LaTeX das automatisch. Sollte der Satz  trotzdem so formatiert werden, mus vor ihm \@ eingefügt werden.

Text nach Bild auf einmal fett

Posted by quark007 | Posted in Fehler, LaTeX | Posted on 24-04-2010-05-2008

18

Da müht man sich die ganze Zeit ab mit LaTeX und eigentlich funktioniert alles… Man hat alles eingetippt und nun gehts ans compilieren und auf einmal, ohne dass man etwas im Quelltext steht ist eine ganze Seite auf einmal fett.

Ich weiß nicht wie lange ich nach einer Lösung gesucht habe, doch da ich bei dem letzten Protokoll wieder das Problem hatte, hab ich diesmal über eine andere Suchmaschine gesucht und siehe da, ich habe was gefunden.

Anscheinend liegt das Problem an Bildern auf der Seite, die Transparenz enthalten. Wie hier zu lesen ist liegt es entweder an eine veralteten Version von PDFtex oder an der im PNG enthaltenen Transparenz. Diese kann man z.B. ganz einfach mit IrfanView entfernen, oder das Bild einfach als jpg abspeichern und schon dürfte das Problem behoben sein.

Wieder ein unerklärliches Problem gelöst 🙂