JAPANESEENGLISH

zsh customize

Tatsuki Sugiura
sugi@nemui.org

目次

URL ハンドラ

何これ?

小澤氏の日記で紹介されていた、zsh ウィジェット を少し拡張したものです。プロンプトにそのまま URL を打ちこんで Enter を押せば、 ブラウザで表示したり、ダウンロードが可能。

特徴

実行イメージ

一番単純な URL の表示

sugi@tempest:~% http://shlashdot.jp/ [Enter]

URL を入力して Enter を押すと、

sugi@tempest:~% _resolv_url http://shlashdot.jp/
Browse or Download this URL? [B/d] [Enter]

プロンプトが表示されるので、どちらかを選択。(Enter で大文字の方を選択)

sugi@tempest:~% _resolv_url http://shlashdot.jp/
Browse or Download this URL? [B/d] 
sugi@tempest:~% Message: Galeon already running, using existing process

URL が galeon に送られる。

特定のサフィックスでダウンロード

sugi@tempest:~% http://ftp.us.debian.org/debian/pool/main/b/base-files/base-files_3.0.2_i386.deb Enter]
Browse or Download this URL? [b/D] [Enter]
--09:12:55--  http://ftp.us.debian.org/debian/pool/main/b/base-files/base-files_3.0.2_i386.deb
           => `base-files_3.0.2_i386.deb'
Resolving ftp.us.debian.org... done.
Connecting to ftp.us.debian.org[35.9.37.225]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 30,956 [application/x-debian-package]

100%[====================================>] 30,956        55.17K/s    ETA 00:00

09:12:56 (55.17 KB/s) - `base-files_3.0.2_i386.deb' saved [30956/30956]

インストールと最低限の設定

  1. ダウンロードとファイルの展開
  2. functions以下のファイルを全てfpathの通ったディレクトリにコピー
  3. ~/.zshrcに以下の記述を追加
    if autoload +X -U _accept_line_with_url > /dev/null 2>&1; then
        zle -N accept-line-with-url _accept_line_with_url
        bindkey '^M' accept-line-with-url
        bindkey '^J' accept-line-with-url
    fi
    

各種設定

WWW_BROWSER (env)
起動するブラウザ。(defualt: www-browser). "%s"はURLに置換されます。例: export WWW_BROWSER="nescape-remote %s"
DOWNLOADER (env)
起動するダウンロードコマンド(default: wget).例: export DOWNLOADER="wget -nv"
browse_or_download_method (shell var)

プロンプトを出すかどうかを変更する。以下の値が有効。

"ask"もしくは空
毎回尋ねる(default)
"auto"
ディフォルトを自動選択
"download" or "browse"
常に指定された動作をする

例: browse_or_download_method="auto"

設定サンプル

ダウンロード