Skip to content

comment-check ​

@yuu1111/quality-check に同梱される comment 検査の設定とrule

設定例 ​

json
{
  "comment-check": {
    "enabled": true,
    "includes": ["src/**", "!src/generated/**"],
    "rules": {
      "preset": "recommended",
      "shape": {
        "cramped-comment": "on"
      },
      "content": {
        "japanese-period": "on"
      }
    }
  }
}

enabled、includes、rules と preset、group、rule の指定は quality-check の設定 にある このengineはin-processで起動し args を取らない

rule 一覧 ​

RuleGroup重大度Default検出対象
broad-suppressionsuppressionerrortruebiome-ignore-all、@ts-nocheck、ruleを書いていない eslint-disable
undocumented-directivesuppressionerrortrue説明の無い @ts-ignore と @ts-expect-error
cramped-commentshapeerrorfalse直前の行へ空行なしで続く複数行comment
separator-commentshapeerrortrue記号だけで作った装飾comment
placeholder-commentcontenterrortrueTODO、FIXME、XXX、HACK
japanese-periodcontenterrorfalse日本語の文を終える 。 を含むcomment

cramped-comment と japanese-period はopt-inで、preset の recommended では無効になる

各ruleの意図 ​

  • cramped-comment は複数行のblock commentの直前へ空行を要求し、直前のコードとの境目を作る
  • japanese-period はcomment内の日本語の文を 。 で終わらせない
  • separator-comment と placeholder-comment は、意味を足さないcommentと後で解消するはずのcommentを区別する

baselineの差分判定は @yuu1111/quality-check が持つため、このengineは見つけた検出をすべて報告する