RubyMine 2019.2 unterstützt jetzt auch Rails 6 und Ruby 2.7, optimiert die YARD-Unterstützung und den Debugger und implementiert zahlreiche Plattformverbesserungen.
Unser Debugger verwendete bisher TracePoint :line
, um die Programmausführung zeilenweise zu verfolgen. Für v2019.2 haben wir eine systemeigene MRI-Erweiterung entwickelt, so dass der Debugger jetzt auswählen kann, bei welchen Codefragmenten die Ausführung angehalten werden soll, und der Rest des Codes vom Overhead befreit wird. Infolgedessen konnten wir den Debugger erheblich beschleunigen und die folgenden neuen Funktionen implementieren.
Wenn Sie früher während einer Debug-Sitzung eine Zeile mit mehreren Methoden untersuchen wollten, konnte RubyMine nur die erste Methode der Zeile schrittweise ausführen. Die neue Funktion Smart Step Into hebt diese Beschränkung auf und ermöglicht Ihnen, jede einzelne Methode oder einen Blockaufruf in einer einzigen Zeile schrittweise auszuführen und zu untersuchen.
In der neuen Version können Sie Haltepunkte nicht nur an Zeilen setzen, sondern auch an Blöcken. Wenn Sie auf die linke Randleiste klicken, um einen Haltepunkt an einer Zeile mit einem Block zu setzen, fragt RubyMine, ob Sie den Haltepunkt an der Zeile, dem Block oder an beidem setzen möchten.
Lesen Sie sich den Artikel Debugging in RubyMine durch, um mehr über das Debuggen von Ruby- und Rails-Skripten in RubyMine zu erfahren.
RubyMine 2019.2 unterstützt den Mustervergleich (Pattern Matching), der in der ersten Vorschau auf Ruby 2.7 als experimentelles Feature vorgestellt wurde. Die IDE erkennt die neue Syntax und hilft Ihnen bei der Navigation, der Suche nach Verwendungen und dem Umbenennen von Objekten.
Die neue RubyMine-Version erkennt die Syntax von nummerierten Parametern und findet ihre Verwendungen. Das ist ein weiteres experimentelles Feature von Ruby 2.7, mit dem Sie mithilfe einer Parameternummer als Standardparameter Werte zuweisen können, statt eine Blockvariable zu definieren.
RubyMine 2019.2 unterstützt das Framework Action Mailbox, das mit Rails 6 ausgeliefert wird. Die IDE macht Vorschläge zur Vervollständigung von Routingmethoden und Rückrufen und navigiert zwischen deren Implementierung und deren Verwendungen.
Wir haben außerdem einige Inspektionen hinzugefügt, die Sie daran erinnern, einen routing
-Aufruf in ApplicationMailbox
und eine process
-Methode in Ihrer Mailbox hinzuzufügen. Letzteres bietet auch einen Quick-Fix an.
Erfahren Sie mehr über die Nutzung von Action Mailbox in dieser ausführlichen Episode zu GoRails.
Code-Insights für ActiveRecord::Enum
werden jetzt unterstützt. Das umfasst Autovervollständigung, Navigation und die Suche nach Verwendungen für die Namen und Methoden von Enumeratoren. Auch negative enum-Bereiche (eingeführt in Rails 6) werden unterstützt.
Wir optimieren kontinuierlich unsere Unterstützung für YARD, um Ihnen beim Erstellen und Verwalten von YARD-Tags zu helfen und auf der Basis von YARD-Annotationen bessere Autovervollständigung von Code in RubyMine bereitstellen zu können. Die neue Version bietet Typannotationen und Inspektionen für die Tags @overload
und @yieldparam
.
Lesen Sie sich den Artikel YARD support in RubyMine durch, um einen tieferen Einblick in die Features von RubyMine und die neuesten Verbesserungen in Bezug auf YARD zu erhalten.
In v2019.2 können Sie Factories, Sequences und Traits umbenennen (Umschalt+F6). Die IDE findet deren Definitionen und schlägt vor, diese samt aller Verwendungen umzubenennen. Falls der Dateiname mit dem Factory-Namen übereinstimmt, kann auch die Datei umbenannt werden.
Wir haben außerdem Factories, Sequences und Traits zur Ansicht der Dateistruktur (Alt+F7) und zum Pop-up (Strg+ F12) hinzugefügt und die Möglichkeit implementiert, diese auf sichere Weise zu löschen (Refactor | Safe Delete).
Mit der neuen Intention Propagate to destructuring (Alt-Enter) können Sie (sofern möglich) eine Extra-Variable durch eine weitere Destrukturierung ersetzen. Verwenden Sie die Intention-Aktion Replace destructuring with property or index access, um eine Destrukturierung vollständig zu entfernen.
Wenn Sie ein Symbol in einer JavaScript- oder TypeScript-Datei umbenennen, gruppiert die IDE jetzt dynamische Verwendungen und schließt sie standardmäßig von der Refaktorierung aus. Dies macht die Refaktorierung präziser und gibt Ihnen im Toolfenster Refactoring Preview mehr Kontrolle darüber, was genau umbenannt werden soll.
Die Codevervollständigung von Komponenten und deren Eigenschaften aus Vuetify, BootstrapVue, Quasar und einigen anderen Bibliotheken mit Vue-Komponenten ist jetzt präziser. Möglich wurde dies durch einen neuen Ansatz bei der Nutzung dieser Bibliotheken in der IDE.
Die neue Inspektion Duplicate code fragment überprüft Ihren Code in Echtzeit und hebt mögliche Duplikate sofort im Editor hervor. Die Funktion ist für JavaScript, TypeScript, CSS, Sass, SCSS und Less verfügbar.
Weitere Informationen zu den JavaScript-Verbesserungen in RubyMine 2019.2 finden Sie unter Das ist neu in WebStorm.
In v2019.2 können Sie verschiedene Codestile in verschiedenen Teilen Ihres Projekts verwenden, indem Sie mehrere .editorconfig
-Dateien hinzufügen. Neben den EditorConfig-Standardoptionen, die seit langem unterstützt werden, können Sie jetzt auch IDE-spezifische Eigenschaften verwenden, die alle verfügbaren Codestil-Optionen der IDE abdecken.
Die neue Version unterstützt Shell-Skripte. Dies umfasst Codevervollständigung, die Dokumentations-Schnellansicht, das Umbenennen von Textelementen für .sh
- und .bash
-Dateien und Run-Konfigurationen für Shell-Skripte. Die IDE bietet außerdem die Integration mit ShellCheck für Linting und shfmt zum Formatieren von Code.
In .gitignore
-Dateien kann die IDE jetzt Dateien und Ordner vervollständigen. Klicken Sie bei gedrückter Strg-Taste (Strg-Klick) auf den Namen, um zur jeweiligen Datei oder dem Ordner im Toolfenster Project zu springen. Sie können außerdem Dateien aus der Ansicht Project und der Registerkarte Local Changes schnell zu .gitignore
hinzufügen: Klicken Sie mit der rechten Maustaste darauf und wählen Sie Add to .gitignore.
Jetzt können Sie nach Daten in Ihren Datenbanken suchen, selbst wenn Sie nicht genau wissen, wo sie sich befinden. Klicken Sie mit der rechten Maustaste auf die Datenquelle, die Sie durchsuchen möchten, und wählen Sie Full-text Search (Ctrl+Alt+Shift+F). Die Ergebnisse Ihrer Suchanfrage werden so gefiltert, dass nur Strings angezeigt werden, in denen die Daten gefunden wurden.
Weitere Informationen zu Datenbank-Verbesserungen, die in RubyMine 2019.2 verfügbar sind, finden Sie in den Neuerungen für DataGrip.