ReSharper - force curly braces around single line

Gorohoroh's solution is close, but instead of selecting "Use braces for multiline" I had to select "Add braces" to force it to add the braces in the single-line scenario. And I had to set that in all six dropdowns under "Force Braces" to catch all the scenarios:

alt text

What I was really hoping for was to be able to set up ReSharper to do a yellow warning or red error when the rule was violated, but I haven't found a way to do that. Because you're right, Gorohoroh, Cleanup Code does a lot of stuff and I'd like to have the option to look at and fix the rule violations one at a time.

Thanks for your help!


For ReSharper 2016.2.2.

You should edit your profile for cleaning up. The proper item is called Add/Remove braces for single statements in "if-else", "for", "foreach", "while", "do-while", "using". This item can be found within the C# => Code styles item.

If the item is checked, braces will be added; if unchecked, braces will be removed.

Note: adding doesn't work now (don't know why - perhaps, too fresh version of ReSharper). However, if you will uncheck the mentioned item, the existent braces around single statements will not be removed.

UPD: The problem solved, see the first two comments under this post.


Ryan is correct (note however that the his link refers to R# 2.0 help). The specific procedure is as follows:

  1. Go to ReSharper > Options > Languages > C# > Formatting Style > Braces Layout
  2. Set "Braces in "if-else" statement" to "Use braces for multiline"
  3. After saving the changes, select a scope to reformat (could be a code selection, file, folder, project, solution - anything you want).
  4. Choose ReSharper > Tools > Cleanup Code.
  5. Profit.

Remember that Code Cleanup does numerous things and they're not only related to code formatting (see details at http://www.jetbrains.com/resharper/webhelp/Code_Cleanup__Index.html), so use the feature wisely.


In the new version of ReSharper (2016.x) is has been moved to the Code Style. ReSharper 2016.1.1

UPD1: for ReSharper 2017.x ReSharper 2017.1.2

UPD2: for ReSharper 2018.x ReSharper 2018.1

UPD3: for ReSharper 2019.x ReSharper 2019.1

UPD4: for ReSharper 2020.x enter image description here

Tags:

C#

Resharper