Produkte: BashSupport für IntelliJ® IDEA

Mit BashSupport erhalten Sie die Unterstützung von Bash-Skriptdateien für IntelliJ® IDEA 9.x. BashSupport ist OpenSource Software.
Wichtige Links
Funktionen
- Kostenlos & OpenSource
- Unterstützung für Bash 3.2 und Bash 4.0
- Konfigurierbare Syntax-Hervorhebungen
- Fehlermeldungen bei Syntaxfehlern
- Grundlegende Refactorings
- Integrierte Dokumentation (Strg+Q)
- ...
Herunterladen
Das Plugin wird über die Pluginverwaltung von IntelliJ® IDEA installiert. Der Name des Plugins istBashSupport. Die Plugindetails und ältere Versionen sind hier verfügbar: BashSupport auf plugins.intellij.net.
Quellcode.
BashSupport ist OpenSource Software und ist unter den Bedingungen der
Apache License, Version 2.0 verfügbar. Entwickler können den Quellcode herunterladen:
BashSupport Quellcode.
Support
Haben Sie Fragen zum Plugin? Möchten Sie vielleicht einen Verbesserungsvorschlag machen? Dann lassen Sie mir einfach eine Nachricht zukommen:Kontaktformular.
Bedienung
Bash-Skripte ausführen

BashSupport bietet die Möglichkeit, Skripte direkt innerhalb von IntelliJ auszuführen. Sie können eine neue Run-Konfiguration für Bash-Skripte anlegen. Hier legen Sie fest, welcher Interpreter für das Ausführen verwendet wird.
Wenn ein Skripte ausgeführt wird, werden die Ausgaben protokolliert. Falls Bash Syntaxfehler liefert, sind die jeweiligen Zeilen klickbar, um direkt zum jeweiligen Ort der Datei zu springen.
Projekt-Einstellungen
Die Projekteinstellungen werden im Projektabschnitt des Einstellungdialogs gesetzt.
Sprachstandard
Das Plugin unterstützt auf Wunsch die Neuerungen und Änderungen, die mit Bash Version 4.0 eingeführt wurden. Wenn die Einstellung gesetzt ist, werden alle Skripte des aktuellen Projektes als Bash 4.0 verarbeitet.
Globale Variablen
Pro Projekt kann ein Satz von globalen Variablen verwaltet werden. Unbekannte Variablen mit diesen Namen werden in den Skripten nicht mehr als Fehler gekennzeichnet. Auf Wunsch können die erfassten Variablennamen auch in der Code-Vervollständigung angeboten werden.
Globale Einstellungen
Dateiendungen
Von Haus aus unterstützt BashSupport diese Endungen:
- .sh
- .bash
IntelliJ bietet ihnen die Möglichkeit bislang unbekannte Dateiendungen mit einem Plugin zu verknüpfen. Wählen Sie hier einfach BashSupport aus, um Dateien mit der neuen Endung in Zukunft als Bash-Datei zu öffnen.
Bash-Skripte werden oftmals ohne Dateiendung gespeichert. BashSupport kann so konfiguriert werden, dass Dateien ohne Endung als Bash-Skripte erkannt werden. Wenn Sie diese Einstellung setzen, werden automatisch alle Dateien mit Bashsupport verbunden. Falls Sie jedoch nur Dateien, die tatsächlich Bash Skripte enthalten, mit BashSupport verknüpfen, können Sie die Konfiguration so setzen, dass BashSupport versucht, den Typ anhand des Dateiinhalts zu raten.
Farben und Schriften

