Raccourci clavier JetBrains / IntelliJ pour réduire toutes les méthodes

226

Je travaille sur un code hérité qui a une classe de plus de 10 000 lignes de code et 100 méthodes. Existe-t-il un raccourci pour tout IDE JetBrains (car le raccourci serait probablement partagé entre tous) pour réduire toutes les méthodes / fonctions afin que seules les signatures de méthode soient affichées?

Quelque chose comme ça:

public String myMethod(String arg1, int arg2){...}

public String mySecondMethod(String arg1, int arg2){...}
Brad
la source
12
Vous pouvez jeter un coup d'œil aux raccourcis de pliage de code intellij . Je suppose que Ctrl + Shift + Minus est ce dont vous avez besoin.
lifus
YEAHHHH. Je ne savais pas que cela s'appelait pliage de code, donc je ne l'ai pas trouvé. Merci!
Brad
3
Je serais tenté de faire un downvote sauf que j'ai presque pleuré quand vous avez dit "une classe qui a plus de 10 000 lignes de code et a environ 100s de méthodes" donc +1 pour essayer.
Peter Lawrey
Ha. je le serais aussi mais ce n'est pas de ma faute. J'en ai hérité
Brad
4
Je me rends compte que cela ne répond pas à la question posée, mais Ctrl-F12ouvrira un navigateur pour passer d'une méthode à une autre, etc. (Vous pouvez également réduire la liste des méthodes en tapant cette vue Structure .) Le volet Structure ( Alt-7) ajoute plus les options. Cela pourrait être un moyen plus efficace d'explorer des fichiers avec un grand nombre de méthodes, donc je laisse ici la suggestion aux futurs googleurs.
kghastie

Réponses:

432

Vous pouvez jeter un coup d'œil aux raccourcis de pliage de code intellij .

Pour Windows / Linux, faites: Ctrl+ Shift+-

Pour Mac, utilisez Command+ Shift+-

Pour déplier à nouveau, faites Ctrl+ Shift+ +ou Command+ Shift+ +respectivley.

lifus
la source
10
Une commande qui ne réduit pas récursivement tout à l'intérieur des méthodes serait également bien.
trinity420
1
Ctrl + -:
réduire la
La réponse ci-dessous est bien meilleure, car elle a toute la granularité que je cherchais!
Angelos Pikoulas
@Ali_dev existe-t-il un moyen de faire de même pour toutes les méthodes?
shashwat
@shashwat pas exactement. vous pouvez utiliser Ctrl + Maj + Moins pour les réduire tous, puis utiliser Ctrl + Alt + Plus pour en ouvrir un de manière récursive.
Ali_dev
86

La suggestion ci-dessus de code Ctrl+ Shift+ -replie tous les blocs de code de manière récursive. Je voulais seulement plier les méthodes de mes cours.

Code> Folding> Expand all to level>1

J'ai réussi à y parvenir en utilisant l'option de menu Code > Folding > Expand all to level > 1.

Je l'ai réaffecté à Ctrl+, NumPad-1ce qui me donne un moyen rapide de réduire mes classes à leurs méthodes.

Cela fonctionne au «niveau bloc» du fichier et suppose que vous avez des classes définies au niveau supérieur de votre fichier, ce qui fonctionne pour du code tel que PHP mais pas pour JavaScript (fermetures imbriquées, etc.)

Précastique
la source
4
Cela devrait être la réponse acceptée OMI. Il résout le problème en 1 étape et le résout exactement comme demandé. Si au lieu de cela vous faites la réponse acceptée, vous plierez tout ce qui peut être plié puis vous déplierez pour voir vos méthodes. Je fais ce dernier et ce n'est pas que beaucoup de temps, mais il est bon de savoir que je peux sauter quelques étapes avec l'ancien de ce poste. Merci!
John Pancoast
1
Bien, ça suffit. Le seul problème auquel je suis confronté maintenant est que je ne peux pas le faire en appuyant sur les boutons du clavier car j'ai un MacbookPro sans numpad. Devra Google sur la façon d'attribuer des clés personnalisées, je suppose. Soupir.
CodeGodie
IntelliJ a un clavier par défaut pour cela: Ctrl+ NumPad-*suivi du niveau de pliage que vous souhaitez, entré sur le pavé numérique.
Matt C
Il réduit les blocs à l'intérieur des méthodes! N'y a-t-il pas de niveau 0 ?
Amir Fo
22

allez dans l'option de menu Code> Pliage pour accéder à toutes les options liées au pliage de code et à leurs raccourcis.

Rahul Tiwari
la source
1
Cela est particulièrement utile si vous utilisez un autre clavier (comme le clavier d'éclipse).
Magnilex
Malheureusement, les raccourcis de "deuxième trait" n'affichent pas correctement le raccourci dans le menu. Voir la réponse de overthink.
Antimony
7

La réponse de @ precastic ci-dessus est, imo, la bonne idée.

Il convient de noter que dans IDEA 2018.2 (et sûrement dans les autres versions à proximité), il existe des raccourcis clavier par défaut pour cela: (montrant Mac, voir Code> Pliage> Tout développer au niveau pour votre système):

Cmd+ Option+ Keypad *, 1- tout développer au niveau 1
Cmd+ Option+ Keypad *, 2- tout développer au niveau 2
...
Cmd+ Option+ Keypad *, 5- tout développer au niveau 5

Remarque: ce sont des raccourcis de "deuxième trait". Appuyez d'abord sur Cmd+ Option+ *, puis relâchez, puis appuyez sur le numéro souhaité.

surpenser
la source
1
Pour tous les non-mac, Cmdc'est Ctrlet Optionc'estShift
desertSniper87
Bon à savoir sur les raccourcis du deuxième coup.
Varun Sharma
2

Vous pouvez aller à la configuration> éditeur> général> pliage de code et cochez "afficher le contour de pliage de code".

Meysam Jafari
la source
1

Dans Rider, ce serait Ctrl+ Shift+ Keypad *,2

Mais !, vous ne pouvez pas utiliser le numéro 2 sur le clavier , seul le numéro 2 sur la ligne supérieure du clavier fonctionnerait.

Rosdi Kasim
la source
2
Le numéro sur le pavé numérique fonctionne, mais vous devez d'abord relâcher Ctrl + Maj + * avant d'appuyer sur le pavé numérique 2.
Northnroro