Programmcode in LibreOffice formatieren

Code Colorizer Formatter
Code Colorizer Formatter
24.09.2012 20:10

Manchmal möchte oder muss man Programm-, HTML- oder XML-Code in ein LibreOffice-Writer-Dokument einfügen. Im Gegensatz zu vielen Texteditoren besitzt LibreOffice jedoch kein Syntaxhighlighting, der Code bleibt eine schwarze unübersichtliche Textmasse. In kurzen Codeschnipseln lassen sich noch von Hand alle Schlüsselwörter oder Tags einfärben oder umformatieren.

Selbsthilfe

Bei mittellangen Codepassagen kann man die Suchen & Ersetzen-Funktion heranziehen. Dazu ruft man Bearbeiten | Suchen & Ersetzen... auf, gibt unter Suchen nach ein Schlüsselwort ein, wie zum Beispiel das HTML-Tag <p> und wiederholt dieses noch einmal unter Ersetzen durch. Jetzt öffnet man Mehr Optionen, klickt auf Format ... und stellt dann im Fenster das Aussehen des <p>-Tags ein. Stimmen die Einstellungen, geht es per OK zurück. Mit Ersetzen Alle formatiert LibreOffice dann automatisch alle <p>-Tags wie gewünscht um.

Suchen und Ersetzen mit Formatierung

Diese Methode ist allerdings recht fehleranfällig: Steht unter Ersetzen durch nicht exakt das Suchwort, erhält man nach dem Ersetzen fehlerhaften Code. Darüber hinaus kann man mit dieser Methode nur einzelne Schlüsselwörter und keine längeren Passagen umgestalten. So ersetzt LibreOffice nur das Tag <p>, nicht aber seinen erweiterten Vetter <p lang="de" >. Man könnte in diesem Fall nur nach <p suchen, womit LibreOffice aber nur genau diesen vorderen Teil umformatieren würde. Alternativ bietet sich der Einsatz regulärer Ausdrücke an [1]. Einen solchen kryptischen Burschen zu formulieren dauert jedoch häufig genau so lange, wie eine Formatierung per Hand.

Erweiterung

Glücklicherweise gibt es noch die Erweiterung Code Colorizer Formatter [2]. Sie färbt Programmcode in den Sprachen Basic, C++, Java, Perl, Python, R, XML, C# und Assembler ein. Um die Erweiterung einzusetzen, lädt man sich unter [2] das oxt-Paket herunter (über den Link Get Code Colorizer Formatter for All platforms im Bereich Current Release). In LibreOffice ruft man den Menüpunkt Extras | Extension Manager... auf, klickt Hinzufügen ... an und wählt die heruntergeladene .oxt-Datei aus. In der Liste sollte jetzt der Makroformatierer von Andrew Pitonyak erscheinen. Mit einem Klick auf Schließen geht es wieder zurück zu LibreOffice, das man einmal beendet und wieder neustartet.

Jetzt lädt man das Dokument mit dem Quellcode, markiert diesen und wählt dann unter Extras | Add-Ons | MacroFormatterADP und im aufklappenden Untermenü den mit Farbe vorgewähltes beginnenden Menüpunkt für die vorliegende Programmiersprache. Hat man beispielsweise gerade ein C++-Programm markiert, wählt man Farbe vorgewähltes C++. Im Fall einer HTML-Seite kann man zu Farbe vorgewähltes XML greifen.

Der Code Colorizer Formatter hat hier HTML-Code formatiert.

Unter Umständen erscheint jetzt ein Fenster, das die fehlende Schriftart Courier New bemeckert. In dieser möchte die Erweiterung den Code setzen. In solch einem Fall klickt man auf Ja, wählt unter Font name eine passende Schriftart und bestätigt mit OK. An das Einrichtungsfenster gelangt man später immer wieder über Extras | Add-Ons | MacroFormatterADP | Configuration.

Infos

[1] Suchen und Ersetzen in LibreOffice mit regulären Ausdrücken:
http://help.libreoffice.org/Common/List_of_Regular_Expressions/de

[2] Code Colorizer Formatter:
http://extensions.libreoffice.org/extension-center/code-colorizer-formatter


Kommentare

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Teamviewer
Gerhard Blaschke, 22.12.2014 21:45
Danke für die Hinweise, es läuft wie geschmiert. Hinweise für Benutzer: aktuell ist die Version 10, wenn ma...
Re: [EasyLinux-Suse] OS_13.2_mate_caja_multiple_Instanzen_(hier_erstmal_gelöst)
"d.blanke@gmx.net", 22.12.2014 21:24
Mahmud Al-Ahmed schrieb: > On Mon, 22 Dec 2014 14:00:45 +0100 > Wilhelm Boltz wrote: > >...
Re: [EasyLinux-Ubuntu] Teamviewer
Richard Kraut, 22.12.2014 21:10
Am Montag, den 22.12.2014, 19:33 +0100 schrieb Gerhard Blaschke: > habe mittlerweile auf einem Rechner Jes...
Re: [EasyLinux-Ubuntu] nicht finalisierte DVD lesbar machen
Richard Kraut, 22.12.2014 20:36
Am Montag, den 22.12.2014, 18:26 +0100 schrieb Uwe Herrmuth: > habe eine DVD von einem handelsüblichen (äl...
Re: [EasyLinux-Ubuntu] Teamviewer
Wolfgang Völker, 22.12.2014 20:03
Hallo Gerhard, Gerhard Blaschke schrieb am 22.12.2014: Hallo Liste, habe mittlerweile auf einem Rechner J...