ディスカッション カテゴリ フォームの YAML 構文について
YAML フォーム定義ファイルをリポジトリの /.github/DISCUSSION_TEMPLATE/
フォルダーに追加することで、カスタム ディスカッション カテゴリ フォームを作成できます。 YAML を初めて使用する場合は、「Learn YAML in Y minutes」 (YAML を Y 分で学習する) を参照してください。
名前は、いずれかのディスカッション カテゴリのスラッグに対応している必要があります。 たとえば、"Announcements" カテゴリのテンプレートは、.github/DISCUSSION_TEMPLATE/announcements.yml
にする必要があります。
フィールドごとに、入力の種類、検証、および既定のラベルを定義できます。
コミュニティ メンバーがディスカッション フォームに入力すると、それぞれの入力に対する回答が Markdown に変換され、ディスカッションの本文に追加されます。 コミュニティ メンバーは、ディスカッション フォームで作成されたディスカッションを編集でき、他のユーザーは、他の方法で作成されたディスカッションのようにディスカッションとやり取りできます。
この YAML 構成ファイルの例では、一般的なディスカッション カテゴリ フォームを定義します。
title: "[General] " labels: ["General Introduction"] body: - type: markdown attributes: value: | This is text that will show up in the template! - type: textarea id: improvements attributes: label: Top 3 improvements description: "What are the top 3 improvements we could make to this project?" value: | 1. 2. 3. ... render: bash validations: required: true - type: markdown attributes: value: | ## Markdown header And some more markdown - type: input id: has-id attributes: label: Suggestions description: A description about suggestions to help you validations: required: true - type: dropdown id: download attributes: label: Which area of this project could be most improved? options: - Documentation - Pull request review time - Bug fix time - Release cadence validations: required: true - type: checkboxes attributes: label: Check that box! options: - label: This one! required: true - label: I won't stop you if you check this one, too - type: markdown attributes: value: | ### The thrilling conclusion _to our template_
title: "[General] "
labels: ["General Introduction"]
body:
- type: markdown
attributes:
value: |
This is text that will show up in the template!
- type: textarea
id: improvements
attributes:
label: Top 3 improvements
description: "What are the top 3 improvements we could make to this project?"
value: |
1.
2.
3.
...
render: bash
validations:
required: true
- type: markdown
attributes:
value: |
## Markdown header
And some more markdown
- type: input
id: has-id
attributes:
label: Suggestions
description: A description about suggestions to help you
validations:
required: true
- type: dropdown
id: download
attributes:
label: Which area of this project could be most improved?
options:
- Documentation
- Pull request review time
- Bug fix time
- Release cadence
validations:
required: true
- type: checkboxes
attributes:
label: Check that box!
options:
- label: This one!
required: true
- label: I won't stop you if you check this one, too
- type: markdown
attributes:
value: |
### The thrilling conclusion
_to our template_
最上位の構文
ディスカッション カテゴリ フォームの構成ファイルには body
キーが含まれている必要があり、body
には少なくとも 1 つの Markdown 以外のフィールドが含まれている必要があります。
body: - type: input id: suggestion attributes: label: Suggestion description: "How might we make this project better?" placeholder: "Adding a CODE_OF_CONDUCT.md file would be a great idea." validations: required: true
body:
- type: input
id: suggestion
attributes:
label: Suggestion
description: "How might we make this project better?"
placeholder: "Adding a CODE_OF_CONDUCT.md file would be a great idea."
validations:
required: true
各ディスカッション カテゴリ フォームに次の最上位のキーを設定できます。
キー | 説明 | 必須 | 型 |
---|---|---|---|
body | ディスカッション フォームでの入力の種類の定義。 | 必須 | Array |
labels | このテンプレートで作成されたディスカッションに自動的に追加されるラベル。 | オプション | 配列またはコンマ区切りの文字列 |
title | ディスカッション送信フォームに事前に設定される既定のタイトル。 | オプション | String |
フォームにフィールドを追加するには、フォーム要素の配列を body
キーに含めます。 使用できる要素とその構文の一覧については、「GitHub のフォームスキーマの構文」を参照してください。