はじめに

ターミナル上で動くテキストブラウザであるw3mの使い方や設定のメモ。

なお、macOS上のHomebrewで入れた『w3m version w3m/0.5.3+git20180125』を想定します。

基本的な操作

w3mは『テキストブラウザ』であり、ターミナルで用います。
そのため、すべての操作をキーボードから行えます。
(マウスでもできなくはなかったはず…)。

ここには基本的なものだけを挙げます。
詳しくはHして。恐ろしいくらいたくさんあるから…。

キー 操作
H ヘルプファイルを表示
o オプション設定パネルを表示
h,C-b カーソルを左へ移動
j,C-n カーソルを下へ移動
k,C-p カーソルを上へ移動
l,C-f カーソルを右へ移動
J 画面を一行下へスクロール
K 画面を一行上へスクロール
TAB 次のリンクへ移動
Enter カーソル下のリンクを開く
I カーソル下のリンクに対応した画像を表示
c 文書のURLを表示
= 文書の情報を表示(文字化けしたときに)
U URLを指定して開く
B ページを戻る(Back)
/ ファイル末尾に向かって正規表現で検索
? ファイルの先頭に向かって正規表現で検索
n 次を検索
N 前を検索
q w3mを終了する(確認あり)
Q w3mを終了する(確認なし)
! シェルコマンドを実行(←神)

ホームページ

ターミナルにw3mとだけ入力すると、エラーが出ます。
というのも、引数としてURLを与える必要があるのです。

それだと面倒なので、~/.bashrc~/.zshrc

export WWW_HOME="http://example.com/"

というように記述しておきます。

ブックマーク

ESC aでページをブックマークに保存することができます。
ブックマークは~/.w3m/bookmark.htmlに保存されます。

ESC bでブックマークファイルを開きます。

ターミナルでw3m -Bと入力すると、起動時、ブックマークファイルを読み込みます。

External browser

オプション設定パネルのExternal Program SettingsExternal browserを変更することでMキーを押した際に開く外部Webブラウザを設定できます。

標準では、/usr/bin/firefoxとかいうよくわからないものでうまく動作しません。

openに変更することで規定のWebブラウザで開かれるようになる気がしましたが、開けたり開けなかったりして、ちょっとわかりません…。

External Viewers

なぜかmacOSでは、Iで画像を表示してくれません。
そこで、外部ビューワを設定します。

  1. oでオプション設定パネルを開く
  2. 『External Viewer Setup』を選択
  3. Enter押下
  4. 『Type』をimage/*に、『Command』をmpv --loop=inf --fs=yes %sにし、『Register』

これで、mpvで画像が表示されるようになります。
もちろん、mpvが必要。

!

神。GOD。

!としたあと、入力欄にコマンドを入力すると、そのコマンドが実行されます。
(実行中はw3mを使えません)。

printenv | grep W3M

と入力すると、w3mに関する環境変数がわかります。

以下のように。

W3M_FILENAME=/  
W3M_CURRENT_IMG=  
W3M_SOURCEFILE=/Users/username/.w3m/w3mtmp5869-0.gz  
W3M_URL=http://example.com/  
W3M_CURRENT_LINK=  
W3M_CURRENT_WORD=Example  
W3M_TITLE=Example Domain  
W3M_TYPE=text/html  
W3M_CURRENT_LINE=1  
W3M_CURRENT_FORM=  
W3M_CURRENT_COLUMN=1  
W3M_CHARSET=UTF-8

User-defined key bindings

独自のキーバインドを設定できます。

~/.w3m/keymapkeymap <key> <command>というように書きます。
<command>は、ヘルプファイルの各説明文のカッコ内のもの。

以下のようにもできます。

keymap y EXEC_SHELL "echo $W3M_URL | pbcopy"  
# 文書のURLをコピー  
keymap p EXEC_SHELL "mpv $W3M_URL"  
# mpvで再生(YouTubeのページなどで)  
keymap D EXEC_SHELL "open \"dict://$W3M_CURRENT_WORD\""  
# カーソルのある位置の言葉をmacOS標準の辞書で調べる  
# 日本語は文字化けしてうまくいかないけどね

可能性は無限大!

おわりに

  • 画像表示できない
  • JavaScript動かない
  • CSSほとんど無視する

など、時代遅れの過去の産物であるといわれても否定できません。

それでも!

  • キーボードですべての操作を行える
  • ターミナルで動く
  • シェルスクリプトと連携できる

など、素晴らしい点も多々あり、役に立つことも多いです。

ただ気になるのが、『Last Update: 2013-04-26』。
やっぱり、開発、終わってるのか…。

関連記事

この記事へのコメント

まだコメントはありません
+1
18
@okayuの大して技術的ではないブログ
このエントリーをはてなブックマークに追加