RubyMine 2024.1 ヘルプ

JSON

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

JSON5 を有効にする

RubyMine は、JSON5(英語) を含む多くの最も一般的な JSON 標準を認識しています。RubyMine はデフォルトで 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 のスキーマを使用する

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

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 スキーマカタログを使用するチェックボックスを選択します。

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

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

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

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

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

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

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

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

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

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

  4. このスキーマに対して検証するファイルまたはフォルダーのリストを作成します。RubyMine はリストに基づいて、検証対象のファイルを内部で検出します。

    リストには、特定のファイルの名前、ディレクトリ全体の名前、ファイル名パターンが含まれる場合があります。ファイル名パターンを指定するには、次のルールを使用します。

    • role-* は、role- で始まる名前を持つすべてのファイルと一致します。

    • role-*/**/*.yaml は、role// を含む名前を持つすべての .yaml ファイルと一致します。

    • role-**.yaml は、role- で始まる名前を持つすべての .yaml ファイルと一致します。

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

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

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

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

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

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

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

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

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

    Notification about conflicting schema scopes in the editor

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

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

ドキュメントポップアップで JSON スキーマ定義のドキュメントを表示すると、RubyMine はデフォルトで 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. 配色を選択するか、デフォルトから継承されたハイライト設定を受け入れるか、色とフォントを設定する説明に従ってカスタマイズします。

関連ページ:

スクラッチファイル

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

YAML

RubyMine を使用すると、YAML ファイル(.yml、.yaml)を操作でき、次の機能がサポートされます。構文のハイライトカラー設定は、設定ダイアログ () のエディター | カラースキームの切り替え | YAML ページで変更できます。コードのフォーマット YAML に関連するコードスタイル設定には、設定ダイアログ () のエディター | コードスタイル | YAML ページでアクセスできます。InspectionsRubyMine は、重複したキー、YAML ドキュメント内の未使用のアンカ...

色とフォントを設定する

開発者は、エディターのソースコード、検索結果、デバッガー情報、コンソールの入出力など、多くのテキストリソースを操作します。このテキストのフォーマットには色とフォントスタイルが使用されており、一目で理解できるようになります。RubyMine では、IDE テキストで使用される色とフォントを定義する構成可能な配色から選択できます。事前定義された配色を使用するか、あなたの好みに合わせてカスタマイズすることができます。スキームを共有することも可能です。配色を選択を押して IDE 設定を開き、を選択する...

Puppet

RubyMine は Puppet 言語構文をサポートし、Puppet モジュールおよび環境で作業できるようにします。サポートされている主な機能は次のとおりです。Puppet 3、Puppet 4+、" id="i4i8jqx_7" data-external="true" rel="noopener noreferrer">EPP テンプレート言語など、Puppet 言語の構文をサポートしています。Puppet スタイルガイドに従った構文ハイライトとフォーマットコード。完了、リファクタリングの...