vine-users ML アーカイブ



[vine-users:072214] Re: VNC 経 由での日本語入力不具合

  • From: 長南洋一 <cyoichi@xxxxxxxxxxxxxxx>
  • Subject: [vine-users:072214] Re: VNC 経 由での日本語入力不具合
  • Date: Thu, 23 Jun 2005 21:23:08 +0900 (JST)
長南です。

興味が出てきたので、自分でも vnc-server-4.0-0.0.beta4.11vl1 を
入れてみました。

まとはらさんのメールより [vine-users:072211]
> 
> 以下が、~/.vnc/xstartup を元に戻した(標準)時。
> > unix/:7100,/home/mk/.fonts

このパスは ~/.vnc/xstartup で指定なさったのですか。

当方では、xstartup に xset fp+ をまったく指定しなかったとき、
vncviewer 上で xset -q を実行すると、Font Path が次のように
なりました。一行だと見づらいので、適当に行変えしています。

  /usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Speedo/,
  /usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/75dpi/,
  /usr/X11R6/lib/X11/fonts/100dpi/

このパスはいったいどこで設定されているのでしょう。調べてみたところ、
どうやら /usr/bin/Xvnc 中に書き込まれているようです(ハードコーディング
と言うんですか)。strings /usr/bin/Xvnc | less でお確かめください。

> 色々試したのですが、kinput2 でcanna を使う場合は~/.vnc/xstartup に
> > xset fp+ /usr/X11R6/lib/X11/fonts/japanese
> だけを追加することで文字化けせず使えるようになるようです。

/usr/X11R6/lib/X11/app-defaults/Kinput2 によると、12 ピクセルサイズの
等幅日本語フォントが必要だということのようです。

> このときのFontPath は以下のようになりました。
> > /usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Speedo/,
> > /usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/75dpi/,
> > /usr/X11R6/lib/X11/fonts/100dpi/,/usr/X11R6/lib/X11/fonts/japanese,
> > /home/mk/.fonts

このフォントパスだと、TrueType フォントが使えないのではないでしょうか。
もっとも、/home/mk/.fonts に TrueType フォントがあれば、話は別ですけれど。

と思って、xset +fp /usr/X11R6/lib/X11/fonts/TrueType を xstartup に
書き込んでみたら、~/.vnc/hoge.hogenet:1.log にこんなエラーが出てしまい
ました。vncviewer で Emacs が動きません。

  FreeType: couldn't open face /usr/X11R6/lib/X11/fonts/TrueType/eb=y:
  eo=m:bw=0.5:kochi-gothic-subst.ttf: 1
  FreeType: couldn't open face /usr/X11R6/lib/X11/fonts/TrueType/eb=y:
  eo=m:bw=0.5:kochi-gothic-subst.ttf: 1
  FreeType: couldn't open face /usr/X11R6/lib/X11/fonts/TrueType/eb=y:
  eo=m:bw=0.5:kochi-gothic-subst.ttf: 1

TrueType フォントを利用したかったら、xset +fp "unix/:7100" とやって
おくべきなようです。xfs 経由でも TrueType フォントを処理していることが
前提ですけれど。もちろん、サーバ側で xfs が動いていて。

ついでに言うと、/etc/X11/fs/config の catalogue に /usr/X11R6/lib/X11/
fonts/japanese が指定してある場合、xstartup には xset +fp "unix/:7100"
の一行だけ書き込めば十分な気がします。でも、このメールの最初に引用した
文章からすると、まとはらさんのところでは、それではうまく行かなかったん
ですね。どうしてだろう。

# fp+ と +fp の違いは man xset で。
# どちらを使った方がよいのかは微妙ですけれど。

-- 
長南洋一