Comment activer le code de formatage automatique pour Intellij IDEA?

129

Est-ce possible dans Intellij IDEA après avoir tapé ';' ou appuyez sur «Entrée» a eu lieu le formatage de cette chaîne?

Par exemple, pour:

a+b=10;

après:

a + b = 10;

Ou seule option possible: Code> Reformater le code ... ?

Je vous remercie!

0x131313
la source
1
Alt+ c+r
Gayan Weerakutti
si vous souhaitez que cette fonctionnalité soit incluse dans IntelliJ lui-même (pas dans aucun plugin), veuillez voter ici: youtrack.jetbrains.net/issue/IDEABKL-5806
Ligne

Réponses:

181

Les raccourcis de mise en forme dans Intellij IDEA sont:

  • Pour Windows: Ctrl+ Alt+L
  • Pour Ubuntu: Ctrl+ Alt+ Windows+ L
  • Pour Mac: ⌥ (Option)+ ⌘ (Command)+L
axelrod
la source
88
Oui, mais j'aimerais que cela se produise automatiquement sans appuyer sur une touche de raccourci.
0x131313 du
Macro? ctrl + alt + l devient ctrl + alt + l + enter
Jeff
17
La question énonce expressément "formatage automatique" après que chaque ligne est écrite.
bokan le
2
@axelrod existe-t-il un moyen de le faire automatiquement lors de la sauvegarde ou de la compilation du code
Kasun Siyambalapitiya
3
Cela ne répond pas à la question. La réponse de Nafiur Rahman Khadem le fait.
Dakatine
22

J'ai trouvé deux façons de procéder:

  1. Allez dans Settings> Keymap.Dans la partie droite, Editor Actions> complete current statement.cliquez dessus et sélectionnez Ajouter un raccourci clavier. Presse ; et sélectionnez ok.

  2. Utilisez une macro. Aller à

Edit> Macros> Start Macro Recording.

Maintenant, appuyez sur le point-virgule et le raccourci clavier pour reformater le code (vous pouvez trouver le raccourci clavier à partir d'autres réponses ou à partir de paramètres> keymap).

Après avoir reformaté, allez à

Edit> Macros> Stop Macro Recording

Enregistrez la macro avec un nom (format automatique ou autre). Ensuite aller à

Settings> Keymap> Macros> auto format (le nom de la macro).

Cliquez ici et sélectionnez Ajouter un raccourci clavier, puis appuyez sur le point-virgule et cliquez sur OK. Maintenant, chaque fois que vous appuyez sur le point-virgule, il écrira un point-virgule et effectuera un formatage automatique.

Nafiur Rahman Khadem
la source
Agréable. J'ai également ajouté en Shift+[utilisant la première méthode pour formater la ligne lors de l'écriture d' ifinstructions et de méthodes, etc. Pour une raison quelconque, Entercela ne semblait pas fonctionner, cependant.
Matt
1
Cela a été très utile, c'est bizarre qu'Intellij n'ait pas du tout d'option de reformatage automatique
Teedeez
12

Eclipse a une option pour formater automatiquement lors de l'enregistrement du fichier. Il n'y a pas d'option pour cela dans IntelliJ bien que vous puissiez configurer une macro pour les touches Ctrl + S (Cmd + S sur Mac) pour formater le code et l'enregistrer.

Reformatage Intellij lors de l'enregistrement du fichier

Divers
la source
7

La valeur par défaut est Ctrl+ Alt+ L Il existe une boîte de dialogue de mappage de touches dans laquelle vous pouvez configurer / remplacer tous les raccourcis clavier.

Naviguez Fichier-> Paramètres-> KeyMap

entrez la description de l'image ici

vels4j
la source
7

Fichier-> Paramètres -> Keymap-> Terminer la déclaration actuelle

J'ai ajouté la ;clé là-dedans. Lors de la saisie de ';' à la fin de la ligne, il s'agit d'un formatage automatique.

METTRE À JOUR

J'ai réalisé que cela poserait des problèmes dans certaines situations. Utilisez plutôt Ctrl+ Shift+ Enter. Cette touche peut être utilisée à n'importe quelle position du curseur dans une ligne. Cela ajoutera; à la fin de la ligne. Ce raccourci a également d'autres fonctionnalités utiles.

comme:

public void someMethod()

après le raccourci:

public void someMethod() {
    // The cursor is here
}

le formatage lors de l'insertion ;n'est donc pas nécessaire.

user12043
la source
Intelligent, mais pas pour Kotlin
Jobbert
6

Cela peut également être réalisé par Ctrl + WindowsBtn + Alt + L. Cela sera important pour certaines personnes, car dans certaines machines virtuelles, Ctrl + Alt + L peut vous déconnecter.

choc
la source
3

Aucune des solutions d'Intellij n'est aussi élégante (ou utile) que dans Eclipse. Ce dont nous avons besoin est une demande de fonctionnalité à l'intellij afin que nous puissions ajouter un hook (quelles actions effectuer) lorsque l'EDI enregistre automatiquement.

Dans Eclipse, nous pouvons ajouter des actions "post-sauvegarde", telles que l'organisation des importations et le formatage de la classe. Oui il faut faire un "save" ou ctrl-s mais le hook est très pratique.

ccstep1
la source
1
y a-t-il un contact avec intellij à propos de htis jusqu'à présent? Si c'est le cas, veuillez poster le lien ici :)
Ruthi Ruth
@RuthiRuth l'a trouvé;) youtrack.jetbrains.net/issue/IDEABKL-5806
Ligne
3

