Protobuf - Formatting Style
Tabs and Indents
Indent style
Property names:
protobuf_indent_style
, indent_style
Examples:
tab |
---|
option·a·=·{
→a·{
→→x:·1
→}
→b·{
→→y:·2
→}
} |
space |
---|
option·a·=·{
····a·{
········x:·1
····}
····b·{
········y:·2
····}
} |
Indent size
Property names:
protobuf_indent_size
, indent_size
Possible values:
an integer
Examples:
value: 0 |
---|
option·a·=·{
·a·{
··x:·1
·}
·b·{
··y:·2
·}
} |
value: 1 |
---|
option·a·=·{
·a·{
··x:·1
·}
·b·{
··y:·2
·}
} |
value: 2 |
---|
option·a·=·{
··a·{
····x:·1
··}
··b·{
····y:·2
··}
} |
Tab width
Property names:
protobuf_tab_width
, tab_width
Possible values:
an integer
Examples:
value: 0 |
---|
option·a·=·{
→a·{
→→x:·1
→}
→b·{
→→y:·2
→}
} |
value: 1 |
---|
option·a·=·{
→a·{
→→x:·1
→}
→b·{
→→y:·2
→}
} |
value: 2 |
---|
option·a·=·{
→a·{
→→x:·1
→}
→b·{
→→y:·2
→}
} |
How to align when tabs are used for indents
Property names:
[resharper_]protobuf_alignment_tab_fill_style
, [resharper_]alignment_tab_fill_style
Possible values:
-
use_spaces
: Use spaces (looks aligned on any tab size) -
use_tabs_only
: Only use tabs (inaccurate) -
optimal_fill
: Mix tabs and spaces for optimal fill
Spaces
After comma in options
Property names:
[resharper_]protobuf_space_comma
, [resharper_]space_comma
Possible values:
true | false
Examples:
true |
---|
message·a·{
→optional·int32·a·=·1·[default·=·1,·deprecated·=·true];
} |
false |
---|
message·a·{
→optional·int32·a·=·1·[default·=·1,deprecated·=·true];
} |
Around = in fields and options
Property names:
[resharper_]protobuf_space_equals
, [resharper_]space_equals
Possible values:
true | false
Examples:
true |
---|
message·a·{
→optional·int32·a·=·1·[default·=·1,·deprecated·=·true];
} |
false |
---|
message·a·{
→optional·int32·a=1·[default=1,·deprecated=true];
} |
Before : in aggregate options
Property names:
[resharper_]protobuf_space_colon_before
, [resharper_]space_colon_before
Possible values:
true | false
Examples:
true |
---|
option·a·=·{
→x·:·y,
→c·:·e
}; |
false |
---|
option·a·=·{
→x:·y,
→c:·e
}; |
After : in aggregate options
Property names:
[resharper_]protobuf_space_colon_after
, [resharper_]space_colon_after
Possible values:
true | false
Examples:
true |
---|
option·a·=·{
→x:·y,
→c:·e
}; |
false |
---|
option·a·=·{
→x:y,
→c:e
}; |
Indenting Options
Curly braces not in options
Property names:
[resharper_]protobuf_not_options_braces
, [resharper_]protobuf_brace_style
, [resharper_]not_options_braces
, [resharper_]brace_style
Possible values:
-
end_of_line
: At end of line (K&R style) -
end_of_line_no_space
: At end of line (no space) -
next_line
: At next line (BSD style) -
next_line_shifted
: At next line indented (Whitesmiths style) -
next_line_shifted_2
: At next line indented 2 (GNU style)
Examples:
end_of_line |
---|
message·a·{
→optional·int32·a·=·1;
→message
→b·{
→→optional·int32·c·=·1;
→}
} |
end_of_line_no_space |
---|
message·a{
→optional·int32·a·=·1;
→message
→b{
→→optional·int32·c·=·1;
→}
} |
next_line |
---|
message·a
{
→optional·int32·a·=·1;
→message
→b
→{
→→optional·int32·c·=·1;
→}
} |
next_line_shifted |
---|
message·a
→{
→optional·int32·a·=·1;
→message
→b
→→{
→→optional·int32·c·=·1;
→→}
→} |
next_line_shifted_2 |
---|
message·a
→{
→→optional·int32·a·=·1;
→→message
→→b
→→→{
→→→→optional·int32·c·=·1;
→→→}
→} |
Curly/pointy braces in aggregate values in options
Property names:
[resharper_]protobuf_options_braces
, [resharper_]protobuf_brace_style
, [resharper_]options_braces
, [resharper_]brace_style
Possible values:
-
end_of_line
: At end of line (K&R style) -
end_of_line_no_space
: At end of line (no space) -
next_line
: At next line (BSD style) -
next_line_shifted
: At next line indented (Whitesmiths style) -
next_line_shifted_2
: At next line indented 2 (GNU style)
Examples:
end_of_line |
---|
option·a·=·{
→a·{
→→x:·1
→}
→b·{
→→y:·2
→}
} |
end_of_line_no_space |
---|
option·a·={
→a{
→→x:·1
→}
→b{
→→y:·2
→}
} |
next_line |
---|
option·a·=
{
→a
→{
→→x:·1
→}
→b
→{
→→y:·2
→}
} |
next_line_shifted |
---|
option·a·=
→{
→a
→→{
→→x:·1
→→}
→b
→→{
→→y:·2
→→}
→} |
next_line_shifted_2 |
---|
option·a·=
→{
→→a
→→→{
→→→→x:·1
→→→}
→→b
→→→{
→→→→y:·2
→→→}
→} |
Empty block style
Property names:
[resharper_]protobuf_empty_block_style
, [resharper_]empty_block_style
Possible values:
-
multiline
: On different lines -
together
: Place braces together -
together_same_line
: Together on the same line
Examples:
together_same_line |
---|
message·a·{} |
Wrapping and Chopping
Right margin (columns)
Property names:
protobuf_max_line_length
, max_line_length
Possible values:
an integer
Other
Use pointy braces in aggregate options
Property names:
[resharper_]protobuf_options_braces_pointy
, [resharper_]options_braces_pointy
Possible values:
true | false
Examples:
true |
---|
option·a·=·{
→value1·<>
→value2·<>
}; |
false |
---|
option·a·=·{
→value1·{}
→value2·{}
}; |
Last modified: 20 August 2018