Konsolenbasierter Texteditor Micro

© Liligraphie, 123RF

Smarter Schreiberling

Gerade kleine Texteditoren für die Konsole verfügen oft über erstaunlich umfangreiche Fähigkeiten – da macht Micro keine Ausnahme.

Schlanke Texteditoren für die Kommandozeile erfreuen sich vor allem bei Administratoren großer Beliebtheit, etwa zum Editieren der /etc/fstab, aber auch zum schnellen Schreiben einfacher Texte. Neben Nano gibt es mit Micro [1] einen weiteren Vertreter dieser recht speziellen Programme, der eine genauere Betrachtung verdient. Da er keine Abhängigkeiten benötigt, lässt sich der Texteditor einfach installieren und unkompliziert konfigurieren.

Micro vermag mehrere Dateien gleichzeitig zu bearbeiten und bietet eine Syntaxhervorhebung für viele Sprachen sowie ein gutes, mehrstufiges Undo. Daneben unterstützt Micro Unicode und ermöglicht den Einsatz komplexer Makros ebenso wie Linting und automatische Fehlersuche für Programmquelltexte. Weitere Funktionen lassen sich über in Lua geschriebene Plugins schnell hinzufügen.

Micro steht für alle gängigen Plattformen auf der Webseite des Projekts zum Herunterladen bereit. Eine Installation im klassischen Sinne erfordert Micro nicht. Es genügt, den passenden Tarball micro-1.4.0-linux-arm.tar.gz von der Github-Seite herunterzuladen, ihn zu entpacken und das darin enthaltene Binary micro ins Verzeichnis /usr/bin/ zu kopieren, womit der Editor für alle Anwender bereitsteht.

Um mit Micro die Zwischenablage des X-Window-Systems zu nutzen, muss Xclip [2] installiert sein, das alle gängigen Distributionen in ihren Repositories anbieten.

Besonderes

Micro entstand als Weiterentwicklung von Nano. Daher verfügt er über die wesentlichen Features seines Vorgängers, die er um einige recht angenehme Funktionen erweitert. So bearbeitet Nano beispielsweise keine Datenströme aus dem Standardeingabekanal, was jedoch in vielen Fällen wünschenswert wäre, etwa beim Weiterverarbeiten von Fehlermeldungen. Micro erledigt diese Aufgabe ohne besondere Vorkehrungen: Der Aufruf dmesg | tail | micro beispielsweise öffnet das Editorfenster mit den letzten zehn Zeilen von Dmesg (Abbildung 1).

Abbildung 1: Cooles Feature: Der Texteditor Micro verarbeitet Eingaben via STDIN wie normale Dateien.

Ein ausgesprochen wichtiges Feature stellt der von Emacs abgeschaute Kommandoprompt dar: Er ermöglicht, direkt editorinterne Befehle auszuführen, die sich darüber hinaus auch noch automatisch komplettieren lassen. Dazu öffnen Sie mit [Strg]+[E] das Eingabefenster am unteren Fensterrand. Geben Sie dort beispielsweise he ein, lässt sich das mit einem Druck auf den Tabulator zu help ergänzen. Ein beherzter Druck auf die Eingabetaste öffnet dann die Übersichtsseite der Hilfe (Abbildung 2).

Abbildung 2: Oben: Die integrierte Hilfe beginnt mit einer Übersichtsseite. Unten: Für bestimmte Stichworte gibt es zusätzliche Hilfstexte, etwa für die voreingestellten Tastenbindungen.

Der Befehl help commands fördert eine Zusammenstellung aller verfügbaren internen Befehle von Micro zutage. Eine komplette Übersicht der voreingestellten Tastenbindungen erhalten Sie mit help defaultkeys. Alle Tastenbindungen lassen sich in der Datei ~/.config/micro/bindings.json überschreiben oder ergänzen, die Sie gegebenenfalls erst einmal anlegen müssen. Wie Sie dann die Tastenbindungen definieren, zeigt das Micro-Kommando help keybindings. Die Standardbelegung fasst die Tabelle "Wichtige Shortcuts" zusammen.

Wichtige Shortcuts

Tastenbindung

Wirkung

[Strg]+[A]

alles auswählen

[Strg]+[D]

Zeile duplizieren

[Strg]+[E]

interne Befehle eingeben

[Strg]+[F]

suchen

[Alt]+[G]

Tastenmenü anzeigen

[Strg]+[G]

Hilfe

[Strg]+[K]

Zeile löschen

[Strg]+[Q]

beenden

[Strg]+[S]

speichern

[Strg]+[T]

neuer Tab

[Strg]+[O]

Buffer öffnen

[Strg]+[W]

nächster Puffer

[Strg]+[Y]

Redo

[Strg]+[Z]

Undo

Pfeiltasten

Bewegen im Puffer

[Umschalt]+Pfeiltasten

Bewegen im Puffer mit Auswahl

Auch mehrere Dateien lassen sich beim Micro gleichzeitig und nebeneinander laden. Jede davon hält das Tool in einem Puffer und zeigt sie an. Zum einen lassen sich in einem Fenster mehrere Puffer anzeigen, zum anderen bietet die Applikation auch die Ansicht in sogenannten Tabs an. Dabei handelt es sich jedoch nicht um Reiter, sondern um jeweils separate Fensteransichten.