Sie können die Farb- und Schrifteigenschaften der Skriptanzeige ihren Bedürfnissen gemäß anpassen. Öffnen Sie hierzu den Konfigurationsdialog über im Menü . Die Einstellungen für Bash-Skripte sind unter → → .
Hier können Sie die Einstellungen für die verschiedenen Elemente eines Bash-Skriptes anpassen. IntelliJ zeigt ihnen eine Vorschau der jeweiligen Einstellungen an.
Navigieren in Bash-Skripten
Öffnen Sie einfach eine Bash-Datei. Sie können diese ganz normal bearbeiten, so wie Sie es von IntelliJ gewohnt sind. Zur einfachen Navigation wird Code folding unterstützt. Falten Sie einfach die gerade nicht benötigten Funktionen und Anweisungsblöcke zusammen. So sehen Sie nur das, was Sie auch wirklich benötigen.
Falls Fehler in einer Bash-Datei angezeigt werden, kann es vorkommen, dass das Zusammenfalten von Quellcode-Abschnitten nicht möglich ist. Korrigieren Sie bitte erst die Fehler um diese Funktion nutzen zu können.
Dateistruktur
IntelliJ zeigt ihnen in der Strukturansicht eine Übersicht der Funktionen des jeweiligen Bash-Skriptes. Diese Ansicht ist über Strg + F12 schnell erreichbar.
BashSupport zeigt ihnen auch verschachtelte Funktionen an.
Go To → Declaration
(Strg + B)
BashSupport unterstützt Go to → Declaration Wenn Sie den Cursor auf einen Funktionsaufruf positionieren zeigt ihnen IntelliJ nach Auswahl dieser Aktion die aufgerufene Funktion.
Diese Funktion ist auch auf den Markierungen von Heredocs verfügbar.
View → Quick Definition Lookup
(Strg + Shift + I)
BashSupport zeigt ihnen den Quellcode einer definierten Funktion, wenn Sie diese Aktion für einen Funktionsaufruf anwenden.
Search → Highlight Usages in File
(Strg + Shift + F7)
Wenn Sie den Textcursor auf einem Funktionsaufruf oder dem Namen einer Funktion positionieren und dann diese Aktion aufrufen zeigt ihnen IntelliJ alle Orte, an denen diese Funktion verwendet wird. Sie können mit F3 zur jeweils nächsten Stelle springen.
Diese Funktion ist auch auf den Markierungen von Heredocs verfügbar.
Navigation zwischen Funktionen
Im Editor können Sie mit Alt + PfeilOben und Alt + PfeilUnten zwischen den Funktionen navigieren, die in der Datei definiert sind.
Brace matching
Wenn Sie den Cursor vor oder hinter einer Klammer positionieren zeigt ihnen IntelliJ die jeweils andere Klammer des jeweiligen Klammernpaares an.
Code-Vervollständigung
BashSupport unterstützt die automatische Code-Vervollständigung. Die Vorschläge werden durch das Drücken von Strg+Leertaste angezeigt.
Funktionen
Die Code-Vervollständigung bietet die definierten Funktionen des aktuellen Skriptes an. Eine Funktion wird nur angeboten, wenn sie in der Datei vor der aktuellen Stelle definiert wurde.
Bash-Kommandos
Wenn die Konfigurationseinstellung gesetzt ist, werden die eingebauten Bash-Kommandos in der Code-Vervollständigung angeboten.
Skript-Variablen
Variablen, die im aktuellen Skript deklariert werden, werden in der Code-Vervollständigung angeboten.
Bash Variablen
Wenn die Konfigurationseinstellung gesetzt ist, werden die eingebauten Bash-Variablen wie $PATH oder $PWD in der Code-Vervollständigung angeboten.
Pfade im Dateisystem
Pfade können automatisch vervollständigt werden. Geben Sie einfach den Beginn einer Pfadangabe ein. Drücken Sie nun "Strg+Leertaste". IntelliJ bietet ihnen nun eine Auswahl von Verzeichnissen und Pfadangaben ihres Systems, die auf die Eingabe passen.
BashSupport erkennt Pfadangaben mit diesen Anfängen:
- /
- ./
- $HOME/
- ~/
Refactoring
BashSupport unterstützt einfache Refactorings für Bash-Skripte.
Umbenennen von Funktionen
Funktionen können umbenannt werden. Dabei werden die Definition selbst und alle Aufrufe angepasst. Positionieren Sie den Cursor auf dem Namen in der Definition oder auf einen Aufruf der Funktion. Verwenden Sie dann → (Strg+F6), um den Namen zu ändern.
Umbenennen von Variablen
Variablen können genauso wie Funktionen umbenannt werden. Positionieren Sie den Cursor auf den Bezeichner in einer Zuweisung oder auf der Verwendung einer Variablen. Rufen Sie dann → (Strg+F6) auf, um die Variable umzubenennen.
Umbenennen von Heredoc-Markierungen
Die Start- und Endmarkierungen von Heredocs können umbenannt werden. Platzieren Sie den Cursor auf die Markierung und rufen Sie → (Strg+F6) auf, um den Marker umzubenennen.
Quellcodeanalyse
BashSupport verfügt über sogenannte "Inspections". Der Quellcode wird analysiert und für erkannte Probleme werden automatische Korrekturen angeboten.
Shebang: Anpassung
Wenn die erste Zeile mit
#!
beginnt, wird sie als
Shebang
Zeile bezeichnet. Sie gibt das Kommando an, mit dem das Skript ausgeführt wird.
Falls dieses Kommando einen ungewöhnlichen Befehl enthält, wird eine automatische
Änderung vorgeschlagen.
Wenn das Kommando bekannte ist, werden Alternativen vorgeschlagen. Beispielsweise wird /bin/bash vorgeschlagen, falls /bin/sh verwendet wird.
Funktionen: Rumpf in geschweiften Klammern einfassen
In Bash ist es möglich, den Rumpf einer Funktion ohne geschweifte Klammern zu notieren. BashSupport bietet in solchen Fällen eine Quickfix-Aktion an, um die Klammern automatisch hinzuzufügen.
Umwandlung von Backtick- in Subshell-Kommando
In Bash gibt es zwei Möglichkeiten, Kommandos in einer Subshell auszuführen.
Der alte Weg ist`echo a`, die neue Art und Weise
ist$(echo a). Mit dieser Inspection
können Sie die Verwendung der alten Möglichkeit in die neue automatisch vornehmen.
Umwandlung von Subshell- in Backtick-Kommandos
Diese Inspection dient dazu, Subshell-Aufrufe mittels
$(...)
die alte Form mit Backticks umzuwandeln.
Diese Inspection ist standardmäßig nicht aktiviert. Falls Sie sie verwenden möchten müssen Sie diese also manuell aktivieren.
Doppelte Funktionsdefinition
Diese Inspection markiert eine Funktionsdefinition, wenn sie eine bereits vorher definierte Funktion überschreibt.
Expansions auswerten
Bash-Expansions wie bspw.
{a..z}{0..9}
können von
BashSupport
mit Hilfe dieser Inspektion mit dem resultierenden Wert ersetzt werden. Es werden
alle Formen unterstützt. Wenn die Unterstützung von Bash 4.0 unterstützt wurde, werden
auch die erweiterten Formen der Expansions unterstützt.
Fehlende Include-Datei
Wenn die Datei in einem Include-Befehl konstant ist, also keine Variablen enthält, untersucht diese Inspection, ob die Datei auf dem aktuellen System auch tatsächlich vorhanden ist. Wenn die Datei nicht vorhanden ist, wird der Include-Befehl mit einer Warnung hinterlegt.
Rekursive Include-Befehle
Wenn eine Datei sich per Include-Befehl selbst erneut einbindet, führt dies zu einer Endlosschleife. Diese Inspection erkennt, wenn ein Skript sich selbst einbindet und markiert diese Befehler mit einer Warnung.
Quellcodeformatierung
BashSupport unterstützt die Formatierung von Bash-Quellcode. Um das aktuelle Skript bzw. die aktuelle Textauswahl umzuformatieren, können Sie Code → Reformat Code... verwenden.
![]() | Achtung |
|---|---|
Diese Funktion ist noch in einem experimentellen Zustand. Daher kann es vorkommen, dass ihre Skripte nicht korrekt formatiert werden. Auch gibt es noch keine Möglichkeit, die Formatierung zu konfigurieren. |

![[Achtung]](../images/caution.png)