Created
January 6, 2023 11:13
-
-
Save Nothing-Works/3765fd4351838e60b316f8b899801d41 to your computer and use it in GitHub Desktop.
Dotnet editorconfig - 2023
This file contains hidden or 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
| ########################################## | |
| # Common Settings | |
| ########################################## | |
| # This file is the top-most EditorConfig file | |
| root = true | |
| # All Files | |
| [*] | |
| charset = utf-8 | |
| indent_style = space | |
| indent_size = 4 | |
| insert_final_newline = true | |
| trim_trailing_whitespace = true | |
| end_of_line = lf | |
| ########################################## | |
| # File Extension Settings | |
| ########################################## | |
| # Code files | |
| [*.{cs,csx,vb,vbx}] | |
| indent_size = 4 | |
| insert_final_newline = true | |
| charset = utf-8-bom | |
| # Visual Studio Solution Files | |
| [*.sln] | |
| indent_style = tab | |
| # Visual Studio XML Project Files | |
| [*.{csproj,vbproj,vcxproj.filters,proj,projitems,shproj}] | |
| indent_size = 2 | |
| # XML Configuration Files | |
| [*.{xml,config,props,targets,nuspec,resx,ruleset,vsixmanifest,vsct}] | |
| indent_size = 2 | |
| # JSON Files | |
| [*.{json,json5,webmanifest}] | |
| indent_size = 2 | |
| # YAML Files | |
| [*.{yml,yaml}] | |
| indent_size = 2 | |
| # Markdown Files | |
| [*.{md,mdx}] | |
| trim_trailing_whitespace = false | |
| # Web Files | |
| [*.{htm,html,js,jsm,ts,tsx,cjs,cts,ctsx,mjs,mts,mtsx,css,sass,scss,less,pcss,svg,vue}] | |
| indent_size = 2 | |
| # Batch Files | |
| [*.{cmd,bat}] | |
| end_of_line = crlf | |
| # Powershell files | |
| [*.ps1] | |
| indent_size = 2 | |
| # Bash Files | |
| [*.sh] | |
| end_of_line = lf | |
| indent_size = 2 | |
| # Makefiles | |
| [Makefile] | |
| indent_style = tab | |
| ########################################## | |
| # Default .NET Code Style Severities | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/configuration-options#scope | |
| ########################################## | |
| [*.{cs,csx,cake,vb,vbx}] | |
| # IDE0055: Fix formatting | |
| dotnet_diagnostic.IDE0055.severity = warning | |
| # Default Severity for all .NET Code Style rules below | |
| dotnet_analyzer_diagnostic.severity = warning | |
| ########################################## | |
| # Language Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/language-rules | |
| ########################################## | |
| # .NET Style Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/language-rules#net-style-rules | |
| [*.{cs,csx,cake,vb,vbx}] | |
| # "this." and "Me." qualifiers | |
| dotnet_style_qualification_for_field = false:refactoring | |
| dotnet_style_qualification_for_property = false:refactoring | |
| dotnet_style_qualification_for_method = false:refactoring | |
| dotnet_style_qualification_for_event = false:refactoring | |
| # Whitespace options | |
| dotnet_style_allow_multiple_blank_lines_experimental = false | |
| csharp_style_allow_embedded_statements_on_same_line_experimental = false | |
| csharp_style_allow_blank_lines_between_consecutive_braces_experimental = false | |
| csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = false | |
| csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = false | |
| csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = false | |
| # Language keywords instead of framework type names for type references | |
| dotnet_style_predefined_type_for_locals_parameters_members = true:warning | |
| dotnet_style_predefined_type_for_member_access = true:warning | |
| # Modifier preferences | |
| dotnet_style_require_accessibility_modifiers = always:warning | |
| csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:warning | |
| visual_basic_preferred_modifier_order = Partial,Default,Private,Protected,Public,Friend,NotOverridable,Overridable,MustOverride,Overloads,Overrides,MustInherit,NotInheritable,Static,Shared,Shadows,ReadOnly,WriteOnly,Dim,Const,WithEvents,Widening,Narrowing,Custom,Async:warning | |
| dotnet_style_readonly_field = true:warning | |
| # Parentheses preferences | |
| dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:warning | |
| dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:warning | |
| dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:warning | |
| dotnet_style_parentheses_in_other_operators = never_if_unnecessary:warning | |
| # Expression-level preferences | |
| dotnet_style_object_initializer = true:warning | |
| dotnet_style_collection_initializer = true:warning | |
| dotnet_style_explicit_tuple_names = true:warning | |
| dotnet_style_prefer_inferred_tuple_names = true:warning | |
| dotnet_style_prefer_inferred_anonymous_type_member_names = true:warning | |
| dotnet_style_prefer_auto_properties = true:warning | |
| dotnet_style_prefer_conditional_expression_over_assignment = false:suggestion | |
| dotnet_diagnostic.IDE0045.severity = suggestion | |
| dotnet_style_prefer_conditional_expression_over_return = true:refactoring | |
| dotnet_diagnostic.IDE0046.severity = suggestion | |
| dotnet_style_prefer_compound_assignment = true:warning | |
| dotnet_style_prefer_simplified_interpolation = true:warning | |
| dotnet_style_prefer_simplified_boolean_expressions = true:warning | |
| # Null-checking preferences | |
| dotnet_style_coalesce_expression = true:warning | |
| dotnet_style_null_propagation = true:warning | |
| dotnet_style_prefer_is_null_check_over_reference_equality_method = true:warning | |
| # File header preferences | |
| # file_header_template = <copyright file="{fileName}" company="PROJECT-AUTHOR">\n© PROJECT-AUTHOR\n</copyright> | |
| # If you use StyleCop, you'll need to disable SA1636: File header copyright text should match. | |
| # dotnet_diagnostic.SA1636.severity = none | |
| # IDE0073: File header | |
| dotnet_diagnostic.IDE0073.severity = warning | |
| # Undocumented | |
| dotnet_style_operator_placement_when_wrapping = beginning_of_line:warning | |
| csharp_style_prefer_null_check_over_type_check = true:warning | |
| # C# Style Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/language-rules#c-style-rules | |
| [*.{cs,csx,cake}] | |
| # 'var' preferences | |
| csharp_style_var_for_built_in_types = true:warning | |
| csharp_style_var_when_type_is_apparent = true:warning | |
| csharp_style_var_elsewhere = true:warning | |
| # Expression-bodied members | |
| csharp_style_expression_bodied_methods = true:warning | |
| csharp_style_expression_bodied_constructors = true:warning | |
| csharp_style_expression_bodied_operators = true:warning | |
| csharp_style_expression_bodied_properties = true:warning | |
| csharp_style_expression_bodied_indexers = true:warning | |
| csharp_style_expression_bodied_accessors = true:warning | |
| csharp_style_expression_bodied_lambdas = true:warning | |
| csharp_style_expression_bodied_local_functions = true:warning | |
| # Pattern matching preferences | |
| csharp_style_pattern_matching_over_is_with_cast_check = true:warning | |
| csharp_style_pattern_matching_over_as_with_null_check = true:warning | |
| csharp_style_prefer_switch_expression = true:warning | |
| csharp_style_prefer_pattern_matching = true:warning | |
| csharp_style_prefer_not_pattern = true:warning | |
| # Expression-level preferences | |
| csharp_style_inlined_variable_declaration = true:warning | |
| csharp_prefer_simple_default_expression = true:warning | |
| csharp_style_pattern_local_over_anonymous_function = true:warning | |
| csharp_style_deconstructed_variable_declaration = true:warning | |
| csharp_style_prefer_index_operator = true:warning | |
| csharp_style_prefer_range_operator = true:warning | |
| csharp_style_implicit_object_creation_when_type_is_apparent = true:warning | |
| csharp_style_prefer_extended_property_pattern = true:suggestion | |
| # "Null" checking preferences | |
| csharp_style_throw_expression = true:warning | |
| csharp_style_conditional_delegate_call = true:warning | |
| # Code block preferences | |
| csharp_prefer_braces = when_multiline:suggestion | |
| csharp_prefer_simple_using_statement = true:suggestion | |
| dotnet_diagnostic.IDE0063.severity = suggestion | |
| # 'using' directive preferences | |
| csharp_using_directive_placement = outside_namespace:suggestion | |
| # Modifier preferences | |
| csharp_prefer_static_local_function = true:warning | |
| ########################################## | |
| # Unnecessary Code Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/unnecessary-code-rules | |
| ########################################## | |
| # .NET Unnecessary code rules | |
| [*.{cs,csx,cake,vb,vbx}] | |
| dotnet_code_quality_unused_parameters = all:warning | |
| dotnet_remove_unnecessary_suppression_exclusions = none:warning | |
| # C# Unnecessary code rules | |
| [*.{cs,csx,cake}] | |
| csharp_style_unused_value_expression_statement_preference = discard_variable:suggestion | |
| dotnet_diagnostic.IDE0058.severity = suggestion | |
| csharp_style_unused_value_assignment_preference = discard_variable:suggestion | |
| dotnet_diagnostic.IDE0059.severity = suggestion | |
| ########################################## | |
| # Formatting Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules | |
| ########################################## | |
| # .NET formatting rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#net-formatting-rules | |
| [*.{cs,csx,cake,vb,vbx}] | |
| # Organize using directives | |
| dotnet_sort_system_directives_first = true | |
| dotnet_separate_import_directive_groups = false | |
| # Dotnet namespace options | |
| dotnet_style_namespace_match_folder = true:suggestion | |
| dotnet_diagnostic.IDE0130.severity = suggestion | |
| # C# formatting rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#c-formatting-rules | |
| [*.{cs,csx,cake}] | |
| # Newline options | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#new-line-options | |
| 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 options | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#indentation-options | |
| csharp_indent_case_contents = true | |
| csharp_indent_switch_labels = true | |
| csharp_indent_labels = no_change | |
| csharp_indent_block_contents = true | |
| csharp_indent_braces = false | |
| csharp_indent_case_contents_when_block = true | |
| # Spacing options | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#spacing-options | |
| csharp_space_after_cast = false | |
| csharp_space_after_keywords_in_control_flow_statements = true | |
| csharp_space_between_parentheses = false | |
| csharp_space_before_colon_in_inheritance_clause = true | |
| csharp_space_after_colon_in_inheritance_clause = true | |
| csharp_space_around_binary_operators = before_and_after | |
| csharp_space_between_method_declaration_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_call_parameter_list_parentheses = false | |
| csharp_space_between_method_call_empty_parameter_list_parentheses = false | |
| csharp_space_between_method_call_name_and_opening_parenthesis = false | |
| csharp_space_after_comma = true | |
| csharp_space_before_comma = false | |
| csharp_space_after_dot = false | |
| csharp_space_before_dot = false | |
| csharp_space_after_semicolon_in_for_statement = true | |
| csharp_space_before_semicolon_in_for_statement = false | |
| csharp_space_around_declaration_statements = false | |
| csharp_space_before_open_square_brackets = false | |
| csharp_space_between_empty_square_brackets = false | |
| csharp_space_between_square_brackets = false | |
| # Wrap options | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#wrap-options | |
| csharp_preserve_single_line_statements = false | |
| csharp_preserve_single_line_blocks = true | |
| # Namespace options | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/formatting-rules#namespace-options | |
| csharp_style_namespace_declarations = file_scoped:warning | |
| ########################################## | |
| # .NET Naming Rules | |
| # https://docs.microsoft.com/dotnet/fundamentals/code-analysis/style-rules/naming-rules | |
| ########################################## | |
| [*.{cs,csx,cake,vb,vbx}] | |
| ########################################## | |
| # Styles | |
| ########################################## | |
| # camel_case_style - Define the camelCase style | |
| dotnet_naming_style.camel_case_style.capitalization = camel_case | |
| # pascal_case_style - Define the PascalCase style | |
| dotnet_naming_style.pascal_case_style.capitalization = pascal_case | |
| # first_upper_style - The first character must start with an upper-case character | |
| dotnet_naming_style.first_upper_style.capitalization = first_word_upper | |
| # prefix_interface_with_i_style - Interfaces must be PascalCase and the first character of an interface must be an 'I' | |
| dotnet_naming_style.prefix_interface_with_i_style.capitalization = pascal_case | |
| dotnet_naming_style.prefix_interface_with_i_style.required_prefix = I | |
| # prefix_type_parameters_with_t_style - Generic Type Parameters must be PascalCase and the first character must be a 'T' | |
| dotnet_naming_style.prefix_type_parameters_with_t_style.capitalization = pascal_case | |
| dotnet_naming_style.prefix_type_parameters_with_t_style.required_prefix = T | |
| # disallowed_style - Anything that has this style applied is marked as disallowed | |
| dotnet_naming_style.disallowed_style.capitalization = pascal_case | |
| dotnet_naming_style.disallowed_style.required_prefix = ____RULE_VIOLATION____ | |
| dotnet_naming_style.disallowed_style.required_suffix = ____RULE_VIOLATION____ | |
| # internal_error_style - This style should never occur... if it does, it indicates a bug in file or in the parser using the file | |
| dotnet_naming_style.internal_error_style.capitalization = pascal_case | |
| dotnet_naming_style.internal_error_style.required_prefix = ____INTERNAL_ERROR____ | |
| dotnet_naming_style.internal_error_style.required_suffix = ____INTERNAL_ERROR____ | |
| ########################################## | |
| # .NET Design Guideline Field Naming Rules | |
| # Naming rules for fields follow the .NET Framework design guidelines | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/index | |
| ########################################## | |
| # All public/protected/protected_internal constant fields must be PascalCase | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/field | |
| dotnet_naming_symbols.public_protected_constant_fields_group.applicable_accessibilities = public, protected, protected_internal | |
| dotnet_naming_symbols.public_protected_constant_fields_group.required_modifiers = const | |
| dotnet_naming_symbols.public_protected_constant_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.public_protected_constant_fields_must_be_pascal_case_rule.symbols = public_protected_constant_fields_group | |
| dotnet_naming_rule.public_protected_constant_fields_must_be_pascal_case_rule.style = pascal_case_style | |
| dotnet_naming_rule.public_protected_constant_fields_must_be_pascal_case_rule.severity = warning | |
| # All public/protected/protected_internal static readonly fields must be PascalCase | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/field | |
| dotnet_naming_symbols.public_protected_static_readonly_fields_group.applicable_accessibilities = public, protected, protected_internal | |
| dotnet_naming_symbols.public_protected_static_readonly_fields_group.required_modifiers = static, readonly | |
| dotnet_naming_symbols.public_protected_static_readonly_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.public_protected_static_readonly_fields_must_be_pascal_case_rule.symbols = public_protected_static_readonly_fields_group | |
| dotnet_naming_rule.public_protected_static_readonly_fields_must_be_pascal_case_rule.style = pascal_case_style | |
| dotnet_naming_rule.public_protected_static_readonly_fields_must_be_pascal_case_rule.severity = warning | |
| # No other public/protected/protected_internal fields are allowed | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/field | |
| dotnet_naming_symbols.other_public_protected_fields_group.applicable_accessibilities = public, protected, protected_internal | |
| dotnet_naming_symbols.other_public_protected_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.other_public_protected_fields_disallowed_rule.symbols = other_public_protected_fields_group | |
| dotnet_naming_rule.other_public_protected_fields_disallowed_rule.style = disallowed_style | |
| dotnet_naming_rule.other_public_protected_fields_disallowed_rule.severity = error | |
| ########################################## | |
| # StyleCop Field Naming Rules | |
| # Naming rules for fields follow the StyleCop analyzers | |
| # This does not override any rules using disallowed_style above | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers | |
| ########################################## | |
| # All constant fields must be PascalCase | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1303.md | |
| dotnet_naming_symbols.stylecop_constant_fields_group.applicable_accessibilities = public, internal, protected_internal, protected, private_protected, private | |
| dotnet_naming_symbols.stylecop_constant_fields_group.required_modifiers = const | |
| dotnet_naming_symbols.stylecop_constant_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.stylecop_constant_fields_must_be_pascal_case_rule.symbols = stylecop_constant_fields_group | |
| dotnet_naming_rule.stylecop_constant_fields_must_be_pascal_case_rule.style = pascal_case_style | |
| dotnet_naming_rule.stylecop_constant_fields_must_be_pascal_case_rule.severity = warning | |
| # All static readonly fields must be PascalCase | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1311.md | |
| dotnet_naming_symbols.stylecop_static_readonly_fields_group.applicable_accessibilities = public, internal, protected_internal, protected, private_protected, private | |
| dotnet_naming_symbols.stylecop_static_readonly_fields_group.required_modifiers = static, readonly | |
| dotnet_naming_symbols.stylecop_static_readonly_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.stylecop_static_readonly_fields_must_be_pascal_case_rule.symbols = stylecop_static_readonly_fields_group | |
| dotnet_naming_rule.stylecop_static_readonly_fields_must_be_pascal_case_rule.style = pascal_case_style | |
| dotnet_naming_rule.stylecop_static_readonly_fields_must_be_pascal_case_rule.severity = warning | |
| # No non-private instance fields are allowed | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1401.md | |
| dotnet_naming_symbols.stylecop_fields_must_be_private_group.applicable_accessibilities = public, internal, protected_internal, protected, private_protected | |
| dotnet_naming_symbols.stylecop_fields_must_be_private_group.applicable_kinds = field | |
| dotnet_naming_rule.stylecop_instance_fields_must_be_private_rule.symbols = stylecop_fields_must_be_private_group | |
| dotnet_naming_rule.stylecop_instance_fields_must_be_private_rule.style = disallowed_style | |
| dotnet_naming_rule.stylecop_instance_fields_must_be_private_rule.severity = error | |
| # Private fields must be camelCase | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1306.md | |
| dotnet_naming_symbols.stylecop_private_fields_group.applicable_accessibilities = private | |
| dotnet_naming_symbols.stylecop_private_fields_group.applicable_kinds = field | |
| dotnet_naming_rule.stylecop_private_fields_must_be_camel_case_rule.symbols = stylecop_private_fields_group | |
| dotnet_naming_rule.stylecop_private_fields_must_be_camel_case_rule.style = camel_case_style | |
| dotnet_naming_rule.stylecop_private_fields_must_be_camel_case_rule.severity = warning | |
| # Local variables must be camelCase | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1312.md | |
| dotnet_naming_symbols.stylecop_local_fields_group.applicable_accessibilities = local | |
| dotnet_naming_symbols.stylecop_local_fields_group.applicable_kinds = local | |
| dotnet_naming_rule.stylecop_local_fields_must_be_camel_case_rule.symbols = stylecop_local_fields_group | |
| dotnet_naming_rule.stylecop_local_fields_must_be_camel_case_rule.style = camel_case_style | |
| dotnet_naming_rule.stylecop_local_fields_must_be_camel_case_rule.severity = silent | |
| # This rule should never fire. However, it's included for at least two purposes: | |
| # First, it helps to understand, reason about, and root-case certain types of issues, such as bugs in .editorconfig parsers. | |
| # Second, it helps to raise immediate awareness if a new field type is added (as occurred recently in C#). | |
| dotnet_naming_symbols.sanity_check_uncovered_field_case_group.applicable_accessibilities = * | |
| dotnet_naming_symbols.sanity_check_uncovered_field_case_group.applicable_kinds = field | |
| dotnet_naming_rule.sanity_check_uncovered_field_case_rule.symbols = sanity_check_uncovered_field_case_group | |
| dotnet_naming_rule.sanity_check_uncovered_field_case_rule.style = internal_error_style | |
| dotnet_naming_rule.sanity_check_uncovered_field_case_rule.severity = error | |
| ########################################## | |
| # Other Naming Rules | |
| ########################################## | |
| # All of the following must be PascalCase: | |
| # - Namespaces | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-namespaces | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1300.md | |
| # - Classes and Enumerations | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-classes-structs-and-interfaces | |
| # https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1300.md | |
| # - Delegates | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-classes-structs-and-interfaces#names-of-common-types | |
| # - Constructors, Properties, Events, Methods | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-type-members | |
| dotnet_naming_symbols.element_group.applicable_kinds = namespace, class, enum, struct, delegate, event, method, property | |
| dotnet_naming_rule.element_rule.symbols = element_group | |
| dotnet_naming_rule.element_rule.style = pascal_case_style | |
| dotnet_naming_rule.element_rule.severity = warning | |
| # Interfaces use PascalCase and are prefixed with uppercase 'I' | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-classes-structs-and-interfaces | |
| dotnet_naming_symbols.interface_group.applicable_kinds = interface | |
| dotnet_naming_rule.interface_rule.symbols = interface_group | |
| dotnet_naming_rule.interface_rule.style = prefix_interface_with_i_style | |
| dotnet_naming_rule.interface_rule.severity = warning | |
| # Generics Type Parameters use PascalCase and are prefixed with uppercase 'T' | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/names-of-classes-structs-and-interfaces | |
| dotnet_naming_symbols.type_parameter_group.applicable_kinds = type_parameter | |
| dotnet_naming_rule.type_parameter_rule.symbols = type_parameter_group | |
| dotnet_naming_rule.type_parameter_rule.style = prefix_type_parameters_with_t_style | |
| dotnet_naming_rule.type_parameter_rule.severity = warning | |
| # Function parameters use camelCase | |
| # https://docs.microsoft.com/dotnet/standard/design-guidelines/naming-parameters | |
| dotnet_naming_symbols.parameters_group.applicable_kinds = parameter | |
| dotnet_naming_rule.parameters_rule.symbols = parameters_group | |
| dotnet_naming_rule.parameters_rule.style = camel_case_style | |
| dotnet_naming_rule.parameters_rule.severity = warning | |
| # All Naming rules | |
| dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion | |
| dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface | |
| dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i | |
| dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.types_should_be_pascal_case.symbols = types | |
| dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case | |
| dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members | |
| dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case | |
| # Symbol specifications | |
| dotnet_naming_symbols.interface.applicable_kinds = interface | |
| dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected | |
| dotnet_naming_symbols.interface.required_modifiers = | |
| dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum | |
| dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected | |
| dotnet_naming_symbols.types.required_modifiers = | |
| dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method | |
| dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected | |
| dotnet_naming_symbols.non_field_members.required_modifiers = | |
| # Naming styles | |
| dotnet_naming_style.pascal_case.required_prefix = | |
| dotnet_naming_style.pascal_case.required_suffix = | |
| dotnet_naming_style.pascal_case.word_separator = | |
| dotnet_naming_style.pascal_case.capitalization = pascal_case | |
| dotnet_naming_style.begins_with_i.required_prefix = I | |
| dotnet_naming_style.begins_with_i.required_suffix = | |
| dotnet_naming_style.begins_with_i.word_separator = | |
| dotnet_naming_style.begins_with_i.capitalization = pascal_case | |
| # Style Definitions | |
| dotnet_naming_style.pascal_case_style.capitalization = pascal_case | |
| # Use PascalCase for constant fields | |
| 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.applicable_accessibilities = * | |
| dotnet_naming_symbols.constant_fields.required_modifiers = const | |
| # Constants are PascalCase | |
| dotnet_naming_rule.constants_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.constants_should_be_pascal_case.symbols = constants | |
| dotnet_naming_rule.constants_should_be_pascal_case.style = constant_style | |
| dotnet_naming_symbols.constants.applicable_kinds = field, local | |
| dotnet_naming_symbols.constants.required_modifiers = const | |
| dotnet_naming_style.constant_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 | |
| # Static fields are camelCase and start with s_ | |
| dotnet_naming_rule.static_fields_should_be_camel_case.severity = suggestion | |
| dotnet_naming_rule.static_fields_should_be_camel_case.symbols = static_fields | |
| dotnet_naming_rule.static_fields_should_be_camel_case.style = static_field_style | |
| dotnet_naming_symbols.static_fields.applicable_kinds = field | |
| dotnet_naming_symbols.static_fields.required_modifiers = static | |
| dotnet_naming_style.static_field_style.capitalization = camel_case | |
| dotnet_naming_style.static_field_style.required_prefix = s_ | |
| # 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 | |
| # Non-private static fields are PascalCase | |
| dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.symbols = non_private_static_fields | |
| dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.style = non_private_static_field_style | |
| dotnet_naming_symbols.non_private_static_fields.applicable_kinds = field | |
| dotnet_naming_symbols.non_private_static_fields.applicable_accessibilities = public, protected, internal, protected_internal, private_protected | |
| dotnet_naming_symbols.non_private_static_fields.required_modifiers = static | |
| dotnet_naming_style.non_private_static_field_style.capitalization = pascal_case | |
| # Non-private readonly fields are PascalCase | |
| dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.symbols = non_private_readonly_fields | |
| dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.style = non_private_readonly_field_style | |
| dotnet_naming_symbols.non_private_readonly_fields.applicable_kinds = field | |
| dotnet_naming_symbols.non_private_readonly_fields.applicable_accessibilities = public, protected, internal, protected_internal, private_protected | |
| dotnet_naming_symbols.non_private_readonly_fields.required_modifiers = readonly | |
| dotnet_naming_style.non_private_readonly_field_style.capitalization = pascal_case | |
| # Instance fields are camelCase and start with _ | |
| dotnet_naming_rule.instance_fields_should_be_camel_case.severity = suggestion | |
| dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields | |
| dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style | |
| dotnet_naming_symbols.instance_fields.applicable_kinds = field | |
| dotnet_naming_style.instance_field_style.capitalization = camel_case | |
| dotnet_naming_style.instance_field_style.required_prefix = _ | |
| # Locals and parameters are camelCase | |
| dotnet_naming_rule.locals_should_be_camel_case.severity = suggestion | |
| dotnet_naming_rule.locals_should_be_camel_case.symbols = locals_and_parameters | |
| dotnet_naming_rule.locals_should_be_camel_case.style = camel_case_style | |
| dotnet_naming_symbols.locals_and_parameters.applicable_kinds = parameter, local | |
| dotnet_naming_style.camel_case_style.capitalization = camel_case | |
| # Local functions are PascalCase | |
| dotnet_naming_rule.local_functions_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.local_functions_should_be_pascal_case.symbols = local_functions | |
| dotnet_naming_rule.local_functions_should_be_pascal_case.style = local_function_style | |
| dotnet_naming_symbols.local_functions.applicable_kinds = local_function | |
| dotnet_naming_style.local_function_style.capitalization = pascal_case | |
| # By default, name items with PascalCase | |
| dotnet_naming_rule.members_should_be_pascal_case.severity = suggestion | |
| dotnet_naming_rule.members_should_be_pascal_case.symbols = all_members | |
| dotnet_naming_rule.members_should_be_pascal_case.style = pascal_case_style | |
| dotnet_naming_symbols.all_members.applicable_kinds = * | |
| dotnet_naming_style.pascal_case_style.capitalization = pascal_case | |
| # IDE0035: Remove unreachable code | |
| dotnet_diagnostic.IDE0035.severity = warning | |
| # IDE0036: Order modifiers | |
| dotnet_diagnostic.IDE0036.severity = warning | |
| # IDE0043: Format string contains invalid placeholder | |
| dotnet_diagnostic.IDE0043.severity = warning | |
| # IDE0044: Make field readonly | |
| dotnet_diagnostic.IDE0044.severity = warning | |
| # IDE0051: Remove unused private member | |
| dotnet_diagnostic.IDE0051.severity = warning | |
| # IDE0040: Add accessibility modifiers | |
| dotnet_diagnostic.IDE0040.severity = warning | |
| # IDE0052: Remove unread private member | |
| dotnet_diagnostic.IDE0052.severity = warning | |
| # IDE0059: Unnecessary assignment to a value | |
| dotnet_diagnostic.IDE0059.severity = warning | |
| # IDE0060: Remove unused parameter | |
| dotnet_diagnostic.IDE0060.severity = warning | |
| # error RS2008: Enable analyzer release tracking for the analyzer project containing rule '{0}' | |
| dotnet_diagnostic.RS2008.severity = none | |
| # IDE0170: Prefer extended property pattern | |
| dotnet_diagnostic.IDE0170.severity = warning | |
| # RS0016: Only enable if API files are present | |
| dotnet_public_api_analyzer.require_api_files = true | |
| # dotnet_style_allow_multiple_blank_lines_experimental | |
| dotnet_diagnostic.IDE2000.severity = warning |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment