Last active
January 5, 2023 06:23
-
-
Save rodrigoueda/de313da77eb224d6c3b53f518ac3521b to your computer and use it in GitHub Desktop.
Editor Config C#
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
# Remove the line below if you want to inherit .editorconfig settings from higher directories | |
root = true | |
# C# files | |
[*.cs] | |
#### Core EditorConfig Options #### | |
# Severities | |
dotnet_diagnostic.IDE0016.severity = none | |
dotnet_diagnostic.IDE0044.severity = none | |
dotnet_diagnostic.IDE0051.severity = none | |
dotnet_diagnostic.IDE0055.severity = warning | |
dotnet_diagnostic.RCS1036.severity = none | |
dotnet_diagnostic.RCS1037.severity = none | |
dotnet_diagnostic.RCS1110.severity = warning | |
dotnet_diagnostic.RCS1169.severity = none | |
dotnet_diagnostic.RCS1213.severity = none | |
# Indentation and spacing | |
indent_size = 4 | |
indent_style = space | |
tab_width = 4 | |
# New line preferences | |
end_of_line = crlf | |
insert_final_newline = false | |
# Organize usings | |
dotnet_separate_import_directive_groups = false | |
dotnet_sort_system_directives_first = false | |
file_header_template = unset | |
# this. and Me. preferences | |
dotnet_style_qualification_for_event = false | |
dotnet_style_qualification_for_field = false | |
dotnet_style_qualification_for_method = false | |
dotnet_style_qualification_for_property = false | |
# Language keywords vs BCL types preferences | |
dotnet_style_predefined_type_for_locals_parameters_members = true | |
dotnet_style_predefined_type_for_member_access = true | |
# Parentheses preferences | |
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity | |
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity | |
dotnet_style_parentheses_in_other_operators = never_if_unnecessary | |
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity | |
# Expression-level preferences | |
#IDE0017 | |
dotnet_style_object_initializer = true | |
#IDE0028 | |
dotnet_style_collection_initializer = true | |
#IDE0032 | |
dotnet_style_prefer_auto_properties = false | |
#IDE0033 | |
dotnet_style_explicit_tuple_names = true | |
#IDE0037 | |
dotnet_style_prefer_inferred_tuple_names = true | |
dotnet_style_prefer_inferred_anonymous_type_member_names = true | |
#IDE0045 | |
dotnet_style_prefer_conditional_expression_over_assignment = true:silent | |
#IDE0046 | |
dotnet_style_prefer_conditional_expression_over_return = true:silent | |
#IDE0054 | |
dotnet_style_prefer_compound_assignment = true | |
#IDE0058 | |
csharp_style_unused_value_expression_statement_preference = discard_variable | |
#IDE0059 | |
csharp_style_unused_value_assignment_preference = discard_variable | |
#IDE0018 | |
csharp_style_inlined_variable_declaration = false | |
#IDE0034 | |
csharp_prefer_simple_default_expression = true:suggestion | |
#IDE0039 | |
csharp_style_pattern_local_over_anonymous_function = true | |
#IDE0042 | |
csharp_style_deconstructed_variable_declaration = false | |
#IDE0056 | |
csharp_style_prefer_index_operator = false:suggestion | |
#IDE0057 | |
csharp_style_prefer_range_operator = false:suggestion | |
# Null-checking preferences | |
#IDE0029 | |
dotnet_style_coalesce_expression = true | |
#IDE0031 | |
dotnet_style_null_propagation = true | |
#IDE0041 | |
dotnet_style_prefer_is_null_check_over_reference_equality_method = true | |
#IDE1005 | |
csharp_style_conditional_delegate_call = true | |
# Parameter preferences | |
#IDE0060 | |
dotnet_code_quality_unused_parameters = all | |
dotnet_style_operator_placement_when_wrapping = beginning_of_line | |
dotnet_style_prefer_simplified_boolean_expressions = true:suggestion | |
dotnet_style_prefer_simplified_interpolation = true:suggestion | |
# Suppression preferences | |
dotnet_remove_unnecessary_suppression_exclusions = none | |
#### C# Coding Conventions #### | |
# var preferences (IDE0007 and IDE0008) | |
csharp_style_var_elsewhere = false | |
csharp_style_var_for_built_in_types = false | |
csharp_style_var_when_type_is_apparent = false | |
# Expression-bodied members | |
#IDE0021 | |
csharp_style_expression_bodied_constructors = false | |
#IDE0022 | |
csharp_style_expression_bodied_methods = false | |
#IDE0023 and IDE0024 | |
csharp_style_expression_bodied_operators = false | |
#IDE0025 | |
csharp_style_expression_bodied_properties = false | |
#IDE0026 | |
csharp_style_expression_bodied_indexers = false | |
#IDE0027 | |
csharp_style_expression_bodied_accessors = false | |
#IDE0053 | |
csharp_style_expression_bodied_lambdas = false | |
#IDE0061 | |
csharp_style_expression_bodied_local_functions = false | |
# Pattern matching preferences | |
#IDE0019 | |
csharp_style_pattern_matching_over_as_with_null_check = true | |
#IDE0020 | |
csharp_style_pattern_matching_over_is_with_cast_check = true | |
#IDE0066 | |
csharp_style_prefer_switch_expression = false | |
csharp_style_prefer_not_pattern = true:suggestion | |
csharp_style_prefer_pattern_matching = true:silent | |
# Code-block preferences | |
#IDE0011 | |
csharp_prefer_braces = true | |
#IDE0063 | |
csharp_prefer_simple_using_statement = true | |
# 'using' directive preferences | |
csharp_using_directive_placement = outside_namespace | |
# Modifier preferences | |
#IDE0036 | |
csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async | |
#IDE0040 | |
dotnet_style_require_accessibility_modifiers = always | |
#IDE0044 | |
dotnet_style_readonly_field = false | |
#IDE0062 | |
csharp_prefer_static_local_function = true | |
#### C# Formatting Rules #### | |
# 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_anonymous_types = true | |
# Indentation preferences | |
csharp_indent_case_contents = true | |
csharp_indent_switch_labels = true | |
csharp_indent_block_contents = true | |
csharp_indent_braces = false | |
csharp_indent_case_contents_when_block = false | |
# 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 = false | |
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 | |
# Wrapping preferences | |
csharp_preserve_single_line_blocks = false | |
csharp_preserve_single_line_statements = false | |
#### Naming styles #### | |
# Naming rules | |
# Namespaces, Classes, Structs, Enums, Properties, Methods, Events, Delegates, Local Functions | |
dotnet_naming_rule.pascal_case.severity = warning | |
dotnet_naming_rule.pascal_case.symbols = pascal_case_symbols | |
dotnet_naming_rule.pascal_case.style = pascal_case_style | |
dotnet_naming_symbols.pascal_case_symbols.applicable_kinds = namespace, class, struct, enum, property, method, event, delegate, local_function | |
dotnet_naming_symbols.pascal_case_symbols.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected, local | |
dotnet_naming_style.pascal_case_style.capitalization = pascal_case | |
# Interfaces | |
dotnet_naming_rule.interface_should_be_begins_with_i.severity = warning | |
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface_symbols | |
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i | |
dotnet_naming_style.begins_with_i.required_prefix = I | |
dotnet_naming_style.begins_with_i.capitalization = pascal_case | |
dotnet_naming_symbols.interface_symbols.applicable_kinds = interface | |
dotnet_naming_symbols.interface_symbols.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected | |
# Private Fields | |
dotnet_naming_rule.private_members_with_underscore.severity = warning | |
dotnet_naming_rule.private_members_with_underscore.symbols = private_fields | |
dotnet_naming_rule.private_members_with_underscore.style = prefix_underscore | |
dotnet_naming_style.prefix_underscore.required_prefix = _ | |
dotnet_naming_style.prefix_underscore.capitalization = camel_case | |
dotnet_naming_symbols.private_fields.applicable_kinds = field | |
dotnet_naming_symbols.private_fields.applicable_accessibilities = private | |
dotnet_naming_symbols.private_fields.required_modifiers = private | |
# Public Fields | |
dotnet_naming_rule.public_members_fields.severity = warning | |
dotnet_naming_rule.public_members_fields.symbols = public_fields_symbols | |
dotnet_naming_rule.public_members_fields.style = public_fields_style | |
dotnet_naming_style.public_fields_style.capitalization = camel_case | |
dotnet_naming_symbols.public_fields_symbols.applicable_kinds = field | |
dotnet_naming_symbols.public_fields_symbols.applicable_accessibilities = public | |
dotnet_naming_symbols.public_fields_symbols.required_modifiers = public | |
# Parameters, Type Parameters and Locals | |
dotnet_naming_rule.parameters_fields.severity = warning | |
dotnet_naming_rule.parameters_fields.symbols = parameters_symbols | |
dotnet_naming_rule.parameters_fields.style = parameters_style | |
dotnet_naming_style.parameters_symbols.capitalization = camel_case | |
dotnet_naming_symbols.parameters_style.applicable_kinds = parameter, type_parameter, local | |
# Consts | |
dotnet_naming_rule.const_fields.severity = warning | |
dotnet_naming_rule.const_fields.symbols = const_fields | |
dotnet_naming_rule.const_fields.style = const_style | |
dotnet_naming_style.const_style.word_separator = _ | |
dotnet_naming_style.const_style.capitalization = all_upper | |
dotnet_naming_symbols.const_fields.required_modifiers = const |
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
{ | |
"RoslynExtensionsOptions": { | |
"EnableAnalyzersSupport": true, | |
}, | |
"FormattingOptions": { | |
"enableEditorConfigSupport": true | |
} | |
} |
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
// VSCode Settings | |
} | |
"omnisharp.enableEditorConfigSupport": true, | |
"omnisharp.useGlobalMono": "always", | |
"omnisharp.enableRoslynAnalyzers": true, | |
"omnisharp.enableImportCompletion": true, | |
"[csharp]": { | |
"editor.defaultFormatter": "ms-dotnettools.csharp" | |
}, | |
"omnisharp.enableMsBuildLoadProjectsOnDemand": true | |
} |
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
VSCode 1.49.3 (OSX) | |
Package | |
C# 1.23.2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment