Created
November 3, 2021 11:55
-
-
Save Vivelin/7eb94273f588ee7513f4c5b9310d0ef2 to your computer and use it in GitHub Desktop.
C# .editorconfig
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# editorconfig.org | |
# top-most EditorConfig file | |
root = true | |
# Default settings: | |
# A newline ending every file | |
# Use 4 spaces as indentation | |
[*] | |
insert_final_newline = true | |
indent_style = space | |
indent_size = 4 | |
trim_trailing_whitespace = true | |
[project.json] | |
indent_size = 2 | |
# Generated code | |
[*{_AssemblyInfo.cs,.notsupported.cs}] | |
generated_code = true | |
# C# files | |
[*.cs] | |
# New line preferences | |
csharp_new_line_before_open_brace = all | |
csharp_new_line_before_else = true | |
csharp_new_line_before_catch = true | |
csharp_new_line_before_finally = true | |
csharp_new_line_before_members_in_object_initializers = true | |
csharp_new_line_before_members_in_anonymous_types = true | |
csharp_new_line_between_query_expression_clauses = true | |
# Indentation preferences | |
csharp_indent_block_contents = true | |
csharp_indent_braces = false | |
csharp_indent_case_contents = true | |
csharp_indent_case_contents_when_block = true | |
csharp_indent_switch_labels = true | |
csharp_indent_labels = one_less_than_current | |
# Modifier preferences | |
csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:suggestion | |
# avoid this. unless absolutely necessary | |
dotnet_style_qualification_for_field = false:suggestion | |
dotnet_style_qualification_for_property = false:suggestion | |
dotnet_style_qualification_for_method = false:suggestion | |
dotnet_style_qualification_for_event = false:suggestion | |
# Types: use var whenever possible. The type should be irrelevant if proper names are chosen. (Differs from dotnet/runtime defaults!) | |
csharp_style_var_for_built_in_types = true:suggestion | |
csharp_style_var_when_type_is_apparent = true:suggestion | |
csharp_style_var_elsewhere = true:suggestion | |
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | |
dotnet_style_predefined_type_for_member_access = true:suggestion | |
# name all constant fields using PascalCase | |
dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion | |
dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields | |
dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style | |
dotnet_naming_symbols.constant_fields.applicable_kinds = field | |
dotnet_naming_symbols.constant_fields.required_modifiers = const | |
dotnet_naming_style.pascal_case_style.capitalization = pascal_case | |
# static fields should have s_ prefix | |
dotnet_naming_rule.static_fields_should_have_prefix.severity = suggestion | |
dotnet_naming_rule.static_fields_should_have_prefix.symbols = static_fields | |
dotnet_naming_rule.static_fields_should_have_prefix.style = static_prefix_style | |
dotnet_naming_symbols.static_fields.applicable_kinds = field | |
dotnet_naming_symbols.static_fields.required_modifiers = static | |
dotnet_naming_symbols.static_fields.applicable_accessibilities = private, internal, private_protected | |
dotnet_naming_style.static_prefix_style.required_prefix = s_ | |
dotnet_naming_style.static_prefix_style.capitalization = camel_case | |
# internal and private fields should be _camelCase | |
dotnet_naming_rule.camel_case_for_private_internal_fields.severity = suggestion | |
dotnet_naming_rule.camel_case_for_private_internal_fields.symbols = private_internal_fields | |
dotnet_naming_rule.camel_case_for_private_internal_fields.style = camel_case_underscore_style | |
dotnet_naming_symbols.private_internal_fields.applicable_kinds = field | |
dotnet_naming_symbols.private_internal_fields.applicable_accessibilities = private, internal | |
dotnet_naming_style.camel_case_underscore_style.required_prefix = _ | |
dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case | |
# Code style defaults | |
csharp_using_directive_placement = outside_namespace:suggestion | |
dotnet_sort_system_directives_first = true | |
csharp_prefer_braces = when_multiline:silent | |
csharp_preserve_single_line_blocks = true:none | |
csharp_preserve_single_line_statements = false:none | |
csharp_prefer_static_local_function = true:suggestion | |
csharp_prefer_simple_using_statement = false:none | |
csharp_style_prefer_switch_expression = true:suggestion | |
dotnet_style_readonly_field = true:suggestion | |
# Expression-level preferences | |
dotnet_style_object_initializer = true:suggestion | |
dotnet_style_collection_initializer = true:suggestion | |
dotnet_style_explicit_tuple_names = true:suggestion | |
dotnet_style_coalesce_expression = true:suggestion | |
dotnet_style_null_propagation = true:suggestion | |
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion | |
dotnet_style_prefer_inferred_tuple_names = true:suggestion | |
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion | |
dotnet_style_prefer_auto_properties = true:suggestion | |
dotnet_style_prefer_conditional_expression_over_assignment = true:silent | |
dotnet_style_prefer_conditional_expression_over_return = true:silent | |
csharp_prefer_simple_default_expression = true:suggestion | |
# Expression-bodied members | |
csharp_style_expression_bodied_methods = when_on_single_line:none | |
csharp_style_expression_bodied_constructors = when_on_single_line:none | |
csharp_style_expression_bodied_operators = when_on_single_line:silent | |
csharp_style_expression_bodied_properties = when_on_single_line:silent | |
csharp_style_expression_bodied_indexers = when_on_single_line:silent | |
csharp_style_expression_bodied_accessors = when_on_single_line:silent | |
csharp_style_expression_bodied_lambdas = when_on_single_line:silent | |
csharp_style_expression_bodied_local_functions = when_on_single_line:silent | |
# Pattern matching | |
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | |
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | |
csharp_style_inlined_variable_declaration = true:suggestion | |
# Null checking preferences | |
csharp_style_throw_expression = true:suggestion | |
csharp_style_conditional_delegate_call = true:suggestion | |
# Other features | |
csharp_style_prefer_index_operator = false:none | |
csharp_style_prefer_range_operator = false:none | |
csharp_style_pattern_local_over_anonymous_function = false:none | |
# IDE0058: Expression value is never used | |
csharp_style_unused_value_expression_statement_preference = discard_variable:none | |
# Space preferences | |
csharp_space_after_cast = false | |
csharp_space_after_colon_in_inheritance_clause = true | |
csharp_space_after_comma = true | |
csharp_space_after_dot = false | |
csharp_space_after_keywords_in_control_flow_statements = true | |
csharp_space_after_semicolon_in_for_statement = true | |
csharp_space_around_binary_operators = before_and_after | |
csharp_space_around_declaration_statements = do_not_ignore | |
csharp_space_before_colon_in_inheritance_clause = true | |
csharp_space_before_comma = false | |
csharp_space_before_dot = false | |
csharp_space_before_open_square_brackets = false | |
csharp_space_before_semicolon_in_for_statement = false | |
csharp_space_between_empty_square_brackets = false | |
csharp_space_between_method_call_empty_parameter_list_parentheses = false | |
csharp_space_between_method_call_name_and_opening_parenthesis = false | |
csharp_space_between_method_call_parameter_list_parentheses = false | |
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false | |
csharp_space_between_method_declaration_name_and_open_parenthesis = false | |
csharp_space_between_method_declaration_parameter_list_parentheses = false | |
csharp_space_between_parentheses = false | |
csharp_space_between_square_brackets = false | |
# License header | |
file_header_template = unset | |
# C++ Files | |
[*.{cpp,h,in}] | |
curly_bracket_next_line = true | |
indent_brace_style = Allman | |
# Xaml files | |
[*.{xaml,axaml}] | |
indent_size = 2 | |
# Xml project files | |
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}] | |
indent_size = 2 | |
[*.{csproj,vbproj,proj,nativeproj,locproj}] | |
charset = utf-8 | |
# Xml build files | |
[*.builds] | |
indent_size = 2 | |
# Xml files | |
[*.{xml,stylecop,resx,ruleset}] | |
indent_size = 2 | |
# Xml config files | |
[*.{props,targets,config,nuspec}] | |
indent_size = 2 | |
# YAML config files | |
[*.{yml,yaml}] | |
indent_size = 2 | |
# Shell scripts | |
[*.sh] | |
end_of_line = lf | |
[*.{cmd,bat}] | |
end_of_line = crlf |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment