ここでは、HmCustomStringEncoder
の主な利用方法を解説していきます。
まずは、感覚を理解するため、デフォルトの設定でとにもかくにも利用してみましょう。
HmCustomStringEncorder.macのデフォルトの設定では「932」、
即ち、cp932(sjis)への「変換調査」となります。
㊿という文字列はsjisで表現可能なのか?
と秀丸上で文字列があったとします。
ファイルに保存する必要はありません。
実行すると、
というように、なります。
㊿のところが[U+32bf]となっています。(しかも赤くなっています)
「sjis(=コードページ932)」への変換調査でしたので、
「該当部分は、何も手を打たなければsjisへは変換出来ない、
そして変換出来なかった文字のUnicodeとしてのコード番号は「32bf」であることがわかります」
HmCustomStringEncorder.macの
PushFallBackPairs: { call PushFallBackPair "㉑", "(21)"; call PushFallBackPair "\uD867\uDE3D", "ほっけ"; // 魚偏に花と書いてホッケ call PushFallBackPair "♬", "♪"; // 音符を普通の♪に call PushFallBackPair "🎶", "♪"; // 音符を普通の♪に call PushFallBackPair "\u2049", "!?"; return; }
の先頭に、以下のように1行付け加えてみましょう。
PushFallBackPairs: { call PushFallBackPair "㊿", "(50)"; call PushFallBackPair "㉑", "(21)"; call PushFallBackPair "\uD867\uDE3D", "ほっけ"; // 魚偏に花と書いてホッケ call PushFallBackPair "♬", "♪"; // 音符を普通の♪に call PushFallBackPair "🎶", "♪"; // 音符を普通の♪に call PushFallBackPair "\u2049", "!?"; return; }
そして、
の画面をアクティブにして、再度 HmCustomStringEncorder.mac を実行してみると、
となり、今度は㊿は(50)へと置き換えられました。
表題にあるような動作となります。
逆に言えば、エラーが起きなければ、ユーザー定義がそこにあったとしても、変換は起きないのです。
このことも確認してみましょう。
HmCustomStringEncorder.macの
PushFallBackPairs: { call PushFallBackPair "可", "不可"; call PushFallBackPair "㊿", "(50)"; call PushFallBackPair "㉑", "(21)"; call PushFallBackPair "\uD867\uDE3D", "ほっけ"; // 魚偏に花と書いてホッケ call PushFallBackPair "♬", "♪"; // 音符を普通の♪に call PushFallBackPair "🎶", "♪"; // 音符を普通の♪に call PushFallBackPair "\u2049", "!?"; return; }
と、書き換え、再度
の画面をアクティブにして、再度 HmCustomStringEncorder.mac を実行してみましょう。
結果に変化はありません。
「表現不可能なのか?」などとなったりしません。
「可」の文字をsjisに変換したとしても文字が潰れたりしないからです。
赤い場所の位置が、遠く離れているなどで、目視しにくい場合は、
「前の結果」ボタンや「次の結果」ボタンを押すことで
どんどん移動することが出来ます。