eslint-ja-proxy
v0.1.0
Published
ESLintのエラーメッセージを日本語化するプロキシ
Downloads
5
Maintainers
Readme
eslint-ja-proxy
ESLint のエラーメッセージを 日本語にします。
JetBrains(WebStorm/IntelliJ)、VS Code、CLI/CI など ESLint を使う場所ならどこでも動きます。
これは何?
ESLint を薄くラップして、出力メッセージだけ日本語に置き換えるツールです。ルールの動きや件数・位置情報は変えません。未対応のものは 英語のまま出ます(壊れません)。
対応環境
- Node.js:
>=18 - ESLint:
^8.57.0 || ^9 - エディタ: JetBrains, VS Code, Neovim/LSP, ほか
インストール
npm i -D eslint eslint-ja-proxy使い方(かんたん)
JetBrains(WebStorm/IntelliJ)
- IDE設定 → Languages & Frameworks > JavaScript > Code Quality Tools > ESLint
- Manual ESLint configuration を選ぶ
- ESLint package に
node_modules/eslint-ja-proxyを指定 → Problems に日本語メッセージが出ます
VS Code
おすすめ:npm エイリアス で eslint を置き換えます。
{
"devDependencies": {
"eslint": "npm:eslint-ja-proxy@^0.1.0"
}
}既存の
eslintを残したい場合は、eslint.nodePathを別フォルダに向けて、そこへ本パッケージをeslint名で入れてください。
CLI / CI
付属のラッパー CLI を使います。
npx eslint-ja "src/**/*.{ts,js,html}"または Node の --require で常時パッチ:
node -r eslint-ja-proxy/register node_modules/.bin/eslint .どこが日本語になる?
- 仕組み:
ruleId + messageId (+ data)を鍵に、対応する日本語テンプレへ置き換えます - 辞書:
core(ESLint本体) /angular(@angular-eslint) /typescript(@typescript-eslint)を同梱 - 未訳:英語のまま表示(あとから増やせます)
必要なら有効化する辞書を指定できます(省略時は自動)。
{
"eslintJaProxy": { "DICT": "core,angular,typescript" }
}仕組み(ざっくり図)
[ESLint 実行]
↓
[結果 results[].messages[] を取得]
↓ messageId / data を見て訳文に置換(なければ英語のまま)
↓
[IDE/CLI へそのまま返す] ← 位置・件数・ruleId は変更しないバージョン違いへの対応(大事)
プラグインの更新で messageId が増えたり変わることがあります。そこで:
- 共通辞書 + 追加辞書(バージョン範囲ごと) を合成します
- 例)
@angular-eslintが>=18 <20のときだけoverrides/angular-18-19.jsonを上書き読込 - 合わない場合は 英語にフォールバック(壊れません)
トラブル時のチェック
- JetBrains:Manual になっているか? ESLint package が
eslint-ja-proxyか? - VS Code:
node_modules/eslintが このパッケージになっているか?(npm エイリアス) - CI:
npx eslint-jaを呼んでいるか?
よくある質問(FAQ)
Q. ルールの動きや自動修正は変わりますか?
A. 変わりません。メッセージ文字列だけを置き換えます。
Q. JetBrains専用ですか?
A. いいえ。VS Code や CLI でも使えます。
Q. 英語のまま出ることがある?
A. 未訳のときは英語になります。使いながら徐々に辞書を増やせます。
コントリビュート方法(歓迎!)
- 使ってみて、英語のまま出たメッセージを見つける
dict/の該当プラグイン(例:angular.json)にruleId > messageIdで追記data({name}など)はテンプレ{name}に置き換え- 簡単なテストを追加(1つのサンプルでヒットすればOK)
- PR を送ってください!
自動で未訳を集める仕組み(JSONL 追記)もあります。詳しくは AGENTS.md を参照。
ライセンス
MIT
