curly brackets shouldn't be special inside double quotes
vlsd opened this issue ยท 3 comments
As far as I can tell, curly brackets by themselves are treated literally in double quotes. From the bash manual:
Enclosing characters in double quotes (
"
) preserves the literal value of all characters within the quotes, with the exception of$
,`
,\
, and, when history expansion is enabled,!
. When the shell is in POSIX mode (see Bash POSIX Mode), the!
has no special meaning within double quotes, even when history expansion is enabled. The characters$
and`
retain their special meaning within double quotes (see Shell Expansions). The backslash retains its special meaning only when followed by one of the following characters:$
,`
,"
,\
, or newline. Within double quotes, backslashes that are followed by one of these characters are removed. Backslashes preceding characters without a special meaning are left unmodified. A double quote may be quoted within double quotes by preceding it with a backslash. If enabled, history expansion will be performed unless an!
appearing in double quotes is escaped using a backslash. The backslash preceding the!
is not removed.
This does not seem to be how this extension treats them, however (a lot of examples of this are in the Readme document).
Why this matters: I have a password in a .env
that contains a literal curly bracket. The password also includes a literal single quote, so the whole thing needs to be inside double quotes. This works fine as much as shells are concerned, but the vscode extension treats the {
as special and the rest of the file from that point on is misparsed.
Hi @vlsd
Sorry for the late response because I was on a vacation.
Why this matters: I have a password in a .env that contains a literal curly bracket. The password also includes a literal single quote, so the whole thing needs to be inside double quotes. This works fine as much as shells are concerned, but the vscode extension treats the { as special and the rest of the file from that point on is misparsed.
I see. I'll disable the string interpolation support. Thank you for pointing this out
As far as "vscode" is concerned then I'm not the one who is managing that package.
This extension was originally created for Sublime Text 3 and then repackaged by @mikestead for vscode: vscode-dotenv
Cheers!
I see this is closed, but not resolved. Any intentions releasing a small update for this one?
Cheers.
Same here, this error remains