[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: kill-new
に第三引数が追加された
>>>>> In [emacs-w3m : No.04562]
>>>>> NAKAJIMA Mikio <minakaji@osaka.email.ne.jp> wrote:
中島さん> kill-region する度に変なエラーが出る、と思って調べたら、最
中島さん> 近 cvs 上の Emacs 21 で kill-new に第三引数が追加されたよう
中島さん> です。
[...]
中島さん> エレガントに処理する方法を思いつかなかったので直してません。
中島さん> 識者の方お願いします。
こんなんで良いのでしょうか?
(let (current-load-list)
(defadvice kill-new (before strip-keymap-properties-from-kill activate)
"Advised by emacs-w3m.
Strip `keymap' or `local-map' properties from a killed string."
(if (text-property-any 0 (length (ad-get-arg 0))
'text-rendered-by-mime-w3m t (ad-get-arg 0))
(remove-text-properties 0 (length (ad-get-arg 0))
'(keymap nil local-map nil)
(ad-get-arg 0)))))
;; エレガントかどうかを論ずる以前の内容ですけれど。:-p
ちなみに、関数の引数の最大数は w3m-function-max-args() で調べる
ことができます。と書いたのも束の間、21.3.50 用にはちょっと変更が
必用でした。^^;;
;;; w3m-util.el
(defun w3m-function-max-args (function)
[...]
- (length (delq '&optional arglist))))))
+ (length (delq '&optional (copy-sequence arglist)))))))
CVS commit はちゃんと検証してからにします。
--
Katsumi Yamaoka <yamaoka@jpl.org>