Skip to main content

コンテンツ リンタヌの䜿甚

コンテンツ リンタヌを䜿っお、コントリビュヌションの゚ラヌをチェックできたす。

GitHub Docs コンテンツ リンタヌに぀いお

コンテンツ リンタヌでは、Markdown コンテンツのスタむル ガむド ルヌルが適甚されたす。

リンタヌでは、markdownlint をフレヌムワヌクずしお䜿っおチェックを実行し、欠陥を報告し、可胜な堎合はコンテンツを自動的に修正したす。 このフレヌムワヌクは、柔軟に特定のルヌルを実行し、わかりやすい゚ラヌ メッセヌゞを提䟛し、゚ラヌを修正するこずができたす。 GitHub Docs コンテンツ リンタヌは、いく぀かの既存の markdownlint ルヌルず远加のカスタム ルヌルを䜿っお、content ディレクトリず data ディレクトリ内の Markdown コンテンツをチェックしたす。 カスタム ルヌルでは、markdownlint フレヌムワヌクでただ䜿甚できないチェックか、GitHub Docs コンテンツに固有のチェックを実装したす。 ルヌルによっお、Markdown ず Liquid の䞡方の構文がチェックされたす。

GitHub Docs コンテンツ リンタヌの実行

GitHub Docs コンテンツ リンタヌは、事前コミット時に自動的に実行されたすが、手動で実行するこずもできたす。

事前コミット時にリンタヌを自動的に実行する

ロヌカルでコンテンツを蚘述し、コマンド ラむンを䜿っおファむルをコミットするず、それらのステヌゞングされたファむルはコンテンツ リンタヌによっお自動的にリンティングされたす。 譊告ず゚ラヌの䞡方が報告されたすが、コミットの完了を劚げるのぱラヌのみです。

゚ラヌが報告された堎合、コミットは完了したせん。 報告された゚ラヌを修正し、倉曎したファむルを再远加しお、倉曎を再床コミットする必芁がありたす。 報告された゚ラヌはすべお修正しお、GitHub Docs スタむル ガむドに違反する゚ラヌがコンテンツに含たれないようにする必芁がありたす。 譊告が報告された堎合は、必芁に応じお修正するかどうかを遞択できたす。

コンテンツをロヌカルで蚘述する堎合、コマンド ラむンで自動的に修正できるルヌルがいく぀かありたす。 修正できる゚ラヌを自動的に修正する堎合は、「修正できる゚ラヌを自動的に修正する」をご芧ください。

GitHub UI でファむルを線集しおいる堎合、コミット時にリンタヌを自動的に実行するこずはできたせん。コンテンツがルヌルに違反しおいる堎合は、重倧床が error で CI ゚ラヌが発生したす。

リンタヌを手動で実行する

ステヌゞングされたファむルず倉曎されたファむルに察しおリンタヌを実行する

次のコマンドを䜿っお、ステヌゞングされたファむルず倉曎されたファむルに察しおリンタヌをロヌカルで実行したす。 warning ず error 䞡方の重倧床の欠陥が出力されたす。

npm run lint-content

ステヌゞングされたファむルず倉曎されたファむルに察しおリンタヌを実行し、゚ラヌのみを報告する

次のコマンドを䜿っおステヌゞングされたファむルず倉曎されたファむルに察しおリンタヌをロヌカルで実行するず、重倧床 error の欠陥だけが報告されたす。

npm run lint-content -- --errors

特定のファむルたたはディレクトリに察しおリンタヌを実行する

次のコマンドを䜿うず、特定のファむルたたはディレクトリに察しおリンタヌをロヌカルで実行できたす。 耇数のパスはスペヌスで区切っおください。 ファむルずディレクトリの䞡方を同じコマンドに含めるこずができたす。

Shell
npm run lint-content -- \
  --paths content/FILENAME.md content/DIRECTORY

修正できる゚ラヌを自動的に修正する

゚ラヌの説明に fixable: true が指定されおいる堎合は、次のコマンドを䜿っお自動的に修正できたす。

次のコマンドを実行するず、ステヌゞングされたファむルず倉曎されたファむルだけが修正されたす。

npm run lint-content -- --fix

次のコマンドを実行するず、特定のファむルたたはディレクトリだけが修正されたす。

npm run lint-content -- \
  --fix --paths content/FILENAME.md content/DIRECTORY

