Features of BashSupport Pro
The comparison is between the latest release of BashSupport Pro and the JetBrains Shell plugin coming with JetBrains IDE 2021.3. JetBrains Shell is bundled with most IDEs of JetBrains – in our opinion it works well for occasionally viewing, editing and running of shell scripts.
|BashSupport Pro||JetBrains Shell|
Debugger → more
bashdb debugger integration to debug shell scripts with the JetBrains debugger UI.
Test Runner → more
bats–core test runner integration using the JetBrains test framework UI.
Shareable, Cross‐Platform Run Configurations → more
BashSupport Pro offers multiple alternatives to determine the interpreter automatically.
JetBrains Shell configures a specific interpreter in each run configuration, which prevents sharing them with your team across platforms.
Google Shell Style Guide → more
BashSupport Pro supports Google’s Shell Style Guide with inspections, quick fixes, and a formatter preset.
Code Completion → more
BashSupport Pro suggests functions, variables, Bash and POSIX builtins.
JetBrains Shell only suggests words found in the current file. Function names are suggested for variables, for example.
Highlight Usages → more
BashSupport Pro highlights identifiers that refer to the same entities.
JetBrains Shell highlights by text occurrence, so that variables, functions, keywords, and string literals can all be highlighted at once.
Rename Variable Refactoring
BashSupport Pro renames your variable definitions and all references across multiple files.
Go to Declaration for Variables → more
BashSupport Pro finds your variable definitions across files. It follows source commands, ShellCheck directives and looks into user-defined shell script libraries.
Multi-File Navigation → more
BashSupport Pro follows
Rename, Go to Declaration and other features follow the
Language Injection → more
Code injection into Bash skript files is available for strings and here documents, including smart escape and substitution handling.
Code Folding → more
BashSupport Pro comes with powerful code folding and also supports Vim-style custom code folding.
JetBrains Shell does not fold subshells, conditional commands, arithmetic commands, case commands, and compound bodies of functions other than
Rename Function Refactoring
BashSupport Pro renames across multiple files.
JetBrains Shell only supports the current file.
Go to Declaration for Functions → more
BashSupport Pro finds your function definitions across multiple files.
JetBrains Shell only considers the current file.
Here Document Support
BashSupport Pro can highlight and refactor all substitutions nested in here documents.
JetBrains Shell does not recognize variables or other substitutions in here documents.
Documentation Lookup → more
BashSupport Pro supports
JetBrains Shell only supports
ShellCheck Support → more
BashSupport Pro bundles signed ShellCheck 0.8.0 binaries and provides a user-friendly integration to apply fixes and to suppress warnings. For macOS, a universal binary is bundled.
JetBrains Shell offers to download unsigned 0.7.1 binaries from JetBrains’ servers.
Formatter → more
BashSupport Pro bundles signed binaries of shfmt 3.4.1 and supports formatting of remote and bats-core files.
JetBrains Shell offers to download unsigned binaries of shfmt 3.3.1 from GitHub project and only supports local files.
Run Configurations → more
BashSupport Pro supports Windows path mapping (WSL, MSYS Git Bash, Cygwin), inline snippets, and a lot more.
To Do Highlighting
BashSupport Pro supports multi-line
JetBrains Shell does not.
Spellchecker Support → more
BashSupport Pro bundles dictionaries with common command names to avoid spamming your editor with warnings.
Inspections → more
BashSupport Pro provides 20+ additional inspections on top of the ShellCheck integration.
JetBrains Shell relies solely on ShellCheck.
Highlight URLs in Strings
Scripts Without File Extension