ルールの一覧へ

既定値を二通りに書いている

default-value-mismatch既定で動く日本語 / 英語

引数やオプションの既定値が、シグネチャ・表・文で食い違う所

例

指摘される文
## wrap ```ts wrap(text: string, width = 72): string[] ``` `width` の既定値は 80 文字です。
chaff の出力
7:2 「width」の既定値を「80」と書いていますが、ほかの所では「72」です
直した文
## wrap ```ts wrap(text: string, width = 72): string[] ``` `width` の既定値は 72 文字です。
chaff の出力
指摘なし
この例で使った chaff.yaml
genre: technical/readme

直し方

実際の既定値を確かめて、違うほうを直してください。

なぜ指摘するのか

シグネチャが width = 72 なのに説明が「`width` の既定値は 80」だと、読み手は指定しなかったときの動きを読み違えます。既定値を変えたときに、コードか表か文のどれかだけを直すと起きます。宣言の引数の既定値(width = 72)、見出しが「既定値」の列の値、「`width` の既定値は」の後ろの値を集め、同じ名前の値がコード、表、文の順でいちばん確かなものと違うとき、違うほうを指します。

指摘しないもの

呼び出しで渡した値(wrap(text, width=40))、コードの印で囲んでいない名前、既定値を言う語から離れた値、同じ重さの二つの文や二つのコード(別の関数が同じ名前の引数に違う既定値を持つ)が食い違うだけのものは見ません。複数行に分けたシグネチャ、ハイフンの付いた名前(--max-width)、行の頭に | の無い表、値が言い方の途中にある英語の文(`x` is true by default)は読みません。

止める・ゆるめる

この一か所だけ黙らせる(文書に書く)
<!-- stet: default-value-mismatch — 理由 -->
チームでゆるめる(理由は chaff.yaml にコメントで残ります)
npx chaffjs relax default-value-mismatch --why "理由"
チームで止める(chaff.yaml)
rules: default-value-mismatch: off
技術的な情報
層
L1
状態
安定
重さ
注意
対象の言語
日本語と英語
向いている文章
technical, docs, blog, legal, academic, literature, speech
文書から読み取るもの
markdown

強さ(段階)

chaff.yaml の rules にこの名前と段階を書くと変わります。書かなければ、ジャンルが決めた段階で動きます(どのジャンルで動くかは下の「ジャンルごとの動き」にあります)。

strictエラー
normal注意
relaxed情報

このルールには数える上限がありません。段階は指摘の重さを変えます。relaxed にすると指摘は消えずに一段軽く出ます。

ジャンルごとの動き

既定で動くジャンル
technical/spec, technical/readme, blog/tech, blog/essay, blog/owned-media, docs/manual, docs/faq, docs/glossary
このルールを止めるジャンル
legal/contract, legal/statute, legal/judgment, legal/patent, academic/paper, literature/fiction, literature/essay, literature/poetry, literature/play, speech/address, speech/transcript
このルールが向かず、見ないジャンル
business/proposal, business/report, business/email, business/press-release, business/meeting-notes

ジャンル

指摘の文

「{name}」の既定値を「{value}」と書いていますが、ほかの所では「{expected}」です

このページはルールの定義ファイルから作られています:packages/chaff/rules/default-value-mismatch.yaml