IME変換中フォント対応パッチとダメ文字対応パッチ

5mingame2さんから,フォント設定を日本語とそれ以外で分けて設定した場合,IME変換時のフォントが MS UI ゴシックになってしまう事象をコメントいただきました.その対応策として,NTEmacsスレ2>>919さんよりパッチを提供いただきました.NTEmacsスレ2>>919さん,ありがとうございます.

IME変換時のフォントは,default-frame-alistの ime-fontに設定します.設定内容のサンプルは以下のとおりです.



(set-frame-font "Bitstream Vera Sans Mono-9")

(set-fontset-font (frame-parameter nil 'font)
'japanese-jisx0208
(font-spec :family "Migu 1M" :size 14))

(setq default-frame-alist
(append '((ime-font . "Migu 1M-10.5"))
default-frame-alist))



上記とは別に,NTEmacsスレ3>>55さんがダメ文字対応のパッチを公開していたので,こちらも取り込ませていただきました.なお,元ネタはNTEmacs23.2 Shift_JISパッチ 日々の反省1とのことです.



今回のパッチは,リリースされたばかりの 23.4と,23.3b,24.0.93の 3種類を用意しました.バイナリは以下の動作確認を行っています.

  • IME変換中のフォントが指定フォントで表示されるか?
  • C-gを連打してプロセスダウンしないか?
  • 画像ファイル(gif,jpg,png,xpm)が表示されるか?
  • SVGファイルが表示されるか?(24.0.93のみ)
  • フォルダ命にダメ文字を含んだフォルダに対し diredで表示できるか?

emacs-23.4

ビルド時のオプションは以下のとおりです.



# ./configure.bat
--no-debug --with-gcc --enable-w32-ime
--cflags -O2
--cflags -fno-omit-frame-pointer
--cflags -funsigned-char
--cflags -mthreads
--cflags -pipe
--cflags -DRECONVERSION
--cflags -DIME_UNICODE
--cflags -IC:\/gnupack_devel-x.xx/app/mingw/include
--ldflags -LC:\/gnupack_devel-x.xx/app/mingw/lib

# time mingw32-make bootstrap

# time mingw32-make install INSTALL_DIR=/c/emacs-23.4-20120205


emacs-23.3b

ビルド時のオプションは以下のとおりです.



# ./configure.bat
--no-debug --with-gcc --enable-w32-ime
--cflags -O2
--cflags -fno-omit-frame-pointer
--cflags -funsigned-char
--cflags -mthreads
--cflags -pipe
--cflags -DRECONVERSION
--cflags -DIME_UNICODE
--cflags -IC:\/gnupack_devel-x.xx/app/mingw/include
--ldflags -LC:\/gnupack_devel-x.xx/app/mingw/lib

# time mingw32-make bootstrap

# time mingw32-make install INSTALL_DIR=/c/emacs-23.3b-20120205


emacs-24.0.93

ビルド時のオプションは以下のとおりです.



# ./configure.bat
--no-debug --with-gcc --enable-w32-ime --with-svg
--cflags -O2
--cflags -fno-omit-frame-pointer
--cflags -funsigned-char
--cflags -mthreads
--cflags -pipe
--cflags -DRECONVERSION
--cflags -DIME_UNICODE
--cflags -IC:\/gnupack_devel-x.xx/app/libs/gnome-binaries-win32/include
--ldflags -LC:\/gnupack_devel-x.xx/app/libs/gnome-binaries-win32/lib
--cflags -IC:\/gnupack_devel-x.xx/app/libs/gnutls4win/include
--ldflags -LC:\/gnupack_devel-x.xx/app/libs/gnutls4win/lib
--cflags -IC:\/gnupack_devel-x.xx/app/libs/gnuwin32/include
--ldflags -LC:\/gnupack_devel-x.xx/app/libs/gnuwin32/lib
--cflags -IC:\/gnupack_devel-x.xx/app/libs/libxpm/include
--ldflags -LC:\/gnupack_devel-x.xx/app/libs/libxpm/lib

# time mingw32-make bootstrap

# time mingw32-make install INSTALL_DIR=/c/emacs-24.0.93-20120205