@@ -35,6 +35,81 @@ indent_size = 2
3535# Sort using and Import directives with System.* appearing first
3636dotnet_sort_system_directives_first = true
3737
38+ # Style rules
39+ # https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/naming-rules?view=vs-2017
40+
41+ # Constants always pascal case
42+ dotnet_naming_rule.constants_should_be_pascal_case.symbols = consts
43+ dotnet_naming_rule.constants_should_be_pascal_case.style = consts
44+ dotnet_naming_rule.constants_should_be_pascal_case.severity = suggestion
45+
46+ dotnet_naming_symbols.consts.applicable_kinds = field
47+ dotnet_naming_symbols.consts.applicable_accessibilities = *
48+ dotnet_naming_symbols.consts.required_modifiers = const
49+
50+ dotnet_naming_style.consts.capitalization = pascal_case
51+
52+ # Non-public static fields always pascal case
53+ dotnet_naming_rule.non_public_static_fields_should_be_pascal_case.symbols = non_public_static_fields
54+ dotnet_naming_rule.non_public_static_fields_should_be_pascal_case.style = non_public_static_fields
55+ dotnet_naming_rule.non_public_static_fields_should_be_pascal_case.severity = suggestion
56+
57+ dotnet_naming_symbols.non_public_static_fields.applicable_kinds = field
58+ dotnet_naming_symbols.non_public_static_fields.applicable_accessibilities = private,protected,internal,protected_internal,private_protected
59+ dotnet_naming_symbols.non_public_static_fields.required_modifiers = static
60+
61+ dotnet_naming_style.non_public_static_fields.capitalization = pascal_case
62+
63+ # Non-private readonly fields are pascal case
64+ dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.severity = suggestion
65+ dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.symbols = non_private_readonly_fields
66+ dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.style = non_private_readonly_fields
67+
68+ dotnet_naming_symbols.non_private_readonly_fields.applicable_kinds = field
69+ dotnet_naming_symbols.non_private_readonly_fields.applicable_accessibilities = public,protected,internal,protected_internal,private_protected
70+ dotnet_naming_symbols.non_private_readonly_fields.required_modifiers = readonly
71+
72+ dotnet_naming_style.non_private_readonly_fields.capitalization = pascal_case
73+
74+ # Private instance fields are camel case prefixed underscore
75+ dotnet_naming_rule.private_fields_should_be_camelcase_prefix_underscore.symbols = private_fields
76+ dotnet_naming_rule.private_fields_should_be_camelcase_prefix_underscore.style = private_fields
77+ dotnet_naming_rule.private_fields_should_be_camelcase_prefix_underscore.severity = suggestion
78+
79+ dotnet_naming_symbols.private_fields.applicable_kinds = field
80+ dotnet_naming_symbols.private_fields.applicable_accessibilities = private
81+
82+ dotnet_naming_style.private_fields.capitalization = camel_case
83+ dotnet_naming_style.private_fields.required_prefix = _
84+
85+ # Locals and parameters are camel case
86+ dotnet_naming_rule.locals.severity = suggestion
87+ dotnet_naming_rule.locals.symbols = locals
88+ dotnet_naming_rule.locals.style = locals
89+
90+ dotnet_naming_symbols.locals.applicable_kinds = parameter, local
91+
92+ dotnet_naming_style.locals.capitalization = camel_case
93+
94+ # Local functions are pascal case
95+ dotnet_naming_rule.local_functions.severity = suggestion
96+ dotnet_naming_rule.local_functions.symbols = local_functions
97+ dotnet_naming_rule.local_functions.style = local_functions
98+
99+ dotnet_naming_symbols.local_functions.applicable_kinds = local_function
100+
101+ dotnet_naming_style.local_functions.capitalization = pascal_case
102+
103+ # Public members always pascal case
104+ dotnet_naming_rule.public_members_should_be_pascal_case.symbols = public_members
105+ dotnet_naming_rule.public_members_should_be_pascal_case.style = public_members
106+ dotnet_naming_rule.public_members_should_be_pascal_case.severity = suggestion
107+
108+ dotnet_naming_symbols.public_members.applicable_kinds = property,method,field,event,delegate
109+ dotnet_naming_symbols.public_members.applicable_accessibilities = public
110+
111+ dotnet_naming_style.public_members.capitalization = pascal_case
112+
38113dotnet_style_qualification_for_field = false :error
39114dotnet_style_qualification_for_property = false :error
40115dotnet_style_qualification_for_method = false :error
@@ -86,39 +161,53 @@ csharp_preferred_modifier_order = public,private,protected,internal,static,exter
86161# formatting conventions https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference#formatting-conventions
87162
88163# Newline settings (Allman yo!)
89- csharp_new_line_before_open_brace = all:error
90- csharp_new_line_before_else = true : error
91- csharp_new_line_before_catch = true : error
92- csharp_new_line_before_finally = true : error
164+ csharp_new_line_before_open_brace = all
165+ csharp_new_line_before_else = true
166+ csharp_new_line_before_catch = true
167+ csharp_new_line_before_finally = true
93168csharp_new_line_before_members_in_object_initializers = true
94169# just a suggestion do to our JSON tests that use anonymous types to
95170# represent json quite a bit (makes copy paste easier).
96- csharp_new_line_before_members_in_anonymous_types = true : suggestion
97- csharp_new_line_between_query_expression_clauses = true : error
171+ csharp_new_line_before_members_in_anonymous_types = true
172+ csharp_new_line_between_query_expression_clauses = true
98173
99174# Indent
100- csharp_indent_case_contents = true : error
101- csharp_indent_switch_labels = true : error
102- csharp_space_after_cast = false : error
103- csharp_space_after_keywords_in_control_flow_statements = true : error
104- csharp_space_between_method_declaration_parameter_list_parentheses = false : error
105- csharp_space_between_method_call_parameter_list_parentheses = false : error
175+ csharp_indent_case_contents = true
176+ csharp_indent_switch_labels = true
177+ csharp_space_after_cast = false
178+ csharp_space_after_keywords_in_control_flow_statements = true
179+ csharp_space_between_method_declaration_parameter_list_parentheses = false
180+ csharp_space_between_method_call_parameter_list_parentheses = false
106181
107182# Wrap
108- csharp_preserve_single_line_statements = false : error
109- csharp_preserve_single_line_blocks = true : error
183+ csharp_preserve_single_line_statements = false
184+ csharp_preserve_single_line_blocks = true
110185
111186# Resharper
112- resharper_csharp_braces_for_lock =required_for_complex
113- resharper_csharp_braces_for_using =required_for_complex
114- resharper_csharp_braces_for_while =required_for_complex
115- resharper_csharp_braces_for_foreach =required_for_complex
116- resharper_csharp_braces_for_for =required_for_complex
117- resharper_csharp_braces_for_fixed =required_for_complex
118- resharper_csharp_braces_for_ifelse =required_for_complex
187+ resharper_csharp_braces_for_lock =required_for_multiline
188+ resharper_csharp_braces_for_using =required_for_multiline
189+ resharper_csharp_braces_for_while =required_for_multiline
190+ resharper_csharp_braces_for_foreach =required_for_multiline
191+ resharper_csharp_braces_for_for =required_for_multiline
192+ resharper_csharp_braces_for_fixed =required_for_multiline
193+ resharper_csharp_braces_for_ifelse =required_for_multiline
119194
120195resharper_csharp_accessor_owner_body =expression_body
121196
122-
123197resharper_redundant_case_label_highlighting =do_not_show
198+ resharper_redundant_argument_default_value_highlighting =do_not_show
199+
200+ [Jenkinsfile ]
201+ indent_style = space
202+ indent_size = 2
203+ end_of_line = lf
204+ charset = utf-8
205+ trim_trailing_whitespace = true
206+ insert_final_newline = true
207+
208+ [* .{sh,bat,ps1} ]
209+ trim_trailing_whitespace =true
210+ insert_final_newline =true
124211
212+ [* .sh ]
213+ end_of_line = lf
0 commit comments