Wie kann der Formatierer-Wrap-Code mit IntelliJ erstellt werden?


135

Ich kann meinen Code nicht in IntelliJ formatieren.

Ich kann die Randlinie sehen (standardmäßig bei 120 Spalten), aber es scheint, dass die Aktivierung über das Menü:

Code -> Code neu formatieren

ignoriert nur diesen Spielraum.

Antworten:


91

Meinen Sie damit, dass der Formatierer keine langen Zeilen bricht? Überprüfen Sie Einstellungen / Projekteinstellungen / Codestil / Wrapping.

Update: In späteren Versionen von IntelliJ befindet sich die Option unter Einstellungen / Editor / Codestil. Und wählen Sie Wrap when typing reaches right margin.


1
Diese Option ist mit Version 13.0.2 nicht mehr verfügbar und das Problem bleibt bestehen.
ipolevoy

34
@ipolevoy der Optionsname ist "Stellen Sie sicher, dass der rechte Rand nicht überschritten wird"
madhead

13
Die Option "Sicherstellen, dass der rechte Rand nicht überschritten wird" befindet sich unter Datei / Einstellungen / Editor / Codestil / Java / Umbruch und Klammern / Beim Neuformatieren beibehalten
Aaron

Diese Jungs benennen die Einstellungsschlüssel ständig um
ACV

Dies ist korrekt, aber in neuen Versionen wurden zusätzliche Optionen hinzugefügt, um eine genauere Kontrolle darüber zu ermöglichen, was verpackt werden kann. Die richtige aktuelle Antwort finden Sie unter stackoverflow.com/a/52157389/1104581 .
Ipetrik

160

IntelliJ IDEA 14, 15, 2016 & 2017

Formatieren Sie vorhandenen Code

  1. Stellen Sie sicher, dass der rechte Rand nicht überschritten wird

    Datei> Einstellungen> Editor> Codestil> Java> Umbruch und Klammern> Stellen Sie sicher, dass der rechte Rand nicht überschritten wird

    Dateieinstellungen Achten Sie auf den rechten Rand

  2. Code neu formatieren

    Code> Code neu formatieren ...

    Code neu formatieren

    oder drücken Sie Ctrl+ Alt+L

    Warnung Wenn Sie so etwas haben:

    thisLineIsVeryLongAndWillBeChanged();   // comment
    

    es wird konvertiert zu

    thisLineIsVeryLongAndWillBeChanged();   
    // comment  
    

    anstatt

    // comment  
    thisLineIsVeryLongAndWillBeChanged();   
    

    Aus diesem Grund wähle ich vor der Neuformatierung Codeteile aus, wenn der Code wie im vorherigen Beispiel aussieht.

Umbrechen, wenn die Eingabe den rechten Rand erreicht

  • IntelliJ IDEA 14 : Datei> Einstellungen> Editor> Codestil> Umbruch, wenn die Eingabe den rechten Rand erreicht

    Wrap beim Tippen

  • IntelliJ IDEA 15, 2016 & 2017 : Datei> Einstellungen> Editor> Codestil> Bei Eingabe tippen

    Wrap on tippen


5
Ja! Dies ist die eigentliche Antwort, vielen Dank! Der Punkt ist, dass das Wrap when typing reaches right marginin enorme Schwierigkeiten geraten wird, wenn Sie etwas in einer Zeile ändern, die bereits umbrochen wurde. Ihre Antwort wird nur beim Aufruf bereinigt. In Kombination mit einem "Speichern und Formatieren" -Makro ist dies reines Gold!
Patrick

1
Ich möchte hier ein Schlüsselwort hinzufügen, nach dem man vielleicht sucht: Dies wird als Hard Wrap bezeichnet (im Gegensatz zu Soft Wrap - siehe den Unterschied hier ).
iled

1
Gibt es eine Möglichkeit, die richtige Anzahl von Zeilen zu haben, anstatt nur sicherzustellen, dass das Maximum nicht überschritten wird? Beispiel: Ich tippe eine lange Zeile ein, teilt sie in zwei Zeilen auf, lösche dann etwas in der ersten Zeile und füge die beiden Zeilen wieder zu einer Zeile zusammen.
user2259659

1
Auch: Keine Anleitung für 2018.1
8bitjunkie

1
2017 "Wrap on Typing" funktioniert nicht. Text überschreitet immer noch die Grenze und nichts passiert bei der Neuformatierung
tylik

16

Das Aktivieren von "Sicherstellen, dass der rechte Rand nicht überschritten wird" funktioniert in Intellij IDEA 2018.2 nicht. Ich habe die Problemumgehung gefunden. Wir müssen alle folgenden Elemente von "Nicht umbrechen" in "Umbrechen, wenn lang" ändern.

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Danach können wir in das rechte Feld schauen, welche Art von Wrap-Typ geändert wird. Wenn wir zufrieden sind, klicken Sie auf "OK" oder "Übernehmen", um die Änderungen zu übernehmen. Schließlich benötigen wir ein jährliches Format, indem wir CTRL+ ALT+ Lin Windows und Command+ Shift+ Lin MacOS verwenden.


Das war auch das Problem für mich. Wenn dieses Kontrollkästchen aktiviert ist, der Rest jedoch auf den Standardwert gesetzt ist, versucht IntelliJ, Zeilen zu umbrechen, kann dies jedoch nicht, da alles auf "Nicht umbrechen" eingestellt ist.
Räuber

12

Oder Sie können die Verknüpfung verwenden:

Strg + Alt + L.


4
Könnten Sie den Namen dieser Aktion veröffentlichen (Einstellungen -> Keymap)? Unter den meisten Linux-Systemen wird die Kombination STRG + ALT + L verwendet, um den Computer zu blockieren. Ich kann nicht einmal die "Aktion suchen über Verknüpfung suchen" verwenden.
Tomrozb

2
@tomrozb Diese Verknüpfung ist für Code -> Code neu formatieren.
AtomHeartFather

1
Das sperrt meinen Bildschirm.
8bitjunkie

3

Sie können ein Makro für Strg + Umschalt + S (zum Beispiel) erstellen , das all diese Dinge tut:

Bearbeiten> Makros> Makroaufnahme starten (die Aufnahme startet). Klicken Sie auf die gewünschte Stelle.

Beispielsweise:

Code > Reformat Code
Code > Auto-Indent Lines
Code > Optimize Imports
Code > Rearrange Code
File > Save All
... (all that you want)

Klicken Sie dann unten rechts in der IDE auf die rote Schaltfläche, um die Makroaufnahme zu stoppen.

Legen Sie einen Makronamen fest.

Gehen Sie zu Datei> Einstellungen> Makros> IHR MAKRONAME .

Klicken Sie mit der rechten Maustaste> Tastenkombination hinzufügen und geben Sie Strg + Umschalt + S ein.


Dies ist eine grundlegende IDE-Funktion. Makros sind OTT und zu kompliziert für etwas so Einfaches.
8bitjunkie

2

Gehen Sie folgendermaßen vor, um Text im Code-Editor der IntelliJ IDEA 2020.1-Community zu verpacken:

Ctrl + Shift + "A" OR Help -> Find Action
Enter: "wrap" into the text box
Toggle: View | Active Editor Soft-Wrap "ON"

Geben Sie hier die Bildbeschreibung ein


0

In der neuesten Version von Intellij Version 2020 haben wir eine Option namens Soft-Wrap für diese Dateien. Einstellungen -> Editor -> Allgemein -> Soft-Wrap dieser Dateien. Aktivieren Sie diese Option und fügen Sie den Dateityp hinzu, den Sie umbrechen möchten.

Soft Wrap Intellij Option

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.