メニューボタン
サポートチーム便り2022.01.26

シングルバイトの円記号がダブルバイトの・(中点)に文字化けするなんてありえますか? - ACSと文字フォントの不思議な挙動 -

Question

先日、社内で使っていたIBM i Access Client Solutions(ACS)をバージョンアップしました。

殆どのユーザーは問題なかったのですが、特定のPCでだけ¥記号が「・」に文字化けしてしまいます。

e-bellnet に"ACS 1.1.8.4 以降で円記号の入力が正しく認識されない"の記事が紹介されていたので修正したところ状況は更に悪くなったように感じます。

参考:
https://www.e-bellnet.com/category/technology/2104/2104-02.html

実際入力しているキーは半角入力モードのシングルバイト円記号なのに、コマンドライン上にはダブルバイトの「・」で表示されるんです。

そんなことってありえますか?

Answer

ACSのフォントが"HGゴシックM"になっていないでしょうか。

ACSの編集→設定→外観→フォント、より設定を確認して下さい。

フォルダ

ACSで¥が「・」になってしまう原因は幾つか考えられます。

例えば入力妥当性検査をONにしている場合に、MicrosoftIMEの環境依存文字の¥を入力すると「・」になってしまいます。これはエミュレーターとしての正しい機能ですね。

フォルダ

他にも上記であげたようなフォントは、テーブル上にバックスラッシュが存在しないため、キーボードマップで円記号にバックスラッシュを割り当てると、¥とバックスラッシュを上手く紐付けられなくて、正規の半角の\を入力したとしても文字化けしてしまう事が確認できています。

スクリーンショット

因みに、上記例で入力している文字は半角の円記号ですが、文字化けしている「・」はダブルバイトで表現されています。

入力文字妥当性検査で「・」になるのはDBCS入力時という先入観があると気づきにくいですが、フォントの文字テーブルに無い文字をキーボードマップで指定した場合はすべてダブルバイトの「・」で表現されます。

半角を打っているのにダブルバイトの「・」で化けてしまう場合には、キーボードマップと指定しているフォントをそれぞれ見直してください。

ACS利用にあたり、各ユーザーに推奨しているフォントとしては「monoscaped」になります。

ネットで検索してもちょこちょこHGゴシックMでは¥が使えない、と見受けられますのでフォントによっては当たり前のように使えている¥が使えない。

そんなこともあると覚えておくといいかもしれません。

by 大熊猫橋

あわせて読みたい記事

PAGE TOP