w3m マニュアル
伊藤 彰則
aito@fw.ipsj.or.jp
もくじ
はじめに
w3m は,テキストベースのページャ/WWWブラウザです.これを使うと,kterm などのキャラクタ
端末上で,ローカルファイルを見たり,WWWの内容を見たりすることができます.
起動オプション
起動時の引数は次の通りです.
w3m [options] [file|URL]
引数にファイル名を指定すればそのファイルを表示し,URLを指定すればその内容を表示します.
何も指定しなければ,標準入力の内容を表示します.ただし,標準入力が tty である場合には,
何もせずに終了します.
オプションは次の通りです.
- +番号
- 起動後,指定の行番号に移動する.
- -t 幅
- タブの幅を指定する.デフォルトは 8 .
- -r
- text/plain の文書を表示する場合,重ね打ちによる強調文字を表示しない.
このオプションを付けない場合,``A^H_''はAのアンダーラインとして表示され,
``A^HA''はAのボールドとして表示される.
- -l 行数
- 標準入力の内容を表示するときに保存される最大行数を指定す
る.デフォルトは 10000.
- -s
- Shift_JIS コードで表示する.
- -e
- EUC コードで表示する.
- -j
- JIS(ISO-2022-JP) コードで表示する.
- -I e|s
- 入力文書の文字コードを指定する.
- -T タイプ
- 表示する文書のタイプを指定する.この指定がない場合,ファイル
名の拡張子によって自動判別される.判別できない場合は text/plain
とみなされる.
例:
標準入力から HTML ファイルを読んで表示する
cat hoge.html | w3m -T text/html
HTMLファイルのソースを表示する
w3m -T text/plain hoge.html
- -m
- Internet message モードで表示する.Internet messageモードの場合,
ヘッダの内容を見て,Content-Type: があればそれを参考にする.電子メールや
ネットニュースの記事を読むときに便利.
- -v
- スタートアップページを表示する.
- -B
- Bookmark を表示する.
- -bookmark file
- Bookmarkのファイルを指定する.
- -M
- カラー表示をしない.
- -F
- フレームを自動表示する.
- -S
- 連続する空行を1行にまとめて表示する.
- -X
- w3m終了時に,以前の画面に戻らない.
- -W
- 折り返しサーチを使うかどうかを切りかえる.
- -o option=value
- オプションを指定する.
- -no-proxy
- プロキシを利用しない.
- -pauth user:pass
- プロキシ認証用のユーザ名とパスワードを指定する.
- -no-mouse
- マウスを利用しない.
- -cookie
- クッキーを処理する.
- -no-cookie
- クッキーを処理しない.
- -num
- 行番号を表示する.
- -dump
- URLの内容を読みこみ,整形されたバッファの内容を標準出力に書き出す.
文書の幅は80桁と仮定される.この幅は,次の -cols オプションで変更可能.
- -cols 幅
- -dump オプションを使う場合に,文書の幅を指定する.
- -ppc ピクセル数
- 文字の幅を指定する.デフォルトは 8.0.
- -dump_source
- URLの内容を読みこみ,整形せずに標準出力に書き出す.
漢字コード変換もされない.
- -dump_head
- URLにアクセスし,ヘッダ情報を出力する.
- -dump_both
- URLにアクセスし,ヘッダ情報とHTMLソースを出力する.
- -dump_extra
- URLにアクセスし,拡張情報とヘッダ情報とHTMLソースを出力する.
- -post file
- ファイルの内容をPOSTする.
- -header string
- HTTP要求ヘッダを追加する.
- -config file
- configのファイルを指定する.
文書の表示内容
HTML文書を表示しているときには,次のような表示になります.
| カラー表示時 | 白黒表示時 |
リンク | 青色 | 下線 |
インライン画像 | 緑色 | 反転表示 |
FORMの入力部分 | 赤色 | 反転表示 |
カラー表示時の色は,オプション設定パネル "o" で変更することができます.
起動後の使いかた(オリジナル)
起動した後は,1文字のコマンドをキーボードから入力することでw3mを操作します.
コマンドには次のようなものがあります.以下の記述では,C-x はコントロールx
を表します.また,SPC はスペースバー,RET はリターンキー,ESC はエスケープキーです.
ここで書いてあるのは,オリジナル版のキー操作です.Lynx風のキー操作用に
コンパイルしてあるものについては,起動後の使い方(Lynx風)
をごらんください.
ページ/カーソル移動
SPC,C-v | 次のページを表示します.
|
b,ESC v | 前のページを表示します.
|
l,C-f,右矢印キー | カーソルを右に移動します.
|
h,C-b,左矢印キー | カーソルを左に移動します.
|
j,C-n,下矢印キー | カーソルを下に移動します.
|
k,C-p,上矢印キー | カーソルを上に移動します.
|
J | 画面を1行上にスクロールします.
|
K | 画面を1行下にスクロールします.
|
^,C-a | 行頭に移動します.
|
$,C-e | 行末に移動します.
|
w | 次の単語に移動します.
|
W | 前の単語に移動します.
|
> | 画面全体を右にずらします.(表示内容を左にずらす)
|
< | 画面全体を左にずらします.(表示内容を右にずらす)
|
. | 画面全体を1文字右にずらします.(表示内容を左にずらす)
|
, | 画面全体を1文字左にずらします.(表示内容を右にずらす)
|
g,M-< | 文書のいちばん上の行に移動します.
|
G,M-> | 文書のいちばん下の行に移動します.
|
ESC g | 画面下で行番号を入力し,そこで指定した行に移動します.
ここで $ を入力すると,最終行に移動します.
|
Z | カーソルのある位置を行の中央に移動します.
|
z | カーソルのある行を画面の中央に移動します.
|
TAB | 次のリンクに移動します.
|
C-u, ESC TAB | 前のリンクに移動します.
|
[ | 最初のリンクに移動します.
|
] | 最後のリンクに移動します.
|
ハイパーリンク操作
RET | 現在カーソルがあるリンクが指す先の文書を読みこみます.
|
a, ESC RET | 現在カーソルがあるリンクが指す先の文書をファイルに保存します.
|
u | 現在カーソルがあるリンクが指す先のURLを表示します.
|
i | リンクに関連付けられた画像へのURLの表示します.
|
I | 現在カーソルがあるリンクに対応する画像を表示します.
|
ESC I | 現在カーソルがあるリンクが指す
画像をファイルに保存します.
|
: | URL風の文字列をリンクにします.この機能は,HTMLでない文書を
読んでいるときにも有効です.
|
ESC : | Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を
読んでいるときにも有効です.
|
c | 現在の文書のURLを表示します.
|
= | 現在の文書に関する情報を表示します.
|
C-g | ページ中での現在位置を表示します.
|
C-h | URL履歴を表示します.
|
F | <FRAMESET>を含む文書を表示しているときに,<FRAME>
タグの指す複数の文書を1つの文書に変換して表示します.
|
M | 現在見ているページを,外部ブラウザを使って表示します.
2M, 3M で2番目と3番目のブラウザを使います.
|
ESC M | 現在のリンク先を,外部ブラウザを使って表示します.
2ESC M, 3ESC M で2番目と3番目のブラウザを使います.
|
ファイルとURL関係の操作
U | URLを指定して開きます.
|
V | ローカルファイルを指定して開きます.
|
@ | コマンドを実行し,結果を全部読んでから表示します.
|
# | コマンドを実行し,結果を読みこみながら表示します.
|
バッファ操作
B | 現在見ているバッファを削除し,一つ前のバッファを表示します.
|
v | HTMLのソースを表示します.
|
s | バッファ選択モードに入ります.
|
E | 現在見ているバッファがローカルファイルの場合,そのファイルをエディタ
で編集します.エディタを終了した後,そのファイルを再度読み込みます.
|
C-l | 画面を再描画します.
|
R | バッファを再度読み込みます.
|
S | バッファの表示内容をファイルに保存します.
|
ESC s | HTMLのソースをファイルに保存します.v でソースを表示して S で
保存するのとほぼ同じですが,ESC s で保存したファイルは漢字コードがオリジナルの
ままであるのに対して,v S で保存すると現在表示に使っている漢字コードに変換され
て保存されます.
|
ESC e | 現在表示されているバッファを,表示されている形式のまま
エディタで編集します.
|
バッファ選択モード
"s" でバッファ選択モードに入ったときのキー操作です.
k,C-p | 一つ上のバッファを選択します.
|
j,C-n | 一つ下のバッファを選択します.
|
D | 現在選択しているバッファを削除します.
|
RET | 現在選択しているバッファを表示します.
|
ブックマーク操作
ESC b | ブックマークを読み込みます.
|
ESC a | 現在見ているページをブックマークに追加します.
|
検索
/,C-s | 現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
|
?,C-r | 現在のカーソル位置からファイルの先頭に向かって正規表現を検索します.
|
n | 次を検索します.
|
N | 前を検索します.
|
C-w | 折り返し検索モードを切り換えます.
|
マーク操作
C-SPC | マークを設定/解除します.マークは反転表示されます.
|
ESC p | 一つ前のマークに移動します.
|
ESC n | 一つ後のマークに移動します.
|
" | 正規表現で指定された文字列を全てマークします.
|
その他
! | シェルコマンドを実行します.
|
H | ヘルプファイルを表示します.
|
o | オプション設定パネルを表示します.
|
C-k | クッキー一覧を表示します.
|
C-c | 文書の読み込みを中断します.
|
C-z | サスペンド
|
q | w3mを終了します.オプションの設定によって,終了するかどうか確認します.
|
Q | 確認せずにw3mを終了します.
|
行編集
画面の最下行で文字列を入力する場合に有効なキー操作です.
C-f | カーソルを右に移動します.
|
C-b | カーソルを左に移動します.
|
C-h | カーソルの直前の文字を削除します.
|
C-d | カーソル位置の文字を削除します.
|
C-k | カーソル位置から後を削除します.
|
C-u | カーソル位置から前を削除します.
|
C-a | 文字列の先頭に移動します.
|
C-e | 文字列の最後に移動します.
|
C-p | ヒストリから一つ前の文字列を取り出します.
|
C-n | ヒストリから次の文字列を取り出します.
|
TAB,SPC | ファイル名入力時に,ファイル名を補完します.
|
RETURN | 入力を終了します.
|
起動後の使いかた(Lynx風)
Lynx風キーバインドでコンパイルした場合の使いかたです.
ページ/カーソル移動
SPC,C-v,+ | 次のページを表示します.
|
b,ESC v,- | 前のページを表示します.
|
l | カーソルを右に移動します.
|
h | カーソルを左に移動します.
|
j | カーソルを下に移動します.
|
k | カーソルを上に移動します.
|
J | 画面を1行上にスクロールします.
|
K | 画面を1行下にスクロールします.
|
^ | 行頭に移動します.
|
$ | 行末に移動します.
|
> | 画面全体を右にずらします.(表示内容を左にずらす)
|
< | 画面全体を左にずらします.(表示内容を右にずらす)
|
C-a | 文書のいちばん上の行に移動します.
|
C-e | 文書のいちばん下の行に移動します.
|
G | 画面下で行番号を入力し,そこで指定した行に移動します.
ここで $ を入力すると,最終行に移動します.
|
Z | カーソルのある位置を行の中央に移動します.
|
z | カーソルのある行を画面の中央に移動します.
|
TAB, C-n, 下矢印 | 次のリンクに移動します.
|
ESC TAB, C-p, 上矢印 | 前のリンクに移動します.
|
C-g | ページ中での現在位置を表示します.
|
ハイパーリンク操作
RET, C-f, 右矢印 | 現在カーソルがあるリンクが指す先の文書を読みこみます.
|
d, ESC RET | 現在カーソルがあるリンクが指す先の文書をファイルに保存します.
|
u | 現在カーソルがあるリンクが指す先のURLを表示します.
|
i | 現在カーソルがあるリンクを含む画像そのもののURLを表示します.
|
I | 現在カーソルがあるリンクに対応する画像を表示します.
|
ESC I | 現在カーソルがあるリンクが指す画像をファイルに保存します.
|
: | URL風の文字列をリンクにします.この機能は,HTMLでない文書を
読んでいるときにも有効です.
|
ESC : | Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を読んでいるときにも有効です.
|
c | 現在の文書のURLを表示します.
|
= | 現在の文書に関する情報を表示します.
|
C-h | URL履歴を表示します.
|
F | <FRAMESET>を含む文書を表示しているときに,<FRAME>
タグの指す複数の文書を1つの文書に変換して表示します.
|
M | 現在見ているページを,外部ブラウザを使って表示します.
2M, 3M で2番目と3番目のブラウザを使います.
|
ESC M | 現在のリンク先を,外部ブラウザを使って表示します.
2ESC M, 3ESC M で2番目と3番目のブラウザを使います.
|
ファイルとURL関係の操作
g, U | URLを指定して開きます.
|
V | ローカルファイルを指定して開きます.
|
@ | コマンドを実行し,結果を全部読んでから表示します.
|
# | コマンドを実行し,結果を読みこみながら表示します.
|
バッファ操作
B, C-b, 左矢印 | 現在見ているバッファを削除し,一つ前のバッファを表示します.
|
\ | HTMLのソースを表示します.
|
s | バッファ選択モードに入ります.
|
E | 現在見ているバッファがローカルファイルの場合,そのファイルをエディタで編集します.エディタを終了した後,そのファイルを再度読み込みます.
|
C-l, C-w | 画面を再描画します.
|
R, C-r | バッファを再度読み込みます.
|
S, p | バッファの表示内容をファイルに保存します.
|
ESC s | HTMLのソースをファイルに保存します.v でソースを表示して S で
保存するのとほぼ同じですが,ESC s で保存したファイルは漢字コードがオリジナルの
ままであるのに対して,v S で保存すると現在表示に使っている漢字コードに変換され
て保存されます.
|
ESC e | 現在表示されているバッファを,表示されている形式のまま
エディタで編集します.
|
バッファ選択モード
"s" でバッファ選択モードに入ったときのキー操作です.
k,C-p | 一つ上のバッファを選択します.
|
j,C-n | 一つ下のバッファを選択します.
|
D | 現在選択しているバッファを削除します.
|
RET | 現在選択しているバッファを表示します.
|
ブックマーク操作
v, ESC b | ブックマークを読み込みます.
|
a, ESC a | 現在見ているページをブックマークに追加します.
|
検索
/,C-s | 現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
|
n | 次を検索します.
|
w | 折り返し検索モードを切り換えます.
|
マーク操作
C-SPC | マークを設定/解除します.マークは反転表示されます.
|
P | 一つ前のマークに移動します.
|
N | 一つ後のマークに移動します.
|
" | 正規表現で指定された文字列を全てマークします.
|
その他
! | シェルコマンドを実行します.
|
H, ? | ヘルプファイルを表示します.
|
o | オプション設定パネルを表示します.
|
C-k | クッキー一覧を表示します.
|
C-c | 文書の読み込みを中断します.
|
C-z | サスペンド
|
q | w3mを終了します.オプションの設定によって,終了するかどうか確認します.
|
Q | 確認せずにw3mを終了します.
|
行編集
画面の最下行で文字列を入力する場合に有効なキー操作です.
C-f | カーソルを右に移動します.
|
C-b | カーソルを左に移動します.
|
C-h | カーソルの直前の文字を削除します.
|
C-d | カーソル位置の文字を削除します.
|
C-k | カーソル位置から後を削除します.
|
C-u | カーソル位置から前を削除します.
|
C-a | 文字列の先頭に移動します.
|
C-e | 文字列の最後に移動します.
|
SPC | ファイル名入力時に,ファイル名を補完します.
|
RETURN | 入力を終了します.
|
マウス操作
マウス機能をONにしてコンパイルしてあれば,マウスを使って
w3mを操作することができます.マウスが使えるのは,xterm/kterm/rxvt
を使っている場合(この場合には,環境変数TERMを xterm か kterm に
設定する必要があります),または GPM が動いている環境を使っている場合
です.
左クリック
| カーソルをマウスカーソルの位置に移動します.
もしカーソルとマウスカーソルの位置が同じで,カーソルが
リンクの上にあったときは,そのリンクをたどります.
|
中クリック
| 前のバッファに戻ります.
|
右クリック
| メニューを開きます.メニューの項目もマウスで選ぶことができます.
|
左ドラッグ
| ページをスクロールします.デフォルトの動作では,
マウスのドラッグに合わせて文書の方をスクロールします.
オプション設定パネルの設定で,この動作を逆にすること
ができます(マウスのドラッグに合わせて,ウィンドウの方を
スクロールする).
|
キーの定義
~/.w3m/keymap を記述すると,キーの割りあてを変えることができます
(行編集のキー定義を除く).例えば,
keymap C-o NEXT_PAGE
と記述すると,NEXT_PAGE機能(通常スペースと C-v)に割りあてられて
いるもの)を C-o に割りあてることができます.
利用可能な機能と,その名前については,
README.funcを参照してください.
例として,オリジナルとLynx風のキー定義ファイル
(keymap.default
とkeymap.lynx)が置いてあります.
Local CGI
w3mを使えば,HTTPサーバなしでCGIスクリプトを起動することができます.
このとき,w3mがサーバのふりをしてスクリプトを起動し,その出力を
読みこんで表示するわけです.
ブックマークの登録と
外部ビューアの編集
は,local CGIのスクリプトとして実現されています.
local CGIを使えば,w3mを汎用のフォーム入力インタフェースとして
使うことができます.
セキュリティ上の理由により,起動するCGIスクリプトは,次のどれかの
ディレクトリにある必要があります.
- w3mのヘルプファイルなどが置いてあるディレクトリ
(典型的には /usr/local/lib/w3m).このディレクトリは,
$LIB で参照することができます.
- /cgi-bin/ ディレクトリ.このディレクトリは,任意の場所に
割りあてることができます(オプション設定パネルの「/cgi-binで表される
ディレクトリ」の項目).ここには,: で区切って複数のディレクトリを
指定することができます(例えば /usr/local/cgi-bin:/home/aito/cgi-bin など).
この中にカレントディレクトリを入れることは,セキュリティ上の理由により
薦められません.
Local CGIとして使われるスクリプトでは,w3mをコントロールするために,
特殊なヘッダ `w3m-control:' を使うことができます.このヘッダには,
w3mの任意の機能 (README.func参照)を書く
ことができます.文書が表示された後,その機能が呼び出されます.
例えば,
Content-Type: text/plain
W3m-control: BACK
というヘッダを出力した場合,w3mは空のページを表示し,その直後に
そのバッファを削除します.これは,CGIを実行した後で,何もページを
表示したくない場合に有効です.また,
Content-Type: text/plain
W3m-control: DELETE_PREVBUF
contents.....
は,新しいバッファで直前のバッファを置きかえます.
一つの w3m-control: ヘッダには,一つの機能だけを指定することができます.
ただし,HTTPレスポンスの中に複数の w3m-control: を入れることができ,
そこで指定された機能は順番に実行されます.
さらに,GOTO には引数を指定することができます.
Content-Type: text/plain
W3m-control: GOTO http://www.yahoo.com/
この例は,Location: を使った次の例と同じように動作します.
Content-Type: text/plain
Location: http://www.yahoo.com/
ただし,w3m-control: ヘッダはw3mがスクリプトを直接呼びだした時だけに
有効です.同じスクリプトを HTTPサーバ経由で呼びだした場合,
w3m-control: ヘッダは無視されます.