Für die Ein- und Ausgaben verwendet das Programm die Bibliothek Tcell [3]. Sie erlaubt unter anderem das Verwenden der Maus auch im Terminal und kommt beim Verarbeiten von Unicode-Zeichen zum Einsatz. Die durch diese Library bereitgestellte Mausunterstützung fällt recht umfangreich aus: Neben dem Platzieren des Cursors erlaubt sie auch die Textauswahl mit Doppel- oder Dreifachklick sowie durch Ziehen bei gehaltener Maustaste.

Plugins und Tastenbindungen

Eine wichtige Erweiterung von Micro gegenüber dem Nano besteht in der Möglichkeit, Plugins zu verwenden oder selbst zu schreiben, die komplexe Formatierungen oder andere Bearbeitungen erlauben. Dabei kommt die Programmiersprache Lua zum Einsatz, die sich einfach erlernen lässt und deren schlanker Interpreter recht schnell arbeitet.

Im Plugin-Channel [4] von Micro finden Sie etliche interessante Erweiterungen wie beispielsweise Textschnipsel, einen Dateimanager, eine Rechtschreibprüfung und ein Tool für automatische Textformatierungen. Sie lassen sich über den eingebauten Plugin-Manager des Editors einrichten, indem Sie mit [Strg]+[E] in den Kommandomodus wechseln und plugin install Name eingeben. Nach einem Neustart des Editors steht die Erweiterung zum Einsatz bereit.

Tastenbindungen erzeugt der Editor mit dem internen Befehl bind. Um sie zu nutzen, öffnen Sie mit [Strg]+[E] die Befehlsschnittstelle und definieren mittels bind Taste Aktion eine neue Tastenbindung. Das Kommando unbind löscht sie bei Bedarf wieder. Welche Aktionen Micro in dieser Hinsicht erlaubt, verrät die Hilfe im Bereich help keybindings im Abschnitt ## Bindable actions and bindable keys. Die oben in der init.lua definierte Funktion gorun beispielsweise lässt sich mit folgendem Befehl an die Tastaturkombination [Ctrl]+[R] binden:

BindKey("CtrlR", "init.gorun")

Analog zu Nanon kennt die Software auch Tastenmakros. Die Funktion ToggleMacro (Voreinstellung: [Strg]+[U]) startet beziehungsweise beendet das Aufzeichnen eines Makros, das sich anschließend durch PlayMacro ([Strg]+[J]) abspielen lässt.

Alle Konfigurationsdateien legt Micro unter ~/.config/micro/ ab. So enthält settings.json wesentliche Voreinstellungen. Diese Datei lässt sich auch mit Micro bearbeiten, wobei die Syntaxhervorhebung hilft, Schreibfehler zu vermeiden. Im interaktiven Modus ([Strg]+[E]) veränderte Einstellungen speichert Micro beim Beenden automatisch in dieser Datei.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Aktuelle Ausgabe

02/2019
Neue Energien

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Scheibchenweise

    Zu den Stärken von Sonic Pi gehört es, mit wenigen Zeilen Code Samples dynamisch auszuwählen und zu zerlegen.

  • Unter Strom

    Für einen kleinen Spannungsmesser wie den INA3221 gibt es viele Einsatzmöglichkeiten. Wir zeigen, wie Sie den flexiblen Baustein richtig verdrahten.

  • Vermittlungsstelle

    Fischertechnik-Modelle bieten sich zum Fernsteuern an. Mit dem Ftduino schlagen Sie die Brücke zwischen dem RasPi und dem Technik-Spielzeug.

  • Durchgeschlängelt

    Mit den M0-Boards steigen Sie unkompliziert in die Welt der Mikrocontroller ein – ganz ohne C-Kenntnisse.

  • Gesiebt und gefiltert

    Filter und Werbeblocker einzurichten ist besonders auf Smartphones aufwendig. Den eBlocker hingegen schließen Sie einfach nur an Ihren Router an.

  • Es werde Licht

    Wollen Sie bei beginnender Dämmerung nicht ständig die Helligkeit der heimischen Beleuchtung nachregeln, überlassen Sie das einfach einem RasPi – der macht es automatisch.

  • Energiekontrolle

    Der Gesetzgeber erschwert das Direktvermarkten von Strom durch technische Hürden: So muss sich die Einspeisung etwa aus der Ferne abschalten lassen. Der RasPi löst das Problem.

  • H<->2<->-Power

    Gilt es, Energie aus einer regenerativen Quelle zu speichern, erweist sich die Kombi aus einer Brennstoffzelle und dem RasPi als ideale Lösung.

  • Kleine Wolke

    Lokale Cloud-Lösungen im Heimnetz finden immer mehr Nutzer. Mit dem RasPi und Seafile haben Sie eine Lösung zur Hand, die selbst professionellen Ansprüchen genügt.

  • Planvoll verdrahtet

    Die Leiterplattendesign-Software KiCad leistet trotz einer etwas umständlichen Bedienung auch Hobbybastlern gute Dienste.