Befehlsgewaltig

Texteditor für die Konsole

07.10.2012 Konfigurationsdateien, Skripte oder einfache Notizen – für solche Schreibarbeiten müssen Sie nicht zu einer umfangreichen Textverarbeitung greifen. Ein schlanker Texteditor im Terminalfenster oder auf der Konsole ist in diesem Fall das Mittel der Wahl. Wir übergeben das Kommando an Mcedit.

Auf den EasyLinux-Mailinglisten [1] und auch in vielen anderen Foren empfehlen fortgeschrittene Benutzer immer wieder die Arbeit mit einem Texteditor auf der Konsole, und das nicht nur, wenn die grafische Oberfläche ein Problem hat. Viele Dinge erledigen Sie mit einem solchen Programm einfach schneller: Statt zahlreicher Mausklicks in den Systemeinstellungen der Distributionen und Desktops richten Sie zum Beispiel so manches bequemer und flinker über Anweisungen in den entsprechenden Konfigurationsdateien ein. Wollen Sie kurz etwas notieren? Dann ist der Start von LibreOffice & Co. sicherlich mit Kanonen auf Spatzen geschossen. Verfassen Sie Ihre eigenen Shell-Skripte? Dann ist ein Texteditor mit Syntax-Highlighting die bevorzugte Lösung.

Die grafischen Arbeitsumgebungen bringen jeweils ihre eigenen Texteditoren mit. Gedit ist Standard unter Gnome und Unity, Kate unter KDE, LXDE bringt Leafpad und Xfce den Editor Mousepad mit. All diese Werkzeuge laufen auch auf anderen Desktops, benötigen aber in jedem Fall eine grafische Umgebung. Darum bietet Linux auch einige Editoren, die nicht nur im Terminalfenster, sondern auch auf einer der virtuellen Konsolen ([Strg]+[Alt]+[F1],[Strg]+[Alt]+[F2] usw.) und damit auch per SSH auf entfernten Systemen laufen. In diesem Guru-Training stellen wir mcedit vor, den eingebauten Texteditor des Dateimanagers Midnight Commander [2].

Angetreten!

Da mcedit fester Bestandteil vom Midnight Commander (mc) ist, installieren Sie das Paket mc. OpenSuse und Ubuntu bringen es beide von Haus aus mit. Im Terminalfenster (auch remote per SSH auf einem anderen Rechner) arbeitet der Editor nicht nur mit der Tastatur, sondern auch mit der Maus zusammen. Möchten Sie die Mausunterstützung auch auf den erwähnten virtuellen Konsolen nutzen, spielen Sie zusätzlich das Paket gpm ("general purpose mouse", [3]) ein, falls es noch nicht vorhanden ist. Dieser Systemdienst erlaubt es, den Mauszeiger auch außerhalb der grafischen Oberfläche zu nutzen.

Der GPM-Daemon nimmt unter Ubuntu nach der Installation bei jedem Bootvorgang automatisch den Dienst auf. Direkt nach der Installation ist das eventuell nicht der Fall, so dass Sie den Service einmalig von Hand anschubsen können, wenn Sie den Rechner nicht neu starten möchten:

$ sudo /etc/init.d/gpm start
[sudo] password for huhn:
 * Starting mouse interface server ↩
gpm                         [ OK ]

Anwender von OpenSuse richten den automatischen GPM-Start beim Booten entweder nachträglich über YaST (Bereich System / System Services (Runlevel), Eintrag gpm markieren und Aktivieren anklicken) ein oder tippen das folgende Kommando in ein Terminal:

$ sudo chkconfig gpm on
root's password:

Eine Rückmeldung erhalten Sie nicht. Zur Kontrolle können Sie den Befehl wiederholen und das on dabei weglassen, um den aktuellen Status abzufragen.

Alles auf Anfang

