Come abilitare il codice di formattazione automatica per Intellij IDEA?


129

È possibile in Intellij IDEA dopo aver digitato ';' o premere 'Invio' è avvenuta la formattazione di questa stringa?

Ad esempio, per:

a+b=10;

dopo:

a + b = 10;

O unica opzione possibile: Codice> Riformatta codice ... ?

Grazie!


1
Alt+ c+r
Gayan Weerakutti

se desideri che questa funzione sia inclusa in IntelliJ stesso (non in alcun plug-in), vota qui: youtrack.jetbrains.net/issue/IDEABKL-5806
Riga

Risposte:


181

I collegamenti di formattazione in Intellij IDEA sono:

  • Per Windows: Ctrl+ Alt+L
  • Per Ubuntu: Ctrl+ Alt+ Windows+ L
  • Per Mac: ⌥ (Option)+ ⌘ (Command)+L

88
Sì, ma vorrei che ciò avvenisse automaticamente senza premere un tasto di scelta rapida.
0x131313

Macro? ctrl + alt + l diventa ctrl + alt + l + invio
Jeff

17
La domanda indica espressamente "formattazione automatica" dopo aver scritto ogni riga.
bokan,

2
@axelrod c'è un modo per farlo automaticamente quando si salva o si compila il codice
Kasun Siyambalapitiya

3
Questo non risponde alla domanda. La risposta di Nafiur Rahman Khadem fa.
Dakatine,

22

Ho trovato due modi per farlo:

  1. Vai a Settings> Keymap.Nella parte destra vai a Editor Actions> complete current statement.Fai clic su di esso e seleziona Aggiungi scorciatoia da tastiera. Stampa ; e seleziona ok.

  2. Usa macro. Vai a

Edit> Macros> Start Macro Recording.

Ora premi punto e virgola e scorciatoia da tastiera per riformattare il codice (puoi trovare la scorciatoia da tastiera da altre risposte o da impostazioni> keymap).

Dopo aver riformattato, vai a

Edit> Macros> Stop Macro Recording

Salva la macro con un nome (formattazione automatica o qualcos'altro). Quindi vai a

Settings> Keymap> Macros> auto format (il nome della macro).

Fare clic lì e selezionare Aggiungi scorciatoia da tastiera, quindi premere punto e virgola e fare clic su OK. Ora ogni volta che premi il punto e virgola, scriverà punto e virgola e formatterà automaticamente.


Bello. Ho anche aggiunto Shift+[usando il primo metodo per formattare la riga durante la scrittura di ifistruzioni, metodi e simili. Per qualche motivo, Enterperò , non sembra funzionare.
Matt,

1
Questo è stato molto utile, è strano che Intellij non abbia affatto l'opzione di riformattazione automatica
Teedeez,


7

L'impostazione predefinita è Ctrl+ Alt+ L Esiste una finestra di dialogo per la mappatura dei tasti in cui è possibile configurare / sovrascrivere tutte le scorciatoie da tastiera.

Naviga in File-> Impostazioni-> KeyMap

inserisci qui la descrizione dell'immagine


7

File-> Impostazioni -> Mappa chiave-> Dichiarazione corrente completa

Ho aggiunto la ;chiave lì. Quando si digita ';' alla fine della riga, si sta formattando automaticamente.

AGGIORNARE

Mi sono reso conto che ciò causerà alcuni problemi in alcune situazioni. Usa invece Ctrl+ Shift+ Enter. Questo tasto può essere utilizzato in qualsiasi posizione del cursore in una riga. Aggiungerà ;alla fine della riga. Anche questa scorciatoia ha alcune altre utili funzionalità.

piace:

public void someMethod()

dopo il collegamento:

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

quindi la formattazione all'inserimento ;non è necessaria.


Intelligente, ma non per Kotlin
jobbert

6

Questo può essere ottenuto anche con Ctrl + WindowsBtn + Alt + L. Questo sarà importante per alcune persone, perché in alcune macchine virtuali, Ctrl + Alt + L può disconnettersi.



3

Nessuna delle soluzioni in Intellij è elegante (o utile) come in Eclipse. Ciò di cui abbiamo bisogno è la richiesta di funzionalità a Intellij in modo che possiamo aggiungere un hook (quali azioni eseguire) quando l'IDE si salva automaticamente.

In Eclipse possiamo aggiungere azioni "post-salvataggio", come organizzare le importazioni e formattare la classe. Sì, devi fare un "salvataggio" o ctrl-s, ma l'hook è molto conveniente.


1
c'è qualche contatto con intellij su questo finora? In tal caso,
inserisci il


3

se vuoi, puoi usare un plugin saveActions . Puoi riformattare i file, ottimizzare le importazioni e altro, è davvero personalizzabile e facile da configurare.


2

In Mac è Alt+ Command+ L(supponendo che tu non abbia cambiato nessuno dei tuoi tasti modificatori o scorciatoie da tastiera Intellij dal suo stato predefinito)



1

Beh, questo non è possibile, ma in Intellij 13, che ne dici di aggiungere un gesto del mouse, qualcosa come un singolo clic sinistro del mouse per riformattare il codice? Oppure, se non usi molto il mouse, aggiungi un tasto di scelta rapida da tastiera molto semplice che usi sempre (possibilmente il "invio"? Non sei sicuro che intellij sia contento di essere sincero)


2
Perché il downvote? Sto dicendo che ciò che vuoi non è possibile, e sto cercando di fornire la cosa più vicina possibile ..
Sakis Kaliakoudas,

Il downvote è facile da spiegare: clic del mouse. Un grande vantaggio di IntelliJ è rappresentato dalle scorciatoie e dal fatto che non è necessario il mouse spesso. Se codifichi molto, non vuoi usare molto il mouse, perché sei più veloce con la tastiera. C'è già una scorciatoia per la formulazione.
Phil,

1

Il modo in cui ho implementato il reforming automatico come in Microsoft Visual Studio (non funziona perfettamente):

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

Ora dobbiamo eseguire le stesse azioni ma per 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;)

Ora dobbiamo assegnare tasti di scelta rapida a queste macro:

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.

Potrebbe essere una limitazione della mia tastiera, ma riesco a registrare solo 3 tasti alla volta.
Matt,

1

So che questa domanda è piuttosto vecchia ma in realtà esiste un plug-in Save Actions per IntelliJ che può essere configurato per formattare il codice automaticamente.


1

Puoi farlo con il plug-in Save Actions. Fai riferimento a questo articolo su come configurare il plug-in.

Plugin Salva azioni Supporta configurabile, come Eclipse, salva azioni, tra cui "ottimizza importazioni", "riformatta codice", "riorganizza codice", "compila file" e alcune correzioni rapide per Java come "aggiungi / rimuovi" questo "qualificatore", ecc. Il plugin esegue le azioni configurate quando il file è sincronizzato (o salvato) sul disco.

  1. Installa il plugin
  2. Vai su Impostazioni > Altre impostazioni > Salva azioni
  3. Spuntare Attiva azioni di salvataggio al salvataggio
  4. Selezionare Reformat file
  5. Applica> OK

inserisci qui la descrizione dell'immagine

Preferisco i tasti di scelta rapida, però, per Mac,

Per formattare il codice: Ctrl+ Alt(Option)+L

E inoltre lo faccio ,: Ctrl+ Alt(Option)+ O , Questo consente di eliminare le importazioni non utilizzati e formattare l'elenco di importazione pure.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.