Skip to content

The pattern book

Spacing

csharp_space_after_cast = false

Controls cast expressions. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Cast expressions.
  • Guarantee: Only same-line whitespace changes.
Input
var value = (int)number;

Code unchanged.

Space after keywords in control flow statements

Section titled “Space after keywords in control flow statements”
csharp_space_after_keywords_in_control_flow_statements = true

Controls control-flow keywords. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Control-flow keywords.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
void Run() { if (true) Add(1,2); }
}
csharp_space_between_parentheses = false

Controls parenthesized syntax. Only same-line whitespace changes.

  • Values: control_flow_statements expressions type_casts false — any comma-separated selection.
  • Default: false
  • Applies to: Parenthesized syntax.
  • Guarantee: Only same-line whitespace changes.
Input
if (ready) total = (int)(count * 2);

Code unchanged.

csharp_space_before_colon_in_inheritance_clause = true

Controls base-list colons. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Base-list colons.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

csharp_space_after_colon_in_inheritance_clause = true

Controls base-list colons. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Base-list colons.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

csharp_space_around_binary_operators = before_and_after

Controls binary and assignment operators. Only same-line whitespace changes.

  • Values: before_and_after ignore none
  • Default: before_and_after
  • Applies to: Binary and assignment operators.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}
class Example : Base
{
int Add(int left,int right) => left+right;
int Add(int left,int right) => left + right;
void Run() { if(true) Add(1,2); }
}
csharp_space_after_comma = true

Controls comma separators. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Comma separators.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
int Add(int left, int right) => left+right;
void Run() { if(true) Add(1, 2); }
}
csharp_space_before_comma = false

Controls comma separators. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Comma separators.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

csharp_space_after_dot = false

Controls member-access dots. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Member-access dots.
  • Guarantee: Only same-line whitespace changes.
Input
var value = item.Name;

Code unchanged.

csharp_space_before_dot = false

Controls member-access dots. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Member-access dots.
  • Guarantee: Only same-line whitespace changes.
Input
var value = item.Name;

Code unchanged.

csharp_space_after_semicolon_in_for_statement = true

Controls for-statement semicolons. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: For-statement semicolons.
  • Guarantee: Only same-line whitespace changes.
Input
for (int i = 0;i < 10;i++) { Work(); }
for (int i = 0;i < 10;i++) { Work(); }
for (int i = 0; i < 10; i++) { Work(); }
csharp_space_before_semicolon_in_for_statement = false

Controls for-statement semicolons. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: For-statement semicolons.
  • Guarantee: Only same-line whitespace changes.
Input
for (int i = 0;i < 10;i++) { Work(); }

Code unchanged.

csharp_space_around_declaration_statements = false

Controls declaration equals tokens. Only same-line whitespace changes.

  • Values: false ignore
  • Default: false
  • Applies to: Declaration equals tokens.
  • Guarantee: Only same-line whitespace changes.
Input
int value=1;
int value=1;
int value = 1;
csharp_space_before_open_square_brackets = false

Controls array and element-access brackets. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Array and element-access brackets.
  • Guarantee: Only same-line whitespace changes.
Input
var value = items[0];

Code unchanged.

csharp_space_between_empty_square_brackets = false

Controls array and element-access brackets. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Array and element-access brackets.
  • Guarantee: Only same-line whitespace changes.
Input
int[] values;

Code unchanged.

csharp_space_between_square_brackets = false

Controls array and element-access brackets. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Array and element-access brackets.
  • Guarantee: Only same-line whitespace changes.
Input
var value = items[0];

Code unchanged.

Space between method declaration parameter list parentheses

Section titled “Space between method declaration parameter list parentheses”
csharp_space_between_method_declaration_parameter_list_parentheses = false

Controls method declaration parameter lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Method declaration parameter lists.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

Space between method declaration empty parameter list parentheses

Section titled “Space between method declaration empty parameter list parentheses”
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false

Controls method declaration parameter lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Method declaration parameter lists.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

Space between method declaration name and open parenthesis

Section titled “Space between method declaration name and open parenthesis”
csharp_space_between_method_declaration_name_and_open_parenthesis = false

Controls method declaration parameter lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Method declaration parameter lists.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

Space between method call parameter list parentheses

Section titled “Space between method call parameter list parentheses”
csharp_space_between_method_call_parameter_list_parentheses = false

Controls invocation argument lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Invocation argument lists.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

Space between method call empty parameter list parentheses

Section titled “Space between method call empty parameter list parentheses”
csharp_space_between_method_call_empty_parameter_list_parentheses = false

Controls invocation argument lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Invocation argument lists.
  • Guarantee: Only same-line whitespace changes.
Input
Work();

Code unchanged.

Space between method call name and opening parenthesis

Section titled “Space between method call name and opening parenthesis”
csharp_space_between_method_call_name_and_opening_parenthesis = false

Controls invocation argument lists. Only same-line whitespace changes.

  • Values: true false
  • Default: false
  • Applies to: Invocation argument lists.
  • Guarantee: Only same-line whitespace changes.
Input
class Example : Base
{
int Add(int left,int right) => left+right;
void Run() { if(true) Add(1,2); }
}

Code unchanged.

dress_space_after_collection_spread_operator = true

Controls spacing after collection-expression spread operators. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Spacing after collection-expression spread operators.
  • Guarantee: Only same-line whitespace changes.
Input
class Example
{
int[] Copy(int[] values) => [.. values];
}

Code unchanged.

dress_space_after_attribute_target_colon = true

Controls spacing after attribute target colons, such as assembly, module, and return. Only same-line whitespace changes.

  • Values: true false
  • Default: true
  • Applies to: Spacing after attribute target colons, such as assembly, module, and return.
  • Guarantee: Only same-line whitespace changes.
Input
[assembly: System.CLSCompliant(true)]

Code unchanged.