Um den Editor zu starten, gibt es zwei Wege: den direkten Befehl mcedit oder den Aufruf aus dem Midnight Commander heraus. Unter Ubuntu spielt es keine Rolle, ob Sie beim Start über mcedit dahinter einen Dateinamen angeben oder nicht – in letzterem Fall starten Sie mit einem leeren Dokument und können später beim Speichern einen Namen angeben. OpenSuse weigert sich hingegen, mcedit ohne Angabe eines Dateinamens zu öffnen, und beschwert sich, das aktuelle Verzeichnis sei keine normale Datei. Wollen Sie daher eine neue Datei erstellen, geben Sie am besten direkt den Namen und Speicherort mit an, zum Beispiel so:

mcedit ~/Dokumente/notizen-mc.txt

Um den Editor aus dem Midnight Commander heraus zu starten, starten Sie zunächst mit mc den Dateimanager, blättern mit den Pfeil- oder Bildlauftasten zur gewünschten Datei und drücken dann die Funktionstaste [F4]. OpenSuse öffnet die Datei sofort, während Ubuntu das Skript /usr/bin/select-editor aufruft und abfragt, mit welchem Texteditor Sie bevorzugt arbeiten möchten. Tippen Sie die für mcedit gezeigte Nummer, gefolgt von [Eingabe], um zukünftig den Editor mit [F4] zu starten.

Um eine Datei mit Administratorrechten zu bearbeiten, stellen Sie das Kommando sudo voran und geben auf Aufforderung Ihr eigenes Kennwort (Ubuntu) bzw. das des Administrators (OpenSuse) ein, zum Beispiel:

sudo mcedit /etc/logrotate.conf

In der oberen Statuszeile zeigt mcedit Informationen zur Datei, und unten blendet der Editor die Grundfunktionen ein (siehe Aufmacherbild). Sie erreichen diese über die Funktionstasten [F1] bis [F10]. Die Onlinehilfe (Taste [F1]) ist nur in englischer Sprache verfügbar, ansonsten spricht der Texteditor aber Deutsch. Weitere Befehle abseits der Grundfunktionen erreichen Sie über das Menü, das Sie mit der Taste [F9] am oberen Rand einblenden. Es erscheint auch, wenn Sie mit der Maus dorthin klicken. Durch die Unterabteilungen navigieren Sie mit den Pfeiltasten oder mit der Maus. Die hervorgehobenen Buchstaben in den Menüeinträgen zeigen die Shortcuts zu den Funktionen an. Hinter einigen Einträgen stehen auch die Funktionstasten oder Kombinationen. Sehen Sie dort C-, drücken Sie [Strg] und das dahinter folgende Zeichen, S- bedeutet [Umschalt] plus Zeichen und M- ist die Metataste (meistens [Alt] oder [Esc]).

Textarbeiter

Mit den Pfeil- und Bildlauftasten blättern Sie zeichen-, zeilen- oder seitenweise im Dokument. Auch das Mausrad scrollt nach oben und unten, und per Klick springen Sie gezielt an die richtige Stelle im Dokument. Über [Alt]+[L] dürfen Sie auch direkt in eine bestimmte Zeile springen. Für mehr Übersicht sorgt dabei die Anzeige der Zeilennummern, die Sie über [Alt]+[N] einschalten.

Mit der Taste [Rückschritt] löschen Sie das Zeichen links vom Cursor, ein Druck auf [F8] entfernt die ganze Zeile. Alternativ markieren Sie einen längeren Abschnitt mit der Maus oder mit [F3] (zum ersten Zeichen navigieren, Funktionstaste drücken, zum letzten Zeichen wandern und wieder [F3] drücken) und löschen dann alles Hervorgehobene mit [F8]. [Strg]+[U] ("undo") macht Aktionen rückgängig, [Alt]+[R] stellt die Änderungen wieder her.

Zum Kopieren und Verschieben gehen Sie ähnlich vor. Zunächst markieren Sie einen Bereich, danach drücken Sie [F5], und mcedit fügt den markierten Abschnitt an der aktuellen Cursorposition ein. [F6] hingegen verschiebt das Hervorgehobene. Wie erwähnt, können Sie die Maus anstelle der Taste [F3] dazu verwenden, etwas zu markieren. Möchten Sie hingegen "echtes" Copy & Paste wie gewohnt ausführen, halten Sie beim Klicken und Ziehen sowie beim Drücken der mittleren Taste (um alles aus der Zwischenablage einzufügen) die Taste [Umschalt] gedrückt.

