dfmt options

Meta via Digitalmars-d digitalmars-d at puremagic.com
Sat Mar 14 17:51:27 PDT 2015


On Saturday, 14 March 2015 at 23:15:35 UTC, Brian Schott wrote:
> First, a disclaimer: I am an idiot for starting this thread.
>
> Moving on...
>
> I'm working on a list of configuration options for dfmt - a 
> formatter for D source code.
>
> So far I have the following:
>
> * Insert spaces between if, while, for, foreach, etc loops and 
> the "("
> * Allman vs One True Brace Style (Already supported by 
> commant-line switch)
> * Operators at the end of the old line vs beginning of the new 
> line when wrapping long expressions.
> * Insert space after the ")" of a cast expression
> * Make "case" and "default" match the indent level of the 
> enclosing "switch"
> * Labels for loops always on their own line vs the same line as 
> the loop
> * Labels outdented one level
> * Label indentation matches the most recent "switch"
> * Hard limit for line length
> * Soft limit for line length
>
> What am I missing?

Maybe nobody else does this, but I prefer to write switch cases 
in an indented block style.

switch (expr)
{
     case 0:
         //Do stuff
     end;

     case 1 .. case 9:
         //Do other stuff
     end;

     default:
         //Do default stuff
}




In the same way, I indent attribute labels in classes/structs. 
I'm positive almost nobody else does that, however, so it's 
probably not an option you want to enable.

class Test
{
     private:
         //Methods, members

     public:
         //etc.
}


More information about the Digitalmars-d mailing list