Home / LinuxUser / 2013 / 02 / LibreOffice als komfortabler Editor für LaTeX

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Eingedost
(161 Punkte bei 4 Stimmen)
Aufteiler
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

AA_tennis_patita-rds_sxc_1181268.jpg

© Patita_rds, sxc.hu

Text, Satz, Sieg

LibreOffice als komfortabler Editor für LaTeX

09.01.2013 Mit Writer2LaTeX verknüpfen Sie die angenehmen Möglichkeit der Eingabe in LibreOffice Writer mit dem perfekten Druckbild des Satzsystems LaTeX.

Wer in Team-Arbeit ein Dokument erstellt, muss sich zwangsläufig mit der Frage auseinandersetzen, welches Programm dazu zum Einsatz kommen soll. Eine gängige Antwort lautet "Word", gelegentlich bringt ein Kollege "Writer" ins Spiel – nur "LaTeX" ist so gut wie nie zu hören. Die beiden Erstgenannten bieten jedoch nicht die perfekte Ausgabe des Satzsystems, das seinerseits wiederum in Sachen Komfort bei der Eingabe gewöhnungsbedürftig erscheint.

Eine Lösung des Dilemmas verspricht Writer2LaTeX [1]: Es wandelt alle Formate, für die es in LibreOffice einem Import-Filter gibt, nach LaTeX um, und ermöglichen so alle Mitstreitern die (fast) freie Wahl des Editors.

Die Software besteht im Moment aus vier stabilen Paketen: Writer2LaTeX (kurz W2L) übernimmt das Umwandeln von Writer-Dokumenten in LaTeX-Dateien. Dazu gesellen sich Writer2BibTeX, das Literaturangaben aus einem Writer-Dokument extrahiert und in einer BibTeX-Datei speichert. Mit Writer2xhtml wandeln Sie Texte aus LibreOffice nach XHTML, wandeln Sie mit MathML 2.0 und CSS2 zur Anzeige in Webseiten um oder geben Sie als EPUB aus. Über Calc2xhtml schließlich konvertieren Sie Tabellen aus der Office-Suite nach XHTML (mit CSS2) zur Anzeige in Webseiten.

Writer4LaTeX, eine Erweiterung (Extension) für Writer, um diesen in eine LaTeX-Installation zu integrieren, befindet sich noch in einem sehr frühen Entwicklungsstadium. Die meisten Distributionen enthalten LibreOffice samt der Extension (Paket writer2latex), allerdings nicht immer in der aktuellsten Version (siehe Kasten "Installation").

W2L installieren

Bietet die verwendete Distribution keine aktuelle Version von W2L, so installieren Sie es – eine Java-Laufzeitumgebung vorausgesetzt – leicht selbst nach. Dazu laden Sie die aktuelle Version (zu Redaktionsschluss die Datei writer2latex12beta.zip) aus dem Web [1] oder von der Heft-DVD herunter. Obwohl W2L noch im Beta-Stadium steckt, läuft es sehr zuverlässig. Sie entpacken die ZIP-Datei in ein beliebiges Verzeichnis und erteilen dann der Datei writer2latex12/w2l mittels chmod +x writer2latex12/w2l das Ausführungsrecht. Nun fügen Sie das Verzeichnis writer2latex12 der Umgebungsvariablen PATH hinzu und können das Tool dann mit w2l aufrufen.

Aufruf

Es gibt im Wesentlichen vier Möglichkeiten, W2L zu verwenden. Im einfachsten Fall verwenden Sie das Programm als Extension direkt in LibreOffice. Dazu laden Sie die OXT-Datei aus dem Netz oder von der Heft-DVD nach. Für die ersten Versuche und zum Testen erweist sich dies als ausreichend. Allerdings bieten die Menüs nur die vorgegebenen Einstellungen und lassen wenig Raum für Anpassungen (Abbildung 1).

Abbildung 1

Abbildung 1: Die Dialog zum Export beim Einsatz von Writer2LaTeX als Extension bietet viele Möglichkeiten zur Konfiguration, schöpft aber bei weitem nicht das volle Potenzial der Software aus.

Alternativ starten Sie W2L von der Kommandozeile (Listing 1), wozu Sie LibreOffice als Programm nicht benötigen. Hier nehmen Sie alle Einstellungen entweder direkt oder über eine Konfigurationsdatei in einem XML-Format vor. Eine dritte Variante stellt der Aufruf von W2L aus einem Java-Programm dar, was sich aber in der Regel als wenig praktikabel erweist.

Listing 1

$ w2l -ultraclean writerbeispiel.odt writerbeispiel_ultraclean.tex
This is Writer2LaTeX, Version 1.0.2 (2010-05-31)
Starting conversion...
Reading default configuration ultraclean.xml
Converting writerbeispiel.odt
Done!

Die komfortabelste Methode, gerade für das Erstellen umfangreicher Dokumente, ist der Aufruf über ein Apache-Ant-Skript (siehe Kasten "Das Build-Tool Apache-Ant"). Das Paket ant-worker stellt entsprechende Möglichkeiten bereit (Listing 2). Die Entwickler arbeiten seit 2010 an dem Projekt und erweitern es schrittweise, seit kurzem steht es auf Sourceforge bereit [2]. Sie finden es außerdem auf der Heft-DVD.

Das Build-Tool Apache-Ant

