last updated:2023/12/27
秀丸エディタの内部キーワード「code」を使い、ビット演算を使って2バイト文字かどうかを判断できます。
// サンプルマクロ(ここから)
#Code = code;
if( #Code == 0 )
{ // フリーカーソルで改行以降
message "改行以降";
}
else if( #Code == 0x09 )
{ // タブ
message "タブ";
}
else if( #Code == 0x0d )
{ // 改行
message "改行";
}
else if( #Code == eof )
{ // EOF
message "EOF";
}
else if( ( code & 0xff00 ) != 0 )
{ // 2バイト文字
message "2バイト文字";
}
else
{
message "1バイト文字";
}
endmacro;
// サンプルマクロ(ここまで)
文字列変数の中の文字列をバイト単位ではなく文字単位で扱いたい場合は、 [HMM0073A]●文字列をバイト単位ではなく文字単位で扱うを参照して下さい。
code
は基本的に、Shift_JISを返します。unicodeにあり、Shift_JISにない文字の場合は、code
は"0"を返します。