Jak poprawić wcięcia w IntelliJ

144

Jak można automatycznie (nie ręcznie) korygować wcięcia w IntelliJ?

W Eclipse można po prostu zaznaczyć kod, który wymaga wcięcia, kliknąć prawym przyciskiem myszy i wybrać Source> Correct indentation.

Czy jest jakaś metoda zrobienia tego samego w IntelliJ?

junaidp
źródło

Odpowiedzi:

187

CodeReformat Code...(domyślnie Ctrl+ Alt+ L) dla całego pliku lub CodeAuto-Indent Lines(domyślnie Ctrl+ Alt+I ) dla bieżącej linii lub zaznaczenia.

Możesz dostosować ustawienia automatycznego formatowania kodu w FileSettingsEditorCode Style.


Aby upewnić się, że komentarze są również wcięte na tym samym poziomie co kod, możesz po prostu wykonać następujące czynności:

Zrzut ekranu interfejsu użytkownika (przykład dla JavaScript)

CrazyCoder
źródło
6
nie działa w przypadku komentarzy, czy istnieje sposób na automatyczne wcięcie komentarzy. Chcę sformatować kod i komentarze w taki sam sposób, jak robi to zaćmienie.
dtrejogo
czy jest sposób, aby to zrobić dla wszystkich zajęć w moim projekcie?
Ziad Halabi
3
@ZiadHalabi przeformatuj kod z menu kontekstowego głównego projektu.
CrazyCoder
Działa, ale tylko dla linii zaczynających się od *(komentarze do linii). Jeśli masz komentarze bloku akapitu, w których tylko pierwsza linia zaczyna się od /*i po ostatniej linii kończącej się */, a cała linia pośrednia zaczyna się od tekstu, to nie działa, a także powinno. Więc ... logika jest trochę ... naiwna?
WesternGun
159

Po prostu wybierz kod i

  • w systemie Windows do Ctrl+ Alt+L

  • w systemie Linux do Ctrl+ Windows Key+ Alt+L

  • na Macu CMD + Option+L

junaidp
źródło
8
rozważ zaakceptowanie istniejącej odpowiedzi zamiast odpowiadać sobie dokładnie tym samym (Sformatuj kod ... to Ctrl + Alt + L w domyślnej mapie klawiszy Windows).
CrazyCoder
3
W systemie Linux zablokujesz ekran. CZY ten skrót jest w wersji na Linuksa? hahah
androidevil
1
To jest to samo ... Ctrl-Alt-L (używam Android Studio) ... co jest małym wstydem wśród innych wstydów. Miejmy nadzieję, że przyjęcie Android Studio zapewni większą przyczepność do wersji dla systemu Linux.
davidcsb,
5
W Linuksie można go używać z klawiszem „Super” (lub Windows). Tak więc Ctrl + Alt + Super + L wykonuje wymagane wcięcie.
rajatkhanduja
1
W mac nie ma klawisza ALt. O czym rozmawiacie?
Zhen Liu
3

Wybierz ustawienia edytora Java dla Intellij Ustawienia Wybierz wartości dla rozmiaru tabulacji, wcięcia i zamiaru kontynuacji (wybieram 4, 4 i 4)

Następnie Ctrl+ Alt+, Laby sformatować plik (lub wybór).

Gapmeister66
źródło
3

Ctrl+ Alt+ Lwspółpracuje z Android Studio pod xfce4 w systemie Linux. Widzę, że Gnome używał tego skrótu do ekranu blokady, ale w Gnome 3 został zmieniony na Super + L (AKA Windows + L): https://wiki.gnome.org/Design/OS/KeyboardShortcuts

Jim Van Zandt
źródło
1

W Android Studio to działa: Idź do File-> Settings-> Editor-> CodeStyle-> Java. W sekcji Zawijanie i Nawiasy odznacz pole „Skomentuj w pierwszej kolumnie”. Następnie skrót formatowania spowoduje również wcięcie wierszy komentarza.

L. Spiekermann
źródło
1

Możesz także wypróbować ctrl+ alt+, Ichociaż możesz również użyć l.

msingathi majola
źródło
0

Rozwiązanie usuwania zaznaczeniacomment at first column częściowo działa, ponieważ działa w przypadku komentarzy do linii, ale nie blokuje komentarzy.

Tak więc z liniami takimi jak:

/* first line
 * second line
 * ...
 */

lub

// line 1
// line 2
// line 3
...

są wcięte za pomocą opcji „Automatyczne ponowne formatowanie”, ale wiersze takie jak:

/* first line
   second line
   ...
 */

identyfikacja nie zostanie naprawiona.

Więc powinieneś:

  • dodaj *lub //przed każdym wierszem komentarzy
  • następnie odznacz Keep when reformatting -> comment at first column
  • i Auto reformat.
WesternGun
źródło
Line selection modepomoże ci (środkowy klawisz myszy). Aby dodać komentarze do linii, wyszukaj na line commentmapach klawiszy.
WesternGun