out of the box

Aus LinuxUser 06/2000

out of the box

Surfen in ASCII

Es gibt tausende Tools und Utilities für Linux. “out of the box” pickt sich die Rosinen raus und stellt jeden Monat ein Progrämmchen vor, das wir für schlichtweg unentbehrlich oder aber zu Unrecht wenig beachtet halten. Diesmal stellen wir den textbasierten WWW-Browser w3m vor.

Große und schwerfällige Browser für das World Wide Web (WWW) kennt man zur Genüge. Als leichtgewichtige und schnelle Alternative dazu hat sich im Linuxbereich lynxetabliert. Nur leider ist das Betrachten vieler Webseiten mit lynx nicht immer ein Vergnügen – wenn sie nämlich Framesoder Tabellen enthalten. Diese Lücke schließt w3m, ein Projekt des Japaners Akinori Ito.

Fernost-Import

Die w3m-Homepage (http://ei5nazha.yz.yamagata-u.ac.jp/~aito/w3m/eng/) hält zur Zeit zwei Versionen von w3m bereit: die Entwicklerversion 0.1.6 und die stabile Version 0.1.4. Natürlich lässt eine Null vor dem Komma nicht unbedingt auf absturz- und fehlerfreies Softwarevergnügen schließen, aber im praktischen Einsatz zeigen sich kaum Macken.

Wir holen uns die 0.1.4er Ausgabe und kompilieren sie selbst, da bei diesem Schritt einige Voreinstellungen getroffen werden können. Auf der Heft-CD finden Sie das Archiv im Verzeichnis ./LinuxUser/w3m/.

Interaktiv

Die Grundkonfiguration des w3m hängt nämlich davon ab, wie die Antworten auf ein paar Fragen des -Skripts ausfallen. Doch bevor es soweit ist, muss zuerst das Archiv mit den C-Quelltexten entpackt werden:

tar xzf /mnt/cdrom/LinuxUser/w3m/w3m-0.1.4.tar.gz
cd w3m
./configure

configure stellt nun die folgenden Fragen, die natürlich auch abweichend von den unten vorgeschlagenen Werten beantwortet werden können. Mit den angegebenen Antworten (<Return> steht für den einfachen Druck auf die Enter-Taste) sollte sich w3m jedoch problemlos auf den meisten Distributionen kompilieren lassen.

Which directory do you want to put the binary?
(default: /usr/local/bin) <Return>
Which directory do you want to put the support binary files?
(default: /usr/local/lib/w3m) <Return>
Which directory do you want to put the helpfile?
(default: /usr/local/lib/w3m) <Return>
Which language do you prefer?
  1 - Japanese (charset ISO-2022-JP, EUC-JP, Shift_JIS)
  2 - English (charset US_ASCII, ISO-8859-1, etc.)
[1]? 2 <Return>
Do you want to use Lynx-like key binding?
[n]? <Return>
Let's do some configurations. Choose config option among the list.
1 - Baby model    (no color, no menu, no mouse, no cookie, no SSL)
2 - Little model  (color, menu, no mouse, no cookie, no SSL)
3 - Mouse model   (color, menu, mouse, no cookie, no SSL)
4 - Cookie model  (color, menu, mouse, cookie, no SSL)
5 - Monster model (with everything; you need openSSL library)
6 - Customize
Which? 2 <Return>
Input your favorite editor program.
(Default: /bin/vi) /usr/bin/mcedit <Return>
Input your favorite mailer program.
(Default: /bin/mail) <Return>
Input your favorite external browser program.
(Default: /usr/bin/netscape) <Return>
Input your favorite C-compiler.
(Default: gcc) <Return>
Input your favorite C flags.
(Default: -O) <Return>
...
Which terminal library do you want to use?
(default: -lncurses) <Return>
Input additional LD flags other than listed above, if any:
: <Return>

Anstelle von /usr/bin/mcedit, dem Editor des Midnight Commanders, kann natürlich auch ein anderer Editor stehen. Wichtig ist, dass er mit seinem vollen Pfadnamen angegeben wird. Diesen ermitteln Sie mit which editorname, beispielsweise which joe.

Nachdem alles eingestellt ist, wird jetzt die eigentliche Kompilierung mit makegestartet und anschließend das Programm mit make install in den /usr/local-Verzeichnisast installiert.

make
su -   (root-Passwort eingeben)
make install
exit

Pager oder Browser?

Der Autor von w3m nennt sein Programm einen Pager, der auch HTML-Dokumente darstellt. Tatsächlich kann man w3m als Alternative zu less oder more für ganz normale Textdateien verwenden, da auch das Lesen von der Standardeingabe möglich ist.

Für den ersten Test lassen wir w3m die Homepage der Bildbearbeitungssuite GIMP darstellen:

w3m http://www.gimp.org/

Bei dieser Seite wird eine Tabelle verwendet, um die Linkleiste vom Inhalt abzusetzen. Abbildung 1 zeigt die Darstellung in w3m. Ein Beispiel, bei dem Frames zum Einsatz kommen, ist in Abbildung 2 zu sehen.

Abbildung 1: Seite mit Tabelle

Abbildung 1: Seite mit Tabelle

Wie navigiert man nun zu weiteren Seiten? Der Cursor lässt sich mit den Pfeiltasten frei bewegen. Befindet er sich über einem Link, so wird dieser unterstrichen dargestellt, und es reicht das Drücken der Return-Taste, um zu diesem zu verzweigen. Auch über Texteingabefeldern muss Return gedrückt werden, bevor dort etwas eingetragen werden kann.

Mit B geht man eine Ebene zurück. Die komplette Tastenbelegung zeigt w3m mit der Taste H an. Dabei ist wichtig, dass Tastenkommandos case-sensitiv behandelt werden, es werden also Groß- und Kleinbuchstaben unterschieden.

Abbildung 2: Seite mit Frames

Abbildung 2: Seite mit Frames

Feineinstellung

Wem die Farben für die verschiedenen Elemente (Links, Grafiken, Texteingabefelder) nicht gefallen, sollte mit der Taste o die Optionenseite aufrufen (Abbildung 3). Hier lassen sich viele weitere Einstellungen ändern, etwa die automatische Darstellung von Frames einschalten (Frames werden dadurch in ihrer tatsächlichen Anordnung gezeigt und nicht auf einzelne Seiten verteilt), die Namen der Proxy-Serverangeben oder das Anzeigen der Link-URL(unten in der Statuszeile), über der sich der Cursor befindet, steuern. Verlässt man die Optionen über einen der OK-Buttons, so werden die neuen Einstellungen in der Datei ~/.w3m/config gespeichert.

Abbildung 3: w3m-Optionen

Abbildung 3: w3m-Optionen

w3m als Filter

Wie schon angesprochen, kann w3m auch als Filter arbeiten, also HTML-Daten von der Standardeingabe lesen. So wird beispielsweise mit dem Midnight Commander das Lesen von HTML-Dokumenten, die sich in Archivdateien (.tar.gz, .zip etc.) befinden, möglich. Dazu ist folgender Eintrag in der Datei ~/.mc/ext nötig:

regex/\.html?$
  Open=if [ x$DISPLAY = x ]; then lynx %p; else ( %p &); fi
  View=%view{ascii} cat "%f" | w3m -T text/html -dump
  Icon=html.xpm

Dieser Eintrag existiert normalerweise schon, verwendet aber in der View-Zeile einen lynx-Aufruf. Da w3m beim Lesen der Standardeingabe nicht selbst feststellen kann, dass es sich um HTML-Daten handelt, wird ihm diese Information über die Option -T text/html gegeben. Die Option -dump sorgt dafür, dass w3m keine weitere Interaktion mit dem Benutzer erfordert, sondern die Seitendarstellung direkt auf die Standardausgabe bringt.

Angesichts der niedrigen Versionsnummer darf man in Zukunft noch einiges von diesem Mini-Browser erwarten – w3m zeigt, dass auch im WWW-Bereich die Textkonsole noch lange nicht zum alten Eisen gehört.

Glossar

lynx

Textbasierter WWW-Browser, der bereits seit fünf Jahren unter der GPLsteht und stetig weiter entwickelt wird.

GPL

Die GNU General Public License. Eine Software-Lizenz, die es erlaubt, ein Programm weiter zu geben unter der Voraussetzung, dass der Quelltext dabei immer erhältlich bleibt. Ebenfalls erlaubt und ausdrücklich erwünscht ist es, verbesserte Versionen der Software zu erstellen und wieder zu veröffentlichen. Linux selbst steht ebenfalls unter der GPL.

Frames

(engl.: Rahmen) Aufteilung einer Webseite in mehrere Unterseiten, die vertikal und/oder horizontal angeordnet sind. Frames werden meistens dazu verwendet, eine globale Navigationsleiste ständig präsent zu halten.

configure

Das Skript dient zum automatischen Auswerten von Eigenschaften des Systems, auf dem ein Quelltext kompiliert werden soll. So findet configure selbständig heraus, welcher C-Compiler installiert ist usw. Die so gefundenen Eigenschaften werden u. a. ins Makefile eingetragen.

SSL

Secure Socket Layer, ein Mechanismus, der es erlaubt, Daten verschlüsselt über eine Netzwerkverbindung zu übertragen. Eine freie SSL-Implementation ist openSSL.

make

Werkzeug, das die Kompilierung von Quelltexten steuert und dabei Abhängigkeiten zwischen einzelnen Programm-Modulen berücksichtigt. Die Konfigurationsdatei von make ist das Makefile.

Pager

Programm zum seitenweisen Anzeigen einer Datei.

HTML

HyperText Markup Language, die Seitenbeschreibungssprache des World Wide Web.

Proxy-Server

Ein als Zwischenspeicher agierender Server, der die Zugriffe auf Web-Seiten beschleunigt. Bei einem Zugriff prüft der Proxy, ob er eine Kopie der Seite bereits vorrätig hält und überträgt diese ggf., anstatt die Seite vom tatsächlichen Server anzufordern. Dabei beachtet der Proxy auch, wie alt die Kopie ist.

URL

Uniform Resource Locator, die eindeutige Positionsangabe einer Ressource im Netz.

Der Autor

Christian Perle ist vom Sinclair ZX 81 über den Atari ST zum PC und zu Linux gekommen. Seit Anfang 1996 nutzt er hautpsächlich dieses Betriebssystem. Er schreibt bereits seit 1998 für unsere Schwesterzeitschrift, das Linux-Magazin.

LinuxUser 06/2000 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
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben