松尾です。 > 修正ありがとうございます。 > すこし記述を移動し、HTML のネストを修正しました。 いい感じです。ありがとうございます。 コマンドのマニュアルをみていて気が付いた点があります。 (まだコードを見たりや動作をチェックしたりして裏を取ったりしていません) - strcode https://ttssh2.osdn.jp/manual/5/ja/macro/command/str2code.html 従来はASCII コードですが UTF-8 を正しく返そうとすると 文字の区切りをチェックする必要がありそうです。 (UTF-32に変換して最後の1文字を返す,でokか?) 漢字の時はどうなっていたのかな? - strinsert(他のインデックスを引数or戻り値に持つコマンドも) https://ttssh2.osdn.jp/manual/5/ja/macro/command/strinsert.html https://ttssh2.osdn.jp/manual/5/ja/macro/command/strlen.html コマンドのindexや長さの単位が文字なら UTF-8 の文字区切り(8bit目==0)や文字数を チェックする必要がありそうです。 バイトなら今のままでokです。 strlenがバイト単位とあるので全部バイト単位ではないかと思います。 でもindexを文字の間に指定すると文字が壊れるという注意が必要そうです。 (多分壊れるのはTera Term 4も同じかと思います) バイト単位ではなく文字単位に変更したほうがよさそうな気もしますが、 どれぐらい修正が必要になってくるのか・・。 マクロの修正は5.0の先で検討しましょうか migrate_to_5に次のような内容を追記するのはどうでしょうか? Tera Term4と同じなら不要かな? 悩ましいです。 --- マクロ内での文字列の扱いは次のようになっています。 - 文字の長さ、indexはバイト単位です(Tera Term 4と同じ) - 1文字を表す複数のバイト列を別のバイト列に変更する操作を行うと文字が壊れます(Tera Term 4と同じ) ---