Fluid-Support für PHPStorm und IntelliJ

Zur Unterstützung der täglichen Arbeit mit der Template-Sprache Fluid, haben wir dieses Plugin für die populären IntelliJ IDEs - IntelliJ IDEA und PHPStorm - von Jetbrains erschaffen.

Die Features im Überblick

Autovervollständigung

Zur Erleichterung der Arbeit über Dateigrenzen hinweg, analysiert das Plugin Fluid-Code im gesamten Projekt und ist so in der Lage hilfreiche Vorschläge in der Autovervollständigung anzubieten. Diese bietet aktuell Unterstützung für Layouts, Partials, Sections, ViewHelper, Viewhelper-Argumente und Controller-View-Parameter.

Quick-Dokumentation

Mit der Tastenkombination Strg + Q (Ctrl + J unter OSX) lässt sich jederzeit die Dokumentation zum aktuell ausgewählten Symbol in einem Popup-Fenster anzeigen.

Direkt zu den richtigen Dateien springen

Dank des Fluid-Plugins sind die gesuchten Dateien nur noch einen Klick entfernt. Bei der Verwendung von Partials, Layouts, Templates oder Sections, kann mit Strg + Klick direkt an die Stelle gesprungen werden an der diese definiert sind. Auch wenn sich die Definition in einer anderen Datei befindet. Diese Sprungfunktion ist nicht nur innerhalb Fluid-Dateien möglich, sondern ebenfalls zu zugehörigen Viewhelpern und Controller-Methoden.

Syntax Highlighting und Brace Matching für Inline-ViewHelper

Bei der Verwendung von Inline-ViewHelpern, leidet oft die Übersichtlichkeit und Lesbarkeit des Codes. Durch die Schachtelung wird es schwieriger zu erkennen wo bestimmte Konstrukte anfangen, oder aufhören und schnell schleichen sich vermeidbare Schachtelungs- oder Syntaxfehler ein. Das Fluid-Plugin bietet ein auf die Sprache optimiertes Highlighting und Brace-Matching, damit diese Fehler schon beim Schreiben des Codes sichtbar werden und direkt vermieden werden können.

Fehlererkennung

Das Fluid-Plugin ist bestens mit den Eigenheiten der Sprache vertraut und erkennt somit Syntax-Fehler auch an Stellen an denen dies mit den IntelliJ Boardmitteln bisher nicht möglich war.


FAQ

1.) Warning: Namespace „f” is not bound

Dies ist eine Warnung direkt vom Editor und nicht von Fluid-Plugin. Leider können wir den Fehler nicht von Haus aus verhindern. Jedoch gibt es einen kleinen Kniff, um diesen für alle Dateien auszublenden.

  1. Klicken Sie mit der linken Maustaste auf den Namespace.
  2. Jetzt die Tastenkombination "Alt + Enter" nutzen und beim gezeigten Element die Rechte-Pfeiltaste drücken.
  3. In der geöffneten Liste "Disable inspection" anwählen.

Roadmap & Lizenz

Das Fluid-Plugin für IntelliJ IDEs wird permanent weiterentwickelt und verbessert. Nachfolgende Features sind bereits für die kommenden Versionen geplant. Ihnen fehlt ein Feature oder Sie haben Verbesserungsvorschläge? Gerne können Sie Kontakt mit uns aufnehmen oder ein Ticket in unserem Bugtracker anlegen.

  • Prüfung, ob alle Layout-Sektionen in den Templates verwendet werden
  • layoutpath, partialpath, und templatepath zugewiesene Variablen auflösen (erfordert parallelen Einsatz des TypoScript-Plugins)
  • Prüfung der Typsicherheit von ViewHelper-Argumenten
  • Konfigurierbares Syntax-Highlighting
  • IDE-Unterstützung für Inline-ViewHelper außerhalb von Argumenten
  • Unterstützung der @SuppressWarnings("unchecked")-Anweisung
  • Warnung für Actions denen kein Template zugewiesen ist
  • Warnung für Templates denen kein Layout zugewiesen ist

License

In general the usage of this software requires the payment of a small fee. Details about the commercial licence can be found here:

License Details

The already released software in our free related gitlab projects belongs to the MIT licence:

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.