Pinfo – ein Konsolen-Reader für Info-Seiten und Manpages

Aus LinuxUser 08/2007

Pinfo – ein Konsolen-Reader für Info-Seiten und Manpages

Frisch lackiert

Mit Pinfo erlebt die altbewährte Info-Seite ein farbiges Revival. Damit nutzen Sie die Standard-Dokumentation auf Ihrem Linux-System noch effektiver.

Negative Erlebnisse geben manchmal den Anstoß für eine positive Entwicklung. So erging es zum Beispiel dem Pinfo-Initiator Przemek Borys. Er entwickelte einen praktischen Konsolen-Reader, da ihn der Versuch zu sehr deprimierte, Gtk-Info-Einträge mit den Standardtools zu lesen. Das behauptet zumindest die Legende, die sich auf der Website des Projektes [1] findet. Dort liegt auch der Tarball mit dem Quellcode der aktuellen Programmversion [2]; alternativ greifen Sie zu den Dateien auf der Heft-CD.

Bei einigen Distributionen, wie OpenSuse oder Debian, gehört das Tool bereits zum Lieferumfang. Falls Sie keine Binärversion von Pinfo auf den Datenträgern oder in den Repositories Ihres Distributors entdecken, kompilieren Sie das Programm schnell aus den Quellen heraus. Der Kasten “Installation aus dem Quellcode” gibt dazu Hinweise.

Installation aus dem Quellcode

Um die Software auf Ihrem Rechner korrekt zu übersetzen, benötigen Sie die Ncurses-Headerdateien. Hinter Ncurses verbirgt sich eine Bibliothek, mit der Sie Applikationen für das Terminal mit einer einfachen, aber effizienten Bedienoberfläche versehen. Das passenden Paket mit den Header-Dateien hört auf die Endung -dev oder -devel und heißt zum Beispiel unter Ubuntu libncurses5-dev.

Haben Sie dies installiert, entpacken Sie zunächst das Archiv, und wechseln Sie mit cd in den neu entstandenen Ordner:

$ tar xvzf pinfo-0.6.8.tar.gz
$ cd pinfo-0.6.8/

Im nächsten Schritt rufen Sie das Configure-Skript auf. Dabei liefert der Parameter --help eine Liste der möglichen Optionen. Haben Sie alle wichtigen Optionen zusammen, konfigurieren Sie den Quellcode. Im Beispiel kommen keine Optionen zum Einsatz. Starten Sie mittels make das Übersetzen aus den Sourcen:

$ ./configure
$ make

Anschließend verschaffen Sie sich mit dem Befehl su administrative Rechte, um Pinfo mit dem Kommando make install systemweit zu installieren:

$ su
Password:
# make install

Alle Programmteile landen so in verschiedenen Unterverzeichnissen unterhalb des Pfads /usr/local/ auf dem Rechner.

Info klassisch

Was hat Borys dazu bewogen, einen eigenen Info-Reader zu schreiben? Werfen Sie dazu einen kurzen Blick auf die Mutter aller Info-Programme, das natürlich auf den Namen Info hört. Mit dem Kommando info info öffnen Sie das klassische Info mit der eigenen Info-Seite, wenn die Dokumentation auf Ihrem Rechner installiert ist. Ein Druck auf [?] teilt den Bildschirm in der Mitte. In der unteren Hälfte finden Sie die Programmhilfe – unter anderem mit Hinweisen zu den Tastenbefehlen.

Mit [N] wechseln Sie auf das nächste in der Kopfleiste angegebenen Kapitel, und [P] schaltet wieder zurück. Mit den Pfeiltasten navigieren Sie den Cursor im Dokument. Von Verweis zu Verweis, zu erkennen am Asterisk *, springen Sie mittels [Tab]. Sie folgen dem Link, indem Sie [Eingabe] betätigen. Mit [U] wechseln Sie eine Stufe höher in den Ebenen der Info-Dateien, und [L] bringt Sie zurück zum zuletzt gelesenen Text.

Wenn Sie sich genug in der Hilfe umgesehen haben, schließen Sie sie durch die in der Seite angegebene Kombination C-x 0. Gemeint ist damit, dass Sie zuerst [Strg] und [X] gemeinsam, und danach [0] (Null) drücken. Um Info gänzlich zu beenden, drücken Sie [Q] – ambitionierte Anwender steigen mit dem Emacs-typischen Tastensequenz [Strg]+[X][Strg]+[C] aus dem Programm aus.

Wie Sie vielleicht festgestellt haben, gibt sich das Programm insgesamt recht spröde und spartanisch, und die monochrome Oberfläche tut das übrige dazu (Abbildung 1).

Abbildung 1: Die Optik des klassischen Info-Readers zeigt sich sehr spröde.

Abbildung 1: Die Optik des klassischen Info-Readers zeigt sich sehr spröde.

Pinfo

