Kaoriya版gvimでOsaka−等幅が使えないー その2・゜゜・(/□\*)・゜゜・

前回の続き
Kaoriya版gvimでOsaka−等幅が使えないー・゜゜・(/□\*)・゜゜・ - WANdaful Vim

id:thincaさんの助言を元に試行錯誤。

色々試してみてOsaka−等幅フォントが認識しなくなる問題が発生する状況が判明した。

問題が発生するのはencoding=utf-8に設定している場合。

Kaoriya版はデフォルトでencoding=cp932なので、guifontに入る値がSHIFT-JISになるようにすればフォント設定がうまくできる。
自分の場合、gvimrcはUTF-8で、winfont.vim(SHIFT-JIS)にguifont=Osaka−等幅を設定。

encoding=utf-8の場合でも、編集メニューからフォント設定でOsaka−等幅フォントに変更する分にはうまくいく。
その場合、文字化けして表示される。

:set guifont?
guifont=Osaka<81>|<93><99><95><9d>:h11:cSHIFTJIS

化けている値からSHIFT-JISで格納すべきなのはわかったわ。
※ "|"は、ASCIIコードで<7c>
※ フォント名に含まれる"ー"はSHIFT-JISのダメ文字ってやつみたい

encoding=utf-8でwinfont.vimにguifont=Osaka−等幅を設定しておくと起動時に以下のような内容のエラーダイアログが出る。

E492:エディタのコマンドではありません
<93><99><95><9d>:h11:cSHIFTJIS

そして、

guifont=Osaka<81>

となる。
"|"の箇所で値が切れている。

うーむ、わからん( ´Д⊂ヽ

強引だけど、一応16進数でSHIFT-JIS指定して対処可能(; ̄ー ̄A

  " using_font="Osaka−等幅"のSHIFT-JIS
  let s:using_font= 'Osaka' . "\x81\x7c\x93\x99\x95\x9d"
  let &guifont=s:using_font . ':h11:cSHIFTJIS'
  unlet s:using_font

でも、

:set guifont?

の表示が文字化けるのが気に入らんなぁ(。 ̄x ̄。)

guifont=Osaka<81>|<93><99><95><9d>:h11:cSHIFTJIS