同一の logfont に復数の ccl によるエンコーダを指定しても
最初に表示した文字集合のエンコーダを指定したかのように表示される。
(let ((name "testfont")
(lf '(w32-logfont "Courier" 0 16 400 0 nil nil nil 0 1 1 49)))
(define-ccl-program ccl-test-1 '(0 ((r1 = ?1))))
(w32-regist-font-encoder 'test-1 'ccl-test-1 1)
(define-ccl-program ccl-test-2 '(0 ((r1 = ?2))))
(w32-regist-font-encoder 'test-2 'ccl-test-2 1)
(define-ccl-program ccl-test-3 '(0 ((r1 = ?3))))
(w32-regist-font-encoder 'test-3 'ccl-test-3 1)
(w32-add-font
name
`((spec
((:char-spec ascii :height any) strict ,lf)
((:char-spec latin-iso8859-1 :height any) strict ,lf
((encoding . test-1)))
((:char-spec latin-iso8859-2 :height any) strict ,lf
((encoding . test-2)))
((:char-spec latin-iso8859-3 :height any) strict ,lf
((encoding . test-3)))
)))
(set-frame-font name))
上記設定に対して
(list-charset-chars 'latin-iso8859-1)
(list-charset-chars 'latin-iso8859-2)
(list-charset-chars 'latin-iso8859-3)
でそれぞれ '1' のみ '2' のみ '3' のみが表示されるはずだが
最初に表示させた文字集合と全て同じ表示になる。