Wie schaut das Ganze dagegen mit dem Reader von Przemek Borys aus? Um das herauszufinden, starten Sie Pinfo in einem Terminal ohne eine weitere Optionen. Nach dem Start des Programms ohne ein bestimmtes Info-Thema landen Sie in einer Übersicht, die den Inhalt der Verzeichnisse /usr/share/info/dir oder auch /usr/info/dir widerspiegelt. Damit verhält sich Pinfo wie sein Vorfahre Info. Natürlich wertet es ebenso wie dieser die Umgebungsvariable $INFOPATH aus. Darin stehen alle Pfade, in denen die Info-Reader nach den Themen suchen. Um herauszufinden, was die Variable auf Ihrem Rechner enthält, lesen Sie sie mit Befehl echo aus:

$ echo $INFOPATH
/home/akneib/.own/info:/usr/local/info:/usr/share/info:/usr/info:/opt/gnome/share/info

Das Bedienkonzept von Pinfo auf der Kommandozeile weist sowohl Ähnlichkeiten zu Info als auch zu Lynx auf. Wie sein Ahne kennt der Reader die Option -f. Damit öffnen Sie Dateien, die nicht in $INFOPATH stehen. Der Aufruf setzt jedoch voraus, dass Sie die Dateien mit vollem Pfad und Dateinamen angeben:

$ pinfo -f ~/software/screen.info.gz

Neben Info-Dateien versteht sich das Programm außerdem auf den Umgang mit Manpages. Dazu dient die Option -m:

$ pinfo -m echo

Im Beispiel zeigt der Reader den Inhalt der Manual-Seite zum Echo-Befehl. Alle Pfade, in denen die Software nach Manpages sucht, stehen in der Umgebungsvariable $MANPATH. Der Parameter -m ermöglicht es Ihnen zudem, eine Seite außerhalb dieses Pfades direkt anzuwählen:

$ pinfo -m ~/.own/elinks/man/man1/elinks.1

Neben dieser Option finden Sie mit der Option -a eine thematisch Liste aller Manpages. Sie entspricht dem Parameter --apropos des Standardbefehls Man für Manual-Seiten. Folgendes Kommando listet Ihnen alle Seiten auf, die das angegebene Stichwort pixel in der Kurzbeschreibung enthalten:

$ pinfo -a pixel

Im Pinfo-Fenster tauchen unter anderem Hinweise und anwählbare Links zu den Manpages von aa_imgheight, pgmslice oder XGetPixel auf. Weitere Optionen, die größtenteils das Design der Programmausgabe regeln, finden Sie mit dem Parameter -h für Hilfe.

In einem Dokument navigieren Sie entweder über die Tastatur oder mit der Maus. Hier zeigt Pinfo seine Nähe zu Lynx [4]. Nicht nur in Design und Optik gleicht es dem Webbrowser für die Konsole, auch das Bedienkonzept dürfte Lynx-Nutzern bekannt vorkommen. Sie steuern beide Programme weitgehend über die Pfeiltasten.

Unterschiedliche Teile des Dokumententextes, wie Verweise, Anmerkungen, FTP- und HTTP-Links oder Mail-Adressen, hebt Pinfo zwecks Übersichtlichkeit farbig hervor. Per Doppelklick mit der rechten Maustaste wählen Sie ein entsprechendes Element an. Einige wichtige Tastaturkürzel finden Sie zusammengefasst in der Tabelle “Tastaturkürzel”.

Tastaturkürzel

Taste Funktion
[Pfeil oben] zeilenweise nach oben scrollen
[Pfeil unten] zeilenweise nach unten scrollen
[Pfeil rechts] dem Link folgen
[Pfeil links] Zurück
[Leer] Seite nach unten scrollen / zur nächsten Seite
[B] Seite nach oben scrollen / zur vorherigen Seite
[/] Suche im Dokument
[!] Shell-Befehl eingeben
[G] Ausdruck eingeben, um Menüpunkt zu finden

Einstellungssache

Wie jedes anspruchsvolle Tool bietet Pinfo die Möglichkeit, lokale und systemweite Einstellungen festzulegen. Die systemweite Konfiguration, die für alle User gilt, legen Sie in der Datei /etc/pinforc beziehungsweise /usr/local/etc/pinforc fest. Jedem einzelnen Anwender steht es dann frei, eigene Einstellungen in der Datei ~/.pinforc zu definieren. Sollte noch keine .pinforc in Ihrem Homeverzeichnis liegen, kopieren Sie einfach die globale /etc/pinforc an diese Stelle, um sie im Texteditor zu bearbeiten.

Die Konfigurationsdatei gliedert sich in drei Abschnitte: Angaben zu Farben, den Tastaturkürzel sowie weiteren Variablen, wie zum Beispiel für externe Software. Der Texteditor Vim besitzt übrigens ein Syntax-Highlighting für die Datei (Abbildung 2). Dies hilft besonders bei den Farbeinstellungen des Tools.

