🚀 VS Codeでで入手しましょう!

拡張された色付け

Visual Studio Code C/C++拡張機能は、IntelliSenseが有効になっている場合、セマンティックカラーリングをサポートするようになりました。拡張された色付けの使用は、C_Cpp.enhancedColorization設定によって制御されます。この設定はデフォルトで有効になっています。

"C_Cpp.enhancedColorization": "enabled"

テーマ

色は、VS Codeのテーマと色のカスタマイズの既存のサポートを使用して関連付けることができます。詳細については、VS Codeのテーマに関するドキュメントを参照してください。

色は、セマンティックトークンTextMateスコープに関連付けられています。

C/C++テーマ拡張機能

Visual Studioのデフォルトのライトテーマとダークテーマによく似た、セマンティックトークンの色を含むVS Codeテーマのセットを作成しました。これらのテーマはこちらにあります。

IntelliSenseトークンとスコープ

トークン セマンティックトークン名 フォールバックTextMateスコープ
クラステンプレート templateType entity.name.type.class.templated
列挙子 enumMember variable.other.enummember
イベント(C++/CLI) event variable.other.event
関数 function entity.name.function
関数テンプレート templateFunction entity.name.function.templated
ジェネリック型(C++/CLI) genericType entity.name.type.class.generic
グローバル変数 variable.global variable.other.global
ラベル label entity.name.label
ローカル変数 variable.local variable.other.local
マクロ macro entity.name.function.preprocessor
メンバーフィールド property variable.other.property
メンバー関数 method entity.name.function.member
名前空間 namespace entity.name.namespace
New / Delete newOperator keyword.operator.new
演算子オーバーロード関数 operatorOverload entity.name.function.operator
演算子オーバーロードメンバー memberOperatorOverload entity.name.function.operator.member
パラメーター parameter variable.parameter
プロパティ(C++/CLI) cliProperty variable.other.property.cli
参照型(C++/CLI) referenceType entity.name.type.class.reference
静的メンバーフィールド property.static variable.other.property.static
静的メンバー関数 method.static entity.name.function.member.static
type entity.name.type
ユーザー定義リテラル - 数値 numberLiteral entity.name.operator.custom-literal.number
ユーザー定義リテラル - Raw customLiteral entity.name.operator.custom-literal
ユーザー定義リテラル - 文字列 stringLiteral entity.name.operator.custom-literal.string
値型(C++/CLI) valueType entity.name.type.class.value

設定で色をカスタマイズする

色は、設定でグローバルにオーバーライドすることもできます

    "editor.semanticTokenColorCustomizations": {
        "rules": {
            "templateType": {
                "foreground": "#ff0000",
                "fontStyle": "italic bold underline"
            }
        }
    }

または、テーマごとにオーバーライドすることもできます

    "editor.semanticTokenColorCustomizations": {
        "[Visual Studio Dark]": {
            "rules": {
                "templateType": {
                    "foreground": "#ff0000",
                    "fontStyle": "italic bold underline"
                }
            }
        }
    }