Titaniumのドキュメントをダウンロードする方法

Titaniumのドキュメントは以下にあるのだけど、オフラインでは確認できないのが痛い。と思って検索してみたら、githubから取得できるみたいな事が書いてあるのを見つけた。
Appcelerator Platform - Appcelerator Docs

という事で、ローカルで(オフラインで)見れるようにしてみたので、その手順をまとめる。
まずはリポジトリをクローンする。時間がかかるが茶でも飲んで待つべし。

$ git clone https://github.com/appcelerator/titanium_mobile.git
$ cd titanium_mobile/

指定バージョンをチェックアウトする。

$ git checkout 1_8_2_GA
$ cd apidoc/

他のバージョンが欲しければ

$ git tag -l

で確認してください。

次にドキュメントを生成するのだけど、Pythonのモジュールが無いとか言われたので、入っていなければ以下を実行する。

$ sudo easy_install pyyaml
$ sudo easy_install Pygments

Macの場合、rootにならないとダメだと思います。

$ su -
# easy_install pyyaml
# easy_install Pygments

後は

$ ./docgen.py

すれば/titanium_mobile/dist/apidocに出来上がるのだけど、このままだとCSSが当たってなかったり(というかHTMLヘッダが無い)して、見づらいので、ちょっとだけテンプレートを修正する。

/titanium_mobile/apidoc/templates/html/header.html

<!doctype html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
               <title>Titanium Mobile SDK ${config.version}</title>
               <link rel="stylesheet" type="text/css" href="./style.css" media=
    </head>
    <body>
<%include file="page_nav.html"/>

....
 
 <%include file="examples.html"/>
    </body>
</html>

といった感じで上下で挟む。CSSは何でも良いだけど、元サイトから少しだけ借用したCSSを置いておきます。
/titanium_mobile/dist/apidoc/style.css

h1{text-shadow:2px 2px 2px #bbb;}
h3{margin-top:20px;}
.namespace_type{color:#aaa;font-size:11px;position:relative;top:-20px;}
.since{color:#222;font-size:11px;right:10px;top:30px;}
table{border:1px solid #999;margin-top:10px;width:99%;}
table.event{border:1px solid #ccc;}
table.event td{background-color:#eff;}
table.event td.name{font-weight:bold;width:100px;}
table td{font-size: 10pt}
table td.type{width:20px;}
table tr:last-child td{border-bottom:none !important;}
table td.name{font-weight:bold;}
table th{font-size: 10pt;background-color:#aaa;font-weight:bold;padding:4px;text-align:left;}

h1 {padding-top: 15px;}
.page-nav {padding-bottom: 10px;}
.page-nav ul {margin-left: 0; padding-left: 0px;}
.page-nav li { float: left; list-style-type: none; margin-left: 10px;}
.page-nav li:first-child {margin-left:0px;}
.page-nav li:after {content: " | "}
.page-nav li:last-child:after {content: ""}

pre {
	font-size: 13px;
	padding-top: 4px !important;
	padding-bottom: 4px !important;
	padding-left: 6px !important;
	padding-right: 6px !important;
	background: white;
	border: 1px solid #999;
	font-family: "Monaco","courier",courier;
	margin-top: 15px !important;
	margin-bottom: 15px !important;
	color: #900;
}

/titanium_mobile/dist/apidoc/index.html
に目次ができてる状態になります。

気が向いたらCSSを修正します。