2007-04-03

λ Sandcastle 日本語化

色々やっているうちに見つけたページ。March 2007 Sandcastle CTP ベースでいこうと思ってるので、今のところこの日本語化版は実際には使っていない。

前回の「指定されたコード ページに変換できません」の件は、 C:\Program Files\Sandcastle\ProductionTransforms\ にある ReflectionToChmIndex.xsl, ReflectionToChmProject.xsl の2ファイルの中で

<xsl:output method="text" encoding="iso-8859-1" />

と出力エンコーディングを Latin1 に指定してあったから。

この部分を encoding="UTF-8" に変更したら、一応エラーは出なくなったが、やはり出力される TOC が化ける。 次に encoding="CP932" に変更したら失敗、encoding="Shift_JIS" にしてもまだダメ。(encoding="Shift_JIS" にすると、XslTransform の結果が Shift_JIS で出力されるところまでは確認)

HTML Helpの作成方法(応用編)ヘルプのローカライズより、hhp ファイルの Language のところも変更が必要。 ReflectionToChmProject.xsl 内に以下の部分があるので、 0x409 Japanese に書き換える。

<xsl:text>Language=0x409 English (United Status)&#x0a;</xsl:text>

これで無事出力されるようになった。

しかし XSL は遅い。XML でプログラムちっくな挙動を記述するのはいけてないと思う。

あと、C#コードに埋め込んだ summary などのXMLドキュメント部分が入ってない。どうなっとるんだ。

[]