[Top Page][Edit][Article][Edit History][All Pages][Recent Changes][->Japanese]

Note:HSP3モジュール作成ガイドライン

拡張子

HSPはテキストファイルであれば拡張子は特に問わないが、.hspと.asを推奨している。

推奨拡張子 推奨用途
.as global定数
globalマクロ
globalエクスポート関数の宣言文
モジュール本体
.hs ヘルプソース
.hsp スクリプト本体

標準モジュールとユーザー定義モジュール

HSPに標準でついてくるエクスポート関数の宣言文(user32.asなど)については.asで統一されている。 モジュールについては拡張子がまちまちである。 その原因はモジュールをブラックボックススクリプトの一部か、プログラマによって捕らえ方が異なるためである。

user32.asのようなエクスポート関数の宣言は.asファイルを覗いたとしても関数の実装までは見えない。 しかしユーザー定義命令のモジュールは実装が丸見えである。ブラックボックスではないためスクリプトの一部・サブルーチンの集まり、と捕らえ.hspの拡張子を当てはめるのである。

あるモジュールAはmoduleA.asとして提供されていて、別のモジュールBはmoduleB.hspとして提供されていると、拡張子まで間違えないように打ち込まなければならない。

テキストファイルであれば拡張子は問われないのなら、いっそのことモジュールファイル用の拡張子.mod相当を定義してもよさそうであるが。

改定拡張子 改定用途
.as global定数
globalマクロ
globalエクスポート関数の宣言文
.hs ヘルプソース
.hsp スクリプト本体
.mod モジュール本体

ヘルプファイルとドキュメンテーションコメント付モジュール

HDL1.20からドキュメンテーションコメント付モジュールがサポートされた。 これは要約するとモジュール本体にHSドキュメントを記述したファイルをHDLがヘルプファイルとして認識するというもの。 従来のようにモジュール本体とHSファイルを別々に生成する必要がないため、モジュールとヘルプの整合性が高まる。 ハイブリッドモジュールとでもいうべきか。

改定拡張子 改定用途
.as global定数
globalマクロ
globalエクスポート関数の宣言文
オールドモジュール本体(HSファイルと別個)
.hs ヘルプソース
.hsp スクリプト本体
.mod ハイブリッドモジュール本体(HSドキュメント内蔵)

ただし現状.modはスルーされる。

慣例

プラグイン等で提供される定義ファイルの多くはプラグイン名(略称)が用いられるので、 ユーザー定義モジュールの定義ファイルの多くは「mod_」+「モジュール名(略称)」というようにモジュールであることを明示している。

プラグイン例

obaq.as

モジュール明示例

mod_menu.as / mod_img.as

モジュール非明示例

d3m.hsp / sqlele.hsp

modプレフィクス 拡張子 分かりやすさ度 理由
mod_ .as 5 モジュールであることを明示し、なおかつブラックボックスとしている
mod_ .hsp 4 モジュールであることを明示している
.as 3 ブラックボックスとしている
.hsp 1

コメント

  • どうでしょう??