Home / Archiv / Tipp der Woche / Programmcode in LibreOffice formatieren

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

„Klickbunt auf dem Server? Warum nicht, wenn's hilft!"
(220 Punkte bei 8 Stimmen)
KDE 4.10.2, Gnome 3.6 und mehr
(121 Punkte bei 4 Stimmen)
Google schmeißt Jabber raus ...
(121 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.

Code Colorizer Formatter
Code Colorizer Formatter

Programmcode in LibreOffice formatieren

→ Zum Tipp-Archiv...

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

Bookmark and Share

Kommentare

Tipp der Woche

Emacs als Psychologe
Emacs als Psychologe
Tim Schürmann, 21.05.2013 11:49, 0 Kommentare

Wer beim Schreiben in Emacs nicht mehr weiter weiß oder schier an einer Programmieraufgabe verzweifelt, der kann den eingebauten Psychologen um Rat fragen.

1966 entwickelte der Infor...

1422 Hits
Wertung: 166 Punkte (15 Stimmen)

Aktuelle Fragen

Kontakt via QR code hinzufügen
Herman Sproesser, 17.05.2013 17:46, 3 Antworten
Hi hab in der aktuellen ausgabe 06.2013 den artikel über QR Codes gelesen. Ich hab nartürlich...
Dateimanager Dolphin, wo legt er die Datei Kommentare ab?
Uwe Heine, 16.05.2013 15:19, 1 Antworten
Suse Linux 12.1 - KDE 4.7.2 / Dolphin 1.7. Ich habe bei vielen Dateien über Dolphin Kommentare...
wie baut man Kernel Module so, dass sie mit jedem Kernel laden?
GoaSkin , 22.04.2013 10:22, 1 Antworten
Hallo, baut man anhand eines Kernel-Sources Module, nutzt Linux im Normalfall eine strikte V...
Problem beim Installieren von SuSe 12.3
Georg Prokert, 14.04.2013 00:04, 16 Antworten
Hallo, auf meinem neuem Laptop (Acer Aspire V3-771, Intel Core i5-3230 M, Intel HD Graphics 4...
lvm wieder loswerden
Peter Dibbern, 11.04.2013 16:28, 4 Antworten
Ich habe sämtliche alten Kisten ausgeschlachtet und aus der Teilen einen Rechner zusammengeschrau...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] OT_(Hardware-Frage):_Kompabiltät_eines_Kartenlesers
Alfred Zahlten, 22.05.2013 20:44
Am 22.05.2013 17:54, schrieb Rainer: Hallo Rainer, >>> Hmm, kann ich mir nicht vorstellen: In der...
Re: [EasyLinux-Ubuntu] OT_(Hardware-Frage):_Kompabiltät_eines_Kartenlesers
Rainer, 22.05.2013 20:12
Am Wed, 22 May 2013 19:31:21 +0200 schrieb Stefan Luetje : > > > > Wenn in /etc/default/kexe...
Re: [EasyLinux-Suse] Xfce_-__Anzeige_entfernbare_Datenträger
Luzius Eibling, 22.05.2013 19:34
Am 21.05.2013 20:36, schrieb Thomas Lueck (Dipl.-Ing.): > Am Dienstag, den 21.05.2013, 20:00 +0200 schrieb...
Re: [EasyLinux-Ubuntu] OT_(Hardware-Frage):_Kompabiltät_eines_Kartenlesers
Stefan Lütje, 22.05.2013 19:31
Am 22. May 2013 um 19:08 CEST schrieb Rainer: > Am Wed, 22 May 2013 18:54:34 +0200 > schrieb Stefan L...
Re: [EasyLinux-Ubuntu] OT_(Hardware-Frage):_Kompabiltät_eines_Kartenlesers
Rainer, 22.05.2013 19:08
Am Wed, 22 May 2013 18:54:34 +0200 schrieb Stefan Luetje : > Am 22. May 2013 um 17:47 CEST schrieb Raine...