2.3.14 • Published 4 months ago

textlint-rule-preset-jtf-style v2.3.14

Weekly downloads
4,123
License
MIT
Repository
github
Last release
4 months ago

textlint-rule-preset-JTF-style textlint rule Actions Status: test

JTF日本語標準スタイルガイド(翻訳用) for textlint.

2016年2月22日改訂第2.2版を元にしています。

Installation

npm install textlint-rule-preset-jtf-style

Usage

基本的にtextlintの使い方と同じです。

最も手軽な方法(グローバル)

npmでグローバルにインストールし、--presetで利用するのが一番お手軽です。

npm install -g textlint textlint-rule-preset-jtf-style
textlint --preset textlint-rule-preset-jtf-style README.md
# README.mdをLintした結果が出力されます

グローバルにインストールするよりは、次のようにプロジェクト毎のディレクトリにインストールする方法を推奨します。

.textlintrcを使う方法(推奨)

現在のディレクトリにtextlintとtextlint-rule-preset-jtf-styleをインストールする方法です。 (グローバルにインストールしなくていいので環境がキレイに作れます)

npm init # package.jsonがないなら
npm install -D textlint textlint-rule-preset-jtf-style

textlintの設定ファイルとなっている.textlintrcに次のようにjtf-styleと指定します(textlint-rule-を取り除いたプリセット名)。

{
    "rules": {
        "preset-jtf-style": true
    }
}

実行するには、$ textlint <対象ファイル> を行うだけで、自動的に同じディレクトリにある.textlintrcの設定を読み込んでくれます。

node_modules/.bin/textlint /path/to/target.md

npm run-script経由で実行すれば、node_modules/.bin/は省略出来ます。

自動修正

ルールの設定してtextlintコマンドでチェックするとたくさんのエラーが表示されると思います。

textlint /path/to/target.md

textlint-rule-preset-JTF-styleの一部ルールはtextlint--fixにも対応しています。 --fixを使うことで機械的に判断して修正できる部分は自動修正します。

textlint --fix /path/to/target.md

実際にファイルを書き換えるので、必ずファイルをコピーしておくなどしてファイルを戻せるようにしてから実行してください。

サンプル

example/ に実行できるサンプルプロジェクトがあります。

ルール一覧

それぞれのルールの詳細は以下を読んでください。

textlint-rule-preset-jtf-styleで対応するルールと実装状況は以下のとおりです。

辞書ベースと書かれているものは、独自の辞書をベースとしているため精度が曖昧となっています。

FAQ

Q. このルールはスタイルガイドと合ってないのでは?

A. Issueに詳細を書いてみるといいと思います。

Issueには以下の項目が書かれていると問題を解決しやすくなります。

  • 試した文章(もしくはファイル)
  • 期待する結果
    • 例: このルール(1.2.3)でエラーとなるはず
  • 実際の結果
    • 例: 実際にはエラーとならなかった

また、JTF日本語標準スタイルガイド(翻訳用)に記載されてる全てのルールが実装済みではないため、 Pull Requestも歓迎しています。


Q. 特定のルールを使いたくない

A. .textlintrc にルール毎の設定を追加することが出来ます。

1.2.2.ピリオド(.)とカンマ(,)のルールを無効化したい場合は、.textlintrcに次のようにfalse値を設定することで無効化出来ます。 デフォルトではtextlint-rule-preset-jtf-styleに含まれるルールが全て有効化されています。

{
    "rules": {
        "preset-jtf-style": {
            "1.2.2.ピリオド(.)とカンマ(,)": false
        }
    }
}

それぞれの指定できるrulesのキー名はindex.jsを参照してください。

jtf-style/<key名> となります。

Q. 辞書ベースのルールの質がよくない

A. 正規表現の辞書ベースのルールが幾つかあります。

その他のtextlintルールと衝突が発生しやすい辞書ベースのルールとなっています。 そのため、辞書を改善していくかルール自体を無効化するアプローチを取る必要あります。

デフォルトでは次の辞書ベースのルールは無効化されています。

これらのルールを有効化したい場合は、.textlintrcで明示的に有効化する必要があります。

{
    "rules": {
        "preset-jtf-style": {
            "2.1.2.漢字": true,
            "2.1.5.カタカナ": true,
            "2.1.6.カタカナの長音": true,
            "2.2.1.ひらがなと漢字の使い分け": true
        }
    }
}

Migration: textlint-plugin-jtf-style to textlint-rule-preset-jtf-style

textlint-plugin-jtf-style から textlint-rule-preset-jtf-style へ移行したい場合の移行手順です。

次のようにモジュールを切り替えます。

npm uninstall -D textlint-plugin-jtf-style
npm install -D textlint-rule-preset-jtf-style

その後、.textlintrcにかかれている設定を

{
    "plugins": [
        "jtf-style"
    ],
    "rules": {
        "jtf-style/2.1.2.漢字": true,
        "jtf-style/2.1.5.カタカナ": true,
        "jtf-style/2.1.6.カタカナの長音": true,
        "jtf-style/2.2.1.ひらがなと漢字の使い分け": true
    }
}

以下のように書き換えれば完了です。

{
    "rules": {
        "preset-jtf-style": {
            "2.1.2.漢字": true,
            "2.1.5.カタカナ": true,
            "2.1.6.カタカナの長音": true,
            "2.2.1.ひらがなと漢字の使い分け": true
        }
    }
}

Contributing

まだ未実装なルールがありますのでPull Request歓迎。 実装済みのルールでもその項目を全て満たせてないケースがあるかもしれません。

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

by Japan Translation Federation (CC BY-SA) www.jtf.jp
本著作物は「JTF日本語標準スタイルガイド2.0」(JTF, CC BY-SA)を改変して作成したものです。

その他のコードはMITライセンスです。