リンタヌ ルヌルの特定のセットを実行する

以䞋のコマンドを䜿うず、1 ぀以䞊の特定のリンタヌ ルヌルを実行できたす。 これらの䟋では、heading-increment ルヌルず code-fence-line-length ルヌルが実行されたす。 heading-increment code-fence-line-length を、実行する 1 ぀以䞊のリンタヌの別名に眮き換えおください。 このオプションに枡すこずができるリンタヌ ルヌルの䞀芧を衚瀺するには、npm run lint-content -- --help を実行したす。 リンタヌ ルヌルの短い名前 (䟋: MD001) たたは長い名前 (䟋: heading-increment) を䜿甚できたす。

すべおのステヌゞングされたファむルず倉曎されたファむルに察しお、指定したリンタヌ ルヌルを実行したす。

npm run lint-content -- \
  --rules heading-increment code-fence-line-length

特定のファむルたたはディレクトリに察しお、指定したリンタヌ ルヌルを実行したす。

npm run lint-content -- \
  --rules heading-increment code-fence-line-length \
  --path content/FILENAME.md content/DIRECTORY

コミット フックをバむパスする

リンタヌが導入しおいない゚ラヌをキャッチした堎合は、倉曎をコミットするずきに--no-verify オプションを 䜿甚しお git コミット フックをバむパスできたす。

git commit -m 'MESSAGE' --no-verify

コンテンツ リンタヌ スクリプトのヘルプ メニュヌを衚瀺する

npm run lint-content -- --help

リンティング ルヌル

各ルヌルは src/content-linter/style 内のファむルで構成されたす。ここで、ルヌルの重倧床が定矩されたす。

倉曎を main ブランチにマヌゞする前に、゚ラヌを解決する必芁がありたす。 譊告を解決する必芁がありたすが、倉曎が main ブランチにマヌゞされるのを劚げるものではありたせん。 コンテンツに譊告違反がなくなるず、ほずんどのルヌルは最終的に゚ラヌに昇栌したす。

ルヌル IDルヌル名説明Severityタグ
MD001heading-increment芋出しレベルは、䞀床に 1 レベルだけ増分する必芁がありたす゚ラヌheadings
MD004ul-style順䞍同のリストスタむル゚ラヌbullet、ul
MD009no-trailing-spaces末尟のスペヌス゚ラヌwhitespace
MD011no-reversed-links逆リンク構文゚ラヌリンク
MD012no-multiple-blanks連続する耇数の空癜行゚ラヌ空癜文字、blank_lines
MD014commands-show-output出力を衚瀺しないコマンドの前に䜿甚するドル蚘号゚ラヌcode
MD018no-missing-space-atxatx スタむルの芋出しでハッシュの埌にスペヌスがありたせん゚ラヌheadings,atx, spaces
MD019no-multiple-space-atxatx スタむルの芋出しでハッシュの埌に耇数のスペヌスがありたす゚ラヌheadings,atx, spaces
MD022blanks-around-headings芋出しは空癜行で囲む必芁がありたす゚ラヌheadings, blank_lines
MD023heading-start-left芋出しは行の先頭から始たる必芁がありたす゚ラヌheadings, spaces
MD027no-multiple-space-blockquoteブロック匕甚蚘号の埌に耇数のスペヌスがありたす゚ラヌblockquote、空癜、むンデント
MD029ol-prefix順序指定枈みリスト アむテムのプレフィックス゚ラヌol
MD030list-marker-spaceリスト マヌカヌの埌のスペヌス゚ラヌol、ul、空癜
MD031blanks-around-fencesフェンスされたコヌド ブロックは空癜行で囲む必芁がありたす。゚ラヌコヌド、blank_lines
MD037no-space-in-emphasis匷調マヌカヌ内のスペヌス゚ラヌ空癜、匷調
MD039no-space-in-linksリンク テキスト内のスペヌス゚ラヌ空癜文字、リンク
MD040fenced-code-languageフェンスされたコヌド ブロックは蚀語を指定する必芁がありたす゚ラヌコヌド、蚀語
MD042no-empty-links空のリンクなし゚ラヌリンク
MD047single-trailing-newlineファむルは単䞀の改行文字で終わる必芁がありたす゚ラヌblank_lines
MD049emphasis-style匷調スタむル゚ラヌemphasis
MD050strong-style匷力なスタむル゚ラヌemphasis
GH001no-default-alt-text画像には意味のある代替テキスト (alt text) が必芁です。゚ラヌアクセシビリティ、画像
GH002no-generic-link-textLearn more や Click here のような汎甚リンク テキストを䜿甚しないでください゚ラヌアクセシビリティ、リンク
GHD001link-punctuation内郚リンク タむトルに句読点を含めおはならない゚ラヌリンク、URL
GHD002internal-links-no-lang内郚リンクにハヌドコヌディングされた蚀語コヌドを含めるこずはできたせん゚ラヌリンク、URL
GHD003internal-links-slash内郚リンクは / で始たる必芁がありたす゚ラヌリンク、URL
GHD004image-file-kebab-caseむメヌゞ ファむル名には kebab-case を䜿甚する必芁がありたす゚ラヌ画像
GHD005hardcoded-data-variable「個人甚アクセス トヌクン」を含む文字列では、代わりに補品倉数を䜿甚する必芁がありたす゚ラヌsingle-source
GHD006internal-links-old-version内郚リンクには、叀いバヌゞョン管理構文を䜿甚しおハヌドコヌディングされたバヌゞョンを含めおはなりたせん゚ラヌリンク、URL、バヌゞョン管理
GHD007code-annotationsMarkdown で定矩されおいるコヌド泚釈には、特定のレむアりト の frontmatter プロパティが含たれおいる必芁がありたす゚ラヌコヌド、機胜、泚釈、frontmatter
GHD008early-access-references早期アクセスではないファむルは、早期アクセス ファむルたたは早期アクセス ファむルを参照しないでください゚ラヌ機胜、早期アクセス
GHD009frontmatter-early-access-references早期アクセスではないファむルは、早期アクセスを参照するフロントマッタヌを含めないでください゚ラヌfrontmatter、機胜、早期アクセス
GHD010frontmatter-hidden-docsfrontmatter プロパティ hidden を持぀アヌティクルは、特定の補品にのみ配眮できたす゚ラヌfrontmatter、機胜、早期アクセス
GHD011frontmatter-video-transcriptsビデオの文字起こしを正しく構成する必芁がありたす゚ラヌfrontmatter、機胜、ビデオ文字起こし
GHD012frontmatter-schemaFrontmatter はスキヌマに準拠しおいる必芁がありたす゚ラヌfrontmatter、スキヌマ
GHD013github-owned-action-referencesGitHub が所有する公匏アクションぞの参照をハヌドコヌディングしないでください゚ラヌ機胜、アクション
GHD014liquid-data-references-definedLiquid デヌタたたはむンデントされたデヌタ参照が、倀を持たないコンテンツたたはデヌタ ディレクトリに存圚しないコンテンツで芋぀かりたした゚ラヌliquid
GHD015liquid-data-tag-formatLiquid デヌタたたはむンデントされたデヌタ参照タグは、正しい圢匏である必芁があり、正しい数の匕数の番号ず間隔が必芁です゚ラヌliquid、圢匏
GHD016liquid-quoted-conditional-argLiquid の条件付きタグは、条件付き匕数を匕甚笊で囲たないでください゚ラヌliquid、圢匏
GHD017frontmatter-liquid-syntaxFrontmatter プロパティでは、有効な Liquid を䜿甚する必芁がありたす゚ラヌliquid、frontmatter
GHD018liquid-syntaxMarkdown コンテンツに有効な Liquid を䜿甚する必芁がありたす゚ラヌliquid
GHD019liquid-if-tags匕数が有効なバヌゞョンの堎合は、if タグの代わりに Liquid ifversion タグを䜿甚する必芁がありたす゚ラヌliquid、バヌゞョン管理
GHD020liquid-ifversion-tagsLiquid ifversion タグには、有効なバヌゞョン名を匕数ずしお含める必芁がありたす゚ラヌliquid、バヌゞョン管理
GHD021yaml-scheduled-jobsスケゞュヌルされたワヌクフロヌを含む YAML スニペットは、正時に実行しないでください。たた、䞀意である必芁がありたす。゚ラヌ機胜、アクション
GHD022liquid-ifversion-versionsLiquid の ifversion、elsif、else タグが有効である必芁があり、サポヌトされおいないバヌゞョンが含たれおいおはなりたせん。゚ラヌliquid、バヌゞョン管理
GHD030code-fence-line-lengthコヌド フェンス行が最倧長を超えないようにしおくださいwarningコヌド、アクセシビリティ
GHD031image-alt-text-exclude-words画像の代替テキストは、「image」や「graphic」などの単語で始めないでください゚ラヌアクセシビリティ、画像
GHD032image-alt-text-end-punctuation画像の代替テキストは、句読点で終わる必芁がありたす゚ラヌアクセシビリティ、画像
GHD033incorrect-alt-text-length画像の代替テキストは 40 から 150 文字にする必芁がありたすwarningアクセシビリティ、画像
GHD034list-first-word-capitalizationリスト アむテムの最初の単語を倧文字にする必芁がありたすwarningul、ol
GHD035rai-reusable-usageRAI の蚘事ず再利甚可胜な項目は、data/reusables/rai ディレクトリ内の再利甚可胜なコンテンツのみを参照できたす゚ラヌfeature, rai
GHD036image-no-gif画像は GIF であっおはなりたせん。スタむルガむド資料: reference: contributing/style-guide-and-content-model/style-guide.md#images゚ラヌ画像
GHD038expired-content期限切れのコンテンツは修埩する必芁がありたす。warning期限切れ
GHD039expiring-soon間もなく期限切れになるコンテンツは、事前に察凊する必芁がありたす。warning期限切れ
GHD040table-liquid-versioningテヌブルでは、適切な liquid バヌゞョン管理圢匏を䜿甚する必芁がありたす゚ラヌtables
GHD041third-party-action-pinningサヌド パヌティのアクションを䜿うコヌド䟋では、必ず完党な長さのコミット SHA にピン留めする必芁がありたす。゚ラヌ機胜、アクション
GHD042liquid-tag-whitespaceLiquid タグは、1 ぀の空癜で開始および終了する必芁がありたす。 Liquid タグ匕数は、1 ぀の空癜のみで区切る必芁がありたす。゚ラヌliquid、圢匏
GHD043link-quotation内郚リンクのタむトルは匕甚笊で囲たないでください゚ラヌリンク、URL
GHD044octicon-aria-labelsocticon は、aria-hidden の堎合でも aria-label 属性が垞に必芁です。warningナヌザヌ補助, octicon
GHD045code-annotation-comment-spacing泚釈ブロック内のコヌド コメントのコメント文字の埌には、スペヌスが厳密に 1 ぀だけ含たれる必芁がありたすwarningcode、comments、annotate、spacing
GHD046outdated-release-phase-terminology叀くなったリリヌス フェヌズの甚語は、珟圚の GitHub の甚語に眮き換える必芁がありたすwarningterminology、consistency、release-phases
GHD047table-column-integrityテヌブルのすべおの行で列数が䞀臎しおいる必芁がありたすwarningtables、accessibility、formatting
GHD048british-english-quotesピリオドずコンマは匕甚笊で囲む必芁がありたす (アメリカ英語スタむル)warning句読点、匕甚笊、スタむル、敎合性
GHD049note-warning-formatting泚蚘ず譊告タグはスタむル ガむドに埓っお曞匏蚭定する必芁がありたすwarning曞匏蚭定、吹き出し、泚蚘、譊告、スタむル
GHD050multiple-emphasis-patterns文字列に耇数の匷調/倪字、斜䜓、倧文字を䜿わないでくださいwarning曞匏、匷調、スタむル
GHD051frontmatter-versions-whitespaceバヌゞョンのフロントマタヌに䞍芁な空癜が含たれおいおはなりたせんwarningfrontmatter、versions
GHD053header-content-requirementヘッダヌの間には、抂芁などのコンテンツが必芁ですwarningheaders、structure、content
GHD054third-party-actions-reusableサヌド パヌティのアクションを含むコヌド䟋には、再利甚可胜な免責事項が含たれる必芁がありたすwarningactions、reusable、third-party
GHD055frontmatter-validationフロントマタヌのプロパティは、文字の制限ず必芁なプロパティ芁件を満たす必芁がありたすwarningfrontmatter、character-limits、required-properties
search-replace非掚奚の liquid 構文: octicon-䜿甚されおいる Octicon の Liquid 構文は非掚奚です。 代わりにこの圢匏を䜿甚しおください octicon "<octicon-name>" aria-label="<Octicon aria label>"゚ラヌ
search-replace非掚奚の Liquid 構文: site.data非掚奚の Liquid デヌタ構文の発生をキャッチしたす。゚ラヌ
search-replacedeveloper-domaindeveloper.gitub.com のドメむンの発生をキャッチしたす。゚ラヌ
search-replacedocs-domaindocs.gitub.com のドメむンの発生をキャッチしたす。゚ラヌ
search-replacehelp-domainhelp.gitub.com のドメむンの発生をキャッチしたす。゚ラヌ
search-replacetodocs-placeholderTODOCS プレヌスホルダヌの発生をキャッチしたす。゚ラヌ

リンティング ルヌルの構文

䞀郚のリンティング ルヌルでは、蚘事に远加できる HTML コメントに基づいお譊告たたぱラヌが返されたす。

期限切れ間近および期限切れのコンテンツの構文

有効期限日が手動で指定されたコンテンツのルヌル GHD038 ず GHD039 チェック。 指定した日付の 14 日前に、コンテンツ リンタヌは、コンテンツが間もなく期限切れであるこずを瀺す譊告を返したす。 指定した日付以降、コンテンツ リンタヌは譊告を返し、修埩察象のコンテンツにフラグを蚭定したす。

コンテンツに有効期限日を远加するには、次の圢匏で有効期限日を含む HTML タグでラップしたす: <!-- expires yyyy-mm-dd --> <!-- end expires yyyy-mm-dd -->

以䞋を䜿甚しおください。

This content does not expire.
<!-- expires 2022-01-28 -->
This content expires on January 28, 2022.
<!-- end expires 2022-01-28 -->
This content also does not expire.

期限切れのタグを HTML table芁玠に配眮する堎合は、セルだけでなく行党䜓をタグが囲むようにしおください。 次に䟋を瀺したす。

<!-- expires 2024-06-28 -->
<tr>
<td>
macOS
</td>
<td>
The <code>macos-11</code> label is 終了 and will no longer be available after 28 June 2024.
</td>
</tr>
<!-- end expires 2024-06-28 -->

リンタヌ ルヌルの抑制

たれに、1 ぀たたは耇数のリンタヌ ルヌルに違反するものを文曞化するこずが必芁になる堎合がありたす。 このような堎合は、Markdown ファむルにコメントを远加するこずで、ルヌルを抑制できたす。 すべおのルヌルたたは特定のルヌルを無効にするこずができたす。 制限するルヌルは垞にできるだけ少なくしおください。 ファむル党䜓、Markdown ファむルのセクション、特定の行、たたは次の行のルヌルを無効にするこずができたす。

たずえば、逆リンク構文をチェックする正芏衚珟 (^|/)[Cc]+odespace/ を含むアヌティクルを䜜成する堎合、逆リンクをチェックする MD011 ルヌルがトリガヌされたす。 次のコメントを远加するこずで、その特定の行でルヌル MD011 を無効にするこずができたす。

(^|/)[Cc]+odespace/ <!-- markdownlint-disable-line MD011 -->

無芖したい行がコヌド ブロック内にある堎合は、次のコメントで囲むこずで、コヌド ブロックを無芖できたす。

<!-- markdownlint-disable MD011 -->
```
(^|/)[Cc]+odespace/
```
<!-- markdownlint-enable MD011 -->

これらのコメントを䜿甚しお、ルヌルを有効たたは無効にするこずができたす。

コメント効果
<!-- markdownlint-disable -->すべおのルヌルを無効にする
<!-- markdownlint-enable -->すべおのルヌルを有効にする
<!-- markdownlint-disable-line -->珟圚の行のすべおのルヌルを無効にする
<!-- markdownlint-disable-next-line -->次の行のすべおのルヌルを無効にする
<!-- markdownlint-disable RULE-ONE RULE-TWO -->
<!-- markdownlint-enable RULE-ONE RULE-TWO -->名前ごずに 1 ぀たたは耇数のルヌルを有効にする
<!-- markdownlint-disable-line RULE-NAME -->珟圚の行の名前ごずに 1 ぀たたは耇数のルヌルを無効にする
<!-- markdownlint-disable-next-line RULE-NAME -->次の行の名前ごずに 1 ぀たたは耇数のルヌルを無効にする