Das ist neu in RubyMine 2021.2

Neue Funktionen für die Arbeit mit Ruby und RBS sowie Verbesserungen in den Bereichen Code-Completion, Suche, Refactoring, Editor, VCS-Unterstützung, Space, Code With Me und mehr.

Ruby und RBS

Intelligentere Suche und Refaktorierung

Intelligentere Suche und Refaktorierung

Die Refaktorierungen Go to declaration, Find usages und Rename gehen jetzt bei Projekten, die RBS verwenden, zielgenauer vor. Statt alle potenziellen Verwendungen anzuzeigen, wertet RubyMine die .rbs-Deklarationen aus, um die Zusammenhänge zwischen den Projektentitäten zu bestimmen.

Navigation zwischen Ruby und RBS

Navigation zwischen Ruby und RBS

Mit neuen Navigationsaktionen können Sie jetzt zwischen zusammengehörigen .rb- und .rbs-Dateien navigieren. Klicken Sie mit der rechten Maustaste auf eine Projektentität – z. B. eine Klasse oder Methode – und wählen Sie Go to / Type Signature | Associated Declaration. Sie können auch die Tastenkombination Strg+Alt+Pos1 verwenden.

Verbesserte Ruby-Programmierunterstützung

Verbesserte Ruby-Programmierunterstützung

RubyMine bestimmt anhand der RBS-Signaturen den Typ von Ruby-Elementen, um relevantere Completion-Vorschläge anzubieten. RubyMine unterstützt jetzt die meisten RBS-Entitäten, einschließlich Typvariablen, Blockparameter, Tupeltypen, Proc-Typen usw.

Für Codeteile ohne RBS-Typsignatur verwendet RubyMine weiterhin seinen eigenen Typinferenz-Mechanismus.

Neue Inspektionen

Neue Inspektionen

Durch Nutzung der Informationen in den .rbs-Dateien kann RubyMine den Ruby-Code auf eine größere Anzahl von Fehlern überprüfen. RubyMine zeigt einen Typfehler an, wenn eine Diskrepanz zwischen RBS- und Ruby-Code vorliegt. Auch für die .rbs-Dateien selbst bietet diese Version neue Inspektionen, unter anderem für fehlerhaften Code und unaufgelöste Referenzen. RubyMine kann mit der Funktion Run anything auch Steep-Befehle ausführen.

Verbesserte RBS-Bearbeitung

Verbesserte RBS-Bearbeitung

Diese Version bietet wesentliche Erleichterungen für das Lesen von RBS-Code: Syntaxhervorhebung, Formatierung, automatische Einrückung, Codefaltung, Strukturansicht und Kommentieren mit dem Kürzel Strg+/.

Programmierhilfen für RBS-Dateien

Programmierhilfen für RBS-Dateien

RubyMine bietet jetzt Programmierunterstützung für die Arbeit mit RBS-Dateien: Code-Completion, Verwendungssuche, Codenavigation, Umbenennen-Refactoring und mehr. Sie können auch .rbs-Prototypen und eigene Live-Vorlagen für RBS erstellen.

Editor

Überarbeitete Beschreibungen für Inspektionen und Quick-Fixes

Überarbeitete Beschreibungen für Inspektionen und Quick-Fixes

Wir haben die Beschreibungen für alle Inspektionen und Quick-Fixes aktualisiert, die Sie in RubyMine ausführen können. Die überarbeiteten Beschreibungen erläutern, welche Änderungen die Inspektion vorschlägt und was die Gründe dafür sind. Für einige Inspektionen werden Anwendungsbeispiele bereitgestellt.

Aktionen beim Speichern

Aktionen beim Speichern

RubyMine unterstützt jetzt das Ausführen bestimmter Aktionen beim Speichern von Änderungen – zum Beispiel kann der Code neu formatiert werden. Sie finden alle Aktionen, die beim Speichern ausgeführt werden, unter Preferences / Settings | Tools | Actions on Save.

Weitere Informationen

Schnelle Erstellung von Scratch-Dateien

