Skip to content

Hashtable BareWord key highlighting changes with presence of inline comment #5279

@liamjpeters

Description

@liamjpeters

Prerequisites

  • I have written a descriptive issue title.
  • I have searched all open and closed issues to ensure it has not already been reported.
  • I have read the troubleshooting guide.
  • I am sure this issue is with the extension itself and does not reproduce in a standalone PowerShell instance.
  • I have verified that I am using the latest version of Visual Studio Code and the PowerShell extension.
  • If this is a security issue, I have read the security issue reporting guidance.

Summary

The syntax highlighting of a BareWord key that is followed by an inline comment in a Hashtable is different in a new unsaved editor vs when it is saved.

Before the file is saved:

Image

After the file is saved:

Image

Removing the inline comment (re-adding the inline comment goes back to how it is above):

Image

I would expect the keys to be consistently highlighted, regardless of a following inline comment or not.

I'm using the Default Dark Modern theme - in case that's relevant.

Edit: I noticed while filling in this issue template, that GitHub's syntax highlighting also does the same thing!

Image

The two key's are subtly different colours

PowerShell Version

Name                           Value
----                           -----
PSVersion                      7.4.12
PSEdition                      Core
GitCommitId                    7.4.12
OS                             Microsoft Windows 10.0.22631
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0


Name             : Visual Studio Code Host
Version          : 2025.2.0
InstanceId       : 703b8fce-f163-4396-8543-54cfa0a5ba7c
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-GB
CurrentUICulture : en-GB
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled  : True
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

Visual Studio Code Version

1.104.2
e3a5acfb517a443235981655413d566533107e92
x64

Extension Version

Steps to Reproduce

Open a new file and paste in:

@{
    Key1 <#Sneakycomment#> = "Value1"
    Key2 = "Value2"
}

Note the highlighting.

Save the file.

Note the highlighting changes.

Remove the inline comment.

Visuals

No response

Logs

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue-BugA bug to squash.Needs: TriageMaintainer attention needed!

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions