Home > Editor > Visual Studio Code > ドキュメント

VS Code で、JSONを使用する

新規作成日 2015-12-27
最終更新日

原文

JSON(外部サイト)

訳文

JSONは、package.jsonやproject.jsonのような、設定ファイルで一般的なデータフォーマットです。 また、私たちは、VS Codeで、私たちの設定ファイルのために、それを、広範囲に使用します。 .jsonで終わるファイルを開くとき、VS Codeは、記述することを、ファイルの内容を変更して、より簡単にするために、すぐに使える機能を提供します。

JSONは、package.jsonやproject.jsonのような、設定ファイルで一般的なデータフォーマットです。

JSONコメント

JSON Comments

JSONのコメントは、VS CodeでサポートされるJSON仕様への拡張です。あなたは、単一行(//)を使用できるのと同様に、 JavaScriptで使用されるように、ブロック・コメント(/* */)も使用できます。

IntelliSenseと妥当性検証

IntelliSense & Validation

プロパティと値(Ctrl+Space)については、JSONデータための、そして、スキーマーなしの両方で、私たちは、あなたが、インテリセンスで入力する提案を提供します。 また、私たちは、あなたに、赤いなぐり書きを与える、関連するJSONスキーマーに基づいて、構造と値の検証を行います。

構造と値の検証

パッケージとプロジェクトの依存関係

Package and Project Dependencies

また、私たちは、特定の値を設定するために、package.json、project.json、bower.json内のパッケージとプロジェクトの依存関係のような、IntelliSenseを提供します。

簡単なナビゲーション

Quick Navigation

JSONファイルは、かなり大きくなることがあります。そして、私たちは、コマンド・パレットで、プロパティCtrl+Shift+O(記号へ移動)への簡単な移動をサポートしています。

コマンド・パレットで、プロパティCtrl+Shift+O(記号へ移動)への簡単な移動をサポートしています。

ホバー

Hovers

あなたが、スキーマーの有無に関係なく、JSONデータのためのプロパティと値の上にカーソルを重ねると、私たちは、追加のコンテキストを提供するでしょう。

許容された値の切り換え

フォーマッティング

Formatting

あなたは、Shift+Alt+Fを使用して、JSON文書の書式を設定することができます。あるいは、コンテキストメニューからドキュメントをフォーマットします。

JSONスキーマーと設定

JSON Schemas & Settings

JSONファイルの構造を理解するために、私たちは、JSONスキーマーを使用します。 JSONスキーマーは、JSONファイルの形状だけでなく、値の設定、既定の値と説明もまた説明します。

JSONスキーマー・ストアのようなサーバは、最も一般的なJSONに基づく設定ファイルのための、スキーマーを提供します。 しかしながら、また、スキーマーは、VS Codeの設定ファイルだけでなく、VS Codeの作業スペースでもファイルを定義することができます。

スキーマーへのJSONファイルの関連付けは、プロパティjson.schemas.の下で、$schema属性を使用して、JSONファイルそれ自身の中で、 あるいは、ユーザー、あるいは、作業スペース設定(設定ファイル > 設定 > ユーザー設定、あるいは、作業スペース設定)で、どちらでも実行できます。

また、VS Codeの拡張は、スキーマーとスキーマー・マッピングを定義することができます。 それは、package.json、bower.json、とtsconfig.jsonのような、 VS Codeが、既に、いくつかの良く知られたJSONファイルのスキーマーを知っている理由です。

JSONのマッピング

Mapping in the JSON

次の例では、JSONファイルは、その内容が、CoffeeLintスキーマーに従うことを指定します。

{
   "$schema": "http://json.schemastore.org/coffeelint",
   "line_endings": "unix"
}

ユーザー設定のマッピング

Mapping in the User Settings

http://json.schemastore.org/babelrc.の上で配置されるbabelrcスキーマーに、 .babelrc ファイルがマッピングされる方法を、ユーザー設定からの次の抜粋は、表示します。

"json.schemas": [
    {
        "fileMatch": [
            "/.babelrc"
        ],
        "url": "http://json.schemastore.org/babelrc"
    },

ヒント:

さらに、.babelrcのためのスキーマーを定義するために、 また、.babelrcが、JSON言語モードに関連付けられることを確認します。 また、これは、files.association配列設定を使用する設定で行われます。

ヒント:

設定の概要については、ユーザーと作業スペース設定を参照してください。

作業スペースの中に、スキーマーをマッピングする

Mapping a Schema in the Workspace

作業スペースに配置されたスキーマーをマッピングするために、相対パスを使用します。 この例では、myschema.jsonと呼ばれる作業スペース・ルートのファイルは、 .foo.jsonで終わるすべてのファイルのためのスキーマーとして使用されるでしょう。

"json.schemas": [
    {
        "fileMatch": [
            "/*.foo.json"
        ],
        "url": "./myschema.json"
    },

設定で定義されるスキーマーへのマッピング

Mapping to a Schema Defined in Settings

マッピングするためのスキーマーは、スキーマー・プロパティを使用して、 ユーザー、あるいは、作業スペース設定で定義されます。この例では、 .myconfigという名前のすべてのファイルのために使用されるスキーマーが、定義されます。

"json.schemas": [
    {
        "fileMatch": [
            "/*.foo.json"
        ],
        "url": "./myschema.json"
    },

拡張機能内のスキーマーをマッピングする

Mapping a Schema in an Extension

また、スキーマーとスキーマーの関連付けは拡張機能によって定義することができます。jsonValidation投稿ポイントを確認します。

"json.schemas": [
    {
        "fileMatch": [
            "/.myconfig"
        ],
        "schema": {
            "type": "object",
            "properties": {
                "name" : {
                    "type": "string",
                    "description": "The name of the entry"
                }
            }
        }
    },

JSONスキーマーでスニペットを定義する

Define Snippets in JSON Schemas

JSONスキーマーでは、JSONファイルの形状だけでなく、補完の提案を提供するために、JSON言語サポートによって使用される値の設定と既定の値を記述します。 あなたが、作成者のスキーマーで、さらに多くのカスタマイズされた補完の提案を提供したい場合、 また、あなたは、スキーマーのスニペットを指定することができます。 次の例は、スニペットを定義している、私たちキー割り当て設定ファイルのスキーマーを示します。:

{
    "type": "array",
    "title": "Keybindings configuration",
    "items": {
        "type": "object",
        "required": ["key"],
        "defaultSnippets": [
            {
                "label": "New keybinding",
                "description": "Binds a key to a command for a given state",
                "body": { "key": "$1", "command": "$2", "when": "$3" }
            }
        ],
        "properties": {
            "key": {
                "type": "string",
            }
            ...
        }
    }
};

与えられたJSONオブジェクトのための多くのスニペットを指定するために、プロパティdefaultSnippetsを使用します。

  • ラベルと説明は、補完選択ダイアログに表示されます。ラベルが提供されない場合、スニペットの文字列表現されたオブジェクト表示は、代わりにラベルとして表示されます。
  • bodyは、補完が、ユーザーによって選択されるとき、文字列化されて挿入されるJSONオブジェクトです。 スニペットの構文は、内部の文字列リテラルをタブ・ストップ、プレースホールダーと変数に定義するために、使用することができます。 文字列が、^で始まる場合、文字列の内容は、文字列化されずにそのまま挿入されます。あなたは、これを使用して、数値とブール値のスニペットを指定できます。

JSON拡張機能

JSON Extensions

加えて、あなたは、より素晴らしい機能のために、拡張機能をインストールすることができます

C# C/C++ ES lint Beautify

ヒント:

上記の拡張機能は、動的に問い合わせられます。どの拡張機能が、あなたに最も良いか決定するために説明とレビューを読み、 そして、上記の拡張機能のタイルをクリックします。詳細については、Marketplaceを参照してください。

次の手順

Next Steps

以下について調べるためにお読みください:

カスタム化-あなたが、望む方法で作業するために、VS Codeをカスタマイズします

Home Editor Tools Operation TagScript HPSpace

Copyright (C) 2011 Horio Kazuhiko(kukekko) All Rights Reserved.
kukekko@gmail.com
ご連絡の際は、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません。」