Products: IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, Android Studio, 0xDBE, CLion

Vendor: Joachim Ansorg





Bugtracker page


Bash 4 support for IntelliJ. Supports syntax highlighting, rename refactoring, documentation lookup, inspections, quickfixes and much more.

I will marry in April and invite all happy users of BashSupport to chip in by sending us a wedding gift:
Downloads: 1166147
Participated in rating: 36
Version Since Build Until Build File/URL Size (Kb) Date Details
1.4.0_build141. 141. 141.*. Download 1741.09 2015-03-05 23:23:52 details
1.4.0_build140. 140. 140.*. Download 1741.09 2015-03-05 23:23:10 details
1.4.0_build139. 139. 139.*. Download 1740.59 2015-03-05 23:22:31 details
1.4.0_idea13. 135. 137.*. Download 1738.86 2015-03-05 23:21:17 details
1.3.4. 139. 140.*. Download 1729.06 2015-02-05 01:40:41 details
1.2. 138.1980. 138.*. Download 1720.05 2014-09-13 02:24:11 details
1.2. 134. 137.*. Download 1719.89 2014-09-13 02:22:26 details
1.1beta24-idea_138. 138.379. 138.*. Download 1717.51 2014-05-30 01:31:04 details
1.1beta24-idea_138. 138. 138.*. Download 1717.36 2014-05-29 13:03:16 details
1.1beta20. 125. 129.*. Download 1718.81 2013-11-28 03:14:42 details
1.1beta20-idea13. 133. 133.*. Download 1718.65 2013-11-28 03:04:48 details
1.1beta19-idea13. 132. 133.*. Download 1718.53 2013-10-10 21:52:20 details
1.1beta19-idea13. 130.1486. 131.*. Download 1707.1 2013-08-15 01:54:18 details
1.1beta19-idea12.0. 123. 123.*. Download 1707.36 2013-08-15 01:51:35 details
1.1beta18. 121. 129.*. Download 1707.25 2013-08-10 02:08:05 details
1.1beta16. 121. 130.*. Download 2204.95 2013-05-13 00:18:43 details
1.1beta8. 117.84. 119.*. Download 1673.2 2012-03-28 00:58:55 details
1.1beta7. 111. 117.*. Download 1674.07 2012-02-16 23:10:49 details
1.1beta1. 110.291. 110.*. Download 1647.91 2011-11-10 21:56:31 details
1.0. 107.100. 109.*. Download 1640.14 2011-05-19 22:09:46 details
0.9.23. 103.72. 107.*. Download 1650.88 2011-04-11 22:43:50 details
0.9.21. 99.18. 107.*. Download 1637.88 2011-03-24 21:44:36 details
0.9.15. 97. 97.*. Download 1980.08 2011-02-06 01:40:19 details
0.9.15. 95.429. 95.*. Download 1979.7 2011-02-06 01:36:04 details
0.9.3. 81.9100. 85.*. Download 1356.99 2009-08-07 20:11:46 details
. .
29 updates are hidden show all updates
Screenshot #14087

Recent change notes:

Changes in version 1.4.0:
  • Fixed the "Run before" steps of a Bash run configuration
  • The template Bash run configuration has no default "make" run before step now
  • Added basic Bash live templates: if, ife, ifee, while, until, case, cap, cap2, cap3
  • Added live template context for Bash files
  • The special /usr/bin/env command is now supported by the shebang inspection
  • No keyword autocompletion in a variable context
  • Fixed parsing of a file containg a $ as last character
  • Fixed autocomplete in eval and trap commands
  • Parser performance improved (pool for internal marker objects added)
  • Possible fix for a stack overflow in the parser (not reproducible here, though)
  • #193: Variables in arithmetic base expressions were not supported
  • #194: $(( 8#9 )) threw an exception about an invalid base 8 for the value 9. A warning is now displayed in the editor instead.
  • #190: Fixed UOE error in the "register as global variable" quickfix
  • #179: Fixed NPE in FileInclusionManager
  • #152: Guard to prevent endless recursions
  • #192: Fixed NPE in highlighting of arithmetic expressions
  • #170: Keywords like "fi", "if", "while", "done" were not offered in the list of autocompletion suggestions
  • Fixed autocompletion at the end of a string, e.g. "$a". The string end marker was replaced if tab was pressed.
  • Fixed autocompletion with open strings, e.g. $a\necho "x". The command in the next line was removed if tab was pressed.
  • Fixed autocompletion in curly brackets, e.g. ${}. The right curly bracket was removed if tab was pressed.
  • Fixed missing autocompletion of global variables and built-in commands inside of parameter expansions
  • #184: Single quoted associative array keys parsing error
  • #186: Erroneous warning "Simple use of array variable" when iterating through array
  • NPE fix for FileInclusionManager
Changes in version 1.3.x:
  • Fixed exceptions caused by an invalid implementation of the time command (PsiWhitespace exceptions)
  • Fixed exception "Assertion failed: leaveModal() should be invoked in event-dispatch thread"
  • Fixed NullPointerException in AddShebangInspection.getBatchSuppressActions
  • Escape characters were not accepted in case pattern
  • Fixed "Local variable definition on global level" inspection
  • Fixed case expressions followed by a backtick character
  • Small performance and memory improvement in the Bash file lexer
  • Fixed run configurations produced for non-Bash files. Run configuration are now only created for Bash files.
  • Fixed IndexNotReadyException
  • Fixed UnsupportedOperationException which occurred after a new plain text file without extension was created.
  • Fixed the message displayed on startup
  • I invite all happy users of BashSupport to chip in by sending us a wedding gift: make a small donation here
  • Major work on the run configuration: Ansi colors supported, reuse of default components, bugs fixed
  • Enabled and fixed the custom error reporting dialog
  • Creating new Bash run configurations now picks up the shell path and shell options of the file's shebang line
  • Disabled debug button for Bash run configuration
  • #166: Support for ToDo-Strings in Bash comments
  • Added characters +#_ to the filename characters
  • Fixed NPE BashPathCommandCompletion which occurred at startup of the latest IntelliJ IDEA EAP
  • Fixed QuickFix implementations to not reference PSI element, reduces memory consumption
  • The inspection "Add missing shebang..." can now be suppressed. A comment will be added to the file to suppress it.
  • Fixed NPE which occurred with unclosed subshell expressions
Changes in version 1.2.x:
  • Fixed invalid warnings about unused paramters in ${*} and ${@}
  • Support for the getopts command
  • Support for process substitution redirects, e.g. <(command)
  • [Issue 145]: Functions defined in include files are now properly found if included on global level
  • Fixed parsing of optional array variables used in the read command
  • Array type of a variable is inferred by typeset -a now, too
  • Added support to detect illegal use of readonly variables declared by typeset -r or declare -r
  • Fixed autocompletion of built-in variables
  • Added missing implementation of the time command PSI element
  • Recent changes:
    • Finally fixed exception with isDirectory
    • Fixed exception with isDirectory in some versions of IntelliJ
    • Fixed stack overflow exception which occurred in IDEA IntelliJ 13.1.1
    • Removed custom logging configuration to fix global plattform debug output
    • Parsing performance improved, especially for large scripts
    • Support for the typeset command
    • Initial support for the trap command
    • Initial support for the eval command
    • "Replace with ${var}" is not suggested inside of arithmetic expressions any more
    • Improved color scheme definitions, looks better with Darcula
    • Improved performance (variable resolving)
    • Assignments which non-static variable names are not suggested with autocomplete (e.g. "$a"=a)
    • Better looking with themes now
    • Fixed highlighting of redirects
    • Fixed highlighting of keywords used as plain text / word (the unwanted highlighting is removed).
    • Fixed shebang command inspection, settings a properly saved now
    • Added quickfix "Register as valid shebang command" for the shebang command inspection
    • Changed default highlighting level of "Unresolved variable" inspection from error to warning
    • "Simple variable use" is not added to variables which are wrapped by a string
    • "Simple array variable use" is not added to variables which are wrapped by a string
    • $@ is now taken as function parameter use, i.e. a call of a function using $@ does not lead to unused parameter warnings
    • Improved parsing of let commands (still incomplete)
    • Improved parsing of variables named like internal bash keywords
    • Improved performance for large script files (implemented caching references for variables, variable definitions and function definitions)
    • Escape chars were used in single quoted strings, but Bash does not allow escaped characters there
    • Fixed parsing of string as case pattern
    • Fixed parsing of ;;& in Bash 3 parsing mode
    • Autocompletion of commands using the user's $PATH environment. Autocompletion shows on second completion invocation.
    • Setting to disable autocompletion of commands using $PATH
    • Fixed flashing gutter icons
    • Improved parsing of parameter expansion (i.e. the parsing of the / operator)
    • Added parsing of history expansions
    • Fixed parsing of single ! tokens
    • Fix to allow umlaut characters in command names and arguments.

    General usage instructions:

    Github project:


    2015-03-30 21:15:09
    2015-03-20 10:27:20
    So I hit a wall with this plugin. I wish to execute a script with build-in command "source" (ex: source 8). And for now I haven't found a way to do it. Any suggestions?
    2015-02-13 19:23:07
    2015-02-11 02:04:55
    There's a bug with some non-standard she-bang lines. I'm using ksh, found in /bin/ksh. I've marked it as a valid command, but every time I restart IntelliJ, the warning returns.
    2015-01-15 21:06:04
    (BashSupport's author here) The latest version 1.3.3 fixes a nasty problem: run configurations were created for non-Bash files. I strongly recommend to update to 1.3.3 if you use a previous version of 1.3.x. I'm sorry for the troubles this might have caused.
    2015-01-15 03:30:10
    The author is popping up dialog asking for money. This is total spam.
    2015-01-13 13:29:11
    If the author of this plugin asks for money one more time, I will uninstall the plugin.
    2015-01-12 22:37:04
    wtf, pops up giant ad begging for money for author's upcoming wedding.
    2014-11-05 18:41:57
    Saving "#!/usr/bin/env bash" as a valid shebang line doesn't seem to work - every time I restart IntelliJ it's marked as unknown. Using IntelliJ IDEA 13.1 Ultimate and BashSupport 1.2.
    2014-10-23 09:00:44
    not work in 8.0.2
    2014-10-15 13:44:05
    BashSupport is available now for the latest 14 EAP (builds 139.*).
    2014-10-12 16:02:23
    Please make it 139.* (14 EAP) compatible.
    2014-06-28 18:32:52
    Would like to use this product but when I try to install in intellij 13.1.3, I get an incompatible error.
    2014-05-28 03:02:03
    I added a fixed plugin jar that works with PhpStorm 8 EAP at the related issue.
    2014-05-20 13:09:20
    Doesn't work with phpstorm eap 8