Skip to content

shellcheck: forcing to work with zsh does not work #1064

Open
@chrisgrieser

Description

@chrisgrieser

Code editor

nvim

Platform

macOS 14.1 (arm)

Version

5.0.0

What steps will reproduce the bug?

shell file with zsh shebang and an issue that shellcheck will reprot:

#!/usr/bin/env bash
cat foo | grep "foobar"
# here shellcheck reports an issue
#!/usr/bin/env zsh
cat foo | grep "foobar"
# here it does not

How often does it reproduce? Is there a required condition?

always

What is the expected behavior?

When using shellcheck, you can actually force it to check zsh files by adding --shell=bash. While not perfect, it's still useful.

However, when passing bashIde.shellcheckArguments = "--shell=bash", bashls still refuses to lint files with a zsh shebang. I assume there is something in the bashls source-code which stops shellcheck from working on zsh files, even if it nromally works in shellcheck.

What do you see instead?

shellcheck not working as soon as you add a zsh-shebang

Additional information

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