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

w3m-searchを書き換えたいのですが…その後



lightcyanです。

以下のメールを出していたんですが、届いてないようですね。
ミスってしまったのでしょうか。それともスパムよけに弾かれたとかでしょうか。

再送してみますので、よろしくお願いします。
-- 
lightcyan
--- Begin Message ---
今、会社で社外のメールサーバーに接続できないので、
返事が遅れてすみません。

ところでMLには入っているので、
個別に返信いただかなくても大丈夫です。

From: Masatake YAMATO <jet@xxxxxxxx>
Subject: [emacs-w3m:08942] Re: w3m-searchを書き換えたいのですが
Date: Thu, 09 Nov 2006 03:36:24 +0900 (JST)

> > 1.
> C-u M-x w3m-search[RET]cybozu[ret]人名[ret]で、サイボウズの
> アドレス帳のその人のページを開きたいのですが、
[...]
> eval-after-loadはいかがでしょうか。例えば
[...]
これは自己解決できました。つい聞いてしまいました。すみません。
(eval-after-load "w3m-search"
  '(progn 
     (add-to-list 'w3m-search-engine-alist
		  '("cybozu" 
		    "http://...%s" euc-japan))
     ))
としました。
 
> > 2.
> > 1を手で実行したとして、その後で実行できる関数をw3m-searchをもとに書きました。
[...]
> まったくの勘ですが、w3m-async-execがtになってませんか?
> tの場合w3m-goto-urlの処理が非同期に、すなわちページの描画が完了する前に、
> n2mが実行されてしまうのではないでしょうか。応急処置としては、
> 
> 
> (w3m-goto-url ...)をletでくくって
> 
> (let ((w3m-async-exec nil)) (w3m-goto-url ...))
> としてしまえば、ページの描画が完了するまでw3m-goto-urlから制御が戻ってこなくなるはずです。

w3m-async-exec はたしかにnilにしていませんでした。
なんとかこれで出来そうな気がします。
どうもありがとうございます。

> 以下は僕の手元にあったコードです。
> gaucheというschemeのインタープリタのマニュアルがウェブ上にあります。
> 指定した関数の説明をそのウェブページから引いきます。
> 
>     (defun gauche-find-doc (sym)
>       (interactive "sSymbol: ")
>       (let ((w3m-async-exec nil))
> 	(w3m (format "http://www.shiro.dreamhost.com/scheme/gauche/man/?l=jp&p=%s"
> 		     sym))
> 	(goto-char (point-min))
> 	(re-search-forward (concat "^[A-Za-z]+: " (regexp-quote sym )))
> 	(recenter 1)))

結構スマートですね。また時間があった時に見直してみます。
またお世話になることがあると思います。よろしくお願いします。
-- 
lightcyan

--- End Message ---
--- Begin Message ---
lightcyanです。

前回MLに下記↓を投稿したつもりだったんですが、
はじかれてしまったんでしょうか。

ところで、M-x n2m-buffer を使っていると、
M-x w3m-history のネストが100を大きく超えてしまうのですが、
この状態で矢印キーを押しっぱなしにしているとMeadowが落ちることが
あるきがします(再現率60%くらい?)。

もし history を書き換えずに(w3m-goto-url ...)を
使う方法があれば教えてほしいです。教えてくればかりで
申し訳ありませんがよろしくお願いします。
-- 
lightcyan

From: lightcyan@xxxxxxxxxxxxxxxxxxx
Subject: Re: [emacs-w3m:08942] Re: w3m-searchを書き換えたいのですが
Date: Thu, 09 Nov 2006 22:57:21 +0900 (LMT)

> 今、会社で社外のメールサーバーに接続できないので、
> 返事が遅れてすみません。
> 
> ところでMLには入っているので、
> 個別に返信いただかなくても大丈夫です。
> 
> From: Masatake YAMATO <jet@xxxxxxxx>
> Subject: [emacs-w3m:08942] Re: w3m-searchを書き換えたいのですが
> Date: Thu, 09 Nov 2006 03:36:24 +0900 (JST)
> 
> > > 1.
> > C-u M-x w3m-search[RET]cybozu[ret]人名[ret]で、サイボウズの
> > アドレス帳のその人のページを開きたいのですが、
> [...]
> > eval-after-loadはいかがでしょうか。例えば
> [...]
> これは自己解決できました。つい聞いてしまいました。すみません。
> (eval-after-load "w3m-search"
>   '(progn 
>      (add-to-list 'w3m-search-engine-alist
> 		  '("cybozu" 
> 		    "http://...%s" euc-japan))
>      ))
> としました。
>  
> > > 2.
> > > 1を手で実行したとして、その後で実行できる関数をw3m-searchをもとに書きました。
> [...]
> > まったくの勘ですが、w3m-async-execがtになってませんか?
> > tの場合w3m-goto-urlの処理が非同期に、すなわちページの描画が完了する前に、
> > n2mが実行されてしまうのではないでしょうか。応急処置としては、
> > 
> > 
> > (w3m-goto-url ...)をletでくくって
> > 
> > (let ((w3m-async-exec nil)) (w3m-goto-url ...))
> > としてしまえば、ページの描画が完了するまでw3m-goto-urlから制御が戻ってこなくなるはずです。
> 
> w3m-async-exec はたしかにnilにしていませんでした。
> なんとかこれで出来そうな気がします。
> どうもありがとうございます。
> 
> > 以下は僕の手元にあったコードです。
> > gaucheというschemeのインタープリタのマニュアルがウェブ上にあります。
> > 指定した関数の説明をそのウェブページから引いきます。
> > 
> >     (defun gauche-find-doc (sym)
> >       (interactive "sSymbol: ")
> >       (let ((w3m-async-exec nil))
> > 	(w3m (format "http://www.shiro.dreamhost.com/scheme/gauche/man/?l=jp&p=%s"
> > 		     sym))
> > 	(goto-char (point-min))
> > 	(re-search-forward (concat "^[A-Za-z]+: " (regexp-quote sym )))
> > 	(recenter 1)))
> 
> 結構スマートですね。また時間があった時に見直してみます。
> またお世話になることがあると思います。よろしくお願いします。
> -- 
> lightcyan

--- End Message ---