読者です 読者をやめる 読者になる 読者になる

blechmusikの日記

キー・カスタマイズ・ソフトウェア "DvorakJ" の覚え書きをはじめとして様々なことを書いています。

AutoHotkey_L のスクリプトの文字コードを utf-8 にするときは BOM を必ずつけるようになった

AutoHotkey_L の最新版<1.1.08.00 - July 14, 2012>では、表題の通り、スクリプトの文字コードutf-8 にするときは BOM をつけなくてはならなくなった。

AutoHotkey_LのスクリプトをEmacsで編集するならば、coding:utf-8-dos ではなくて coding:utf-8-with-signature-dos と記述することになる。
具体的に例を示すことにしよう。メッセージダイアログを表示するutf-8-dos版のスクリプトを以下のように作成する。

;; -*-mode: ahk; coding:utf-8-dos-*-"
msgbox, , テスト1, テスト2

これを実行すると次のようになる。

メッセージダイアログのタイトル部分とメッセージ表示の部分の双方で文字化けが生じている。
つぎに utf-8-dos という部分を utf-8-with-signature-dos と書き換えてからスクリプトを実行する。

;; -*-mode: ahk; coding:utf-8-with-signature-dos-*-"
msgbox, , テスト1, テスト2


今度はメッセージが文字化けせずに正常に表示された。
AutoHotkey_Lを今後使用する人は、上記の BOM の設定を忘れないように日々注意すべきである。