In my C# development team, we want to share auto-formatting rules to respect our coding standards to have unified code formatting. I'm actually testing ReSharper and it's great but we have one rule in our standards that I can't seem to get around.
We use the HTMLTextWriter to render some HTML but we have a rule to indent the calls to reflect how they markup will be outputted.
For example :
protected override void RenderBody(HtmlTextWriter writer)
{
    writer.AddAttribute("class", "mystyle");
    writer.RenderBeginTag("div");
        writer.AddAttribute("class", "mystyle2");
        writer.RenderBeginTag("div");
            writer.Write("HELLO WORLD");
        writer.RenderEndTag();
    writer.RenderEndTag();
}
For now, when I reformat the code using ReSharper (or VS), the identation is removed.
Is there a way to add custom rule to prevent/disable reformatting around .RenderBeginTag function calls? Or is there another tool (other than ReSharper or in addition to ReSharper) that could do that?
The solution was to go to 'Tools > Options > Text Editor > Basic > VB Specific' and turn 'Pretty Listing' OFF. Save this answer. Show activity on this post.
tip. Even if auto-formatting or auto-indenting on paste are enabled, you can paste code without reformatting it: press Ctrl+Z right after pasting, and only formatting will be undone. Note that by default, Visual Studio applies its own formatting rules for edited and pasted code.
Press Ctrl+E F or choose ReSharper | Edit | Silent Cleanup Code from the main menu . Alternatively, you can press Ctrl+Shift+A , start typing the command name in the popup, and then choose it there.
There's no way to tell R# to not clean up a part of the code and IMO you don't want to pollute your code with R#-specific markups. A workaround would be to indent your function calls in brackets like so:
 private void RenderBody(HtmlTextWriter writer)
 {
     writer.AddAttribute("class", "mystyle");
     writer.RenderBeginTag("div");
     {
         writer.AddAttribute("class", "mystyle2");
         writer.RenderBeginTag("div");
         {
             writer.Write("HELLO WORLD");
         }
         writer.RenderEndTag();
     }
     writer.RenderEndTag();
 }
R# won't reformat these blocks.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With