si vous le souhaitez, vous pouvez utiliser un plugin saveActions . Vous pouvez reformater le fichier, optimiser les importations et plus encore, c'est vraiment personnalisable et facile à configurer.

Danniel Alejandro
la source
2

Sous Mac, c'est Alt+ Command+ L(en supposant que vous n'ayez modifié aucune de vos touches de modification ou raccourcis clavier Intellij de son état par défaut)

mithunpaul
la source
1

Eh bien, ce n'est pas possible, mais dans intellij 13, que diriez-vous d'ajouter un geste de la souris, quelque chose comme un simple clic gauche de la souris pour reformater le code? Ou si vous n'utilisez pas beaucoup la souris, ajoutez un raccourci clavier très simple que vous utilisez tout le temps (peut-être le "enter"? Je ne sais pas si intellij serait satisfait de cela pour être honnête)

sakis kaliakoudas
la source
2
Pourquoi le vote négatif? Je dis que ce que vous voulez n'est pas possible, et j'essaie de fournir la chose la plus proche possible ..
sakis kaliakoudas
Le vote négatif est facile à expliquer: clic de souris. Un gros avantage d'IntelliJ est les raccourcis et le fait que vous n'avez pas souvent besoin de la souris. Si vous codez beaucoup, vous ne voulez pas beaucoup utiliser la souris, car vous êtes plus rapide avec le clavier. Il existe déjà un raccourci pour le formatage.
Phil
1

La façon dont j'ai implémenté le reformatage automatique comme dans Microsoft Visual Studio (cela ne fonctionne pas parfaitement):

1. Edit > Macros > Start Macro Recording
2. Press continuously: Enter + Ctrl+Alt+I
3. Edit > Macros > Stop Macro Recording (Name it for example ReformatingByEnter)

Maintenant, nous devons effectuer les mêmes actions mais pour Ctrl + Alt + L +;

4. Edit > Macros > Start Macro Recording
5. Press continuously: ; + Ctrl+Alt+I
6. Edit > Macros > Stop Macro Recording (Name it for example ReformatingBy;)

Nous devons maintenant attribuer des raccourcis clavier à ces macros:

7. File > Settings > Keymap > press on a gear button > Duplicate...
8. Unfold a macro button (beneath) and by right clicking on two 
ours macros assign HotKeys for them: "Enter" and ";" correspondingly.
Rostislav Teryaev
la source
Peut-être une limitation de mon clavier, mais je ne peux sembler enregistrer que 3 touches à la fois.
Matt
1

Je sais que cette question est assez ancienne, mais il existe en fait un plugin Save Actions pour IntelliJ qui peut être configuré pour formater le code automatiquement.

algiogie
la source
1

Vous pouvez le faire avec le plugin Save Actions Reportez-vous à cet article pour savoir comment configurer le plugin.

Plug-in Save Actions Prend en charge les actions de sauvegarde configurables, comme Eclipse, y compris "optimiser les importations", "reformater le code", "réorganiser le code", "compiler le fichier" et quelques correctifs rapides pour Java comme "ajouter / supprimer 'ce' qualificatif", etc. Le plugin exécute les actions configurées lorsque le fichier est synchronisé (ou enregistré) sur le disque.

  1. Installez le plugin
  2. Accédez à Paramètres > Autres paramètres > Enregistrer les actions
  3. Cochez Activer les actions d'enregistrement lors de l'enregistrement
  4. Cochez le fichier Reformat
  5. Appliquer> OK

entrez la description de l'image ici

Je préfère les raccourcis clavier, pour Mac,

Pour formater le code: Ctrl+ Alt(Option)+L

Et en plus je le fais: Ctrl+ Alt(Option)+ O , Cela supprimera les importations inutilisées et formatera également la liste d'importation.

premier
la source