Abbildung 2: Der Texteditor Vim unterstützt Sie beim Anpassen des Programms mit einem passenden Syntax-Highlighting für die Konfigurationsdatei.

Abbildung 2: Der Texteditor Vim unterstützt Sie beim Anpassen des Programms mit einem passenden Syntax-Highlighting für die Konfigurationsdatei.

Farben

Der erste Abschnitt in der ~/.pinforc bestimmt die Farben des Tools. In der ersten Spalte namens Color_ID stehen die Variablennamen aller Textteile, die Pinfo auf Wunsch einfärbt. Die Bedeutung erschließt sich leicht aus dem Namen. So steht COL_NORMAL beispielsweise für die Standardschrift ohne besondere Funktion, COL_MENUSELECTED erledigt das Hervorheben ausgewählter Menüpunkte, COL_MENU zeichnet für die Menüpunkte zuständig und COL_SEARCHHIGHLIGHT für die Farbe von Suchergebnissen.

Die vier weiteren Spalten füllen die Werte für Vordergrund- und Hintergrundfarbe sowie fetter Vordergrundfarbe und heller Hintergrundfarbe. Wem Pinfo mit heller Schrift auf schwarzem Grund zu finster und augenfeindlich ist, darf sich hier austoben. Das Syntax-Highlighting von Vim zeigt gleich beim Schreiben der Konfiguration, wie die entsprechende Farbe ungefähr ausschaut. Abbildung 3 zeigt ein Beispiel dafür, wie Pinfo mit veränderten Werten aussieht.

Abbildung 3: Ein individuelles Gestalten der Anzeigefarben in Pinfo erhöht die Übersichtlichkeit des angezeigten Textes.

Abbildung 3: Ein individuelles Gestalten der Anzeigefarben in Pinfo erhöht die Übersichtlichkeit des angezeigten Textes.

Tasten

Wie die Farbvariablen kommt auch die Tastaturbelegung angenehm selbsterklärend daher. Die Zeile KEY_GOTO_1='g' bedeutet zum Beispiel: Mit [G] gehen Sie zum erfragten Menüpunkt. KEY_GOTO_2='m' liefert die alternative Tastaturbelegung dazu. [M] entspricht dabei der Funktion im traditionellen Info-Programm. Mit KEY_SHELLFEED legen Sie das Kürzel fest, dass eine Shell startet, und KEY_QUIT bezeichnet die Taste zum Beenden des Man- und Info-Readers.

Wenn Sie trotz der einfachen Bezeichner der Variablen einmal nicht um deren genaue Funktion wissen, verrät Ihnen der Befehl pinfo pinfo alle Details. Geben Sie beim Anpassen an die eigenen Bedürfnisse jedoch Acht, dass sich die Tastaturkürzel nicht ins Gehege kommen.

Optionen

Den Abschluss der Konfiguration bilden die so genannten Optionen. Die interessantesten für den Umgang mit externen Programmen sind HTTPVIEWER, FTPVIEWER und MAILEDITOR. Der HTTPVIEWER teilt Pinfo mit, welches Programm die angeklickten oder mit [Eingabe] betätigten Weblinks öffnet. Dabei muss es sich nicht zwangsläufig um einen Textbrowser wie Elinks oder W3m handeln. Gleiches gilt für den FTPVIEWER:

HTTPVIEWER=firefox
FTPVIEWER=firefox

Info- und Manual-Seiten zeigen oft neben dem Namen des Entwicklers eine Mailadresse. Um den Maintainer also ohne Umstände aus dem Dokument heraus zu kontaktieren, genügt der Befehlsname Ihres Mailprogramms in der Option MAILEDITOR. Im Beispiel übernimmt der Mailer Mutt diese Aufgabe. Es darf aber für Freunde der grafischen Clients auch KMail sein:

MAILEDITOR=mutt

Fazit

Pinfo gestaltet das Browsen und das oft knifflige Suchen durch die Info-Texte klar und einfach. Es setzt durch die Farben für Links und Menüpunkte auf angenehme Weise Akzente. Die Tastenbefehle erscheinen eingängig und lehnen sich an die traditionellen Programme Lynx und Info an. Sogar eine einfache Mausunterstützung bringt das Programm mit. Wer es noch einfacher haben möchte, dem bleibt mit dem Kommando emacs -f info nur noch der Umstieg auf die eierlegende Wollmilchsau unter den Editoren, um sich durch Info-Texte zu arbeiten.

Infos

[1] Pinfo-Website: http://pinfo.sourceforge.net

[2] Pinfo-Tarball: http://pinfo.sourceforge.net/pinfo-0.6.8.tar.gz

[3] Lynx-Projekt: http://lynx.browser.org

[4] Lynx, Links und W3m: Heike Jurzik, “Surfen auf der Kommandozeile”, LinuxUser 03/2005, S. 88, http://www.linux-user.de/ausgabe/2005/03/088-zubefehl/

LinuxUser 08/2007 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben