ドキュメント定義の概要

TESのモジュールは、「uotes-module-」から始まるnpmのモジュールとなっています。
モジュールは以下のような構造で記述します。

uotesDocument.template.js
'use strict';

// ドキュメントオブジェクト作成
var doc =  {
	indexes: {},
	tags: {}
};

// インデックスオブジェクト作成
// doc.indexes.xxxxxx = {
// 	name: {default: "タグのカテゴリを記述"},
// 	tags: []
// };

// タグ追加
// doc.indexes.message.tags.push("message_h");

// 以下、タグドキュメント設定
// doc.tags["message_h"] = {
// 	name: {default: "タグ名を記述"},
// 	format: "記述例を記述",
// 	description: {
// 		default: [
// 			"タグの説明を記述"
// 		]
// 	},
// 	params: {
// 		actor: {
// 			remark: { default: "パラメータ名" },
// 			defaultValue: "デフォルト名"
// 		},
// 	},
// 	seeRef: [
// 		"関連項目"
// 	]
// };

// 以下、リンク関数ドキュメント定義
//doc.linkFuncs["rpgmv-map"] = {
// 	name: {default: "マップイベント"},
// 	description: {
// 		default: [
// 			"マップデータ(MapXXX.json)に対してリンク処理を行います。"
// 		]
// 	},
// 	params: {
// 		id: {default: "マップイベントのIDを指定します。"},
// 		page: {default: "イベントのページ番号(0からスタート)を指定します。"}
// 	}
//};

module.exports = doc;

以上のようなドキュメント定義をドキュメントジェネレータへ読み込ませることで、ドキュメントの生成を行います。

インデックスオブジェクト

ドキュメントの目次情報にあたる設定です。
インデックスオブジェクトは、ドキュメント定義のindexesにカテゴリ名をフィールドとして宣言を行います。

// インデックスオブジェクト作成
doc.indexes.message = {
	name: {default: "メッセージ"},
	tags: []
};

インデックスオブジェクトのnameフィールドには、カテゴリ名のロケールごとの表示名を設定します。
オブジェクトのフィールド名はロケールのコード(ja_JP、en_US等)となり、defaultがデフォルトロケールとなります。

// タグ追加
doc.indexes.message.tags.push("message_h");

インデックスオブジェクトのtagsには、カテゴリが属するタグ名を追加していきます。
タグ名はインデックスオブジェクトとタグドキュメント双方に登録する必要があります。

タグドキュメント

タグのドキュメント本体はドキュメントオブジェクトのtagsフィールドにタグ名のフィールドとして宣言を行います。
タグドキュメントの各フィールドにはタグの説明文を記述します。

// タグドキュメント設定
doc.tags["message_h"] = {
	name: {default: "文章の表示(ヘッダ)"},
	format: "@message_h actor=string index=numeric back=list pos=list",
	description: {
		default: [
			"メッセージウィンドウの詳細を設定します。  ",
			"このタグは省略可能です。省略した場合、すべて下表の省略時が指定されます。  ",
			"また、このタグはメッセージが4行表示された時点、または他のタグを使用した場合に初期化されます。  ",
			"省略時以外を連続して使いたい場合、各メッセージの先頭で毎回このタグを使用してください。"
		]
	},
	params: {
		actor: {
			remark: { default: "顔グラフィック名" },
			defaultValue: "\"\""
		},

         :

	},
	seeRef: [
		"message"
	]
};

説明文は基本的にマークダウンで記述を行い、文字列、または文字列の配列で行います。
文字列の配列で記述した場合、配列内の文字列は一行分文字列として扱われ、改行コードで結合されて出力されます。
また、ロケールによって内容の異なる箇所はオブジェクトのフィールド名がロケールのコード(ja_JP、en_US等)となり、defaultがデフォルトロケールとなります。

タグドキュメントには以下の項目を設定することができます。

default: [
	"「type」の値によって指定が変わります。  ",
	"表1を参照してください。<sub id=\"1_ret\">[1](#1)</sub>"
]

リンク関数ドキュメント

リンク関数のドキュメントはドキュメントオブジェクトのlinkFuncsフィールドにリンク関数名のフィールドとして宣言を行います。
リンク関数ドキュメントの各フィールドにはリンク関数の説明文を記述します。

doc.linkFuncs["rpgmv-map"] = {
	name: {default: "マップイベント"},
	description: {
		default: [
			"マップデータ(MapXXX.json)に対してリンク処理を行います。"
		]
	},
	params: {
		id: {default: "マップイベントのIDを指定します。"},
		page: {default: "イベントのページ番号(0からスタート)を指定します。"}
	}
};

説明文は基本的にマークダウンで記述を行い、文字列、または文字列の配列で行います。
文字列の配列で記述した場合、配列内の文字列は一行分文字列として扱われ、改行コードで結合されて出力されます。
また、ロケールによって内容の異なる箇所はオブジェクトのフィールド名がロケールのコード(ja_JP、en_US等)となり、defaultがデフォルトロケールとなります。

リンク関数ドキュメントには以下の項目を設定することができます。