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 の設定を忘れないように日々注意すべきである。