Skip to content

Syntax highlighting/colors for records does not work. #4211

Closed

Description

Issue Description

Syntax highlighting/colors for records does not work.

Steps to Reproduce

Create a dotnet 5 project. create a record, such as the below, I have included several positions/orders of records in the code, as well as one class for comparison

Expected Behavior

Coloration for record much like for class or struct, etc..

Actual Behavior

The output depends on the order, see how FooRecord3 moves and changes the output color.

image
vs.
image
vs.
image

The presence of { } curly braces seems to be the cause of the change. However, even with a curly braced record placed at the top, the highlighting is still inconsistent. Notice how public is colored in the record definition of FooRecord3 but not in the constructor as in FooClass nor is the keyword record displayed consistently in the 3 records included.

For a quick reproduction, here is the sample source

    public record FooRecord2(
        string param1,
        double param2,
        float param3,
        int param4,
        FooRecord param5,
        FooClass param6
    ) {
        public string SomeProperty { get; set; }
    }
    public record FooRecord(
        string param1,
        double param2,
        float param3,
        int param4,
        FooRecord param5,
        FooClass param6
    );

    public record FooRecord3 {
        public FooRecord3(
                string param1,
                double param2,
                float param3,
                int param4,
                FooRecord param5,
                FooClass param6
        ) {
            //nothing
        }
        public string SomeProperty { get; set; }
    }


    public class FooClass {
        public string SomeProperty { get; set; }

        public FooClass(
            string param1,
            double param2,
            float param3,
            int param4,
            FooRecord param5,
            FooClass param6
        ) {
            //empty
        }
    }

Note after pasting the source into this ticket, I notice that GitHub has syntax coloring issues as well with records.

OmniSharp log

Starting OmniSharp server at 11/17/2020, 5:19:31 AM
    Target: c:\Users\eric\dev\src\github.com\erichiller\mkmrk\mkmrk.sln

OmniSharp server started.
    Path: c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\OmniSharp.exe
    PID: 13360

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 6.2.9200.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 1 MSBuild instance(s)
            1: StandAlone 16.8.0 - "c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild\Current\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        MSBUILD_EXE_PATH environment variable set to 'c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild\Current\Bin\MSBuild.exe'
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: StandAlone 16.8.0 - "c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild\Current\Bin"
            CscToolExe = csc.exe
            CscToolPath = c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild\Current\Bin\Roslyn
            MSBuildExtensionsPath = c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild
            MSBuildToolsPath = c:\Users\eric\.vscode\extensions\ms-dotnettools.csharp-1.23.6\.omnisharp\1.37.3\.msbuild\Current\Bin
[info]: OmniSharp.Cake.CakeProjectSystem

C# log

none

Environment information

VSCode version: 1.51.1
C# Extension: 1.23.6

Dotnet Information .NET SDK (reflecting any global.json): Version: 5.0.100 Commit: 5044b93829

Runtime Environment:
OS Name: Windows
OS Version: 10.0.19042
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\5.0.100\

Host (useful for support):
Version: 5.0.0
Commit: cf258a14b7

.NET SDKs installed:
3.1.102 [C:\Program Files\dotnet\sdk]
3.1.302 [C:\Program Files\dotnet\sdk]
3.1.401 [C:\Program Files\dotnet\sdk]
5.0.100 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.6 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET runtimes or SDKs:
https://aka.ms/dotnet-download

Visual Studio Code Extensions
Extension Author Version
better-align wwm 1.1.6
cpptools ms-vscode 1.1.1
csharp ms-dotnettools 1.23.6
docomment k--kato 0.1.19
erlang-otp yuce 0.2.4
errorlens usernamehw 3.2.4
githistory donjayamanne 0.6.14
gitignore codezombiech 0.6.0
graphql-for-vscode kumar-harsh 1.15.3
hexeditor ms-vscode 1.3.0
jsdoc-markdown-highlighting bierner 0.0.1
markdown-all-in-one yzhang 3.4.0
msbuild-project-tools tintoy 0.3.10
path-intellisense christian-kohler 2.3.0
powershell-preview ms-vscode 2020.9.0
rainbow-csv mechatroner 1.7.1
remote-ssh-edit ms-vscode-remote 0.56.0
remote-wsl ms-vscode-remote 0.51.3
selected-lines-count gurumukhi 1.4.0
sqltools mtxr 0.23.0
svg jock 1.4.1
template-string-converter meganrogge 0.3.0
theme-karyfoundation-themes karyfoundation 20.0.3
todo-tree Gruntfuggly 0.0.188
toml be5invis 0.5.1
unique-lines bibhasdn 1.0.0
vscode-docker ms-azuretools 1.8.0
vscode-eslint dbaeumer 2.1.13
vscode-great-icons emmanuelbeziat 2.1.60
vscode-json5 mrmlnc 1.0.0
vscode-scss mrmlnc 0.9.0
vscode-scss-formatter sibiraj-s 2.0.2
vscode-solution-explorer fernandoescolar 0.3.11
vscode-yaml redhat 0.12.0
xml DotJoshJohnson 2.5.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions