JavaScriptのドキュメント生成ツールと言えば、JSDoc Toolkitが有名です。
でも何か、物 足 り な い。
そこでJSDogです。
JSDogは、JSDocの書き方で「犬」のドキュメントが生成されます。
インストールはnpmで。
$ sudo npm install -g jsdog
書き方はこんな感じです。
/** ++*[npmtools.js]*++ - npmのpackage.jsonを読み込むプログラム * * @version 0.0.1 * @author Tomoyuki Inoue */ var fs = require('fs'); /** * 指定したパスからpackage.jsonファイルを探索します。 * @method readPackageJson * @param {string} path 読み込みを開始するパスを指定します。 * @param {function} cb 読み込み完了かエラー時のコールバックを指定します。 */ var readPackageJson = function(path, cb){ // パスの読み込み開始 var path = path + "/node_modules"; fs.readdir(path, function(err, dirs){ if(err) cb(err, null); // dirsには指定したパスのファイル名・ディレクトリ名の一覧が入っている for(var i = 0; i < dirs.length; i++){ var dir = dirs[i]; // 頭文字が.の場合読み込まない if(dir.charAt(0) === '.') continue; // package.jsonのパスを指定 var jsonPath = path + "/" + dir + "/package.json"; // package.jsonを読み込み開始 fs.readFile(jsonPath, function(err, data){ if(err) cb(err, null); // dataには読み込んだBufferが入っている // toString('utf8')で文字列にする var jsonStr = data.toString('utf8'); // JSONをパースしてコールバック cb(null, JSON.parse(jsonStr)); }); } }); }; readPackageJson(".", function(err, json){ if(err) throw err; console.log(json.name +"@" + json.version ); });
使い方はコマンドラインで。
$ jsdog -s npmtools.js > index.html
見事に文字化けします。
テンプレートの最初の数行を修正します。
テンプレートはJadeで書かれています。ファイルは、/usr/local/lib/node_modules/jsdog/default.jade あたりにあると思います。
修正前
!!! 5 html(lang="en") head title= pageTitle
修正後(lang属性削除、メタcharset追加)
!!! 5 html head meta(charset="utf-8") title= pageTitle
もう一度実行すると文字化けが解消。
まだまだ不安定ですが面白いですね。
テンプレートもJade形式なので簡単です。ちょっと修正すると・・・
な事もできます。
0 件のコメント:
コメントを投稿