Skip to content

Version v2021.5.1 Semantic Textmate Scope is incorrect for negative numeric literals, when used as a parameter #207

Description

@ninmonkey

"editor.semanticHighlighting.enabled": true is on

System Details

System Details (Click to Expand)

System Details Output

### VSCode version: 1.56.2 054a9295330880ed74ceaedda236253b4f39a335 x64

### VSCode extensions:
adrieankhisbe.vscode-ndjson@0.100.0
ahebrank.yaml2json@0.0.3
alefragnani.Bookmarks@13.0.4
arcticicestudio.nord-visual-studio-code@0.15.1
bierner.docs-view@0.0.9
bungcip.better-toml@0.3.2
christian-kohler.path-intellisense@2.3.0
CoenraadS.bracket-pair-colorizer@1.0.61
CoenraadS.bracket-pair-colorizer-2@0.2.0
darkriszty.markdown-table-prettify@3.4.0
DavidAnson.vscode-markdownlint@0.41.1
donjayamanne.githistory@0.6.16
DotJoshJohnson.xml@2.5.1
eamodio.gitlens@11.4.1
eamodio.tsl-problem-matcher@0.4.0
Equinusocio.vsc-community-material-theme@1.4.2
Equinusocio.vsc-material-theme@33.2.0
equinusocio.vsc-material-theme-icons@1.2.2
esbenp.prettier-vscode@6.4.0
evan-buss.font-switcher@4.0.1
firefox-devtools.vscode-firefox-debug@2.9.4
formulahendry.code-runner@0.11.4
GitHub.github-vscode-theme@4.1.1
GitHub.vscode-pull-request-github@0.26.0
hbenl.vscode-test-explorer@2.20.2
icsharpcode.ilspy-vscode@0.10.0
juanmnl.vscode-theme-hydra@3.2.0
littlefoxteam.vscode-python-test-adapter@0.6.8
LouisWT.regexp-preview@0.1.5
matangover.mypy@0.2.0
mechatroner.rainbow-csv@1.8.1
medo64.code-point@1.7.5
ms-azure-devops.azure-pipelines@1.183.0
ms-dotnettools.csharp@1.23.12
ms-dotnettools.dotnet-interactive-vscode@1.0.2256020
ms-dotnettools.vscode-dotnet-runtime@1.1.0
ms-dotnettools.vscode-dotnet-sdk@0.5.0
ms-mssql.mssql@1.10.1
ms-python.python@2021.6.908196464-dev
ms-python.vscode-pylance@2021.6.1-pre.1
ms-toolsai.jupyter@2021.6.832593372
ms-vscode-remote.remote-wsl@0.56.4
ms-vscode.azure-account@0.9.8
ms-vscode.cpptools@1.4.0
ms-vscode.powershell@2021.5.1
ms-vscode.powershell-preview@2020.7.0
ms-vscode.test-adapter-converter@0.0.9
ms-vscode.vscode-typescript-tslint-plugin@1.3.3
msjsdiag.debugger-for-chrome@4.12.12
octref.vscode-json-transform@0.1.2
PKief.material-icon-theme@4.7.0
PowerQuery.vscode-powerquery@0.1.19
RandomFractalsInc.snippets-viewer@1.9.0
RandomFractalsInc.vscode-data-preview@2.3.0
redhat.vscode-commons@0.0.6
redhat.vscode-xml@0.16.1
redhat.vscode-yaml@0.19.2
RobbOwen.synthwave-vscode@0.1.8
rogalmic.bash-debug@0.3.9
rust-lang.rust@0.7.8
sallar.vscode-duotone-dark@0.3.3
samuelcolvin.jinjahtml@0.16.0
shakram02.bash-beautify@0.1.1
shd101wyy.markdown-preview-enhanced@0.5.18
stansw.vscode-odata@0.1.0
stuart.unique-window-colors@1.0.51
svipas.control-snippets@1.9.1
TylerLeonhardt.vscode-inline-values-powershell@0.0.5
TylerLeonhardt.vscode-pester-test-adapter@0.0.23
vadimcn.vscode-lldb@1.6.4
VisualStudioExptTeam.vscodeintellicode@1.2.14
vscode-icons-team.vscode-icons@11.4.0
webfreak.debug@0.25.0
wwm.better-align@1.1.6
yzhang.markdown-all-in-one@3.4.0
zhuangtongfa.material-theme@3.10.14


### PSES version: 2.3.0.0

### PowerShell version:

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

Issue Description

The Textmate scopes or token is wrong on negative numeric literals

image

Working behavior

Non-parameters, and positive numbers are okay

textmate_scopes-example1

Expected Behaviour

To share similar tokens/scopes

To reproduce

It seems to occur when:

  1. it's a negative numeric literal (int, or decimal)
  2. it's a parameter
  3. the parameter type doesn't matter

Code used:

function DoNothing {
    param(
        [Parameter(Mandatory, Position = 0)]
        [int]$Number
    )
}
function DoMoreNothing {
    param(
        [Parameter(Mandatory, Position = 0)]
        [string]$Text
    )
}

$x = 6                                               ; $x
$x = -6
DoNothing -6
DoNothing 6
DoNothing -Number 6
DoNothing -Number -6
DoMoreNothing -Text 6
DoMoreNothing -Text -6

Actual Behavior

textmate_scopes-example2-as-parameter

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions