I tend to use Eclipse as my primary IDE. This is largely due to the fact that I know it the best, not that I think it is better/worse than IDEA. On the whole I quite like it, but the one area where I think Eclipse is really lame is the much vaunted Code Formatter. I have been battling with it for a long time and it shows not signs of improving.

By way of an example, I would like really like to be able to write code like the following:

final MyInputTokeniser mit = new MyInputTokeniser(
    new GZIPInputStream(new FileInputStream(f)));

But when I reformat the code, Eclipse changes it to:

final MyInputTokeniser mit = new MyInputTokeniser(
                                                  new GZIPInputStream(
                                                                      new FileInputStream(
                                                                                          f)));

This as far as I am concerned is really lame! To make matters worst, there does not appear to be a way to mark regions of text to not be touched by the Code Formatter. This is real pain in the butt, as it means you can never safely run the Code Formatter on a file.

The only workaround I have for examples like above is to rewrite my code in a way that the Code Formatter will do a reasonable job on. It irks me that Eclipse is dictating my coding style, Eclipse should be there to help, not dictate!

For the example above, I have had to write:

final FileInputStream fis = new FileInputStream(f);
final GZIPInputStream gis = new GZIPInputStream(fis);
final MyInputTokeniser mit = new MyInputTokeniser(gis);