[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

[MD:1714]mw32faces.el - set-face-underline-p



>>>>> [meadow-develop : No.1703] にて
>>>>> “白井”= Hideyuki SHIRAI (白井秀行) <shirai@xxxxxxxxxxxxxxxxxxx> さま曰く:
白井> > だめですね。新しく作る face からみんな italic, bold などの属性が
白井> > 消えてしまいます。

set-face-underline-pに限らず、set-face-bold-pやset-face-italic-pで
nilを渡して実行するとproperty listが消えてしまいます。

適当にやってみましたところ、コードに改良の余地がありまくるものの、
すくなくとも、1.21b1(改:-)ではうまくいっているようです。
ちなみに、この修正を加えた後にdumpし直さないと駄目だと思います。
ではでは。

--- mw32faces.el.orig	Wed Mar 01 01:19:46 2000
+++ mw32faces.el	Fri Mar 03 16:25:18 2000
@@ -85,7 +85,17 @@
 
 (defun face-property-put (plist prop val)
   (if (null val)
-      val
+      (let ((nlist nil)
+	    (n 0)
+	    nelem)
+	(while (setq nelem (nth n plist))
+	  (unless (or (string= (symbol-name prop) (symbol-name nelem))
+		      (string= "t" (symbol-name nelem)))
+	    (setq nlist (face-property-put nlist nelem t)))
+	  (setq n (+ 1 n))
+	  )
+	nlist
+	)
     (let ((x plist) (y plist))
       (while
 	  (cond

--
郡山直大 (こおりやま なおひろ)
work: koriyama@xxxxxxxxxxx
home: kory@xxxxxxxxxxxxxxxx
Web: http://www02.u-page.so-net.ne.jp/ba2/kory/