Ant diente ursprünglich zum Erstellen von Java-Programmen. Dabei übersetzt das Programm ähnlich wie Make die entsprechenden Dateien nur dann, wenn sich die Ursprungsdatei geändert hat. Über diverse Regeln und Vorgaben legen Sie fest, welche Datei oder welcher Aufruf von welcher Quelle abhängt. Inzwischen kommt Ant nicht nur beim Übersetzen von Java-Programmen zum Einsatz, sondern in vielen Bereichen, da es sehr leicht fällt, entsprechende Regeln zu schreiben und so LaTeX-Dokumente zu übersetzen.

Listing 2

<ifnewer srcdir="${odt.dir}"
    destdir="${target.dir}"
    srcextname=".*\.odt$"
    destextname="tex"
    verboseheader="false">
  <writer2latex config="ultraclean.xml" />
</ifnewer>

Dabei überprüft die Software die ODT-Dateien im Quellverzeichnis. Gibt es zu einer gefundenen Datei im Zielverzeichnis eine entsprechende TeX-Datei, deren Zeitstempel älter ist, unternimmt das Programm nichts. Fehlt die Datei oder ist älter, so führt die Applikation die passende Aufgabe aus.

Dabei gibt das Tool die Parameter wie Quell- und Zieldatei an den Aufruf zum Konvertieren weiter. Der Task writer2latex ruft mit der angegebenen Konfiguration die W2L-Java-Bibliothek auf. Als Ergebnis erhalten Sie die gewünschte LaTeX-Datei.

Erstes Beispiel

Im ersten Beispiel kommt ein Writer-Dokument (Abbildung 2) zum Einsatz, das normale Elemente enthält, wie etwa Überschriften, Text, Bilder, Tabellen, Formeln und Aufzählungen. Die Besonderheit bei den Bildern liegt darin, dass eines direkt importiert wurde, das andere jedoch nur über einen Verweis (Link) eingebunden ist.

Abbildung 2

Abbildung 2: Das Writer-Beispiel-Dokument.

Standardmäßig stellt W2L fünf Konfigurationen bereit (siehe Tabelle "Basiskonfiguration"). Die erzeugte LaTeX-Datei folgt dabei im Aufbau den Konventionen für diesen Dokumententyp: Auf den Header folgt eine Präambel mit allen Deklarationen. Daran schließt sich der eigentliche Text des Dokument an.

Basiskonfiguration

Parameter Konfigurationsdatei Beschreibung
-ultraclean ultraclean.xml Entfernt fast alle Formatierungen.
-clean clean.xml Entfernt Formatierungen, aber nicht so restriktiv wie -ultraclean.
-pdfscreen pdfscreen.xml Für die Präsentation am Bildschirm optimiert.
-pdfprint pdfprint.xml Für die Ausgabe auf einem Drucker optimiert.
-article article.xml Die Klasse article kommt zum Einsatz, viele Formatierungen bleiben erhalten.

Der erste Teil des Beispiels (Listing 3) zeigt den Kopf der LaTeX-Datei. Als Encoding kommt dabei reines ASCII zum Einsatz, daher stehen Umlaute in der LaTeX-Notation im Text. Metadaten zum Titel oder Autor übernimmt die Software aus den Einstellungen von LibreOffice. Formatvorlagen setzt W2L dabei in entsprechende Makros oder Umgebungen für LaTeX um, wie Überschrift 1 in section oder Überschrift 2 in subsection.

Listing 3

% This file was converted to LaTeX by Writer2LaTeX ver. 1.3.1
% see http://writer2latex.sourceforge.net for more info
\documentclass{article}
\usepackage[ascii]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{amssymb,amsfonts,textcomp}
\usepackage{array}
\usepackage{supertabular}
\usepackage{hhline}
\usepackage{caption}
\usepackage{graphicx}
\makeatletter
\newcommand\arraybslash{\let\\\@arraycr}
\makeatother
\setlength\tabcolsep{1mm}
\renewcommand\arraystretch{1.3}
\title{}
\author{Michael Niedermair}
\date{2012-08-25}
\begin{document}

Einen wichtigen Punkt stellt das Umwandeln von Bildern dar. Für jedes eingebundene Bild erzeugt W2L eine eigene Datei, sofern es das Format unterstützt. An den Dateinamen hängt es -img001 für das erste Bild an, die Datei-Endung hängt vom eingebundenen Format ab. Das erste Bild trägt im Beispiel den Dateinamen writerbeispiel-img001.jpg.

Externe Bilder bindet W2L mit dem angegebenen Namen ein. Hier ist es sinnvoll, in der Office-Suite unter Optionen | Laden/Speichern | Allgemein die Option URLs relativ zum Dateisystem speichern zu verwenden: Das sorgt dafür, dass kein absoluter Pfad zum Einsatz kommt und das Dokument sowie der LaTeX-Export auf anderen Systemen funktionieren.

Der vorher schon erwähnte Export birgt noch ein weiteres Problem: LaTeX unterstützt im Wesentlichen nur Postscript-Bilder, jedoch kein PNG oder JPEG. Erst PDFLaTeX versteht sich auf diese Formate. Im Export sehen Sie an den entsprechenden Stellen den Text Warning: Image ignored in eckigen Klammern; der Code für das eingebundene Bild ist mit einem vorangestellten Prozentzeichen deaktiviert.

Eingebettete Tabellen verfrachtet der Export in die Umgebung supertabular. Bei Formeln kommt die Umgebung equation zum Einsatz, für Aufzählungen itemize oder enumerate. Letzteres hängt davon ab, ob Sie mit Aufzählungszeichen oder einer fortlaufenden Nummer gearbeitet haben.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

1323 Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...