[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: inline image for Mule 2
>>>>> In [emacs-w3m : No.03299]
>>>>> Katsumi Yamaoka <yamaoka@jpl.org> wrote:
山岡> いや、たぶんぼくの .emacs かどこかに何かあります。
そうでもないかもしれないので、ちょっと書きます。^^;;
Emacs 20 では face property を持たないか、値が nil の overlay、
すなわち
(overlay-get OVERLAY 'face)
=> nil
のようなものは、デフォルトで `default' という face を持つように
なっているようです。つまり以下を行なった場合と同じです。
(overlay-put OVERLAY 'face 'default)
つまり、この OVERLAY がかぶせられたテキストの表示には、`default'
という face の属性が適用されるのですが、
(face-background 'default)
=> nil
(face-foreground 'default)
=> nil
という条件では、その OVERLAY がかぶせられても、おそらく表示は変
化しないでしょう。みなさんは `default' の色を変更していないので
はないですか?
以下の式を試してみて下さい。M-x xxx-test です。
[1]Hit any key:
の後で "Hello World!" が BG=赤, FG=黄 になれば、ぼくの環境といっ
しょですし、w3m-bitmap-transparent-face のようなものはやっぱり必
要だということになります。
(defun xxx-test ()
(interactive)
(let ((buffer (get-buffer-create "*xxx-test*"))
(pop-up-windows t)
pop-up-frames ovl)
(copy-face 'default 'xxx-default)
(pop-to-buffer buffer)
(erase-buffer)
(insert "Hello World!\n")
(make-face 'xxx-face)
(put-text-property (point-min) (point-max) 'face 'xxx-face)
(set-face-background 'xxx-face "Cyan")
(set-face-foreground 'xxx-face "Blue")
(unwind-protect
(progn
(read-char "[1]Hit any key: ")
(set-face-background 'default "Red")
(set-face-foreground 'default "Yellow")
(setq ovl (make-overlay (point-min) (point-max)))
(read-char "[2]Hit any key: ")
(delete-overlay ovl)
(read-char "[3]Hit any key: "))
(copy-face 'xxx-default 'default))))
--
Katsumi Yamaoka <yamaoka@jpl.org>