w3m ist ein textorientierter Browser und Textbetrachter (Pager). In einem Terminalemulator können Sie damit lokale und andere Dokumente anzeigen lassen und Verknüpfungen (Hyperlinks) weiterverfolgen.
Der Aufruf per Befehlszeile lautet
w3m [Option]… [Datei|Adresse]…
Wenn Sie Dateinamen oder Adressen in der Befehlszeile angeben, werden diese Dokumente angezeigt. Fehlen entsprechende Argumente, wird w3m ein Dokument aus der Standardeingabe erwarten und anzeigen. Erhält das Programm auch hier keine Daten, beendet es sich normalerweise selbstständig.
Optionen sind unter anderem:
starte mit einer Ansicht aller Lesezeichen (wenn kein anderes Zielobjekt angegeben ist)
monochrome Anzeige
Mausfunktion aus
zeige Zeilennummern an
begrüße den Benutzer mit einer eingebauten Seite (wenn kein anderes Zielobjekt angegeben ist)
wechsle zwischen umlaufendem und nicht umlaufendem Suchen
nach Beenden des Programms das Terminal nicht neu initialisieren.
gehe zu Zeile Zahl. Wirkt nur, wenn Zahl größer ist als die im Terminal verfügbare Zeilenzahl
bei für die Standardausgabe bestimmten Inhalten, nimm bei zur Umsetzung von HTML eine Länge von num Zeichen pro Zeile
verwende gespeicherte Cookies und akzeptiere neue
verwende weder gespeicherte Cookies noch akzeptiere neue
verarbeite Frames
verwende bei der Umsetzung von Tabellen und Frames keine grafischen Zeichen
füge der HTTP(S)-Anfrage Zeichenkette an. Diese muss der Kopfdaten-Syntax "Variable: Wert" entsprechen
arbeite im Internetnachrichten-Modus
. Mit dieser Option entnimmt w3m den Typ eines Dokumentes dessen Kopfdaten. Dies ist nützlich beim Lesen von Mails und Usenet-Nachrichten.
verwende keinen Proxy
verwende die Methode POST, um in Datei hinterlegte Daten hochzuladen. Hierbei wird die Syntax "var1=wert1[&var2=wert2]…" erwartet
Anzahl der Zeilen, die zwischengespeichert werden, wenn Text per Standardeingabe übergeben wurde. (Voreinstellung ist 10000)
verarbeite spezielle Escape-Zeichen (beispielsweise ANSI-Escape-Zeichen oder nroff-Rückwärtsschritte für fette und unterstrichene Zeichen) nicht, sondern zeige sie stattdessen mittels Caret-Notation.
mehrere leere Zeilen werden bis auf eine gelöscht
Tab-Zeichen so verwerten, dass Spalten mit einer Weite von Zahl Zeichen entstehen. Wirkt nicht auf Standardausgabe
zu benutzende Zeichenkodierung für erhaltene Daten
zu benutzende Zeichenkodierung für auszugebende Daten
legt den MIME-Typ erhaltener Daten fest. Ohne diese Option bestimmt ihn das Programm anhand der Dateinamen-Erweiterung. Wenn dies fehlschlägt, wird text/plain als Typ angenommen. Zum Beispiel:
Übernimm HTML-Dokument von der Standardeingabe und zeige es an
cat beispiel.html | w3m -T text/html
Zeige HTML-Quelltext an
w3m -T text/plain beispiel.html
lies das per URL angegebene Dokument und leite es verarbeitet der Standardausgabe zu. Wenn mit der Option -cols nichts anderes eingestellt ist, erhält es eine Breite von 80 Zeichen
leite den Seitenquelltext der Standardausgabe zu
leite die Antwort einer HEAD-Anfrage für eine URL der Standardausgabe zu
leite Antwort auf HEAD-Anfrage und Seitenquelltext der Standardausgabe zu
leite Antwort auf HEAD-Anfrage, Seitenquelltext und Extrainformation der Standardausgabe zu
benutze anstelle der Standarddatei bookmark.html für Lesezeichen die Datei Datei
benutze Datei anstelle der Standard-Konfigurationsdatei
arbeite mit einer Konfiguration, bei der die Einstellung Option mit Wert belegt ist. Ohne Option=Wert gleichwertig mit -show-option
Links und Bildelemente werden wie folgt angezeigt:
Farbmodus | Monochrom-Modus | |
---|---|---|
Hyperlinks | blau | unterstrichen |
Bilder | grün | invertiert |
Formular-Eingabefelder | rot | invertiert |
Diese Farben können nach Eingabe von o
im Einstellungs-Dialog anders zugeordnet werden.
Wenn w3m läuft, bedienen Sie das Programm, indem Sie Funktionen anhand ihres Namens oder der ihr zugeordneten Tastenkombination aufrufen. Es gibt voreingestellte Tastaturbelegungen.
Sie können die Tastaturbelegungen (abgesehen von jenen des Menü- und des Texteingabe-Modus) in einer Datei ~/.w3m/keymap anpassen. Beispielsweise bindet
keymap C-o NEXT_PAGE
die Funktion NEXT_PAGE (die normalerweise mit SPC und C-v verknüpft ist) mit C-o. Siehe die Liste verfügbarer Funktionen in README.func. Original- und Lynx-artige Tastaturbelegungen enthalten die Beispieldateien keymap.default und keymap.lynx.
Im Folgenden stehen C- und M- für die Eingabe-Modifikationen mit der Steuerungs- und der Meta-Taste. Die letztere ersetzt die ALT-Taste, wohingegen Drücken der ESC-Taste zwischen Meta-modifiziertem und einfachen Tastendruck wechselt. Das Minus-Zeichen bedeutet das gleichzeitige Drücken von Tasten; der Leerraum dagegen steht dafür, dass eine Taste nach der anderen gedrückt wird. Mit 2 M ist also gemeint, die 2 und dann M zu drücken.
Funktion | Tastenkombination | Beschreibung | |
---|---|---|---|
Standard | Lynx-ähnlich | ||
Navigation innerhalb von Seiten |
|||
NEXT_PAGE | SPC, C-v, +, PGDN | SPC, C-v, + | Scrolle eine Seite abwärts |
PREVIOUS_PAGE | b, M-v, -, PGUP | b, M-v, - | Scrolle eine Seite aufwärts |
MOVE_RIGHT | l, C-f, RIGHT | l | Bewege Cursor nach rechts (mit Verschiebung um halbe Bildschirmbreite an dessen Rand) |
C-b, LEFT | h, C-b, LEFT | h | Bewege Cursor nach links (mit Verschiebung um halbe Bildschirmbreite an dessen Rand) |
MOVE_DOWN | j, C-n, DOWN | j | Bewege Cursor abwärts (scrolle eine Zeile am Bildschirmrand) |
MOVE_UP | k, C-p, UP | k | Bewege Cursor aufwärts (scrolle eine Zeile am Bildschirmrand) |
UP | J | J | Scrolle den Anzeigebereich eine Zeile aufwärts |
DOWN | K | K | Scrolle den Anzeigebereich eine Zeile abwärts |
LINE_BEGIN | ^, C-a | ^ | Gehe zum Zeilenanfang |
LINE_END | $, C-e | $ | Gehe zum Zeilenende |
NEXT_WORD | w | w | Gehe zum nächsten Wort |
PREVIOUS_WORD | W | W | Gehe zum vorherigen Wort |
SHIFT_RIGHT | > | > | Anzeigebereich nach rechts versetzen |
SHIFT_LEFT | < | < | Anzeigebereich nach links versetzen |
RIGHT | . | . | Anzeigebereich um eine Spalte nach rechts verschieben |
LEFT | , | , | Anzeigebereich um eine Spalte nach links verschieben |
BEGIN | g, M-<, HOME | C-a, M-< | Gehe zur ersten Zeile |
END | G, M->, END | C-e, M-> | Gehe zur letzten Zeile |
GOTO_LINE | M-g | G | Gehe zur angegebenen Zeile |
LINE_INFO | C-g | C-g | Zeige aktuelle Position im Dokument an |
CENTER_H | Z | Z | Bildschirm rechts und links des Cursors zentrieren |
CENTER_V | z | z | Bildschirm ober- und unterhalb des Cursors zentrieren |
NEXT_LINK | TAB | TAB, C-n, DOWN | Gehe zum nächsten Hyperlink |
PREVIOUS_LINK | M-TAB, C-u | M-TAB, C-u, C-p, UP | Gehe zum vorangegangen Hyperlink |
LINK_BEGIN | [ | [ | Gehe zum ersten Hyperlink |
LINK_END | ] | ] | Gehe zum letzten Hyperlink |
MOVE_LIST_MENU | M-m | M-m | Öffne Menü mit vorhandenen Hyperlinks |
Umgang mit Hyperlinks |
|||
GOTO_LINK | C-j, C-m, RET | C-f, C-j, C-m, RET, RIGHT | Folge dem aktuellen Hyperlink in neuem Puffer |
LIST_MENU | M-l | M-l | Öffne Menü mit Hyperlinks und folge dem ausgewählten |
SAVE_LINK | a, M-RET | d, M-RET | Speichere Ziel des Hyperlinks |
PEEK_LINK | u | u | Zeige Zieladresse |
PEEK_IMG | i | i | Zeige Adresse des Bildes |
VIEW_IMAGE | I | I | Zeige Bild in Betrachter |
SAVE_IMAGE | M-I | M-I | Speichere Bild |
MARK_WORD | ; | ; | Wandle aktuelles Wort in Hyperlink um |
MARK_URL | : | : | Wandle URL-artige Zeichenketten um in Hyperlinks |
MARK_MID | M-: | M-: | Wandle Nachrichten-ID-artige Zeichenketten um in Hyperlinks |
PEEK | c | c | Zeige aktuelle Adresse an |
INFO | = | = | Zeige Informationen über dieses Dokument |
HISTORY | C-h | C-h | Chronik aufgesuchter Dokumente |
EXTERN | M | M | Zeige das aktuelle Dokument mit einem externen Browser (wird eine Taste von 2 bis 9 gedrückt, also beispielsweise 3 M, eingegeben, kommt ein anderer, in der Konfiguration hinterlegter Browser zum Einsatz) |
EXTERN_LINK | M-M | M-M | Bringe das Linkziel mit einem externen Browser zur Anzeige (vorangestellte Zahlen wirken sich wie oben beschrieben aus) |
Verwalten von Lesezeichen |
|||
BOOKMARK | M-b | v, M-b | Lesezeichen ansehen |
ADD_BOOKMARK | M-a | a, M-a | Lege für aktuelle Seite Lesezeichen an |
Umgang mit Dateien und Datenströmen |
|||
GOTO | U | g, U | Öffne angegebenes Dokument in neuem Puffer |
GOTO_RELATIVE | M-u | M-u | Öffne relative Adresse in neuem Puffer |
LOAD | V | V | Öffne lokale Datei in einem neuen Puffer |
READ_SHELL | @ | @ | Führe einen Shell-Befehl aus und zeige Ausgabe in einem neuen Puffer |
PIPE_SHELL | # | # | Führe einen Shell-Befehl aus und zeige Ausgabe in einem neuen Puffer |
Arbeit an Seiteninhalten |
|||
VIEW | v | \ | Wechsle zwischen HTML-Quellcode und verarbeitetem Dokument |
LIST | L | L | Liste Link-Elemente, Hyperlinks und Bilder auf |
FRAME | F | F | Wechsle zwischen Kennung und Umsetzung von HTML-Frames |
REDRAW | C-l | C-l, C-w | Bildschirmanzeige neu aufbauen |
RELOAD | R | R, C-r | Aktuelles Dokument erneut laden |
EDIT | E | E | Bearbeite lokales Quelldokument |
EDIT_SCREEN | M-e | M-e | Bearbeite eine Kopie des verarbeiteten Dokuments |
PIPE_BUF | | | | | Leite aktuellen Pufferinhalt einem Shell-Befehl zu und zeige Ausgabe an |
DOWNLOAD | M-s | M-s | Dokument-Quellcode speichern |
SAVE_SCREEN | S | S, p | Speichere verarbeitetes Dokument |
Navigation zwischen Puffern und Reitern |
|||
BACK | B | B, C-b, LEFT | Schließe aktuellen Puffer und kehre zu dem im Stapel darunterliegenden zurück |
SELECT_MENU | s | s, C-h | Öffne Pufferstapel-Menü |
TAB_MENU | M-t | M-t | Öffne das Reiter-Auswahl-Menü |
NEW_TAB | T | T | Öffne neuen Reiter (mit aktuellem Dokument) |
TAB_LINK | C-t | C-t | Folge dem aktuellen Hyperlink in einem neuen Reiter |
NEXT_TAB | } | } | Schalte zum nächsten Reiter |
PREV_TAB | { | { | Schalte zum vorherigen Reiter |
CLOSE_TAB | C-q | C-q | Schließe aktuellen Reiter |
Suchfunktionen |
|||
SEARCH | / | /, C-s | Suche vorwärts |
SEARCH_BACK | ? | Suche rückwärts | |
ISEARCH | C-s | Inkrementelle Suche vorwärts | |
ISEARCH_BACK | C-r | Inkrementelle Suche rückwärts | |
SEARCH_NEXT | n | n | Setze Suche vorwärts fort |
SEARCH_PREV | N | Setze Suche rückwärts fort | |
WRAP_TOGGLE | C-w | w | Wechsle zwischen umlaufendem und nicht-umlaufendem Suchen |
Arbeit mit Textmarken |
|||
MARK | C-SPC | C-SPC | Setze/Lösche Markierung |
PREV_MARK | M-p | P | Gehe zur vorherigen Markierung |
NEXT_MARK | M-n | N | Gehe zur nächsten Markierung |
REG_MARK | " | " | Markiere alle Vorkommen eines Zeichenmusters |
Verschiedenes |
|||
COMMAND | M-c | M-c | Rufe eine oder mehrere durch Strichpunkt getrennte w3m-Funktionen auf |
HELP | H | H, ? | Zeige Hilfe-Übersicht |
OPTIONEN | o | o | Einstellungs-Dialog öffnen |
SET_OPTION | M-o | M-o | Setze Option |
DEFINE_KEY | M-k | M-k | Definiere eine Verbindung zwischen einer Tastenkombination und einem Kommando |
MOUSE_TOGGLE | m | m | Schalte Mausbedienung an oder ab |
DOWNLOAD_LIST | D | D | Übersicht heruntergeladener Dateien anzeigen |
COOKIE | C-k | C-k | Zeige die gespeicherten Cookies |
UNDO | ( | ( | Nimm die letzte Cursorbewegung zurück |
REDO | ) | ) | Den letzten Rücknahmebefehl zurücknehmen |
EXEC_SHELL | ! | ! | Shell-Befehl ausführen |
DICT_WORD | M-w | M-w | Führe eine Wörterbuch-Funktion aus (siehe README.dict) |
DICT_WORD_AT | M-W | M-W | Benutze Wörterbuch für Wort unter Cursor |
VERSION | r | r | Zeige die Version von w3m an |
SUSPEND | C-z | C-z | w3m zum Hintergrundprozess machen. (Wird mit dem Shell-Befehl fg zurückgenommen.) |
QUIT | q | q | Mit Bestätigungsfrage beenden |
EXIT | Q | Q | Sofort beenden |
Darüber hinaus gibt es die folgenden Bedien-Modi mit fester Tastaturbelegung für die entsprechenden Funktionen. Diese sind nicht durch die Funktion DEFINE_KEY oder Einträge der keymap-Datei veränderbar.
Funktion (interner Name) |
Tastenkombination | Beschreibung |
---|---|---|
Menü-Auswahl-Modus |
||
BUF:NEXT | j, C-n, DOWN | Nächster Eintrag |
BUF:PREV | k, C-p, UP | Vorheriger Eintrag |
BUF:DELETE | D | Lösche Eintrag |
BUF:GO | SPC, RET, RIGHT | Wähle Eintrag aus |
Popup-Menü-Modus |
||
MENU:SELECT | SPC, RET, RIGHT | Wähle Punkt aus |
MENU:CLOSE | C-c | Schließe Menü |
MENU:CANCEL | LEFT, BKSPC, C-h | Einen Auswahlschritt zurück |
MENU:DOWN | j, C-n, DOWN | Gehe zum nächsten Punkt |
MENU:UP | k, C-p, UP | Gehe zum vorherigen Punkt |
MENU:LINE_UP | K | Scrolle einen Punkt aufwärts |
MENU:LINE_DOWN | J | Scrolle einen Punkt abwärts |
MENU:TOP | C-a | Gehe zum ersten Punkt |
MENU:LAST | C-e | Gehe zum letzten Punkt |
MENU:NEXT | C-v, C-f | Gehe zur nächsten Seite |
MENU:PREV | ESC v, C-b | Gehe zur vorherigen Seite |
MENU:SEARCH_FORE | C-s, / | Suche vorwärts |
MENU:SEARCH_BACK | C-r, ? | Suche rückwärts |
MENU:SEARCH_NEXT | n | Suche weitere Übereinstimmung |
MENU:SEARCH_PREV | N | Suche frühere Übereinstimmung |
Eingabezeile-Bearbeitungs-Modus |
||
LINEEDIT:FORWARD | C-f, RIGHT | Bewege Cursor vorwärts |
LINEEDIT:BACK | C-b, LEFT | Bewege Cursor rückwärts |
LINEEDIT:BS | C-h, BKSPC | Vorheriges Zeichen löschen |
LINEEDIT:DEL | C-d | Aktuelles Zeichen löschen |
LINEEDIT:KILL_AFTER | C-k | Lösche alles nach dem Cursor |
LINEEDIT:KILL_BEFORE | C-u | Lösche alles vor dem Cursor |
LINEEDIT:TOP | C-a | Gehe zum Zeilenanfang |
LINEEDIT:BOTTOM | C-e | Gehe zum Zeilenende |
LINEEDIT:PREV | C-p, UP | Hole den vorherigen Chronik-Eintrag |
LINEEDIT:NEXT | C-n, DOWN | Hole den nächsten Chronik-Eintrag |
LINEEDIT:COMPLETE | TAB, SPC | Versuche, den Dateinamen zu komplettieren |
LINEEDIT:EDITOR | C-o | Bearbeite mit externem Editor |
LINEEDIT:ACCEPT | RET | Eingabezeile übernehmen |
Wenn w3m mit Mausfunktionen kompiliert wurde und Sie das Programm entweder in einer Konsole mit GPM oder in einem X-Terminal-Emulator starten, ist ein Navigieren mit der Maus möglich. (Im Falle von rxvt müssen Sie die Umgebungsvariable TERM mit xterm
oder kxterm
belegen.)
Die Datei README.mouse erklärt, wie die Bedienung per Maus an eigene Vorlieben angepasst werden kann.
Handlung | Beschreibung |
---|---|
Linksklick |
Zuerst: Der Cursor wird an die Mauszeigerposition versetzt. Dann: Dem Hyperlink, auf dem der Cursor momentan steht und auf den sich der Mauszeiger richtet, wird gefolgt. |
Mittelklick | Zurück zum vorherigen Puffer. |
Rechtsklick | Öffne Menü. Sie können Menüpunkte durch Anklicken auswählen. |
Linksziehen | Dokument scrollen. Standardmäßig wird das Dokument im Fenster verschoben. Ein Verschieben des Fensters über dem stehenden Dokument erreichen Sie über den Einstellungs-Dialog. |
w3m ist in der Lage, CGI-Skripte direkt laufen zu lassen. Dies bedeutet, dass sich das Programm wie ein HTTP-Server verhält und das CGI-Skript ausführt und dessen Ausgabe anzeigt. Beispielsweise wurden die Lesezeichen-Registrierung und der Verzeichnis-Browser als lokale CGI-Skripte programmiert. Darüber hinaus kann w3m durch solche Skripte als Schnittstelle zum Einholen von Daten aller Art fungieren.
Aus Sicherheitsgründen kommen für von w3m benutzte CGI-Skripte nur folgende Verzeichnisse in Frage:
Verzeichnis für ausführbare Skriptedes Einstellungs-Dialogs jedem gewünschten Verzeichnis zuordnen. Mehrere Pfade lassen sich durch Doppelpunkt getrennt angeben, also in der Form /usr/local/cgi-bin:/home/aito/cgi-bin. Es wird davon abgeraten, das aktuelle Verzeichnis hier mitaufzunehmen. Zum Zugriff auf Skripte im Verzeichnis /cgi-bin/ erwartet w3m eine URL folgender Art:
w3m -o cgi_bin=/path/to/cgi-bin file:/cgi-bin/script.cgi
Das CGI-Skript kann zur Steuerung von w3m die spezielle Kopfzeile w3m-control: enthalten. Darin können alle Funkionen (siehe README.func) eingetragen sein. Die angegebene Funktion wird aufgerufen, nachdem das Dokument angezeigt wird. Beispielsweise, wird eine Skriptausgabe
Content-Type: text/plain
W3m-control: BACK
eine leere Seite anzeigen und den Puffer sofort löschen. Dies ist nützlich, wenn es nicht gewünscht ist, die Seite nach Aufrufen des Skriptes anzuzeigen. Das nächste Beispiel
Content-Type: text/plain
W3m-control: DELETE_PREVBUF contents.....
führt zum Übergehen des aktuellen Puffers.
Jede w3m-control-Kopfzeile kann nur eine Funktion aufrufen. Jedoch können Sie im Kopfteil einer HTTP-Kommunikation mehr als eine w3m-control-Anweisung hinterlegen. Überdies ist es möglich, die GOTO-Funktion mit einem Argument aufzurufen:
Content-Type: text/plain
W3m-control: GOTO http://www.example.org/
Sie bewirken damit das gleiche wie mit der Anweisung Location:
im Kopfteil:
Content-Type: text/plain
Location: http://www.example.org/
Beachten Sie, dass diese Anweisung wirkungslos ist, wenn das CGI-Skript durch einen HTTP-Server angesprochen wird.