[emacs-w3m:13587] Re: w3m-safe-url-regexp

Katsumi Yamaoka <[email protected]> Wed, 15 Jan 2020 08:30:27 +0900
Newsgroups gmane.emacs.w3m
Organization Emacsen advocacy group
Message-ID <[email protected]>
In [emacs-w3m:13586]
On Tue, 14 Jan 2020 22:19:15 +0900, 白井さん wrote:
> lexical-binding がらみでもなさそうだし。

たぶんそれ、つまり最近の mew-w3m.el が lexical-binding を t にし
ているのが原因でしょう。add-hook している場所の近くに

(defvar cidstx nil)

とでも書いておくのはいかがですか?

これ
> (defun mew-w3m-cid-retrieve-get ()
>   (setq mew-w3m-cid-retrieve-cids
>         (cons cidstx mew-w3m-cid-retrieve-cids)))

が書いてある場所が lexical-binding = nil の環境であるなら、変数
cidstx は boundp である必要があります。以前の mew-w3m.el が行なっ
ていた

  (let ((cidstx VAL)) ...)

の中では cidstx が一時的に boundp な変数だったのですが、現在は
lexical variable というものになっていて boundp な変数とは違う
世界にいるのです。しかしこの

  (let ((cidstx VAL)) ...)

も、もしあらかじめ cidstx を boundp な変数として定義しておけば
こちらの世界にいるままになります。

逆に、その cidstx を参照する関数定義を lexical-binding = t であ
る環境で行なってあれば、何も悩まなくて済むかもしれません。具体的
には ~/.mew.el が load する ~/.mew-lexbind.el というファイルを
lexical-binding = t にしておいて、必要なものを移設するとか。
(ごめんなさい、この項は未確認です。)

> # そういえば、最近 shimbun 全然動かしていないので、今度動かして
> # みますね ^^;;;

# 私が最近もいじっている shimbun は動くと思います。ただし自分が
# 読まないグループはほったらかしですが。

> あと、github の使い方覚えて、mew-w3m.el から古い Mew 向けのコー
> ド消しましょうかね。

はい、よろしくお願いします。
-- 
山岡