組み込みプラグイン
Oxlint は多くの人気のある ESLint プラグインルールセットの組み込み実装を提供しています。recommended 設定にある大多数のルールは既に実装済みであるため、追加設定なしでも有用な結果を得られます。
また、Oxlint は ESLint 互換の API で書かれた JavaScript プラグインもサポートしています。JS プラグイン を参照してください。
Oxlint におけるプラグインの意味
プラグインとは、ルールの名前付きグループです。プラグインを有効化すると、そのルールが利用可能になり、カテゴリフラグによりどのルールが有効化され、どのような重大度(深刻度)で動作するかを制御できます。
ESLint から移行している場合、プラグインは既にご存じのエコシステムに対応しており、例えば import、react、jsx-a11y、jest、unicorn などがあります。
プラグインの有効化
強く推奨されるのは、プロジェクト内の他の開発者とも管理や共有が容易になるため、設定ファイルを使ってプラグインを有効化することです。
設定ファイル内で有効化
.oxlintrc.json で plugins フィールドを使用してプラグインを有効化することもできます:
{
"plugins": ["import"]
}plugins を設定すると デフォルトのプラグインセットが上書きされます。リストにはすべて有効化したいプラグインを含める必要があります。
CLI で有効化
--<plugin-name>-plugin CLI フラグを使用して、プラグインを有効化することもできます。
例:import プラグインを有効化する場合:
oxlint --import-plugin有効化後は、カテゴリフラグが何が有効になるかを決定します。
例:correctness カテゴリの import プラグインルールをエラーとして、suspicious を警告として有効化:
oxlint --import-plugin -D correctness -W suspiciouscorrectness ルールはデフォルトで有効化されています。
ヒント:全プラグインフラグの一覧を見るには oxlint --help を実行してください。
デフォルトプラグインの無効化
設定ファイル内でデフォルトプラグインを無効化
設定ファイルですべてのデフォルトプラグインを無効化するには、plugins を空配列に設定します:
{
"plugins": []
}これにより、すべてのデフォルトプラグインが無効化され、基本ルールセットのみが使用されます。
CLI でデフォルトプラグインを無効化
いくつかのプラグインはデフォルトで有効になっています。--disable-<plugin-name>-plugin を使ってデフォルトプラグインを無効化できます。
例:unicorn を無効化する場合:
oxlint --disable-unicorn-plugin無効化できるのは、デフォルトプラグインのみです。非デフォルトプラグインは単に除外すればよいです。
対応プラグイン一覧
以下の表は、組み込みプラグインとその出典を示しています。
| プラグイン名 | デフォルト | 出典 |
|---|---|---|
eslint | はい | ESLint コアルール |
typescript | はい | typescript-eslint からの TypeScript ルール(別名 @typescript-eslint/plugin)。型対応ルールは 型対応モード でアルファ版として利用可能。 |
unicorn | はい | eslint-plugin-unicorn |
react | いいえ | eslint-plugin-react および eslint-plugin-react-hooks |
react-perf | いいえ | eslint-plugin-react-perf |
nextjs | いいえ | @next/eslint-plugin-next |
oxc | はい | Oxc 特有のルールおよび deepscan から移植された選択的ルール |
import | いいえ | eslint-plugin-import(eslint-plugin-import-x と同等) |
jsdoc | いいえ | eslint-plugin-jsdoc |
jsx-a11y | いいえ | eslint-plugin-jsx-a11y |
node | いいえ | eslint-plugin-n |
promise | いいえ | eslint-plugin-promise |
jest | いいえ | eslint-plugin-jest |
vitest | いいえ | @vitest/eslint-plugin(別名:eslint-plugin-vitest) |
vue | いいえ | script タグと連携可能な eslint-plugin-vue ルール |
ルールカバレッジの現在の状況については、Lint ツールの 製品計画イシュー を参照してください。
新しいプラグインの追加
Oxlint は、組み込みプラグインおよび ESLint 互換の JavaScript プラグインを通じてエコシステムをサポートすることに注力しています。既存の組み込みプラグインにルールを追加する 貢献 を歓迎します。
新しいルールセットが組み込みプラグインとして実装されるべきだと考える場合は、まず GitHub の議論を開設 してください。