Schnelle Erstellung von Scratch-Dateien

In Scratch-Dateien können Sie außerhalb des Projektkontexts Notizen erstellen oder Code schreiben. Ab dieser Version können Sie einen Codeabschnitt auswählen, Alt+Enter drücken und mit der Option Create new scratch file from the selection eine neue Scratch-Datei mit diesem Code anlegen.

Benutzererfahrung

Textsuche im lokalen Verlauf

Textsuche im lokalen Verlauf

Die Funktion Local History hilft Ihnen, alle Änderungen, die an einem Projekt vorgenommen wurden, unabhängig von der Versionsverwaltung jederzeit nachzuvollziehen. In dieser Version haben wir Local History um eine Suchfunktion erweitert. Wenn Sie sich an ein paar Schlüsselwörter erinnern, können Sie jetzt die gesuchte Änderung noch leichter finden.

Urheberrechtsangabe mit Jahresspanne

Urheberrechtsangabe mit Jahresspanne

Sie können jetzt sowohl das Erstellungsjahr als auch das Jahr der aktuellen Version in den Urheberrechtshinweis Ihrer Projekte aufnehmen. Die aktualisierte Vorlage, die beide Datumsangaben enthält, ist unter Preferences / Settings | Editor | Copyright | Copyright profile verfügbar.

Erweiterte Einstellungen

Erweiterte Einstellungen

Wir haben unter Preferences / Settings einen neuen Knoten hinzugefügt: Advanced Settings. In diesem Abschnitt finden Sie Optionen für spezielle Anwendungsfälle, die praktischerweise nach IDE-Tools gruppiert sind. Unter anderem sind hier die Einstellungen für Projektansicht, Programmstart, Terminal usw. untergebracht.

Neuladen von Browserseiten beim Speichern

Neuladen von Browserseiten beim Speichern

Wenn Sie die Änderungen in einer HTML-, CSS- oder JavaScript-Datei speichern, können im Browser die entsprechenden Seiten automatisch neu geladen werden.

Anordnen von Toolfenstern durch Ziehen und Ablegen

Anordnen von Toolfenstern durch Ziehen und Ablegen

Toolfenster können jetzt einfach mit der Maus an die gewünschte Stelle im IDE-Hauptfenster oder in einem separaten Fenster gezogen werden.

Neue Navigationsmöglichkeit in den Einstellungen

Neue Navigationsmöglichkeit in den Einstellungen

Sie können jetzt zwischen geöffneten Abschnitten in Preferences / Settings hin und her navigieren. Verwenden Sie dazu die Pfeile in der rechten Ecke des Fensters.

Debugger

Vorschau-Tab beim Debugging

Vorschau-Tab beim Debugging

Der Vorschau-Tab funktioniert jetzt bei Dateien, die beim Debugging geöffnet werden: Diese Dateien werden nacheinander in demselben Vorschau-Tab angezeigt. Um diese Funktion einzuschalten, aktivieren Sie das Kontrollkästchen Enable preview tab unter Preferences / Settings | Editor | General | Editor Tabs | Opening Policy.

Terminal

Neue Terminal-Optionen

Neue Terminal-Optionen

Wir haben das eingebaute Terminal um zwei neue Optionen erweitert: Sie können das Cursorsymbol frei wählen und die Optionstaste als Metataste verwenden. Sie finden beide Einstellungen unter Preferences / Settings | Tools | Terminal.

Versionsverwaltung

Änderungen an Pre-Commit-Prüfungen

Änderungen an Pre-Commit-Prüfungen

Wir haben neue Aktionen hinzugefügt, die Sie vor einem Commit ausführen können: Run Tests (Tests ausführen), Analyze code (Code analysieren) und Cleanup (Bereinigen). Der Fortschritt und die Ergebnisse aller Pre-Commit-Prüfungen werden im Commit-Bereich angezeigt, ohne Ihren Arbeitsfluss mit zusätzlichen modalen Fenstern zu unterbrechen.

Weitere Informationen

GPG-Signatur

GPG-Signatur

Sie können jetzt Ihre Commits schützen, indem Sie sie mit einem GPG-Schlüssel signieren. Sie können diese Funktion unter Preferences / Settings | Version Control | Git aktivieren. If it’s your first time using a GPG key, you’ll need to configure it. Um einen bereits konfigurierten GPG-Schlüssel zu verwenden, wählen Sie ihn in der Dropdown-Liste aus.

Einheitliches Verhalten der Aktion „Show Diff“

Einheitliches Verhalten der Aktion „Show Diff“

RubyMine zeigt jetzt die Unterschiede zwischen der ursprünglichen und der geänderten Datei im Editor an. Unabhängig davon, wie Sie die Aktion Show Diff aufrufen, öffnet die IDE die Diff-Anzeige standardmäßig im Editor. Wenn Sie die Änderungen lieber in einem separaten Fenster betrachten möchten, können Sie die gewünschte Datei mit der Maus aus dem Editor herausziehen. Die IDE merkt sich diese Präferenz und öffnet zukünftige Diffs in einem separaten Fenster.

Space

Space-Jobstatus im Git-Log

Space-Jobstatus im Git-Log

Damit Sie den Fortschritt von Jobs beim Ansehen der Commit-Liste unkompliziert nachvollziehen können, haben wir Symbole für die Statuswerte von Space-Jobs zum Log-Tab des Git-Toolfensters hinzugefügt. Klicken Sie auf das entsprechende Symbol, um ein Popup mit den Automatisierungsinformationen für den jeweiligen Job zu öffnen.

Um diese Statusinformationen ein- und auszuschalten, klicken Sie auf das Augensymbol im Log und wählen Sie Show Columns | Space Automation.

Erwähnen von Teamkolleg*innen in Reviews

Erwähnen von Personen in Reviews

Sie können andere Teammitglieder jetzt direkt von RubyMine aus auf den aktuellen Stand bringen, indem Sie sie in Space-Reviews erwähnen. Geben Sie @ gefolgt vom Namen der Person in der Zeitleiste oder einem Codekommentar ein und wählen Sie die Person dann von der Liste aus.

Branch-Anzeige in Code-Reviews

Branch-Anzeige in Code-Reviews

Die Branches, auf die sich das ausgewählte Code-Review bezieht, können jetzt angezeigt werden. Während Sie am aktuellen Ticket arbeiten, sehen Sie auf dem Tab Details eine Liste der Branches, die die entsprechenden Commits enthalten.

Code With Me

Synchronisierung der Code-Completion

Synchronisierung der Code-Completion

Bei der Verwendung von Code With Me kann es vorkommen, dass Sie ein Problem erklären oder Ihren Teammitgliedern verschiedene Teile Ihres Projekts zeigen möchten. Sie können dazu den Modus Force Others to Follow You verwenden. Die Teilnehmenden, die Ihnen folgen, können Ihre Completion-Vorschläge sehen.

Web und Frameworks

Autoimport für require()

Autoimport für require()

Wussten Sie, dass Ihre IDE fehlende Importanweisungen hinzufügen kann, wenn Sie ES6-Symbole vervollständigen? Dasselbe ist jetzt auch für CommonJS-Module möglich: require-Importe werden bei Verwendung der Code-Completion eingefügt.

Umbenennen-Refactoring für useState-Hooks in React

Umbenennen-Refactoring für useState-Hooks in React

Verschwenden Sie keine Zeit mehr damit, useState-Werte und -Funktionen in React-Hooks einzeln zu refaktorieren – RubyMine kann die Umbenennung jetzt für Sie vornehmen. Probieren Sie es aus: Legen Sie die Einfügemarke auf einen State-Wert und rufen Sie mit Umschalt+F6 oder mit der Kontextmenü-Option Refactor | Rename das Rename-Refactoring auf.

