2011年11月11日

Re: [質問] FolderモードでRET/SPC した際の hookは?


山岡さん

いつもお世話になっております。:-)

At Fri, 11 Nov 2011 07:47:42 +0900,
Katsumi Yamaoka <yamaoka@xxxxx> wrote:

[...]

> そういう目的だとすれば wl-folder-jump-to-current-entity がいろん
> な処理を行なう前に評価される hook ですね。おそらく無いです。

残念。

> でも
> defadvice による関数の書き換えが使えるのではないでしょうか。

やはり。そうですか。

At Fri, 11 Nov 2011 08:14:20 +0900,
Katsumi Yamaoka <yamaoka@xxxxx> wrote:

[...]

> 書きかけのものを出してしまったのでやり直します。すみません。

わざわざ、sampleまで作っていただいて、恐縮です。m(..)m

> > たとえばこんな感じ。
>
> ;; もし必要なら。
> (require 'ssl)
>
> (defadvice wl-folder-jump-to-current-entity (around modify-ssl-args activate)
> "Modify `ssl-program-arguments' according to folder."
> (let* (;; フォルダ名をゲット。値は文字列または nil。
> (folder (wl-folder-get-entity-from-buffer))
> ;; `ssl-program-arguments' の値をフォルダに応じて変更。
> (ssl-program-arguments
> (cond ((null folder)
> ssl-program-arguments)
> ((string-match "REGEXP_for_社内" folder)
> '("ARG" "ARG" "ARG"...)) ;; 社内用 args
> ((string-match "REGEXP_for_社外" folder)
> '("ARG" "ARG" "ARG"...)) ;; 社外用 args
> (t
> ssl-program-arguments))))
> ad-do-it))
>
> これは wl-folder-jump-to-current-entity を実行するときだけ
> ssl-program-arguments を変更した値に束縛するのですが、あるフォル
> ダに入るたびに値を変更したいのであれば (できるならバッファローカ
> ル変数にしてから) setq することになるでしょうか。
>
> あるいは、すでに hook 用の関数を用意しているのであれば、
>
> (defadvice wl-folder-jump-to-current-entity (before run-hook activate)
> "Run `my-wl-folder-jump-to-current-entity-hook'."
> (run-hooks 'my-wl-folder-jump-to-current-entity-hook))
>
> とか。

試してみます。ありがとうございます。:-)

--
Takahiro Yamaguchi


投稿者 xml-rpc : 2011年11月11日 08:52
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/107237
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。