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

Re: use 'dirlist.cgi' when local directory



中川@〜気が短い分、説教は長い〜です。

  dtree の方はまだです。ごめんなさい。

;; 「〜態度はでかい」はありませんでした>実年行進曲。

From: Hideyuki SHIRAI (白井秀行) <shirai@rdmg.mgcs.mei.co.jp>
Subject: [emacs-w3m:00959] Re: use 'dirlist.cgi' when local directory
Date: Sat, 26 May 2001 22:27:46 +0900 (JST)
Message-ID: <20010526.222746.45814211.shirai@rdmg.mgcs.mei.co.jp>

白>> これ、Win32 でも一緒ですね。w3m 自体が drive letter を扱ってくれ
白>> ないようなので、裸の w3m でもだめです。
須> 該当部分(url.c:parseURL())が「#ifdef __EMX__」〜「#endif」で囲まれてい
須> るだけので、cygwinにも該当するように条件を書き換えれば、裸のw3mでは動
須> くようになると思います。
白> ご教授ありがとうございます。これ、ちょっとだけ試したのですが、私
白> の力量 & 理解度不足のため、失敗してしまいました。^^;;;

白> そうのこうのしていたら OS/2 方面では、
野> ともあれ、仰る通り、w3m-cgiは問題なく動き、w3m-dtreeも使えるように
野> なりました。
白> なので悔しいため、無理やり Win32 でも動作させてみました。

  本当は w3m 本家の方で、dirlist.cgi を書き替えて file:///c|/ 等を吐く
ようにしてもらうべきだと思います。OS/2 でも上手くいかない場合があるよ
うなので(条件未詳、[emacs-w3m:00946] でちらっと書きました)。↓では 
elisp で書き替えてますが。

白> よって、w3m-local-directory-view-method の初期値は全部の OS で
白> 'w3m-cgi として、'w3m-cgi のときは w3m-direlist-cgi-program に
白> dirlist.cgi の path を設定してあれば、Emacs から直接 perl script
白> として動かすようにしました。w3m-direlist-cgi-program が nil なら
白> 従来通りふつ〜に w3m を動かします。
白> # dirlist.cgi の出力を elisp で扱いやすいように変換しているので、
白> # 動くようなら OS/2 もこっちの方式の方が良いかも。

  OS/2 もこっちの方が良さそうです。w3m-direlist-cgi-program (why not
`dirlist' but `direlist'?) の初期値を

  (cond ((eq system-type 'windows-nt) 
	 "c:/usr/local/lib/w3m/dirlist.cgi")
	((eq system-type 'OS/2) 
	 (expand-file-name "dirlist.cmd" (getenv "W3M_LIB_DIR")))
	(t nil)))

  にして下さると幸いです(最後の (t nil) はお好みで)。

;;   OS/2 の file-executable-p(というか stat.st_mode の S_IEXEC ビッ
;; ト)は拡張子を見ているので .cgi では駄目で、幸い dirlist.cmd という 
;; dirlist.cgi を呼んで dirlist.cgi を dirlist.cmd に書き替える .cmd 
;; ファイル(DOS の .bat 相当)があるので、そいつを使います。

;; <<野宮さん
;;    dirlist.cgi -> dirlist.cmd の書き替えがうまくいってないようなの
;; ですが、そちらではいかがですか。元の行が
;;	<form action="file:e:/usr/local/src/w3m/altair-0.2.1-3/w3m/usr/local/lib/w3m/dirlist.cgi">
;; なので(私のパスは異常ですが)、dirlist.cgi" -> dirlist.cmd" に書き
;; 替えるべきでは。そちらでもうまくいっていないようなら sukisuki に報
;; 告します。

;;   ここ(form action="file〜")までは書き替えなくても良いですよね。
;; どうせ form ないんだし> 白井さん。

白> # だけど、変数の
白> # doc-string をみたらいやになるかしら。^^;;;

;;   手元の「ハッカーズ大辞典」の OS/2 の項目から抜粋すると
;; 	よく「2 分の OS (Half-an-OS)」(OS÷2) と呼ばれ、そう言えばたい
;; 	ていハッカーの間で簡単に笑いが取れる。
;;   だそうです。もうちょっと(OS/2 を誉めてある?部分を)抜き出すと
;; 	バージョン 2.x は多少改善されていると言われ、事情通のハッカー
;; 	はマイクロソフト Windows よりも評価している(誉めているようだ
;; 	が、ほんのちょっと賞賛が混じっただけの酷評とも解釈できる)。
;;   上記 Windows は時期的に 3.1 (or 3.0?) と思われます。9x よりましだ
;; と私は信じてますけど、WinNT 系は使ったことがないので不明。
;;   手元の Jargon File 2.99 を見ると「そう言えば〜笑いが取れる」は
;; 「Half-an-OS」だけでなく、"Mentioning it" つまり「OS/2 について語る」
;; に掛かるように思われます。But don't trust my poor English.  確かに
;; 一昨年だったかにアメリカの大学のネットワーク屋の間に OS/2 を使って
;; るといったら笑われました。Jargon File 2.99 から最近の Jargon
;; Lexicon? / File? 4.20 の間で変更があったようで、最近のはどちらとも
;; 訳せます、というか「ハッカーズ大辞典」の訳の方が自然かも。

;;   ついでに:LF->CRLF 問題ですが、w3m の出力を raw-text-dos で受け
;; たのでは駄目ですか?(そもそも不可逆変換だ、というのはおいといて)

白> # こいつか UNIX でも OK かどうかは月曜日。

  これは私は環境がないのでチェックできません。

白> もう一点、w3m-input-url() で drive-letter が扱えなかったので修理
白> しておきました。
白> ## これに気付いていないようじゃ、壊したのも気付かないわけだ(謎)

  ううむ。completion の効く w3m-find-file ばかり使っていたので、気付き
ませんでした。

ではでは。

--
  中川貴之  (株)日立製作所 エンタープライズサーバ事業部 Nセ2G