ESLint
GoLand は ESLint と連携し、幅広いリントするルールを提供します。これらはプラグインで拡張することも可能です。 GoLand は、入力時に ESLint が報告した警告やエラーをエディター内に表示します。 ESLint では JavaScript 標準スタイル や TypeScript コードのリント も利用できます。
JavaScript や TypeScript 以外にも、ESLint はプロジェクト全体やその特定部分の他の種類のファイルにリントすることができます。詳しくは リント対象のスコープを構成 を参照してください。
始める前に
Node.js をダウンロードしてインストールします。
ESLint をインストールする
埋め込まれた ターミナル (Alt+F12 )で、次のいずれかのコマンドを入力します。
npm init @eslint/config@latestは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、GoLand は最新バージョンの ESLint をインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
npm install --save-dev eslintグローバルインストール用の
npm install --g eslint
pnpm create @eslint/config@latestは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、GoLand は最新バージョンの ESLint をインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
pnpm add -D eslintグローバルインストール用の
pnpm add -g eslint
yarn create @eslint/configは現在のプロジェクトに ESLint をインストールし、構成ファイルを生成します。ウィザードの質問に答えます。 その結果、GoLand は最新バージョンの ESLint をインストールし、 eslint.config.js 構成ファイルを生成します。
開発依存関係として ESLint をインストールするための
yarn add -D eslintグローバルインストール用の
yarn add eslint
必要に応じて、追加のプラグイン(たとえば、 eslint-plugin-react(英語) を lint React アプリケーションにインストール)をインストールします。
ESLint 公式 Web サイト(英語)の詳細を参照してください。
構成ファイル
サポートされている設定ファイルの形式
使用している ESLint のバージョンに応じて、GoLand は次のファイルタイプ内の構成を認識します:
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 公式サイトをご覧ください。
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 サイト(英語)の詳細を参照してください。
GoLand で ESLint を設定する
デフォルトでは、ESLint は 自動的に構成されます。 すべての構成設定を 手動で指定するか、ESLint を無効にするかを選択できます。
ESLint を自動的に構成する
自動構成では、GoLand はプロジェクトの node_modules フォルダーの ESLint パッケージと、現在のファイルが保存されているフォルダーの 構成ファイルを使用します。 現在のファイルのフォルダーに 構成ファイルが見つからない場合、GoLand はプロジェクトルートまで親フォルダー内で構成ファイルを探します。
ESLint が依存関係として記載された package.json ファイルが複数ある場合、GoLand は package.json ごとに個別のプロセスを起動し、その下のすべてを処理します。 これにより、モノレポまたは複数の ESLint 構成を持つプロジェクトの各パスに、特定の ESLint バージョンまたは特定のプラグインセットを適用できます。
現在のプロジェクトで ESLint を自動的に構成するには、 設定 ダイアログ(Ctrl+Alt+S )を開き、 に移動して、 自動 ESLint 構成 オプションを選択します。
すべての新しいプロジェクトで ESLint を自動的に構成するには、 新規プロジェクトの設定 ダイアログ( )を開き、 に移動して、 自動 ESLint 構成 オプションを選択します。
ESLint を手動で構成する
手動構成では、カスタム ESLint パッケージや構成ファイル、作業ディレクトリの指定、そしてさまざまな追加ルールやオプションを適用できます。
設定 ダイアログ(Ctrl+Alt+S )で、 に移動し、 手動 ESLint 構成 を選択します。
ESLint パッケージ フィールドで、 eslint または 標準パッケージの場所を指定します。
作業ディレクトリ フィールドで、ESLint プロセスの作業ディレクトリを指定します。
デフォルトでは、このフィールドは空で、GoLand が作業ディレクトリを自動的に検出します。 まず、 設定ファイルを含む lint ファイルに最も近いディレクトリを探します。
自動検出された作業ディレクトリがプロジェクト構成と一致しない場合は、作業ディレクトリ(ディレクトリ)を手動で指定する必要があります。 区切り文字としてセミコロンを使用します。 許容値は次のとおりです。
絶対パス。
プロジェクトのベースディレクトリ(GoLand 固有のプロジェクトメタデータが格納された .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 ルールが構成されている場合は、このオプションを選択します。
GoLand は、チェック対象ファイルの格納フォルダーから始めて、その親フォルダー、さらにプロジェクトルートに到達するまで順に、そのようなファイルを検索します。
構成ファイル - このオプションを選択してカスタムファイルを使用し、 パス フィールドでファイルの場所を指定します。
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 を使用して保存されるたび、または実行/デバッグ構成を起動したり、GoLand を閉じたり、バージョン管理アクションを実行したりして自動的に保存されるたびに、検出された問題を修正できます。詳細については、 自動保存を参照してください。
設定 ダイアログ(Ctrl+Alt+S )を開き、 に移動して、 保存時に eslint --fix を実行 チェックボックスを選択します。
コードの Lint
ESLint をインストールして有効にすると、JavaScript ファイルを開くたびに ESLint が自動的に起動します。 保存時に問題を自動的に検出して修正するように ESLint を構成することもできます。
デフォルトでは、GoLand は ESLint 構成の重要度レベルに基づいて検出された問題をマークします。 これらの設定を無効にする方法については、 ESLint ハイライトの設定を参照してください。
現在のファイルで検出されたエラーの説明とそれらのクイックフィックスは、エディターおよび 問題ツールウィンドウの ファイル タブから入手できます。
以前に開いたすべてのファイルのエラーとそれらのクイックフィックスは、 問題 ツールウィンドウの プロジェクトエラー タブに表示されます。 ツールウィンドウを開くには、エディターの右上隅にある インスペクション ウィジェットをクリックします。

エディターで問題を表示してクイックフィックスを適用する
問題の説明を表示するには、ハイライトされたコードにカーソルを合わせます。

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

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

または、メインメニューから を選択するか、 Alt+6 を押します。
ファイル タブで問題の説明を確認し、クイックフィックスを適用して、エラーが発生したソースコードの断片に移動したり、 エディタープレビュー ペインでツールウィンドウを閉じずに問題を修正したりできます。 問題ツールウィンドウから詳細を参照してください。

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

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

構成から重大度レベルを無視する
設定 ダイアログ(Ctrl+Alt+S )で、 を選択します。 インスペクションページが開きます。
中央ペインで、 JavaScript | コード品質ツール | ESLint に移動します。
右側のペインで、 構成ファイルのルール重要度を使用する チェックボックスをオフにし、デフォルトのものの代わりに使用する重大度を選択します。
ESLint からコードスタイルをインポート
一部の ESLint コードスタイルルール を GoLand の JavaScript コードスタイル設定 にインポートできます。 これにより、GoLand はコードの自動補完・生成・リファクタリングやインポートステートメント追加時に、プロジェクト向けにより正確なコードスタイルオプションを使用できます。 整形 アクションを使用すると、GoLand は ESLint の観点から適切にフォーマットされたコードを壊さなくなります。
GoLand はすべての公式形式の 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 サイト(英語)の詳細を参照してください。
初めてプロジェクトを開いた際、GoLand はプロジェクト ESLint 構成から自動でコードスタイルをインポートします。
ESLint の設定が(手動またはバージョン管理から)更新されている場合は、それをエディターで開き、コンテキストメニューから ESLint コードスタイルルールの適用 を選択します。

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

JavaScript Standard Style を使用
JavaScript Standard Style をアプリケーションのデフォルトの JavaScript コードスタイルとして設定でき、コード入力や整形時にその主要なルールが適用されます。 Standard は ESLint をベースにしているため、GoLand の ESLint 連携経由でも Standard を利用できます。
JavaScript Standard のインストール
組み込み ターミナル (Alt+F12) で次のように入力します。
npm install standard --save-devJavaScript 標準スタイル公式サイト(英語)の詳細を参照してください。
ESLint で Standard を使ってリントする機能を有効化します。
プロジェクトの package.json ファイルに 標準 が記載されているプロジェクトを開くと、GoLand は Standard でのリントする機能を自動的に有効化します。
設定 ダイアログ(Ctrl+Alt+S )で に移動します。
表示された ESLint ページで、 手動 ESLint 構成 を選択し、 ESLint パッケージ フィールドに
標準パッケージの場所を指定します。
JavaScript Standard Style をデフォルトに設定する
設定 ダイアログ(Ctrl+Alt+S )で に移動します。
JavaScript ページで 選択して設定 をクリックし、次に JavaScript 標準スタイル を選択します。 スタイルは現在のスキームを置き換えます。
Docker を使用した ESLint
GoLand を使うと、ローカルと同じ方法で Docker コンテナー内のコードに対して ESLint を実行できます。
設定 | プラグイン ページ、 マーケットプレース タブで Node.js および Node.js リモートインタープリター プラグインを、 JetBrains Marketplace からプラグインをインストールするの説明に従ってインストールしてください。
Docker を、 Docker(ドッカー) トピックの説明に従ってダウンロード、インストール、構成します。
package.json を開き、ESLint が
devDependenciesセクションにリストされていることを確認します。{ "name": "node-eslint", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www" }, "dependencies": { "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", "http-errors": "~1.6.3", "morgan": "~1.9.1", "pug": "2.0.0-beta11" }, "devDependencies": { "@eslint/js": "^9.15.0", "eslint": "^9.15.0", "globals": "^15.12.0" } }エディターの任意の場所を右クリックして、コンテキストメニューから 実行 '<パッケージマネージャー> install' を選択します。
その後、ESLint は、コードをローカルで操作する場合と同じように機能します。 検出された不一致の説明をエディターまたは 問題 ツールウィンドウで表示し、提案されたクイックフィックスを適用します。