XSH2 と日本語

XSH2 の save コマンドですが、ドキュメント丸ごとを save するのはいいけど、サブツリーの保存(:S オプション)をすると、日本語が全部ユニコード文字参照に化けてしまう。中間ファイル用には問題ないかもしれないけど、目で確認するときは面倒。:e utf-8 とか指定してもダメ。文字列に保存する場合(:s オプション)も同様に化けるので MD5 を計算したりする時は注意。

回避方法としては、テンポラリのドキュメントを作ってそこにサブツリーを xcopy してからまるごと保存する。

$doc := open full.xml;
$sub := create root;
xcopy $doc/root/child[1] replace $sub/root;
save :f sub.xml $sub;
close $sub;

これで、full.xml の /root/child[1] 以下のサブツリーが切り取られ sub.xml に保存される。無用な DOM ドキュメントが溜まらないように close を忘れない。

ということで、XSH2 で「はてダラスプリッタ(hws.pl)」もどきを作った。しかしやっぱり XSH2 の起動は遅い。Celeron 600MHz なんて二世代以上前のマシンのせいもあるけど、起動に4秒ほどかかる。CGI にはとても使えないなぁ(使わないけど)。起動してからは特に重さは感じないんだけど。