Last active
July 30, 2019 09:26
-
-
Save teneko/691cf24f47c34a1f51566c5c8a05ffd3 to your computer and use it in GitHub Desktop.
My preferred Visual Studio EditorConfig for CSharp (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
# Add new options at the end of this file | |
root = true | |
# All files | |
[*] | |
indent_style = space | |
# Code files | |
[*.{cs,csx,vb,vbx}] | |
indent_size = 4 | |
insert_final_newline = true | |
charset = utf-8-bom | |
############################### | |
# .NET Coding Conventions # | |
############################### | |
[*.{cs,vb}] | |
# Organize usings | |
dotnet_sort_system_directives_first = true | |
dotnet_separate_import_directive_groups = false | |
# this. preferences | |
dotnet_style_qualification_for_field = false:silent | |
dotnet_style_qualification_for_property = false:silent | |
dotnet_style_qualification_for_method = false:silent | |
dotnet_style_qualification_for_event = false:silent | |
# Language keywords vs BCL types preferences | |
dotnet_style_predefined_type_for_locals_parameters_members = true:silent | |
dotnet_style_predefined_type_for_member_access = true:silent | |
# Parentheses preferences | |
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent | |
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent | |
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent | |
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent | |
# Modifier preferences | |
dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent | |
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_null_propagation = true:suggestion | |
dotnet_style_coalesce_expression = true:suggestion | |
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:silent | |
dotnet_style_prefer_inferred_tuple_names = true:suggestion | |
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion | |
dotnet_style_prefer_auto_properties = true:silent | |
dotnet_style_prefer_conditional_expression_over_assignment = true:silent | |
dotnet_style_prefer_conditional_expression_over_return = true:silent | |
############################### | |
# Naming Conventions # | |
############################### | |
# 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 | |
############################### | |
# C# Code Style Rules # | |
############################### | |
[*.cs] | |
# Indentations 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 | |
# Space 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 | |
csharp_preserve_single_line_statements=false | |
csharp_preserve_single_line_blocks=true | |
# New-line options | |
csharp_new_line_before_open_brace = types, methods | |
csharp_new_line_before_else = false | |
csharp_new_line_before_catch = false | |
csharp_new_line_before_finally = false | |
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 | |
# Add here new options |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment