shellcheck's directive for shell is not working
moonfruit opened this issue · comments
MoonFruit commented
Code editor
Any
Platform
Any
Version
5.1.2
What steps will reproduce the bug?
bash-language-server
makes shellcheck
's directive for shell not working because of this:
bash-language-server/server/src/shellcheck/index.ts
Lines 122 to 128 in 39abef9
For example, shellcheck
will not report any errors for this script:
#!/bin/sh
# shellcheck shell=bash
echo -e "test"
But shellcheck --shell test.sh
will produce:
$ shellcheck --shell sh test.sh
In test.sh line 3:
echo -e "test"
^-- SC3037 (warning): In POSIX sh, echo flags are undefined.
For more information:
https://www.shellcheck.net/wiki/SC3037 -- In POSIX sh, echo flags are undef...
How often does it reproduce? Is there a required condition?
Every time.
What is the expected behavior?
shellcheck
's directive for shell will work fine, whether it's defined in .shellcheckrc
or in a script.
What do you see instead?
shellcheck
's directive for shell is not working.
Additional information
No response
MoonFruit commented