Skip to content

double curly brace can have incorrect syntax highlighting inside format within expression #394

@danny-kern-simplisafe

Description

@danny-kern-simplisafe

Describe the bug
When a double closing curly brace (}} is used as an escape to represent a single closing curly brace (}) inside a format function that is within an expression, it gets incorrectly colored as the end of the expression.

To Reproduce
Steps to reproduce the behavior:

  1. With the workflow file below, open in vscode editor
  2. View the syntax highlighting as incorrect. The first double closing curly brace on line 19 should not be yellow.
name: Double Curly Brace Workflow

on:
  workflow_dispatch:
    inputs:
      something-to-print:
        description: Something to print in powershell.
        required: true
        type: string

jobs:
  double_curly_brace_job:
    runs-on:
      labels: windows

    steps:
    - name: Double Curly Brace Step
      env:
        VAR_WITH_DOUBLE_CURLY_BRACE: "${{ format('{{ {0} }}', inputs.something-to-print) }}"
      run: |
        echo "${{ env.VAR_WITH_DOUBLE_CURLY_BRACE }}"

Expected behavior
The last double closing curly brace should be yellow on line 19.

Screenshots
image

Extension Version
v0.26.5

Additional context
I am testing this on Mac OS Sonoma 14.5
code --version 1.91.1 f1e16e1e6214d7c44d078b1f0607b2388f29d729 x64

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    Status

    Backlog 🗒

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions