Shortcuts Mapping [Eclipse, IntelliJ IDEA]

eclipse_idea_logo

Vous faites partie des personnes qui travaillent avec le langage ​​Java et utilisent l’éditeur IntelliJ IDEA ou Eclipse dans différentes entreprises ou à la maison ? Vous avez des difficultés à retenir les terminologies et faire la correspondance entre les raccourcis clavier ? Pour vous aider à être productif rapidement, voici quelques correspondances entre IntelliJ IDEA et Eclipse.

Pour commencer, les concepts :

Qu’est-il arrivé à mon workspace ? Où sont tous mes projets ? Ce sont les questions que l’on se pose quand on passe à IntelliJ après de longues années passées à utiliser Eclipse. Alors, pas de panique, tout est là mais d’une manière légèrement différente.  

IntelliJ IDEA, ou ID pour les fans, crée un projet pour l’ensemble du code source sur lequel vous travaillez, et un module pour chacun de ses composants individuels. Ainsi, le module d’IntelliJ IDEA devient un projet Eclipse, et un projet IntelliJ IDEA est à peu près l’espace de travail (workspace) d’Eclipse.

Ce tableau vous montre les correspondances entre les concepts d’IntelliJ IDEA et d’Eclipse :

Eclipse IDEA
Workspace Project
Project Module
Project-specific JRE Module JDK
User library Global library
Classpath variable Path variable
Project dependency Module dependency
Library Module library

Correspondances entre les raccourcis

Les correspondances entre la plupart des raccourcis clavier d’IntelliJ IDEA et d’Eclipse sont mentionnées ci-dessous (pour les versions Windows / Linux) :

Description Eclipse IntelliJ IDEA
Générale

Exit (Quitter l’Editeur)

Ctrl + Q

ALT + F + X 

Sauvegarder tout 

Ctrl + S Ctrl + S

Aller à un super-type / sous-type

Ctrl + T Ctrl + B
Edition

Retour en arrière à travers les fichiers que vous avez visités

Alt + ←

Alt + →

Ctrl + Alt + ←

Ctrl + Alt + →

Trouver L’usage des membres d’une classe ou d’une interface

Shift + Ctrl + G

Alt + F7

Générer du code 

Shift + Alt + G

Alt + Insert

Ouvrir la déclaration

F3

Ctrl + Shift + B

Ouvrir la hiérarchie

F4

Ctrl + H

Organiser/Optimiser les imports

Crtl + shift + O

Ctrl + alt + O

Rechercher / Remplacer

Chercher dans le workspace

Ctrl + H

Double shift ou Alt + Ctrl + R

Trouver/Chercher dans un fichier

Ctrl + F

Ctrl + F

Trouver/chercher le Suivant

Ctrl + K

F3

Trouver/chercher le précédent

Shift + Ctrl + K

Shift + F3

Remplacer

 Ctrl + F

Ctrl + R

Mode Débug

Activer le mode debug

F11

Shift + F9

Debug As…

Alt + Shift + D

Alt + Shift + F9

Step Into ( Pas en Avant )

F5

F7

Step Over (pas à l’intérieur)

F6

F8

Step Out (pas de retour)

F7

Shift + F8

Reprendre le debug

F8

F9

Evaluer une expression

Ctrl + Shift + D 

Alt + F8

Ajouter un point d’arrêt

Ctrl + Shift + B

Ctrl + F8

Navigation / Refactoring

Aller à la ligne n°N

Ctrl + L

Ctrl + G

Pour trouver implementation d’une méthode abstraite

Ctrl + Shift + G

Ctrl + Alt + B

Pour passer d’une méthode à la suivante (ou précédente)

Ctrl + Shift + ↓

Ctrl + Shift + ↑

  Alt + ↓   Alt + ↑

Ouvrir n’importe quel fichier rapidement

Ctrl + Shift + R

Ctrl + Shift + N

Ouvrir une classe ou une interface

Ctrl + Shift + T

Ctrl + N

Afficher la structure du fichier : les membres (méthode, variable , …)

Ctrl + O

Ctrl + F12

Commenter une ligne

Ctrl + /

Ctrl + /

Mettre le bloc en commentaires

Ctrl + Shift + /

Ctrl + Shift + /

Fermer un fichier ouvert

Ctrl + Shift + F4

 Ctrl + F4

Renommer un élément

Alt + Shift + R ou F2

Shift + F6

Extraire une variable locale

Alt + Shift + L

Ctrl + Alt + V 

Extraire une méthode

Alt + Shift + M

Ctrl + Alt + M  

Ouvrir l’assistant de contenu

Ctrl + Espace

Ctrl + Espace

Formatter le code

Ctrl + Shift + F

Ctrl + Alt + L

Générer des getters, setters, override …. Etc

Alt + Shift + S

Alt + Insert

(Exécuter) Run As…

Alt + Shift + X

 Alt + Shift + F10

Afficher la classe dans la vue package (Package Explorer)

Alt + Shift + W

 Scroll From Source Icon

Afficher la hiérarchie du type

Ctrl + T

 Ctrl  + Shift  + B

Aller au dernier Fichier modifié

Ctrl + Q

 Ctrl  + Shift  + E

Voir Javadoc / Détails

Mouse Over

Ctrl + Q

Proposer des corrections pour les erreurs de compilation

Ctrl + Espace

Alt + Enter

Faire monter ou descendre un bloc de code

Alt + fléche bas / haut

Shift + Alt + fléche bas / haut

Changer le package d’une classe (move class)

 Shift + Alt + V

F6

Déplacer une méthode ailleurs (move member)

Shift + Alt + V 

F6 sur la méthode

Modification paramétre méthode, ajout, suppression, modification ordre

Shift + Alt + C 

Ctrl + F6

Ouvrir les classes et les fichiers récements ouverts

Ctrl  + Shift  + F6  

Ctrl + E

Changer la signature de la méthode

Shift + Alt + C

Ctrl + F6

Conclusion :

La liste présentée dans l’article englobe la totalité des raccourcis qu’un développeur utilise chaque jour, lors d’une navigation, d’une édition ou bien durant un debug.
Il existe d’autres raccourcis pour chacun des IDEs, qui sont moins utilisés.

Pour en savoir plus :

  • Eclipse IDE :   Ctrl + Shift + L
  • Intelig Idea IDE : Help -> Default Keymap Reference

Nombre de vue : 4075

COMMENTAIRES 4 commentaires

  1. Patouche dit :

    Salut !!

    Je suis passé il y a très peu de temps à IntelliJ. Vraiment un super IDE !! Très bonne idée d’article 🙂

    En revanche, j’aimerais vraiment voir un jour Eclipse renaitre de ses cendres. EasyEclipse comme alternative ?? Comme on pouvait le lire il y a peu sur un article sur developpez.com, une fondation dont le but serait de promouvoir et d’entretenir Eclipse serait génial (cela n’étant pas le but de la fondation eclipse). Source : http://blog.developpez.com/jmini/p12512/eclipse/easyeclipse-ide-java-payant

    Seul défaut de IntelliJ, c’est qu’il est pas super sympa avec les linuxiens. Ctrl + Alt + Droite (ou gauche) ? Sérieux ? Sans le Ctrl, tu as l’équivalent Eclipse du Ctrl + PageDown / PageUp … Et cela, même en précisant le binding Gnome (et hors de question de mettre KDE comme binding sur un xfce – ce serait pécher) !! J’espère vraiment être le seul à rencontrer ça … Sinon, les personnes qui tourne sous Gnome (par abut de language, on pourrait dire sous “un vrai OS” – troll inside), ils font comment (à part la surcharge) ?? D’ailleurs, ça rappelle les début de Gnome 3 qui surchargait les controles WTP (et impossible de changer ça – enfin, après une brève recherche, j’avais pas trouvé)…

    J’ai cependant décidé de répondre à l’article après le “Javadoc : Eclipse = ‘Mouse Over'” !! Sous Eclipse, F2 dans l’éditor ou Shift + F2 dans la navigation (qui ouvre un editor). Eclipse, c’est anti-souris par nature…

    Le sauvegarder tout de eclipse, c’est le Ctrl + Shift + S. Le Ctrl + S ne sauvegarde que le fichier courant.

    Le générer du code sous eclipse, je connaissais pas du tout le Shift + Alt + G. J’ai toujours utilisé le Ctrl + Shift + S / ?? Ca me semble d’ailleurs plus proche de l’équivalent IntelliJ. Par example, pour générer Getter + Setters, tu as Ctrl + Shift + S / R. Ou encore, Ctrl + Shift + S / S avec le builder que tu peux définir 🙂 (chez les 2) !!

    Sinon, en autocomplétion, il y a aussi la smart auto completion : IntelliJ => Ctrl + Shift + Space. Après, je n’en ai pas encore saisi toutes les subtilités :'(…

    Pour le extraire à une variable local, mon choix se porte plus sur le Ctrl + 2 (pavé numérique only – mais sous les Qwerty, les 2 fonctionne il me semble) / L qui me semble plus rapide. On pourrait rajouter à la liste le extraire une constante : Eclipse => ctrl + alt + T / A qui est sous IntelliJ : Ctrl + Alt + C. Après, c’est à la préférence de chacun…

    Sous Eclipse, le Ctrl + shift + G sert à chercher une référence (ça passe le focus sur le search). Son équivalent IntelliJ est le Alt + F7 il me semble ? (sous Gnome, c’est le alt + shift + F7)

    Commenter une ligne : Je ne sais plus trop mais le Ctrl + / fonctionne sous Eclipse avec un azerty ?? Sous un azerty, nous ne sommes pas obligé de faire du Ctrl + Shift + / (ce qui est revient à commenter un bloc) ? Le Ctrl + Shift + C sous Eclipse est bien plus puissant (surtout pour les XML) car il traite à la ligne (et est donc réversible). Lorsque je bossais hors de france, on avait ce problème là sur le Ctrl + Shift + 1 (azerty – ou Ctrl + 1 avec le pavé numérique) et le Ctrl + 1 (qwerty) qui sont les mêmes :-/. Sur IntelliJ, c’est pareil, il me détecte “Ctrl + 2 points” comme shortcut pour commenter :'( …. Ou alors, on peut définir son type de clavier (et non, no way pour un bepo) ?? Et donc, le “Proposer des corrections pour les erreurs de compilation”, c’est bien le Quick Fix ? J’ai pas compris l’équivalent ton Eclipse du “Alt + Enter” IntelliJ…

    IntelliJ : Ctrl + Alt + L est plus puissante que chez Eclipse qui ne fait que “format”. Sur IntelliJ, c’est l’équivalent du “format” + “clean up” (que tu peux plus ou moins simuler par une save action). Mais par exemple, tu pourras pas réordonner tes méthodes sous Eclipse sauf si tu fais un clean up (Ctrl + Shift + S / U). C’est d’ailleurs relativement dangereux lors du travail colloboratif si tout le monde n’a pas le même type de “clean up” car cela va provoquer des éventuelles conflits inutiles (comme on a pu le constater sur une équipe Eclipse vs IntelliJ, c’est pareil pour l’ordre d’import.)

    De même, le Alt + Shift + F10 s’approche plus du Ctrl + F11 (F11 est plus connu car il lance le debug) de Eclipse. J’adore (adorais ??) aussi le Alt + Shift + X / T sous eclipse… Mais bon, des fois, ça répondait pas des masses.

    Sous Eclipse, le Ctrl + Shit + F6 fait exactement la même chose que le Ctrl + E d’Eclipse (mais en plus simple). c’est légérement différent du Ctrl + E d’IntelliJ qui regroupe aussi le Ctrl + F6 d’Eclipse (Switch views => Ctrl + F7 – ou Ctrl + Alt + Q / ??). Sous eclipse, il y a aussi le Switch perspectives => Ctrl + F6.

    Et les settings, tu peux le faire avec Ctrl + Alt + S sous IntelliJ. Pour chercher quelque chose, tu as aussi le truc sympa au début qui est la Ctrl + Shift + A qui est super sympa.

    Enfin, sous eclipse, l’un de mes favoris (oui, une grande affiné est né entre nous 🙂 – private Joke inside) est le Ctrl + Shit + W pour fermer tout d’un coup !!

    Depuis mon passage à IntelliJ, je n’ai pas retrouvé l’option “semicolon” qui permettait de mettre directement un ; à la fin de la ligne. Alors, j’ai l’impression de passer mon temps à faire des Ctrl + Shift + Enter. Il y a une alternative à cela ? Enfin, avec les templates IntelliJ (merci à David W de les avoir mis sur son Github par ailleurs), tu as aussi le Ctrl + J qui est super sympa 😀

    Enfin, j’espère être le seul à rencontrer ces petits soucis avec “Gnome”. Si non, il reste à espérer que cela sera régler très bientot. Et comme me le recommandait un ami hier lorsque l’on parlait d’IntelliJ, dwm ne me semble pas un compromis viable sur le long terme…

    Merci bien pour ton article !!

    Cordialement,
    Patouche

  2. Mouhcine dit :

    Intéressant.

    Par contre sur Linux, pour Intellij il y a pas mal de raccourcis qui ne marchent pas.

  3. David Wursteisen dit :

    @Patouche : j’ai désactivé tous les raccourcis de l’os (xfce) pour ne plus avoir de conflit entre l’os et IntelliJ.

    Autrement, attention, il y a 2/3 bugs avec les raccourcis sous Intellij & un clavier azerty, cf : http://youtrack.jetbrains.com/issue/IDEA-75636

  4. […] Shortcuts Mapping [Eclipse, IntelliJ IDEA] […]

AJOUTER UN COMMENTAIRE