長南です。
最近のフォント事情はさっぱりわからないので、以下はたぶん不正確不十分な
意見でしょうが……。
池田さんのメールより [vine-users:073582]
>
> Xのドキュメントを見ながら、ttcフォントを追加してから以下の不具合が出て
> 困っております。もし、お気付きの点があればご助力頂ければ幸いです。
>
> *Cannaで変換候補一覧内にリストが表示されない。(空白。変換は問題なく可能)
> *xfontselを実行すると以下のエラーとなる。
> Warning: Unable to load any usable ISO8859 font
> Error: Aborting: no font found
>
>
> 以下の流れでフォントを追加しました。フォントは正常に表示できます。
>
> 1. /usr/X11R/lib/X11/fonts/TTF へ .ttc フォントを置く。
> 2. /usr/X11R/lib/X11/fonts/TrueType/ へフォントの .conf ファイルとttc
> フォントへのシンボリックリンクを作成。
> 3. /usr/X11R/lib/X11/fonts/TrueType/ で mkfontscale と mkfontdir
> を実行。
> 4. 3の直後あたりから不具合発生。3を行わず、xfontselを実行した時は正常
> でした。
そのフォントは、何というフォントですか。
フォントの .conf ファイルというのは、/usr/X11R6/lib/X11/fonts/TrueType
/microsoft.ttfconf のようなものでしょうか。それとも、/etc/fonts/fonts.conf
みたいなもの?
とにかく、Vine 3.2 は新しいフォントが入ったとき、fonts.dir などを
/etc/rc.d/init.d/xfs のスタート時にこんなふうに自動的に作成しています
(一部だけ引用しますが、xfs 全体をお読みになっておいてください)。
buildfontlist() {
for d in $(/usr/sbin/chkfontpath --list | cut -f 2 -d ':') ;do
if [ -d "$d" ]; then
cd $d
# Check if we need to rerun mkfontdir
NEEDED=no
if ! [ -e fonts.dir ]; then
NEEDED=yes
elif [ "x$(find . -type f -newer fonts.dir \! -name fonts.cache-1 2>/dev/null)" != "x" ]; then
NEEDED=yes
fi
if [ "$NEEDED" = "yes" ]; then
rm -f fonts.dir &>/dev/null
if ls | grep -i "\.tt[cf]$" &>/dev/null; then
# TrueType fonts found...
if ls | grep "\.ttfconf$" &> /dev/null; then
mktcapdir $d *.ttfconf
else
ttmkfdir . >fonts.scale
fi
mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings \
-e /usr/X11R6/lib/X11/fonts/encodings/large . &>/dev/null
chmod a+r fonts.scale fonts.dir
fi
ですから、普通は新しいフォントを適当なディレクトリにコピーし、xfs を
再起動するだけで(X の再起動も必要かも)、他に何もしないでもよいのでは
ないかと思います。池田さんの場合は、ご自分で mkfontdir などをなさった
ために Vine が必要としている内容の fonts.dir などができなかったのでは
ないでしょうか。もっとも、池田さんの場合、xfs にまかせておけば、本当に
十分かどうかはわかりませんけれど。
# 老婆心から付け加えておきます。私の経験というか記憶では、フォントに
# よっては(xorg.conf あたりの設定にもよるのでしょうが)、xfontsel で
# そのフォントを選ぶと、X がフリーズしてしまうことがありました。
# ほかのマシンから telnet で入って、shutdown することはできましたが、
# ローカルのマシンではまったくキーボードが利かなくなり、電源を切るより
# ありませんでした。xfontsel を使うときは、お気をつけあれ。
--
長南洋一