This repository was archived by the owner on Dec 15, 2022. It is now read-only.

Description
Prerequisites
Description
Tokenization is broken if script has back quotes with <<.
Steps to Reproduce
- Create file test.sh
- Open test.sh and paste example below
CHANGELOG=`cat << EOF
nginx ($VER-2~$REL) $REL; urgency=low
* $VER
-- $CONTRIB_NAME <$CONTRIB_EMAIL> $DATE
EOF`
- Write code below CHANGELOG.
Gist with example
All code below back quotes will be highlighted as 'shell code'.
Expected behavior:
The string and backtick related scopes will end with the closing backtick.
Even after the closing backtick these are the scopes:
string.unquoted.heredoc.shell
string.interpolated.backtick.shell
source.shell
Versions
VS Code version: Code 1.44.2 (ff915844119ce9485abfe8aa9076ec76b5300ddd, 2020-04-16T17:07:18.473Z)
OS version: Darwin x64 17.7.0
Additional Information
Originally from @psycho-coder in microsoft/vscode#96144