1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Sanscastleでライブラリのドキュメントじゃないヘルプファイルを作る

Posted at

Sandcastle Help File Builder の Visual Studio 拡張を使ってヘルプファイルを作るメモ。

準備

  1. 最新の Sandcastle Help File Builder をインストールします。
  2. .NET 4.5 を使っている場合は、Sandcastleの「MRefBuilder」をソースコードからビルドし直すことをおすすめします。

プロジェクト作成

今回は Visual Studio からプロジェクトを作成してみました。
新しいプロジェクト
アカデミック版買ってよかった。

作成したら、もちろん空のソリューションが出来上がります。
ソリューション
wktkしますね!!!!!

プロジェクト設定

プロジェクトを設定していきます。

まず、HelpFileタブで、タイトル・見た目などを設定します。
HelpFile
Englishになってるって?はい、日本語入れてないので…。ググれば結構落ちてます。

次に、大事なポイント。 Plug-Ins で「Additional Content Only」を追加しておきます。でないと、元になるソースコード or アセンブリがないよ!と怒られます。
Plug-Ins

ページを作る

やっと記事が書けます!お疲れ様でした!

まず、記事の土台となる Content Layout ファイルを追加します。
プロジェクトを右クリックして、[追加]→[新しい項目]、Content Layout を選びます。
Content Layout を選択
Content Layout の役割がよくわかっていないので、そのうち勉強したいです。

次に、ページを作成します。
Content Layout ファイルを開いて左上のアイコンをクリックします。
左上のアイコン

ファイルの種類はいろいろありますが、よくわからないときは Conceptual を選んでおけば間違いないと思います。多分。
Conceptual を選択

記事はMAMLとかいうXMLで書いていきます。
MAML
MAMLについては、Sandcastleにやさしいドキュメントがついてます。英語が読めない僕にも辛うじて理解できるようなものです。タグくらいは押さえられます。

ところで、この拡張子.amlからなる、MAMLファイルの中にタイトルを書く部分がないですね。というわけで、タイトルは Content Layout ファイルの方に書いていきます。

Content Layout ファイルで、ページを選択するとこんな画面になると思います。
プロパティ
ここで、 Title に入力した文字がタイトルになります。他は忘れました。Index Keywords を設定すると chm を見るときにキーワードタブに表示されるようになります。

これを繰り返せば、大量のページを生成できます。

ビルド

ビルドは、C#とかVBとかと同じで、Visual Studio から普通に行えます。ただ、結構時間がかかります。ライブラリのヘルプとかなら、こんな技が使えます。

完成するとこんな感じに!
完成
(あれ…文字化けしてる…。日本語化のやついれてないからかな…?)

というわけで、Sandcastle はライブラリのドキュメント作成以外でも使える!ということを証明したかっただけなんです。これに関しては日本語情報が少ないので、ドヤ顔できる。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?