JTF日本語標準スタイルガイド(翻訳用) for textlint.
npm install textlint-plugin-jtf-style
基本的にtextlintの使い方と同じです。
npmでグローバルにインストールし、--plugin
で利用するのが一番お手軽です。
npm install -g textlint textlint-plugin-jtf-style
textlint --plugin textlint-plugin-jtf-style README.md
# README.mdをLintした結果が出力されます
グローバルにインストールするよりは、次のようにプロジェクト毎のディレクトリにインストールする方法を推奨します。
現在のディレクトリにtextlintとtextlint-plugin-jtf-styleをインストールする方法です。 (グローバルにインストールしなくていいので環境がキレイに作れます)
npm init # package.jsonがないなら
npm install -D textlint textlint-plugin-jtf-style
textlintの設定ファイルとなっている.textlintrc
に次のようにjtf-style
と指定します(textlint-plugin-
を取り除いたプラグイン名)。
{
"plugins": [
"jtf-style"
]
}
実行するには、$ textlint <対象ファイル>
を行うだけで、自動的に同じディレクトリにある.textlintrc
の設定を読み込んでくれます。
node_modules/.bin/textlint /path/to/target.md
npm run-script経由で実行すれば、node_modules/.bin/
は省略出来ます。
example/ に実行できるサンプルプロジェクトがあります。
それぞれのルールの詳細は以下を読んでください。
textlint-plugin-JTF-style
で対応するルールと実装状況は以下のとおりです。
辞書ベースと書かれているものは、独自の辞書をベースとしているため精度が曖昧となっています。
対応ルール | ページ(v2.1) | 小項目 | JTF標準ルール | 中項目 | 大項目 |
---|---|---|---|---|---|
1.1.1.js | 10 | 本文 | 目的に応じて敬体、常体のどちらかに統一する。 | 文体 | 基本文型 |
1.1.2.js | 10 | 見出し | 常体または体言止め。 | ||
1.1.3.js | 10 | 箇条書き | 「本文」の文体に合わせる。 | ||
不可 | 11 | 図表内テキスト | 「本文」の文体に合わせる。 | ||
1.1.5.js | 11 | 図表のキャプション | 「本文」の文体に合わせる。 | ||
1.2.1.js | 11 | 句点(。)と読点(、) | 全角の「、」と「。」を使う。 | 句読点の使用 | |
1.2.2.js | 11 | ピリオド(.)とカンマ(,) | 和文の句読点として使用しない。 | ||
未実装 | 11 | ひらがな | 全角。昭和61年7月1日内閣告示第1号の「現代仮名遣い」に準じる。 | 用字、用語 | 文字の表記 |
2.1.2.js (辞書ベース) | 11 | 漢字 | 常用漢字表にゆるやかに準じる。 | ||
未実装 | 12 | 漢字の送りがな | 昭和48年6月18日内閣告示第2号「送り仮名の付け方」に準じる。 | ||
未実装 | 13 | 複合語の送りがな | 昭和48年6月18日内閣告示第2号「送り仮名の付け方」に準じる。 | ||
2.1.5.js (辞書ベース) | 14 | カタカナ | 全角。半角カタカナは特殊用途を除いて使わない。 | ||
2.1.6.js (辞書ベース) | 14 | カタカナの長音 | 原則として省略しない。 | ||
不可 | 15 | カタカナ複合語 | 中黒または半角スペースで区切る。 | ||
2.1.8.js | 16 | 算用数字 | 半角。 | ||
2.1.9.js | 16 | アルファベット | 半角。 | ||
2.1.10.js | 16 | 算用数字(位取りの表記) | 桁区切りには「カンマ」、小数点には「ピリオド」を使う。ただし桁区切りの「カンマ」は省略する場合がある。 | ||
2.2.1.js (辞書ベース) | 17 | ひらがなと漢字の使い分け | 参考文献に従う。 | 文字の表記と使い分け | |
2.2.2.js | 19 | 算用数字と漢数字の使い分け | 数えられるものは算用数字。慣用句は漢数字。 | ||
2.2.3.js | 20 | 一部の助数詞の表記 | 「〜か月」、「〜か所」 | ||
3.1.1.js | 20 | 全角と半角の間 | スペースなし | 単一文字間のスペースの有無 | 文字間のスペース |
3.1.2.js | 20 | 全角どうし | スペースなし | ||
不可 | 20 | 半角どうし | 和文中に欧文を引用するなど、和文に欧文が含まれる場合は欧文中の半角スペースを維持する。 | ||
3.2.js | 20 | カタカナ語間のスペースの有無 | 中黒または半角スペースを入れる。 | カタカナ語間のスペースの有無 | |
3.3.js | 20 | かっこ類と隣接する文字の間のスペース | スペースなし | かっこ類と隣接する文字の間のスペースの有無 | |
4.1.1.js | 21 | 句点(。) | 全角 | 句読点 | 記号の表記と用途 |
不可(1.2.2参照) | 21 | 読点(、) | 全角 | ||
4.1.3.js (1.2.2参照) | 21 | ピリオド(.)、カンマ(,) | 半角 | ||
4.2.1.js | 21 | 感嘆符(!) | 全角。和文では多用しない。 | 記号 | |
4.2.2.js | 22 | 疑問符(?) | 全角。和文では多用しない。 | ||
チェック項目なし | 22 | スラッシュ(/) | 全角または半角 | ||
4.2.4.js | 22 | 中黒(・) | 全角 | ||
4.2.5.js | 22 | 波線(〜または~) | 全角 | ||
4.2.6.js | 22 | ハイフン(-) | 原則として和文では使用しない。 | ||
4.2.7.js | 23 | コロン(:) | 全角。和文では多用しない。 | ||
4.2.8.js | 23 | セミコロン(;) | 原則として和文では使用しない。 | ||
4.2.9.js | 23 | ダッシュ(-) | 原則として和文では使用しない。 | ||
4.3.1.js | 23 | 丸かっこ() | 全角 | かっこ | |
4.3.2.js | 23 | 大かっこ[] | 全角 | ||
4.3.3.js | 23 | かぎかっこ「」 | 全角 | ||
4.3.4.js | 23 | 二重かぎかっこ『』 | 全角 | ||
4.3.5.js (対の有無) | 23 | 二重引用符\" \" | 半角。和文では多用しない。 | ||
4.3.6.js (対の有無) | 24 | 中かっこ{} | 原則として和文では使用しない。 | ||
4.3.7.js (対の有無) | 24 | 山かっこ<> | 原則として和文では使用しない。 | ||
4.3.8.js (対の有無) | 24 | 一重引用符' ' | 原則として和文では使用しない。 | ||
不可 | 24 | JIS規格Z8202「量及び単位」、Z8203「国際単位系(SI)及びその使い方」に従う。 | 単位系 | 単位の表記 | |
24 | 主に、英字による表記とカタカナによる表記がある。 | 単位記号の表記 | |||
24 | 時間、時刻 | 時間、時、分、秒、ミリ秒 | 個別の単位 | ||
24 | 長さ | mm、km、ミリメートル、センチメートル | |||
24 | 質量 | g、kg、t、グラム、キログラム、トン | |||
24 | 面積、体積 | ㎡、平方メートル、立法メートル | |||
24 | 電気 | A、W、V、アンペア、ワット、ボルト | |||
25 | 温度 | ℃ | |||
25 | 周波数 | Hz、ヘルツ | |||
25 | 速度 | m/s、キロメートル毎時、分速~km | |||
25 | 伝送速度 | bps、Kbps、バイト/秒 | |||
25 | 割合 | %、パーセント | |||
25 | 角度 | 90°、90度 | |||
25 | 記憶容量 | ビット、バイト、Kb、KB、Mb、MB | |||
25 | 通貨 | 円、米ドル、ユーロ、$、USD | |||
25 | その他 |
Q. このルールはスタイルガイドと合ってないのでは?
A. Issueに詳細を書いてみるといいと思います。
Issueには以下の項目が書かれていると問題を解決しやすくなります。
- 試した文章(もしくはファイル)
- 期待する結果
- 例) このルール(1.2.3)でエラーとなるはず
- 実際の結果
- 例) 実際にはエラーとならなかった
また、JTF日本語標準スタイルガイド(翻訳用)に記載されてる全てのルールが実装済みではないため、 Pull Requestも歓迎しています。
Q. 特定のルールを使いたくない
A. .textlintrc
にルール毎の設定を追加することが出来ます。
1.2.2.ピリオド(.)とカンマ(,)
のルールを無効化したい場合は、.textlintrc
に次のようにfalse
値を設定することで無効化出来ます。
デフォルトではtextlint-plugin-JTF-style
に含まれるルールが全て有効化されています。
{
"plugins": [
"jtf-style"
],
"rules": {
"jtf-style/1.2.2.ピリオド(.)とカンマ(,)": false
}
}
それぞれの指定できるrules
のキー名はindex.jsを参照してください。
jtf-style/<key名>
となります。
Q. 辞書ベースのルールの質がよくない
A. 正規表現の辞書ベースのルールが幾つかあります。
誤爆が一番起きやすいのは恐らく辞書ベースの部分なので、 辞書を改善していくかルール自体を無効化するアプローチを取る必要あります。
kuromoji.jsで形態素解析などをすることで改善できるかもしれません。
まだ未実装なルールがありますのでPull Request歓迎。 実装済みのルールでもその項目を全て満たせてないケースがあるかもしれません。
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
by Japan Translation Federation (CC BY-SA) www.jtf.jp
本著作物は「JTF日本語標準スタイルガイド2.0」(JTF, CC BY-SA)を改変して作成したものです。
その他のコードはMITライセンスです。