mcedit bietet eine komfortable Suchfunktion, die Sie über [F7] aufrufen. Im folgenden Dialog tippen Sie die gesuchte Zeichenkette ein und aktivieren per Mausklick oder mit der Leertaste zusätzliche Optionen wie Normal, Regulärer Ausdruck, Groß-/Kleinschreibung, Rückwärts und so weiter. mcedit zeigt nach Druck auf [Eingabe] direkt den ersten Treffer an, [Umschalt]+[F7] springt zum nächsten. Wählen Sie im Suchdialog übrigens Alles finden, hebt der Texteditor nicht nur den Begriff, sondern auch alle Zeilen hervor, in denen er auftaucht (Abbildung 1).

Abbildung 1

Abbildung 1: "mcedit" bietet eine äußerst umfangreiche Suchfunktion. Im durch [F7] geöffneten Dialog können Sie gezielt Kriterien bestimmen und nicht nur einzelne Treffer, sondern gleich alle Fundstellen anzeigen.

Drücken Sie [F4] anstelle von [F7], verwandelt sich der Suchen-Dialog in einen Ersetzen-Dialog. Anschließend öffnet sich eine weitere Abfrage, in der Sie bestimmen, ob Sie die aktuelle Fundstelle oder gleich alle Treffer ersetzen. Natürlich ist auch eine Überspringen-Funktion dabei.

Über [F10] beenden Sie den Texteditor. Ist die Datei unverändert, quittiert mcedit den Dienst sofort. Ansonsten dürfen Sie entscheiden, ob Sie die Änderungen speichern, verwerfen oder das Programm doch nicht schließen möchten. Speichern können Sie auch unabhängig davon – [F2] speichert die Datei unter demselben Namen, [F12] oder der Menüeintrag Datei / Speichern unter) unter einem neuen.

In manchen Umgebungen funktionieren die Tasten [F1] bis [F12] nicht; zumindest für die ersten zehn Funktionstasten können Sie sich mit der Alternative [Esc] + Nummer behelfen; zum Verlassen des Editors können Sie also auch [Esc],[0] drücken, und die Suche starten Sie alternativ zu [F7] auch über [Esc],[7].

Anpassungsfähig

Als Bestandteil des Midnight Commanders teilt sich mcedit mit diesem auch die Konfigurationsdateien. Unter Ubuntu und OpenSuse liegen die persönlichen Einstellungen im Home-Verzeichnis im versteckten Ordner .config/mc. Die allgemeinen Einstellungen finden Sie in der Datei ~/.config/mc/ini – dort legt auch mcedit die Anpassungen ab. Die Datei dürfen Sie mit einem Texteditor bearbeiten und ziehen dazu am besten die Manpage zu mc zurate (Abschnitt Options). Die meisten der dort gelisteten Anweisungen können Sie aber auch über das Menü Optionen an eigene Wünsche anpassen.

mcedit unterstützt das Syntax-Highlighting für viele Dateitypen und liefert dazu fertige Farbschemata aus. Auf den von EasyLinux unterstützten Distributionen finden Sie die Dateien im Verzeichnis /usr/share/mc/syntax. Ubuntu enthält 71 Syntax-Dateien, OpenSuse sogar 73. Erkennt mcedit den Typ einer Datei nicht selbstständig, können Sie dem Editor über das Menü Optionen / Syntaxhervorhebung beibringen, nach welchem Schema er die Hervorhebungen anzeigen soll.

Glossar

Syntax-Highlighting

Der Texteditor hebt bestimmte Wörter und Zeichenkombinationen abhängig von ihrer Bedeutung in unterschiedlichen Farben, Schriftarten- und stilen hervor. So zeichnet das Programm die Schlüsselwörter von Quelltexten, Konfigurationsdateien usw. aus. Kommentare erscheinen meist deutlich anders als der eigentliche Code. Das alles trägt zur Lesbarkeit bei und vermeidet Tippfehler.

Tip a friend    Druckansicht beenden Bookmark and Share
Kommentare