vscode-cpptools icon indicating copy to clipboard operation
vscode-cpptools copied to clipboard

Visual Studio 2019 Themes

Open BlueStaggo opened this issue 2 years ago • 12 comments

Issue #6108 has been around for almost two years now and it has been over a year since I created my own theme. Back then, I was not a contributor to any open source project. Now that I have contributed to a few projects with frequent success, I have decided to attempt to add Visual Studio 2019 themes into the official C++ themes extension.

The themes in this update have been created from scratch. However, they still may be inaccurate: my only source material was images and tutorials from Youtube as I do not want to install MSVC bloat that I would prefer to use GCC over (also, Visual Studio feels too clunky for me, unlike VSCode which is more aesthetically pleasing to me). It would be useful if anyone with Visual Studio 2019/2022 with C++ to compare my theme to the real deal. The old themes along with their original names are kept for backwards compatibility for anyone who likes the simpler look.

Here are some comparison screenshots with semantic highlighting, using slightly modified code from this clang-format configurator website:

Before After
Dark
Light

BlueStaggo avatar Aug 12 '22 19:08 BlueStaggo

CLA assistant check
All CLA requirements met.

ghost avatar Aug 12 '22 19:08 ghost

Thanks for the PR -- I'm not sure yet who on our team wants to review this...

sean-mcmanus avatar Aug 17 '22 00:08 sean-mcmanus

Thanks for the PR -- I'm not sure yet who on our team wants to review this...

Sorry for the review delay, we have been (are) busy with our pending 1.12.2/1.12.3 releases.

sean-mcmanus avatar Aug 23 '22 20:08 sean-mcmanus

Are there any colorization options for local, member, parameter variables?

Zingam avatar Aug 27 '22 11:08 Zingam

Are there any colorization options for local, member, parameter variables?

Variable colorization works mostly like Default Dark+. In fact, this theme is based off of it because it is very similar to Visual Studio 2019/2022. Local variables are light blue, member variables are white and parameter variables are gray.

BlueStaggo avatar Aug 28 '22 09:08 BlueStaggo

For those who can't wait, you can add this to your settings.json, replacing the Default Dark+ theme:

{
    "editor.semanticTokenColorCustomizations": {
        "[Default Dark+]": {
            "rules": {
                "newOperator": "#569CD6"
            }
        }
    },
    "editor.tokenColorCustomizations": {
        "[Default Dark+]": {
            "textMateRules": [
                {
                    "name": "Control flow / Special keywords",
                    "scope": [
                        "keyword.control",
                        "keyword.other.using",
                        "keyword.other.operator",
                        "entity.name.operator"
                    ],
                    "settings": {
                        "foreground": "#D8A0DF"
                    }
                },
                {
                    "scope": [
                        "keyword.control.directive",
                        "variable.parameter",
                        "entity.other.attribute-name.pragma.preprocessor.cpp"
                    ],
                    "settings": {
                        "foreground": "#9B9B9B"
                    }
                },
                {
                    "scope": [
                        "meta.preprocessor",
                        "entity.name.namespace",
                        "variable.other.global",
                        "variable.other.property",
                        "variable.other.constant",
                        "entity.name.scope-resolution"
                    ],
                    "settings": {
                        "foreground": "#D4D4D4"
                    }
                },
                {
                    "scope": [
                        "punctuation",
                        "storage.modifier.pointer",
                        "storage.modifier.reference",
                        "keyword.operator",
                        "entity.name.function.operator",
                        "keyword.other.operator.overload.cpp",
                        "entity.name.operator.cpp",
                        "entity.name.operator.type.reference.cpp"
                    ],
                    "settings": {
                        "foreground": "#B4B4B4"
                    }
                },
                {
                    "scope": [
                        "comment",
                        "punctuation.definition.comment"
                    ],
                    "settings": {
                        "foreground": "#57A64A"
                    }
                },
                {
                    "scope": "punctuation.definition.string",
                    "settings": {
                        "foreground": "#E8C9BB"
                    }
                },
                {
                    "scope": "entity.name.function.preprocessor",
                    "settings": {
                        "foreground": "#BEB7FF"
                    }
                },
                {
                    "scope": [
                        "keyword.other.using",
                        "keyword.operator.new",
                        "keyword.operator.new.cpp",
                        "keyword.operator.delete.cpp"
                    ],
                    "settings": {
                        "foreground": "#569CD6"
                    }
                },
                {
                    "scope": "punctuation.support.type.property-name",
                    "settings": {
                        "foreground": "#9CDCFE"
                    }
                },
                {
                    "scope": "variable.other.enummember",
                    "settings": {
                        "foreground": "#B5CEA8"
                    }
                }
            ]
        }
    }
}

This comment will be edited whenever an update to the theme is made. Please keep checking back here for the most accurate experience.

BlueStaggo avatar Aug 28 '22 09:08 BlueStaggo

@BlueStaggo I decided to try your settings.json immediately and I noticed that in a git compare window the colors don't match, which I would expect they do. I haven't noticed that before.

image

Zingam avatar Aug 28 '22 13:08 Zingam

@Zingam Can you make sure you have semantic highlighting on? The theme only properly works with it on. Also, I've noticed that presumably enum members (maybe regular const variables too) are a medium blue. I'll fix it right away.

BlueStaggo avatar Aug 29 '22 09:08 BlueStaggo

This is not a bug report. As I am not using the theme. I'm just getting some funny colors on "delete". Screenshot 2022-08-30 at 8 21 13

H-G-Hristov avatar Aug 30 '22 05:08 H-G-Hristov

Thank you for pointing that out, @H-G-Hristov! That was also an issue with the VS2019 theme. Good thing this wasn't merged early: there are probably many more mistakes I have or even anyone has not found yet.

BlueStaggo avatar Aug 30 '22 07:08 BlueStaggo

@bobbrow Is this ready to check in or was someone else going to review it more?

sean-mcmanus avatar Sep 12 '22 16:09 sean-mcmanus

Hi @BlueStaggo . You had asked for a comparison with real VS. If you'd like to use the exact same color values VS uses, they are below. There is a setting in VS that that can influence how Globals and Members are colored (Enhanced2), so there are two color sets. There are various differences between how VS and VS Code identify tokens/scopes, so these may not line up precisely with VC Code themes.

VCEditorColors.xml
<Themes>
<Theme Name="Light" GUID="{de3dbbcd-f642-433c-8353-8f1df4370aba}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF808080" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB776FB" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFE6E6E6" />
      <Foreground Type="CT_RAW" Source="FF686868" />
    </Color>
  </Category>
</Theme>
<Theme Name="Dark" GUID="{1ded0138-47ce-435e-84ef-9ec1f439b749}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFBEB7FF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB8D7A3" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9CDCFE" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9A9A9A" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDADADA" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDADADA" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB5CEA8" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFD69D85" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB4B4B4" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB4B4B4" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF569CD6" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFD8A0DF" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFFFD68F" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE8C9BB" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FF3E3E3E" />
      <Foreground Type="CT_RAW" Source="FFA9A8A7" />
    </Color>
  </Category>
</Theme>
<Theme Name="HighContrast" GUID="{a5c004b4-2d4b-494e-bf01-45fc492522c7}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
  </Category>
</Theme>
<Theme Name="Blue" GUID="{a4d6a176-b948-4b29-8c66-53c97a1ed7d0}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF808080" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB776FB" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFE6E6E6" />
      <Foreground Type="CT_RAW" Source="FF686868" />
    </Color>
  </Category>
</Theme>
<Theme Name="AdditionalContrast" GUID="{ce94d289-8481-498b-8ca9-9b6191a315b9}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF5B5B5B" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9B4FE7" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFEAEAEA" />
      <Foreground Type="CT_RAW" Source="FF504848" />
    </Color>
  </Category>
</Theme>
</Themes>
VCEditorColors_Enhanced_2.xml
<Themes>
<Theme Name="Light" GUID="{de3dbbcd-f642-433c-8353-8f1df4370aba}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF808080" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB776FB" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFE6E6E6" />
      <Foreground Type="CT_RAW" Source="FF686868" />
    </Color>
  </Category>
</Theme>
<Theme Name="Dark" GUID="{1ded0138-47ce-435e-84ef-9ec1f439b749}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFBEB7FF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB8D7A3" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFFD99C1" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9CDCFE" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9A9A9A" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFFD99C1" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF4EC9B0" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDCDCAA" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFC8C8C8" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFDADADA" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB5CEA8" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFD69D85" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB4B4B4" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB4B4B4" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF569CD6" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFD8A0DF" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFFFD68F" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE8C9BB" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FF3E3E3E" />
      <Foreground Type="CT_RAW" Source="FFA9A8A7" />
    </Color>
  </Category>
</Theme>
<Theme Name="HighContrast" GUID="{a5c004b4-2d4b-494e-bf01-45fc492522c7}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Foreground Type="CT_SYSCOLOR" Source="00000008" />
    </Color>
  </Category>
</Theme>
<Theme Name="Blue" GUID="{a4d6a176-b948-4b29-8c66-53c97a1ed7d0}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF808080" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2B91AF" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF008080" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF278B27" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB776FB" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFE6E6E6" />
      <Foreground Type="CT_RAW" Source="FF686868" />
    </Color>
  </Category>
</Theme>
<Theme Name="AdditionalContrast" GUID="{ce94d289-8481-498b-8ca9-9b6191a315b9}">
  <Category Name="Cpp Text Editor MEF Items" GUID="{75a05685-00a8-4ded-bae5-e7a50bfa929a}">
    <Color Name="CppMacroSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8A1BFF" />
    </Color>
    <Color Name="CppEnumSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF2F4F4F" />
    </Color>
    <Color Name="CppGlobalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppLocalVariableSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF1F377F" />
    </Color>
    <Color Name="CppParameterSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF5B5B5B" />
    </Color>
    <Color Name="CppTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppRefTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppValueTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFB00358" />
    </Color>
    <Color Name="CppMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFunctionSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppStaticMemberFieldSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppPropertySemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppEventSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppClassTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppGenericTypeSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppFunctionTemplateSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF74531F" />
    </Color>
    <Color Name="CppNamespaceSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppLabelSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLRawSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLNumberSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF000000" />
    </Color>
    <Color Name="CppUDLStringSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFA31515" />
    </Color>
    <Color Name="CppOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppMemberOperatorSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppNewDeleteSemanticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF0000FF" />
    </Color>
    <Color Name="CppSuggestedActionFormat">
      <Foreground Type="CT_RAW" Source="FF066555" />
    </Color>
    <Color Name="CppControlKeywordSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF8F08C4" />
    </Color>
    <Color Name="CppStringEscapeCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FF9B4FE7" />
    </Color>
    <Color Name="CppStringDelimiterCharacterSyntacticTokenFormat">
      <Foreground Type="CT_RAW" Source="FFE21F1F" />
    </Color>
    <Color Name="CppInlineHintsFormat">
      <Background Type="CT_RAW" Source="FFEAEAEA" />
      <Foreground Type="CT_RAW" Source="FF504848" />
    </Color>
  </Category>
</Theme>
</Themes>

Colengms avatar Sep 22 '22 00:09 Colengms

Hi @BlueStaggo . You had asked for a comparison with real VS. If you'd like to use the exact same color values VS uses, they are below. There is a setting in VS that that can influence how Globals and Members are colored (Enhanced2), so there are two color sets. There are various differences between how VS and VS Code identify tokens/scopes, so these may not line up precisely with VC Code themes.

VCEditorColors.xml VCEditorColors_Enhanced_2.xml

I have never heard of anything like Enhanced2. Are you using default settings and can you show a screenshot? I do not fully understand this Enhanced2 setting.

BlueStaggo avatar Sep 23 '22 14:09 BlueStaggo

I have never heard of anything like Enhanced2. Are you using default settings and can you show a screenshot? I do not fully understand this Enhanced2 setting.

The setting in VS is:

image

It has very little usage. I'd suggest not worrying about Enhanced2 for these themes.

Colengms avatar Sep 23 '22 22:09 Colengms

Thank you for sharing the Visual Studio color theme! Now this extension is even more accurate. There are many differences the naked eye cannot see between Dark+ and VS 2019.

BlueStaggo avatar Sep 24 '22 08:09 BlueStaggo

@Colengms Is this good to check in?

sean-mcmanus avatar Sep 29 '22 16:09 sean-mcmanus

Thank you for your work on this @BlueStaggo!

bobbrow avatar Oct 14 '22 20:10 bobbrow

So... who at Microsoft is going to upload this? Edit: The theme has been officially updated.

BlueStaggo avatar Oct 23 '22 15:10 BlueStaggo