ESLint
RustRover は ESLint と連携し、プラグインで拡張可能な幅広いリントルールを提供します。 RustRover は、入力中に ESLint から報告された警告やエラーをエディターに直接表示します。 ESLint を使うことで、 JavaScript 標準スタイル や TypeScript コードのリント も利用できます。
JavaScript や TypeScript 以外にも、ESLint をプロジェクト全体または特定の部分の他の種類のファイルに適用できます。詳細は リント対象範囲の設定 をご覧ください。
始める前に
Node.js をダウンロードしてインストールします。
ESLint をインストールする
埋め込まれた ターミナル (Alt+F12 )で、次のいずれかのコマンドを入力します。
npm init @eslint/config@latestは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、RustRover は ESLint の最新バージョンをインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
npm install --save-dev eslintグローバルインストール用の
npm install --g eslint
pnpm create @eslint/config@latestは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、RustRover は ESLint の最新バージョンをインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
pnpm add -D eslintグローバルインストール用の
pnpm add -g eslint
yarn create @eslint/configは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、RustRover は ESLint の最新バージョンをインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
yarn add -D eslintグローバルインストール用の
yarn add eslint
必要に応じて、追加のプラグイン(たとえば、 eslint-plugin-react(英語) を lint React アプリケーションにインストール)をインストールします。
ESLint 公式 Web サイト(英語)の詳細を参照してください。
構成ファイル
サポートされている設定ファイルの形式
使用している ESLint バージョンによっては、RustRover は次のファイルタイプの構成を認識します:
ESLint バージョン 9 以降
eslint.config.js 、 eslint.config.mjs 、または eslint.config.cjs (フラットフォーマット) の場合は、 ESLint 公式 Web サイト(英語)から詳細を確認してください。
eslint.config.ts 、 eslint.config.mts 、 eslint.config.cts など、TypeScript で記述された構成ファイルを使用することもできます。 そのためには、 unstable_ts_config フラグを指定する必要があります。
Ctrl+Alt+S を押して設定を開き、 を選択します。
手動 ESLint 構成 を選択します。
追加 eslint オプション フィールドに
--flag unstable_ts_configと入力します。適用 をクリックして変更を保存し、ダイアログを閉じます。
ESLint バージョン 8 以前
.eslintrc.* ( .eslintrc 、 .eslintrc.json 、または .eslintrc.yaml ファイル、またはサポートされている別の形式のファイル)。
.eslintignore
package.json に
eslintIgnoreまたはeslintConfigプロパティがある場合。 この構成システムは非推奨となっています。詳細は ESLint 公式 Web サイト でご確認ください。
ESLint 設定移行ガイド(英語)からフラット形式に切り替える方法を学習します。
設定ファイルの作成と編集
プロジェクトのルートで設定ファイルを開くか、新しい設定ファイルを作成します。 使用している ESLint のバージョンに応じて設定ファイルを入力します。
// @ts-check import eslint from '@eslint/js'; import tseslint from 'typescript-eslint'; export default tseslint.config( eslint.configs.recommended, tseslint.configs.recommended, );ESLint 公式 Web サイト(英語)の詳細を参照してください。
/* eslint-env node */ module.exports = { extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'], parser: '@typescript-eslint/parser', plugins: ['@typescript-eslint'], root: true, };ESLint 公式 Web サイト(英語)の詳細を参照してください。
RustRover で ESLint を設定する
デフォルトでは、ESLint は 自動的に構成されます。 すべての構成設定を 手動で指定するか、ESLint を無効にするかを選択できます。
ESLint を自動的に構成する
自動構成では、RustRover はプロジェクトの node_modules フォルダーの ESLint パッケージと、現在のファイルが格納されているフォルダーの 構成ファイルを使用します。 現在のファイルフォルダーに 構成ファイルが見つからない場合、RustRover はプロジェクトルートまで親フォルダー内を検索します。
ESLint が依存関係として記載された package.json ファイルが複数あると、RustRover は package.json ごとに個別のプロセスを起動し、その下層のすべてを処理します。 これにより、モノレポまたは複数の ESLint 構成を持つプロジェクトの各パスに、特定の ESLint バージョンまたは特定のプラグインセットを適用できます。
現在のプロジェクトで ESLint を自動的に構成するには、 設定 ダイアログ(Ctrl+Alt+S )を開き、 に移動して、 自動 ESLint 構成 オプションを選択します。
すべての新しいプロジェクトで ESLint を自動的に構成するには、 新規プロジェクトの設定 ダイアログ( )を開き、 に移動して、 自動 ESLint 構成 オプションを選択します。
ESLint を手動で構成する
手動構成では、カスタム ESLint パッケージ・構成ファイル・作業ディレクトリを利用したり、さまざまな追加ルールやオプションを適用したりできます。
設定 ダイアログ(Ctrl+Alt+S )で、 に移動し、 手動 ESLint 構成 を選択します。
ESLint パッケージ フィールドで、 eslint または 標準パッケージの場所を指定します。
作業ディレクトリ フィールドで、ESLint プロセスの作業ディレクトリを指定します。
デフォルトではこのフィールドは空で、RustRover は作業ディレクトリーを自動的に検出します。 まず、 設定ファイルを含む lint ファイルに最も近いディレクトリを探します。
自動検出された作業ディレクトリがプロジェクト構成と一致しない場合は、作業ディレクトリ(ディレクトリ)を手動で指定する必要があります。 区切り文字としてセミコロンを使用します。 許容値は次のとおりです。
絶対パス。
プロジェクトのベースディレクトリ(RustRover 固有のプロジェクトメタデータが格納されている .idea フォルダーの親フォルダー)からの相対パス。 例:
./: プロジェクトのベースディレクトリを ESLint プロセスの作業ディレクトリとして使用します。client;server: <project_base_dir>/client および <project_base_dir>/server を作業ディレクトリとして使用します。 server フォルダーでもなく client でもないファイルの場合、作業ディレクトリは 上記のように自動検出になります。packages/*: <project_base_dir>/packages ディレクトリの各サブフォルダーは、対応する lint ファイルの作業ディレクトリとして使用されます。
一部のリント対象ファイルがフォルダー階層のプロジェクトベースディレクトリ配下に無い場合、コンテンツルートからの相対パスを利用できます。
作業ディレクトリへの相対パスを定義する Glob パターン(英語)。 例:
**/foo -*を使用すると、名前がfoo-で始まる各ディレクトリが、対応する lint ファイルの作業ディレクトリとして使用されます。
使用する構成を選択します。
自動検索: サポートされている形式の 構成ファイルで ESLint ルールが構成されている場合は、このオプションを選択します。
RustRover は、チェック対象ファイルが保存されているフォルダーから検索を開始し、親フォルダー、そしてプロジェクトルートまで、そのようなファイルを探します。
構成ファイル - このオプションを選択してカスタムファイルを使用し、 パス フィールドでファイルの場所を指定します。
ESLint 公式 Web サイト(英語)から ESLint を設定する方法の詳細を参照してください。
オプション:
追加 eslint オプション フィールドで、ESLint を実行するための追加コマンドラインオプションをスペース区切りで指定します。 たとえば TypeScript で記述された構成ファイル を使う場合は、
--flag unstable_ts_configと入力します。ESLint 公式 Web サイト(英語)の ESLint CLI オプションの詳細を参照してください。
追加ルールディレクトリ フィールドで、追加のコード検証ルールを含むファイルの場所を指定します。 これらのルールは、デフォルトの構成ファイルまたはカスタム構成ファイルのルールの後に適用され、それに応じてそれらのルールを上書きします。
ESLint 構成ファイル(英語)と ルールの追加(英語)の詳細については、ESLint の公式 Web サイトを参照してください。
lint スコープを構成する
設定 ダイアログ(Ctrl+Alt+S )を開き、 に移動して、 自動 ESLint 構成 または 手動 ESLint 構成 を選択します。
ファイルに対して実行 フィールドで、リントするファイルのセットを定義するパターンを指定します。 デフォルトのパターンを受け入れるか、カスタムパターンを入力できます。
デフォルトのパターンである
**/*.{js,ts,jsx,tsx,cjs,cts,mjs,mts,html,vue}を使用すると、ESLint が起動し、更新された JavaScript、TypeScript、JSX、TSX、HTML、Vue ファイルを処理します。 他のタイプのファイルまたは特定のフォルダーに保存されているファイルをリントするには、 glob パターン(英語)を使用してデフォルトのパターンを更新します。例: CoffeeScript ファイルも自動的に lint するには、次のように
coffeeをデフォルトのパターンに追加します。**/*.{js,ts,jsx,tsx,cjs,cts,mjs,mts,html,vue,coffee}サブフォルダーを含む特定のフォルダーからファイルを lint する場合は、
**/*を<path to the folder>/**/*に置き換えます。例えば、次のような構造のプロジェクトがあるとします:

coffee フォルダー内のファイルのみをリントするには、次のようにパターンを更新します。
coffee/*.{js,ts,jsx,tsx,cjs,cts,mjs,mts,html,vue,coffee}その結果、ファイル lint.coffee はリントされますが、 no_lint .coffee はリントされません。
保存時に問題を自動的に修正
ESLint は、変更が手動で Ctrl+S を使用して保存されるたび、または実行/デバッグ構成を起動したり、RustRover を閉じたり、バージョン管理アクションを実行したりして自動的に保存されるたびに、検出された問題を修正できます。詳細については、 自動保存を参照してください。
設定 ダイアログ(Ctrl+Alt+S )を開き、 に移動して、 保存時に eslint --fix を実行 チェックボックスを選択します。
コードの Lint
ESLint をインストールして有効にすると、JavaScript ファイルを開くたびに ESLint が自動的に起動します。 保存時に問題を自動的に検出して修正するように ESLint を構成することもできます。
デフォルトでは、RustRover は ESLint 構成で設定された重大度レベルに基づいて検出された問題をマークします。 これらの設定を無効にする方法については、 ESLint ハイライトの設定を参照してください。
現在のファイルで検出されたエラーの説明とそれらのクイックフィックスは、エディターおよび 問題ツールウィンドウの ファイル タブから入手できます。
以前に開いたすべてのファイルのエラーとそれらのクイックフィックスは、 問題 ツールウィンドウの プロジェクトエラー タブに表示されます。 ツールウィンドウを開くには、エディターの右上隅にある インスペクション ウィジェットをクリックします。

詳細については エディターで問題を表示しクイックフィックスを適用 および 問題ツールウィンドウを参照してください。
エディターで問題を表示してクイックフィックスを適用する
問題の説明を表示するには、ハイライトされたコード上にマウスを載せてください。

検出された問題を解決するには、 ESLint: 「<rule name>」を修正する。 をクリックするか、 Alt+Shift+Enter を押します。
現在のファイルで検出されたすべての問題を解決するには、 その他のアクション (Alt+Enter )をクリックして、リストから を選択します。

詳細は、 エディターで問題を表示してクイックフィックスを適用するを参照してください。
このファイルが保存されるときにファイル内のすべての問題を修正するように ESLint を構成することもできます。 このような動作を構成するには、 RustRover での ESLint の有効化と構成で説明されているとおり、 設定 ダイアログの ESLint ページで 保存時に eslint --fix を実行 チェックボックスを選択します。
問題ツールウィンドウでコードをリントする
問題 ツールウィンドウを開くには、エディターの右上隅にある インスペクション ウィジェットをクリックします。

または、メインメニューから を選択するか、 Alt+6 を押します。
ファイル タブでは、問題の説明の閲覧、クイックフィックスの適用、エラー発生箇所のソースコード断片へのナビゲート、ツールウィンドウを離れず エディタープレビュー ペインでの修正が可能です。 問題ツールウィンドウから詳細を参照してください。

プロジェクトエラー タブでは、現在のセッション中に開かれたすべてのファイルのエラーが表示され、エラーメッセージが検出されたファイルごとにグループ化されます。

ここでは、問題の説明を表示したり、クイックフィックスを適用したり、エラーが発生したソースコードのフラグメントに移動したり、ツールウィンドウを移動せずに エディタープレビュー ペインでフラグメントを修正したりできます。 問題ツールウィンドウの詳細をご参照ください。
ESLint のハイライトを構成する
デフォルトでは、RustRover は ESLint 設定の重大度レベルに基づき、検出されたエラーや警告をマークします。 例: エラーは赤色の波線でハイライトされ、警告は黄色の背景でマークされます。
ESLint 構成のルールの重大度レベルを変更する
設定ファイルで、編集するルールを見つけて、その値を
1warnまたは2エラーに設定します。ESLint 公式 Web サイト(英語)の詳細を参照してください。
構成から重大度レベルを無視する
ESLint 構成の重大度を上書きして、RustRover がそれを無視し、リンターから報告されたすべてをエラーや警告、またはカスタムカラーとして表示することもできます。

構成から重大度レベルを無視する
設定 ダイアログ(Ctrl+Alt+S )で、 を選択します。 インスペクションページが開きます。
中央ペインで、 JavaScript | コード品質ツール | ESLint に移動します。
右側のペインで、 構成ファイルのルール重要度を使用する チェックボックスをオフにし、デフォルトのものの代わりに使用する重大度を選択します。
ESLint からコードスタイルをインポート
ESLint コードスタイルルール の一部を RustRover の JavaScript コードスタイル設定 にインポートできます。 これにより、コードの自動補完、生成、リファクタリング、インポート文追加の際に、RustRover はプロジェクトのためにより正確なコードスタイルオプションを利用できます。 再フォーマット アクションを使用すると、RustRover は ESLint の観点から正しくフォーマットされたコードを壊さなくなります。
RustRover はすべての公式形式の ESLint 構成を理解します。上記の ESLint 設定ファイルのサポートされている形式も参照してください。
ESLint バージョン 9 以降の場合は eslint.config.js 、 eslint.config.mjs 、 eslint.config.cjs 、 eslint.config.ts 、 eslint.config.mts 、または eslint.config.cts (フラット形式)。
ESLint バージョン 8 以前の
eslintConfigプロパティを持つ .eslintrc ファイルと package.json ファイル。
ESLint 公式 Web サイト(英語)の詳細を参照してください。
プロジェクトを初めて開くと、RustRover はプロジェクトの ESLint 構成からコードスタイルを自動的にインポートします。
ESLint の設定が(手動またはバージョン管理から)更新されている場合は、それをエディターで開き、コンテキストメニューから ESLint コードスタイルルールの適用 を選択します。

または、ファイルの上部にある "ESLint からコードスタイルを適用しますか?" の質問に はい と答えるだけです。
適用されたルールのリストは、 通知 ツールウィンドウに表示されます。

JavaScript 標準スタイルを使う
JavaScript 標準スタイル をアプリケーションのデフォルト JavaScript コードスタイルとして設定すれば、コード入力や整形時に主なルールが適用されます。 Standard は ESLint ベースのため、RustRover の ESLint 連携を通じて Standard も利用できます。
JavaScript Standard をインストール
組み込み ターミナル (Alt+F12) で次のように入力します。
npm install standard --save-devJavaScript 標準スタイル公式サイト(英語)の詳細を参照してください。
Standard 経由で ESLint によるリントを有効にする
プロジェクトの package.json ファイルに standard が記載されたプロジェクトを開いた場合、RustRover は自動で Standard によるリントを有効にします。
設定 ダイアログ (Ctrl+Alt+S) で、 に進みます。
表示された ESLint ページで、 手動 ESLint 構成 を選択し、 ESLint パッケージ フィールドに
standardパッケージの場所を指定します。
JavaScript 標準スタイルをデフォルトとして設定
設定 ダイアログ (Ctrl+Alt+S) で、 に進みます。
JavaScript ページで 選択して設定 をクリックし、次に JavaScript 標準スタイル を選択します。 スタイルは現在のスキームを置き換えます。