Quoi de neuf dans RubyMine 2020.1

Navigation améliorée, assistance au codage plus intelligente, création de tests plus facile, nouveau mode LightEdit et bien d'autres nouvelles fonctionnalités pour le débogueur, Docker, le contrôle des versions, JS et les outils de base de données.

Navigation

Navigation entre les entités Rails

Navigation entre les entités Rails

Vous pouvez désormais naviguer entre les entités Rails et un schéma de base de données. Pour cela, appuyez sur Ctrl+Alt+Accueil. Afin de fluidifier la navigation, nous avons également unifié l'apparence de la fenêtre contextuelle de navigation et l'avons rendue plus compacte.

Navigation améliorée entre les méthodes

Navigate | Go to Super Method (Ctrl+U) vous permet maintenant de sélectionner la super méthode précise à laquelle vous souhaitez accéder.

Vous pouvez également chercher les utilisations (Alt+F7) d'une super méthode.

Navigation dans la vue Structure view

Navigation dans la vue Structure view

Dans la vue Structure view (Ctrl+7), vous pouvez filtrer les variables pour n'afficher que les méthodes.

Aperçu de Ruby 2.7

Prise en charge de la dernière syntaxe Ruby

Prise en charge de la dernière syntaxe Ruby

Comme toujours, nous prenons en charge la dernière version de Ruby. Cela inclut, par exemple, la nouvelle syntaxe '_' des paramètres numérotés. L'IDE identifie la nouvelle syntaxe et vous aide à naviguer, à trouver les utilisations et à renommer les objets.

Exécution et débogage

Exécution de tâches Rake à partir de la gouttière

Exécution de tâches Rake à partir de la gouttière

À partir de la version 2020.1, vous pouvez exécuter, déboguer et profiler vos tâches directement à partir du menu de la gouttière. Comme toujours, RubyMine crée automatiquement les configurations d'exécution et de débogage correspondantes pour les tâches qui ont été exécutées.

Exécution intelligente des commandes du terminal

Exécution intelligente des commandes du terminal

Le terminal de RubyMine peut désormais analyser diverses commandes. Une fois qu'une commande saisie correspond, elle est mise en évidence et vous pouvez appuyer sur Ctrl-Entrée pour ouvrir une interface utilisateur particulière avec les paramètres extraits de la commande.

Pour essayer cette fonctionnalité, activez l'indicateur terminal.shell.command.handling dans la boîte de dialogue Experimental Features.

Pour en savoir plus

Épingler les champs des variables

Épingler les champs des variables

Dans la vue Variables du débogueur, vous pouvez maintenant épingler les champs des variables en haut et consulter leurs valeurs dans la représentation de la variable.

Tests

Création de tests dans un chemin spécifique

Création de tests dans un chemin spécifique

RubyMine peut désormais créer un nouveau test pour n'importe quelle classe, en répliquant la structure de répertoires en fonction du chemin d'accès au sujet du test.

Pour en savoir plus

Assistance au code

Saisie semi-automatique assistée par ML

Saisie semi-automatique assistée par ML

Grâce à l'apprentissage automatique, RubyMine est désormais en mesure d'afficher en premier les suggestions de saisie semi-automatique les plus pertinentes. Notez que la saisie semi-automatique assistée par ML n'est pas totalement finalisée et que nous espérons en améliorer l'utilité avec le temps.

Docker

Améliorations de Docker Compose

Améliorations de Docker Compose

Avec RubyMine 2020.1, vous pouvez exécuter, déboguer et tester votre application dans un environnement particulier en utilisant Docker Compose en tant qu'interpéteur distant. Vous pouvez préciser le mode d'exécution de commandes comme which ruby, gem env, et rbconfig à l'intérieur de Docker.

Pour en savoir plus

Éditeur de code

Mode LightEdit

Mode LightEdit

Le nouveau mode LightEdit vous permet d'utiliser RubyMine en tant qu'éditeur de texte générique. Il se lance et fonctionne beaucoup plus rapidement que d'habitude car il ouvre vos fichiers sans charger de projet.

Mode Zen

Mode Zen

Le mode Zen vous aide à vous concentrer sur votre code : il développe la fenêtre de l'IDE et masque tous les éléments à l'exception de l'éditeur de code. Pour l'essayer rapidement, appuyez sur Ctrl+` et sélectionnez View mode | Enter Zen Mode.

Configuration de l'IDE

Interface utilisateur unifiée pour la configuration SSH

Interface utilisateur unifiée pour la configuration SSH

Il existe un nouvel onglet de paramètres unifiés pour gérer vos configurations SSH, situé sous Preferences/Settings | Tools | SSH Configurations. Utilisez-le pour ajouter, modifier, stocker et supprimer des configurations SSH.

Pour en savoir plus

Plus de flexibilité lors du partage des configurations d'exécution

Plus de flexibilité lors du partage des configurations d'exécution

Dans RubyMine 2020.1, vous aurez plus de contrôle sur vos configurations d'exécution, car vous pouvez désormais les stocker dans le répertoire de projet de votre choix. Pour ce faire, cochez la nouvelle case Store as project file puis indiquez le chemin d'accès au répertoire dans lequel vous souhaitez stocker un fichier avec la configuration d'exécution sélectionnée.

Pour en savoir plus

Terminal

Sessions de terminal fractionnées verticalement/horizontalement

Sessions de terminal fractionnées verticalement/horizontalement

Vous pouvez désormais fractionner l'écran pour exécuter des sessions de terminal côte à côte verticalement ou horizontalement. Appelez le menu contextuel à partir du terminal pour créer une session de terminal fractionnée, y naviguer et la fermer .

Systèmes de contrôle de version

Nouvelle boîte de dialogue “Interactively Rebase from Here”

Nouvelle boîte de dialogue “Interactively Rebase from Here”

Nous avons remanié Interactively Rebase from Here pour rendre la boîte de dialogue véritablement interactive. Elle vous permet de modifier, combiner et supprimer vos commits précédents, pour rendre votre historique de commits plus linéaire et plus compréhensible.

Pour en savoir plus

Boîte de dialogue Commit / fenêtre d'outil Commit

Boîte de dialogue Commit / fenêtre d'outil Commit

RubyMine 2020.1 propose une fenêtre d'outil Commit comme alternative à la boîte de dialogue Commit. Vous pouvez passez de l'une à l'autre via Preferences / Settings | Version Control | Commit | Use non-modal commit interface.

La nouvelle fenêtre d'outil est située sur la gauche, ce qui laisse suffisamment de place à l'éditeur pour afficher le diff.

Pour en savoir plus

Amélioration de la fenêtre contextuelle Branches

Amélioration de la fenêtre contextuelle Branches

La fenêtre contextuelle Branches connaît plusieurs améliorations :

  • Utilisez un champ de recherche explicite pour rechercher les branches distantes et locales existantes.
  • Le bouton Refresh met désormais à jour les branches distantes existantes.
  • Des indicateurs de commit entrant (bleu) et sortant (vert) ont été ajoutés à la barre d'état.

Outils de base de données

Résultats des requêtes dans l'éditeur

Résultats des requêtes dans l'éditeur

Vous pouvez maintenant consulter les résultats de vos requêtes dans l'éditeur. Cette fonction peut être activée et désactivée à l'aide d'un nouveau bouton de la barre d'outils ou dans Settings/Preferences | Database | General | Show output results in the editor. Choisissez le mode d'affichage des données : sous forme de tableau, d'arborescence ou de texte.

Vous pouvez aussi exporter les résultats des requêtes vers Excel.

Scripts de base de données dans les configurations d'exécution

Scripts de base de données dans les configurations d'exécution

Vous pouvez maintenant créer des configurations d'exécution pour exécuter des scripts de base de données.

JavaScript/TypeScript

Nouvelles intentions et inspections intelligentes

Nouvelles intentions et inspections intelligentes

Utilisez les nouvelles intentions et inspections intelligentes (Alt+Entrée) pour gagner du temps lors du codage ! Par exemple, vous pouvez désormais convertir rapidement le code existant en chaînage facultatif et/ou en coalescence nulle, la syntaxe introduite dans les dernières versions de JavaScript et TypeScript.

Amélioration de la pertinence de la documentation rapide

Amélioration de la pertinence de la documentation rapide

Pour JavaScript et TypeScript, la fenêtre contextuelle Documentation affiche maintenant des informations plus utiles, notamment le type et la visibilité du symbole ainsi que l'emplacement où ce symbole est défini.

Vue.js : prise en charge de l'API Composition et de Vuex

Vue.js : prise en charge de l'API Composition et de Vuex

Grâce à la prise en charge prête à l'emploi de la bibliothèque Vuex et de l'API Composition de la prochaine Vue 3, vous pouvez créer de superbes applications Vue.js encore plus facilement.

Exécution de Prettier lors de la sauvegarde

Exécution de Prettier lors de la sauvegarde

La nouvelle option Run on save for files permet à RubyMine d'appliquer la mise en forme Prettier à tous les fichiers spécifiés dans les paramètres de l'IDE et modifiés dans le projet dès que vous enregistrez ces fichiers. Vous n'avez plus besoin d'un observateur de fichier ou d'une extension tierce.

Autres évolutions

  • Nous passons à JetBrains Runtime 11 (JBR11) et nous ne distribuerons plus de builds avec JetBrains Runtime 8 (JBR8). Cela est valable pour toutes les mises à jour 2020.1, à la fois dans l'EDI et dans l'application JetBrains Toolbox App.
  • Le thème light est unifié pour tous les systèmes d'exploitation et s'appelle désormais IntelliJ Light.
  • RubyMine et les autres IDE basés sur IntelliJ utilisent à présent JetBrains Mono comme police de caractères par défaut.
  • Nous avons ajouté un moyen d'importer automatiquement les paramètres d'IDE.
  • Si vous n'avez pas installé Git, RubyMine vous enverra une notification et proposera de télécharger Git et de l'installer pour vous.
  • La fenêtre contextuelle Quick documentation s'affiche par défaut au survol de la souris. Vous pouvez désactiver cette option dans Settings/Preferences | Editor | General.
  • Une nouvelle inspection de code vous avertira désormais des invocations de méthodes privées/protégées non valides.