IMP Doc - ChenCMD/datapack-helper-plus-JP GitHub Wiki
IMP-Docは特殊なタイプのコメントで、mcfunctionの可読性を高め、データパックの記述を容易にします。
DHPが提供するIMP-Docサポートは、 Interoperable Module Protocol Documentation Formatを基づいています。 この機能はArcensoth氏よって提案されました。まずは仕様を確認してください。
次に、DHPでIMP-Docを使用する際に知っておくべきことを説明します
IMP-Docの説明の中で、MarkDown構文を使用することが可能です。
IMP-Doc内のほとんどのAnnotationは、DHPではまだ特別な意味を持ってません。徐々にこれらのサポートを提供していく予定です。
既に特別な意味を持つのは、@api, @public, @withinです。DHP内のリソースのアクセスを変更するために使用されます。詳細は、Access Modifierを参照してください。
IMP-Docによって提案されるAnottationのいくつかにはパラメーターが必要です。
例えばfunctionの全てのスコア入力をリスト化する@input score <name> <objective> [description]
DHPの実装では、Annotationの異なるパラメーターを分離するには、任意の数のスペースが必要です。
また、インデント(2つ以上のスペース)を入れることで改行することも可能です。
たとえば、次のコメントはすべて問題なく動作し、DHPにおいてはどれも同じ意味となります。
#> example:foo
# @input score $bar mypack.baz 1つ目のスコアの説明文
# @input score $bar mypack.qux 2つ目のスコアの説明文
#> example:foo
# @input
# score $bar mypack.baz 1つ目のスコアの説明文
# score $bar mypack.qux 2つ目のスコアの説明文
#> example:foo
# @input
# score $bar mypack.baz
# 1つ目のスコアの説明文
# score $bar mypack.qux
# 2つ目のスコアの説明文
#> example:foo
# @input score $bar
# mypack.baz
# 1つ目のスコアの説明文
# mypack.qux
# 2つ目のスコアの説明文
#> example:foo
# @input
# score
# $bar
# mypack.baz
# 1つ目のスコアの説明文
# mypack.qux
# 2つ目のスコアの説明文ファイル全体を記述するために、mcfunctionの最初の行にIMP-Docを書くだけでなく、
特定のコマンドの前にIMP-Docを置き、そのコマンドで定義/宣言されたリソースを記述する必要があります。
重要な違いはコメントの最初の行の#>文字の後にfunction IDを記述しないことです。
例として:
#>
# A bossbar that is for xxx.
# - Max: 100.
# - Value: should be the amount of xxx.
# @internal
bossbar add spgoding:foo ""
#> This tag is used by xxx.
#declare tag quxリソースを定義/宣言できるコマンド/コメントの一覧については、[#declareコメント] (#declareコメント) を参照してください。
IMP-Docの後のコマンドの前にインデント(2つ以上のスペース)を追加することで、単一のDocコメントを同時に複数の定義/宣言します。
例として:
#> A set of teams with colors.
team add example.red
team add example.blue
#>
# Score holders for xxx calculation.
# @within spgoding:calc/**
#declare score_holder a
#declare score_holder b
#declare score_holder cアクセス修飾子の注釈を使用してリソースの視覚的な範囲を制限する方法については、アクセス修飾子 を参照してください。
#参照
| Version | 説明 |
|---|---|
| 3.0.0 | 最初の導入 |