ReSharper 2019.2ヘルプ

Web Linterでコードの検証

ReSharperは、Webコード品質ツール(linterとも呼ばれます) - JSLint、ESLint、およびTSLintと統合して、コード内のさらに多くの問題を検出して修正できます。

Linterはコマンドラインツールとして設計されているため、通常はコードを検証するたびに、コンソールに移動してコマンドラインを実行し、そのテキスト出力を調べる必要があります。
ReSharperとは違います。linterがReSharper設定でインストールされて有効にされると、linterコード規則はReSharper自身のコードインスペクションと一緒に使用され、linterによって検出されたすべてのコード課題はエディターデザインタイムで強調表示されます。

下の表は、異なるリンターがサポートされているコンテキストを示しています。

JavaScript

HTMLのJSコード

ASPXのJSコード

TypeScript

JSON

JSLint

SupportedSupportedSupportedNot supportedSupported

ESLint

SupportedSupportedSupportedNot supportedNot supported

TSLint

SupportedSupportedSupportedSupportedNot supported

エディターでWebリンターの検証を有効にするには

  1. Node.js(英語)インタープリターをインストールします。これを行う最も簡単な方法は、Visual Studio用のNode.jsツール(英語)をインストールすることです。

  2. In most cases, ReSharper will find the Node.js interpreter automatically. If it is installed in an uncommon location, specify it on the ツール| Node.js page of ReSharper options ( Alt+R,,O )

  3. プロジェクトに目的のlinterパッケージをインストールしてください。

  4. ツール | Web Linterの目的のlinterオプションページを開き、linterを有効にします。

  5. プロジェクトに node_modules フォルダーがある場合、ReSharperは自動的にlinterパッケージを見つけます。しかし、カスタムリンターフォルダーを指定することもできます。

  6. If you use ESLint or TSLint, ReSharper will take all rules and settings from linter configuration files. By default, these files are found automatically but you can also specify a custom configuration file.

    If the automatic search is enabled and the linter does not work, make sure that the configuration files are in the current directory and/or its parent directories, or in the user home directory:

    • ESLintの場合: .eslintrc.* ファイルまたは package.jsoneslintConfig フィールド。

    • TSLintの場合: tslint.json , tslint.yamlまたは tslint.yml

  7. 追加のコマンドラインオプションをスペースで区切って渡すこともできます(JSLint(英語)ESLint(英語)、およびTSLint(英語)のコマンドラインオプションのリファレンスを参照)。
    linterの実行方法に影響するいくつかのオプションは適用できないことに注意してください。例:ReSharperはlinter修正を適用するための独自の方法を提供するため、--fix は無視されます。

  8. If you use TSLint, ReSharper will enable the linter in TypeScript and JavaScript code by default. To use it in TypeScript code only, clear the corresponding checkbox.

linterサポートを設定すると、linterによって検出されたコードの課題が、対応するルールの重大度レベル(エラーレベル)に従ってエディター内で強調表示されます。

ReSharper: highlighting a code issue detected by ESLint

リンターがルールの修正を提供する場合は、Alt+Enter メニューから直接適用することができます:

ReSharper: fixing a code issue detected by ESLint

Alt+Enter メニューからインスペクション: [名] | インスペクションの重大度を設定する | [重大度]を選択することもできます - これはlinter設定ファイルに対応するルールの新しい重大度レベル(エラーレベル)を書き込みます。

この機能は、次の言語とテクノロジでサポートされています。

Language: C#Language: VB.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is not availableFeature is not availableFeature is not availableFeature is availableFeature is availableFeature is not availableFeature is availableFeature is availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is available
最終更新日: 2019年10月15日

関連ページ:

コード・インスペクション

ReSharperはサポートされているすべての言語で2500以上のインスペクションを提供します。これらのインスペクションは、開いているすべてのファイルで設計時にコードの課題を検出して強調表示するため、および/または特定の範囲内ですべてのコードの課題を見つけるために使用されます。インスペクション Re...

設計時にコード課題を検出

ReSharperは、エディターでコード・ファイルを開くとすぐに分析を開始し、最後まで編集を続けます。検出されたすべてのコードの課題は、重大度に従ってエディターで強調表示されます。課題のマップは、エディターウィンドウの右側のマーカーバーにも表示されます。ここでは、ファイルのステータスを即座に確認し、...

特定の範囲のコード課題を見つける

設計時コードインスペクションは、エディターでコーディングしたり、特定のファイルを見直したりするときに役立ちます。ただし、ReSharperを使用すると、ソリューション全体または狭い範囲でスタティックコード分析を実行し、結果をフレンドリーな視点で調べることもできます。必要に応じてインスペクション結果を...

InspectCodeコマンドラインツール

ReSharperの最も注目すべき機能の1つであるコードインスペクションは、Visual Studioを開かなくても利用できます。無料のコマンドラインツールであるInspectCodeでは、ReSharperのインスペクションをすべて適用するために、最低1つのパラメータ(ソリューションファイル)が必...

ソリューション全体の分析

ソリューション全体の分析では、プロジェクトのコンパイルを妨げないものを含め、サポートされているすべての言語でエラーが検出されます。プロジェクトにこのようなファイル(JavaScript、CSS、HTMLなど)が含まれている場合、ソリューション全体の分析は、それ以外の場合は実行時にのみ検出される可能性...

異なる言語でのReSharperの機能

以下の表は、各ReSharper機能がサポートされている言語/技術を説明しています。言語固有の機能のみを一覧表示し、プロジェクト依存関係図、名前空間の調整リファクタリング、スタックトレースエクスプローラー、最近のファイルを見るなどのプロジェクト/ソリューションのスコープには多くの機能は含まれていませ...