NDocを.NET2.0日本語環境で使う方法 1
一番良いのはNDoc日本語版のチームに動いて頂くことなのだが、フォーラムに投稿するも反応が無い。ので、自分のためにも、一通り日記に書いた方法のサマリを書いておく。
- NDocの最新版をダウンロードする
Jonas lagerblad氏が改版した.NET2.0対応版が、氏のBlogよりダウンロードできるBack to NDoc - for a short while
- 日本語コードページ環境上での文字化け対策を行う
以前の日記((続)NDoc2.0 hold?)で書いたが、この、最新のNDocは、ノーブレークスペースの為に多用している文字コード("&#160")が、日本語コードページ上では文字化けしてしまうため、なんらかの対策が必要である。
- 1. NDcocアプリケーション側で対応する
NDocはいろいろなフォーマットのドキュメントを生成するために内部でXMLを作成し、それをXSLTに変換するのだが、XSLTの変換後、出力する前に、問題の文字コードを変換してしまう方法だ。(NDoc日本語版はこの方法を採用している)
string html = stringWriter.ToString().Replace("\xA0", " "); [NDoc日本語版 v1.3.1-rev1 MsdnDocumenter.csより引用]
- 2. NDcocで用意されているXSLTで対応する
上で書いている通りNDocは様々なフォーマットに対応するためにXSLTを使用している。そのXSLTで問題のある文字コードの代替となる文字コード、具体的には"&#160"を"&#32"に変更してやることで文字化けを回避する方法だ。これは私の日記で採りあげている。
(更に)NDoc メンバ情報部分の文字化け
(続)NDoc メンバ情報部分の文字化けこの方法は最初の、アプリケーションで対応する方法と違い、コードページによりソースコードを変える必要が無いので良い方法だ。ソースコードをコードページ毎に管理するよりもXSLを管理した方が楽だろう。
以上が、現時点で.NET2.0 + 日本語環境でNDocを使うための処方だ。