Andere Verbesserungen

  • Das Programmieren bei aktiviertem Bildschirmlesemodus unter macOS ist einfacher geworden. Die verfügbaren Code-Completion-Vorschläge werden jetzt vorgelesen. Auch für den Inhalt der ausgewählten Combobox sowie für Combobox-Listen haben wir Vorleseunterstützung hinzugefügt. Die Ergebnisse der Aktion Search Everywhere werden jetzt korrekt ausgesprochen.
  • Die Codeanalyse funktioniert ordnungsgemäß und die Hervorhebung wird während einer Dateisystem-Aktualisierung nicht mehr angehalten.
  • RubyMine unterstützt jetzt das Ausführen von Tests mit Coverage-Erfassung bei Projekten, die neben lokalen Ruby-Interpretern auch SSH und Vagrant verwenden.
  • RubyMine bereinigt automatisch alle Cache- und Log-Verzeichnisse, die vor mehr als 180 Tagen zuletzt aktualisiert wurden. Dieser Vorgang betrifft nicht die Verzeichnisse für Systemeinstellungen und Plugins. Sie können den Vorgang manuell über Help | Delete Leftover IDE Directories starten.
  • Ab sofort verpassen Sie keine wichtigen Produktupdates mehr, die von der JetBrains Toolbox App bereitgestellt werden. Wenn eine neue Version zum Download verfügbar ist, informiert Sie RubyMine und bietet an, das Upgrade durchzuführen. Dazu muss die JetBrains Toolbox App in der Version 1.20.8804 oder höher vorliegen.
  • Wir arbeiten weiterhin daran, die Reaktionsschnelligkeit der Bedienoberfläche zu verbessern und unerwartete Hänger zu reduzieren. Unter anderem haben wir bestimmte Vorgänge, die Indizes erfordern, aus dem UI-Thread entfernt und dadurch das Einfrieren in bestimmten Situationen beseitigt.
  • Wir haben den Dialog zum Ändern des Projektsymbols vereinfacht.
  • Ab dieser Version können Sie RubyMine mit einer lückenlos lokalisierten Bedienoberfläche in Chinesisch, Koreanisch und Japanisch verwenden. Die Lokalisierungen sind als separate Sprachpaket-Plugins verfügbar, die einfach in Ihrer IDE installiert werden können.
  • Der Knoten, der alle nicht per Commit gespeicherten Änderungen enthält, hieß bisher Default Changelists. Um eine präzisere und prägnantere Bezeichnung zu verwenden, haben wir in v2021.2 den Knoten in Changes umbenannt. Dieses Update wirkt sich auf alle neuen Projekte aus.
  • RubyMine wird bei Git-Operationen nicht mehr automatisch eine Changelist hinzufügen. Ein Cherry-Pick führt zum Beispiel nicht mehr zur Erstellung einer Changelist.
  • Die älteste von der IDE unterstützte Git-Version ist jetzt v2.17. Wir haben die unterstützte Mindestversion erhöht, da 2.17 die älteste Version ist, die noch Sicherheitsupdates erhält.
  • Code With Me hat kürzlich zwei neue Relay-Server bekommen: einen an der US-Westküste und einen in Südafrika. Dadurch werden die Ping-Zeiten fast dreimal schneller, und Teams aus diesen Regionen können in ihren JetBrains-IDEs in Gedankenschnelle zusammenzuarbeiten.
  • Der Energiesparmodus kann jetzt sehr einfach eingeschaltet werden, um die Akkulaufzeit Ihres Laptops zu verlängern. Klicken Sie einfach mit der rechten Maustaste auf die Statusleiste und wählen Sie im Kontextmenü den Eintrag Energiesparmodus.
  • Die Code-Completion funktioniert jetzt auch für private npm-Pakete.
  • RubyMine bietet jetzt in .js-Dateien eine korrekte Unterstützung für die TypeScript-Syntax in JSDoc-Kommentaren.
  • RubyMine unterstützt jetzt gängige Klassennamen und clsx-Bibliotheken, um Ihnen einen effizienteren Umgang mit Ihren CSS-Klassennamen zu ermöglichen.
  • RubyMine bietet jetzt Code-Completion für Klassennamen und dynamisch ausgewertete className-Attributwerte in Ihren Tailwind-CSS-Komponenten.