170

I'm not able to format my code in IntelliJ.

I can see the margin line (by default at 120 columns) but it seems that the activation from the menu:

Code -> Reformat Code

is just ignoring this margin.

ROMANIA_engineer
  • 54,432
  • 29
  • 203
  • 199
Jeroen Rosenberg
  • 4,552
  • 3
  • 27
  • 39

7 Answers7

200

IntelliJ IDEA 14, 15, 2016 & 2017

Format existing code

  1. Ensure right margin is not exceeded

    File > Settings > Editor > Code Style > Java > Wrapping and Braces > Ensure right margin is not exceeded

    File Settings Ensure right margin

  2. Reformat code

    Code > Reformat code...

    Reformat code

    or press Ctrl + Alt + L

    warning If you have something like this:

    thisLineIsVeryLongAndWillBeChanged();   // comment
    

    it will be converted to

    thisLineIsVeryLongAndWillBeChanged();   
    // comment  
    

    instead of

    // comment  
    thisLineIsVeryLongAndWillBeChanged();   
    

    This is why I select pieces of code before reformatting if the code looks like in the previous example.

Wrap when typing reaches right margin

  • IntelliJ IDEA 14: File > Settings > Editor > Code Style > Wrap when typing reaches right margin

    Wrap when typing

  • IntelliJ IDEA 15, 2016 & 2017: File > Settings > Editor > Code Style > Wrap on typing

    Wrap on typing

ROMANIA_engineer
  • 54,432
  • 29
  • 203
  • 199
  • 6
    Yes! This is the actual answer, thank you so much! The point is that the `Wrap when typing reaches right margin` will get in tremendous trouble once you change something on a line that has already been wrapped. Your answer just cleans upon invocation. Combined with a "save and format" macro this is pure gold! – avalancha Sep 11 '15 at 13:32
  • 1
    I would like to add one keyword here, which is what one may be looking for: this is what it is called a **hard wrap** (as opposed to *soft wrap* -- [see the difference here](http://stackoverflow.com/questions/319925/difference-between-hard-wrap-and-soft-wrap)). – iled Feb 05 '17 at 22:32
  • 1
    Also: No guidance for 2018.1 – 8bitjunkie Apr 28 '18 at 16:05
  • format code did it for me. This step should be automatic – Mote Zart Jun 17 '21 at 19:02
  • still the working solution in 2023 :P – havryliuk Jul 26 '23 at 09:56
103

Do you mean that the formatter does not break long lines? Then please check:

Settings / Project Settings / Code Style / Wrapping

Update: In later versions of IntelliJ, the option can be found under:

Settings / Editor / Code Style

There select Wrap when typing reaches right margin.

hc_dev
  • 8,389
  • 1
  • 26
  • 38
Péter Török
  • 114,404
  • 31
  • 268
  • 329
  • 1
    this option is not there anymore, using version 13.0.2, and the problem remains.. – ipolevoy May 17 '14 at 18:52
  • 44
    @ipolevoy the option name is "Ensure right margin is not exceeded" – madhead Sep 20 '14 at 05:50
  • 14
    The "Ensure right margin is not exceeded" option is in File / Settings / Editor / Code Style / Java / Wrapping and Braces / Keep when reformatting – RavenMan Jan 03 '16 at 08:11
  • 3
    these guys keep on renaming setting keys all the time – ACV Jul 01 '19 at 11:05
  • This is correct, but in new versions, additional options were added to provide finer control about what can be wrapped. See https://stackoverflow.com/a/52157389/1104581 for the correct current answer. – ipetrik Oct 09 '19 at 00:25
23

Enabling "Ensure right margin is not exceeded" doesn't work for me in Intellij IDEA 2018.2. I have found the workaround, we need to change every elements below from "Do not wrap" to "Wrap if long".

enter image description here enter image description here

After that, we can preview what kind of wrap type will be changed by looking into right panel. If we are satisfied, Click "OK" or "Apply" to apply the changes. Finally we need a mannual format by using CTRL+ ALT+ L in Windows and Command+ Shift+ L in MacOS.

guo
  • 9,674
  • 9
  • 41
  • 79
  • This was also the problem for me. If that checkbox is set but the rest is left to default IntelliJ tries to wrap lines, but can't because everything is set to "Do not wrap". – Robber Aug 29 '19 at 12:17
  • it is working for me now, in 2023 :D – havryliuk Jul 26 '23 at 09:55
12

Or you can use the shortcut:

Ctrl + Alt + L

Eslam Hamouda
  • 1,141
  • 9
  • 13
7

In order to wrap text in the code editor in IntelliJ IDEA 2020.1 community follow these steps:

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

enter image description here

Sandeep Kumar
  • 2,397
  • 5
  • 30
  • 37
Noah PG
  • 151
  • 2
  • 3
4

In the latest IntelliJ, version 2020, we have an option called soft-wrap these files:

Settings > Editor > General > soft-wrap these files.

Check this option and add the type of files you would like to apply the wrapping to.

soft wrap intellij option

Related question on JetBrains' IDEs Support Forum: Wrap code to indent

hc_dev
  • 8,389
  • 1
  • 26
  • 38
k sarath
  • 679
  • 6
  • 8
  • Isn't this the same what Noah G. [already proposed](https://stackoverflow.com/a/61671703/5730279) via shortcut __Find Action__ (CRTL + SHIFT + A) `View | Active Editor Soft-Wrap "ON"` ? – hc_dev Apr 26 '21 at 22:45
  • Seems they [existed already in earlier versions](https://stackoverflow.com/questions/49890852/soft-wraps-in-intellij#49890958): 2019.1.3 and before. – hc_dev Apr 26 '21 at 22:55
3

You can create a macro for Ctrl +Shift + S (for example) that do all this things:

Edit > Macros > Start Macro Recording (the recording will start). Click where you need.

For example:

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

Then, click on red button in bottom-right of the IDE to stop the Macro recording.

Set a macro name.

Go to File > Settings > Macros > YOUR MACRO NAME.

Right Click > Add Keyboard Shortcut, and type Ctrl + Shift + S.

well
  • 67
  • 4