Aus LinuxUser 02/2013

LibreOffice als komfortabler Editor für LaTeX (Seite 4)

Listing 6

\makeatletter
\newcommand\maxwidth{%
  \ifdim\Gin@nat@width>\linewidth%
    \linewidth%
    \else\Gin@nat@width\fi}
\makeatother

Listing 7

\section{Beispiel für Writer2LaTeX:}
Dies ist ein Beispiel, wie ein LibreOffice-Writer-Dokument nach LaTeX umgewandelt wird.
\subsection{Bilder:}
\begin{figure}
\includegraphics[width=\maxwidth]{writerbeispielmyconf-img001}
\caption[Eingefügtes Bild]{Eingefügtes Bild}
\end{figure}

Tabellen

Tabellen verursachen regelmäßig Probleme, wenn Sie mit vielen Formatvorlagen geschmückt sind oder eine Zelle weiteren Tabellen enthält. Solche Konstrukte in ein einheitliches Aussehen zu bringen, erweist sich als schwierige und zeitaufwendige Aufgabe. Da fällt es oft leichter, wenn Sie den Autor auffordern, die Tabelle mit Calc statt mit Writer zu erstellen.

Dies hat zwei Vorteile: Zum einen legt der Autor nur den Inhalt fest, die Formatierung ignorieren Sie einfach. Zum anderen ermöglicht die Applikation sehr einfach, in Tabellen zu rechnen: Es stehen alle Möglichkeiten von Calc bereit, eine Writer-Tabelle muss da passen.

Die Calc-Tabelle exportieren Sie in eine CSV-Datei, wobei alle Formate verloren gehen. Anschließend wandeln Sie das CSV mit einem Editor wie Sed oder mit einem Ant-Task in eine LaTeX-Tabelle um. Der Task calc2csv ruft dabei LibreOffice Calc auf und exportiert die Tabelle im CSV-Format (Listing 8). Dabei das Komma (44) als Spaltentrenner, für Zeichenketten kommt das doppelte Anführungszeichen (34) zum Einsatz. Mit terminateooo wird LibreOffice wieder beendet. Anschließend lässt sich die CSV-Datei in eine LaTeX-Tabelle umwandeln – das Ergebnis zeigt Listing 9.

Listing 8

<calc2csv srcfile="${odt.dir}/tab_bsp.ods"
  destfile="${target.dir}/tab_bsp.csv"
  ooopath="/usr/lib/openoffice/program"
  csvoption="44,34,UTF8" />
<terminateooo />
<csv2tabular srcfile="${target.dir}/tab_bsp.csv"
  usesrcfile="true"
  workdir="${target.dir}"
  head="true"
  firstlinehead="true"
  headcol="\textbf"
  mode="tabular"
  columntypes="|l|r|" />

Listing 9

\begin{tabular}{|l|r|}\hline
\textbf{Peter} & \textbf{13} \\\hline
Uschi & 23 \\\hline
 & 36 \\
\hline
\end{tabular}
\endinput

Um diese Tabelle einzubinden, markieren Sie sie im Writer-Dokument mit einer Textzeile. Im Beispiel sieht diese wie folgt aus:

TABELLE::Tabellenbeschriftung::Datei::

Diese Zeile verwenden Sie später in dem zweistufigen Makro input (Listing 10). Beim Export ersetzt es Sonderzeichen wie den Unterstrich entsprechend. Enthält der Dateiname der CSV-Datei einen Unterstrich, so machen Sie die ungewollte Ersetzung mit sedlatex wieder rückgängig. Anschließend wandeln Sie mit Sed die Markierung in entsprechende LaTeX-Makros um. Hier im Beispiel lautet der Name des Makros InputIfFileExists.

Listing 10

<sedlatex srcfile="${odt.dir}/dok_tab.tex"
  destfile="${target.dir}/dok_tab.tmp">
  <configsedlatex start="TABELLE" sep="::"
   group="2" search="\_" replace="_" />
</sedlatex>
<sed srcfile="${target.dir}/dok_tab.tmp"
  destfile="${target.dir}/dok_tab.tex">
  <configpair one="TABELLE::(.*?)::(.*?)::"
   two="\\InputIfFileExists{$2.tex}{}{Tabelle nicht gefunden!}\\n" />
</sed>

Möchten Sie die Tabelle lieber in einer Gleitumgebung mitsamt Beschriftung sehen, so hilft der Parameter aus Listing 11.

Listing 11

two="\\begin{table}\\caption{$1}\\InputIfFileExists{$2.tex}{}{Tabelle nicht gefunden!}\\end{table}"

Fazit

Nach dem Umwandeln in LaTeX dürfen Sie die Datei beliebig ändern. Beachten Sie dabei aber, dass Sie alle manuellen Änderungen in der LaTeX-Datei nachpflegen müssen, wenn der Autor am Writer-Dokument Änderungen vornimmt.

Mit etwas Experimentierfreude wandeln Sie selbst komplexere Writer-Dokumente im Handumdrehen automatisch nach LaTeX um. Damit eignet sich Writer als komfortablen Editor für das Satzsystem. Im W2L-Handbuch finden Sie noch weitere interessante Möglichkeiten – ein Blick lohnt sich auf jeden Fall. 

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
KAUFEN
LinuxUser 02/2013 KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland

Hinterlasse einen Kommentar

  E-Mail Benachrichtigung  
Benachrichtige mich zu: