[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

w3m-dtree, w3mmee support, stop form action, etc...



白井です。

結構たくさん変えてしまいました。
そのため、事前に before_dtree_w3mmee_etc という tag をうちました。

## ほとんど人様の書いたものを取り込んだだけです ^^;;;

● w3m-dtree()
 大和さんの [emacs-w3m:00689](*1) の htree を使ってうごく、土屋
 さんの [emacs-w3m:00703](*2) の w3m-dtree() を(ちゃんと動くよう
 にして ^^;)と取り込みました。default では、"D" で directory を
 聞いてきます。また、"C-u D" で allfile の表示となります。

 なお、dtree から簡単に file を edit できるように "e"
 w3m-edit-this-url() でその file を w3m-edit-function で指定した
 function で開くようにしました。従来からの
 w3m-edit-current-url() も同様に find-file() ではなく、指定でき
 るようにしました。

 また、dtree の directory 上で return をすると、その directory
 を対象に dtree しなおします。このときも "C-u C-m" なら allfiles
 になります。これは w3m-external-view() から w3m-dtree() を呼ぶ
 という考えが思いっ切り dirty な考えかも。^^;
  
 info like な keymap で、上記の関数をどの key に bind すれば良い
 か全然見当がつかなかったので、w3m-dtree() と
 w3m-edit-this-url() のところは comment out してあります。
 
# Windows で動かすために土屋さんのコードより汚くなっています。
## ドライブレターなんかだいっ嫌いだ ;_;
# また、htree は Win32 だと bash, Solaris だと bash or ksh で動
# きました。

htree script なのですが、今回は elisp 側で処理してしまいましたが、

% pwd
/tmp
% htree -d ~/work/
<pre>
<A HREF="file:///tmp">/home/shirai/work/</A>
         ~~~~~~~~~~~ <= これ
+---<A HREF="file:///home/shirai/work/CVS">CVS/</A>
    +---<A HREF="file:///home/shirai/work/CVS/cvs-check">cvs-check/</A>
 
という風に、最初の HREF に起動時の directory を出力するという問
題がありました。> 大和さん


● w3mmee 向け拡張
 須藤さんの [emacs-w3m:00555](*3) の w3mmee で使うためのパッチを
 ちょっと変更して取り込みました。

w3m-w3m-decode-all-to-this-charset 
 => w3m-decode-all-to-this-charset

w3m-w3m-dump-head-source-option
 => w3m-dump-head-source-option

w3m-halfdump-extra-options
 => w3m-halfdump-expand-options
 
と変数名を変えています。
また、w3mmee 関連で増えた変数は、まだ、defvar のままです。

なお、w3mmee で文字コードの変換をすると、emacs-w3m 内部の cache
情報と矛盾が生じるので、その辺りをなんとかしないといけない(と書
きながら、実は良くわかっていない)のですが、今回、その辺を無視し
て導入してしまいました。その関係もあるのですが、ぼくは今こんな設
定にしています。akr さんところ以外はこれで OK です。

  (setq w3m-mnc t)
  (setq w3m-command "w3mmee")
  (setq w3m-command-arguments '("-o" "concurrent=0" "-F"))
  (setq w3m-dump-head-source-option "-dump=extra,head,source")
  (setq w3m-decode-all-to-this-charset nil)
  (setq w3m-input-coding-system 'euc-japan)
  (setq w3m-output-coding-system 'euc-japan)
  (setq w3m-halfdump-expand-options '("-I" "euc-jp" "-o" "concurrent=0"))
  (setq w3m-halfdump-option "-dump=half")
  (setq w3m-coding-system 'euc-japan)

## 文字コードの変換という w3mmee の最大の特徴を使っていなくてご
## めんなさい(_ _)

w3mmee と emacs-w3m が仲よしになるには、もう少し擦り合わせが必要
となりそうです。須藤さんにお願いしたいこともあるのですが、今日は
すでに私の余暇の時間がつきたので、また今度ということで。


● w3m-next-anchor()、w3m-previous-anchor() を form で止まるよう
 にしました。とっても汚いので、きれいにするのも今後の課題です。


● その他、若干出力 message を増やしました。だって、"rendering
 done" が出てから、property づけで結構待たされるんだもん。


(関連メール)
(*1) Message-Id: <20010506033151M.masata-y@is.aist-nara.ac.jp>
(*2) Message-Id: <mpa4ruxwrs0.fsf@azalea.kuee.kyoto-u.ac.jp>
(*3) Message-Id: <20010418-205759-0b410.suto@ks-and-ks.ne.jp>

-- 
白井秀行 (mailto:shirai@rdmg.mgcs.mei.co.jp)