最終更新日 2024-06-21

Unicode(utf16)を取り扱う

概要

秀丸エディタのデータや、外部データがutf16の範囲の文字列であっても、
秀丸マクロやIronPythonは問題なく取り扱うことが出来ますが、
「秀丸マクロ内」及び「IronPython」内に、cp932(sjis)の範囲を超える文字を直接記述する際には、
「秀丸マクロ」や「hmPy」を「utf16のモード」で、動作させるのが良いでしょう。

UTF16のマクロファイル

これまで秀丸マクロをcp932(ShiftJIS)にて保存してきましたが、
Unicodeを取り扱う際には、秀丸マクロをUnicodeで保存
します。
秀丸マクロは通常「cp932(sjis)」ですが、このようにUnicodeの文字列を直接取り扱えるよう「unicode(utf16)」でも動作するようになっています。

PICTURE

cp932での記載との違いは以下の3つとなります。

.pyファイルを外部に出す場合には、utf-16のcoding指定

「DoFile」を使うなど、.pyファイルを外部に出す際は、マクロをcp932で保存していた際には「#coding:cp932」を指定していましたが、
マクロをUnicodeで保存する際には.py側は「coding:utf-16」を指定する必要があります。

例えば、以下のような「myunicode.py」を用意し、Unicode(utf16)で保存します。

マクロ側で以下のように呼び出す形となります。
マクロもUnicode(utf16)で保存するのを忘れないようにしてください。