IntelliJ IDEA 2021.1 ヘルプ

JSON

JSON(英語) 形式は、データの保存と構成ファイルに一般的に使用されます。IntelliJ IDEA は、JSON ファイルの操作を支援します。構文とフォーマットをチェックします。一般的なタイプの構成ファイルでは、IntelliJ IDEA はコード補完を提供します。JSON スキーマ(英語)は、そのようなファイルの構造と内容を記述するための特別な形式です。カスタム JSON スキーマを使用して、JSON ファイルでコード補完を有効にして検証することもできます。

JSON5 を有効にする

IntelliJ IDEA は、JSON5(英語) を含む多くの最も一般的な JSON 標準を認識しています。IntelliJ IDEA はデフォルトで json5 拡張子を持つファイルを JSON5 ファイルとして扱い、この新しい構文をサポートしています。

Configuration file that uses JSON5 with the default extension .json5

JSON5 構文をすべての JSON ファイルに拡張する

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、エディター | ファイルタイプに移動します。

  2. 認識されたファイルタイプリストで、JSON5 を選択します。

  3. ファイル名のパターン領域で、Add をクリックし、開くワイルドカードの追加ダイアログに *.json と入力します。

JSON Schema Store のスキーマを使用する

IntelliJ IDEA は、一般的な設定ファイルのスキーマファイルをホストする JSON Schema Store(英語) からスキーマを自動的にダウンロードして使用することができます。使用可能なスキーマ( tslint.json など)の 1 つに名前が関連付けられているファイルを開くと、IntelliJ IDEA はこのスキーマをダウンロードして使用します。適用されたスキーマの名前がステータスバーに表示されます。

JSON schema downloaded from JSON Schema Store, the name of the applied schema is shown in the Status bar

構成ファイルにカスタム名がある場合、またはスクラッチファイルを使用している場合は、ステータスバーの JSON スキーマがありませんをクリックしてリストから必要なスキーマを選択するか、新しいスキーママッピングをクリックして JSON スキーママッピングページを開き、新しいカスタムスキーマを構成します。

No JSON schema for the current file

デフォルトでは、JSON Schema Store からのスキーマの自動ダウンロードが有効になっています。何らかの理由で電源を切ってしまった場合は、いつでも再び有効にすることができます。

JSON Schema Store からのスキーマの自動ダウンロードを有効にする

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、言語およびフレームワーク | スキーマと DTD | リモート JSON スキーマに移動します。

  2. リモートソースからの JSON スキーマのダウンロードを許可するschemastore.org JSON スキーマカタログを使用するチェックボックスを選択します。

IntelliJ IDEA には、多くの一般的なスキーマがバンドルされています。これらのスキーマは定期的に自動的に更新されますが、古くなっている可能性があります。

バンドルされているスキーマの最新バージョンを使用する

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、言語およびフレームワーク | スキーマと DTD | リモート JSON スキーマに移動します。

  2. 常に最新バージョンのスキーマをダウンロードするチェックボックスを選択します。

カスタム JSON スキーマの使用

JSON Schema Store のスキーマに加えて、IntelliJ IDEA を使用すると、他のストレージのカスタムスキーマを構成して使用できます。必要なスキーマをダウンロードしてプロジェクトルートに保存するか、リソースの URL を指定して、IntelliJ IDEA がスキーマを自動的にダウンロードできるようにすることができます。

カスタム JSON スキーマを構成する

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、言語およびフレームワーク | スキーマと DTD | JSON スキーママッピングに移動します。

  2. 中央ペインには、以前に設定したすべてのカスタムスキーマが表示されます。ツールバーの Add をクリックします。

  3. スキーマの名前と、スキーマが準拠するスキーマ仕様バージョン(英語)を指定します。スキーマファイルまたは URL フィールドには、以前にダウンロードしたスキーマファイルの場所を指定するか、必要なスキーマが利用できる URL を入力します。

  4. このスキーマに対して検証するファイルまたはフォルダーのリストを作成します。リストには、特定のファイルの名前、ディレクトリ全体の名前、およびファイル名のパターンが含まれている場合があります。このリストに基づいて、IntelliJ IDEA は内部的に検証されるファイルを検出します。

    リストに項目を追加するには、Add mapping をクリックし、ファイルまたはフォルダーへのパスを指定するか、ファイルパターンを入力します。

リモートソースからの JSON スキーマの自動ダウンロードを有効にする

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、言語およびフレームワーク | スキーマと DTD | リモート JSON スキーマに移動します。

  2. リモートソースからの JSON スキーマのダウンロードを許可するを選択します。

    チェックボックスをオフにすると、JSON Schema Store のスキーマを含む、JSON スキーマに関するネットワークアクティビティが無効になります。

スキーマのスコープ間の競合の処理

ファイル、フォルダー、パターンが 2 つ以上のスキーマのスコープに属している場合に競合が発生します。IntelliJ IDEA は 2 つのモードでスコープを分析します。

  • 静的解析はカスタムスキーマのスコープの競合を検出します。競合が検出されると、IntelliJ IDEA はスキーマの詳細ペインに警告を表示します。重なっているスコープを表示するには、詳細の表示リンクをクリックしてください。IntelliJ IDEA は、矛盾するスコープとスキーマがリストされているメッセージ付きのポップアップを表示します。

    Notification about conflicting schema scopes in Settings/Preferences dialog

  • 動的解析は、システムスキーマとカスタムスキーマの両方のスコープで競合を検出します。このタイプの分析は、特定のスコープに属するファイルを開くと開始されます。競合が検出された場合、IntelliJ IDEA はエディタータブの上部に警告を表示します。

    Notification about conflicting schema scopes in the editor
    リンクをクリックして JSON スキーママッピングページを開き、競合するカスタムスキーマのスコープを編集します。システムスキーマのスコープは編集できないことに注意してください。

JSON スキーマでの HTML 記述の使用

ドキュメントポップアップで JSON スキーマ定義のドキュメントを表示すると、IntelliJ IDEA はデフォルトで HTML 文字をエスケープします。豊富な HTML マークアップを持つ見栄えの良いドキュメントを得るために、description の代わりに x-intellij-html-description 拡張プロパティに HTML 記述を保管してください。

{ "id": "http://some.site.somewhere/entry-schema#", "$schema": "http://json-schema-org/draft-06/schema#", "type": "object", "required": [ "options" ], "properties": { "options": { "type": "array", "description": "Interesting details: Fresh New Awesome", "minItems": 1, "items": { "type": "string" }, "uniqueItems": true, }, "readonly": { "type": "boolean" } } }
No formatting in documentation for JSON schema definitions with description property
{ "id": "http://some.site.somewhere/entry-schema#", "$schema": "http://json-schema-org/draft-06/schema#", "type": "object", "required": [ "options" ], "properties": { "options": { "type": "array", "x-intellij-html-description": "<p><b>Interesting</b> <i>details:</i></p>\n <ul><li>Fresh</li><li>New</li><li>Awesome</li></ul>\n <div style='background-color: #fff77c'>Choose schema with HTML description =)</div>", "minItems": 1, "items": { "type": "string" }, "uniqueItems": true, }, "readonly": { "type": "boolean" } } }
HTML descriptions in documentation for JSON schema definitions with x-intellij-html-description property

構文ハイライトの構成

好みや習慣に応じて JSON 対応の構文ハイライトを設定できます。

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、エディター | カラースキーム | JSON に移動します。

  2. 配色を選択するか、デフォルトから継承されたハイライト設定を受け入れるか、または色とフォントの構成の説明に従ってカスタマイズします。

関連ページ:

スクラッチファイル | IntelliJ IDEA

場合によっては、一時的なメモを作成するか、プロジェクトコンテキストの外でコードを作成する必要があります。この目的で別のアプリケーションに切り替える代わりに、スクラッチファイルとスクラッチバッファーを使用できます。スクラッチファイルは、構文ハイライト、コード補完、対応するファイルタイプの他のすべての機能をサポートする、完全に機能し、実行可能で、デバッグ可能なファイルです。例: 1 つのプロジェクトで作業しているときに、別のプロジェクトで後で使用できる方法のアイデアを考え出すことができます。メソッド...

色とフォントの構成 | IntelliJ IDEA

開発者として、エディターのソースコード、検索結果、デバッガー情報、コンソールの入出力など、多くのテキストリソースを使用します。色とフォントスタイルは、このテキストのフォーマットに使用され、一目で理解しやすくなります。IntelliJ IDEA は、好適な色とフォントを定義するカラースキームを使用しています。事前定義された配色を使用するか、あなたの好みに合わせてカスタマイズすることができます。スキームを共有することも可能です。配色を選択設定 / 環境設定ダイアログで、を選択します。配色を選択する...

Webpack | IntelliJ IDEA

IntelliJ IDEA は webpack モジュールバンドラーと統合されています。このサポートは、webpack モジュールの解決とエイリアスの解決を考慮に入れることにより、JavaScript ファイルのコーディング支援を改善します。webpack 構成が異なる複数のモジュールで構成されるプロジェクトでは、IntelliJ IDEA は各モジュールに関連する構成ファイルを自動的に検出し、そこからモジュール解決ルールを使用できます。以下の使用する webpack 構成ファイルの指定を参照してく...

Liquid | IntelliJ IDEA

IntelliJ IDEA は Liquid テンプレート言語をサポートし、次の機能を備えています。構文とエラーのハイライト、波括弧区切り文字の自動クローズ、Liquid タグ(Shopify と Jekyll タグを含む)およびフィルター用の自動補完、コードのフォーマット、/ を使用したコードの行とブロックのコメント / コメント解除、コードの折りたたみ、ライブテンプレート (コードスニペット)、Liquid プラグインをインストールして有効にする:IntelliJ IDEA で Liquid テン...