|
いつもお世話になっております、天翔記.jpです。
■概要
.macのファイルの拡張子が保存された際、utf8/utf16なら、
「BOM」を付けてなければ警告をだしてはどうでしょう。
■経緯等
秀丸マクロは現在、ファイルの文字コードとして、
・SJIS
・utf8(BOM必須)
・utf16(BOM必須)
を受け付けるのですが、
このうちutf系が、たちが悪いところがありまして、
"BOMが付いていなくとも、なんとなくマクロが実行されて、
あげく大抵バグるため、マクロがバグってるものと勘違いする"
ということがあります。
個人で対策をするなら、自動起動の「保存直前と直後」あたりで、
拡張子や文字コードを見ながら、BOMを自動で付与すればいいのですが、
いっそうのこと、秀丸側でセーフティーを張った方がよいと思います。
■対策案
ユーザーがファイルを保存しようとした時、
以下のような条件が整っていれば、
警告ダイアログを出し、
「はい」が選択されればBOMを付与する。
・.macという拡張子
・.macと結び付けられている「ファイルタイプ別の設定」は「秀丸マクロ」
・テキストファイル(かつテキストモード)
・文字コードがutf8もしくはutf16le
・BOMが無い
以上の条件が整った時、
「・・・(秀丸マクロとして正しく動作させるには云々の文言)
BOMを付けますか? [はい][いいえ]」
[はい]ならBOMを付与して、保存。
以上となります。ご検討ください。
|
|