Last active
October 4, 2021 04:56
-
-
Save kuhlenh/5471666a7a2c57fea427e81cf0a41da8 to your computer and use it in GitHub Desktop.
Roslyn .NET OSS (WIP)
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
############################### | |
# Core EditorConfig Options # | |
############################### | |
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 | |
# 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 | |
# Use language keywords instead of BCL types | |
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | |
dotnet_style_predefined_type_for_member_access = true:suggestion | |
# Parentheses preferences | |
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:none | |
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:none | |
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:none | |
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:none | |
# Modifier preferences | |
dotnet_style_require_accessibility_modifiers = always:suggestion | |
dotnet_style_readonly_field = true:warning | |
# 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:none | |
dotnet_prefer_inferred_tuple_names = true:suggestion | |
dotnet_prefer_inferred_anonymous_type_member_names = true:suggestion | |
dotnet_style_prefer_auto_properties = true:none | |
dotnet_style_prefer_conditional_expression_over_assignment = true:suggestion | |
dotnet_style_prefer_conditional_expression_over_return = true:suggestion | |
############################### | |
# 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# Coding Conventions # | |
############################### | |
[*.cs] | |
# Always use var | |
csharp_style_var_for_built_in_types = true:suggestion | |
csharp_style_var_when_type_is_apparent = true:suggestion | |
csharp_style_var_elsewhere = true:suggestion | |
# Expression-bodied members | |
csharp_style_expression_bodied_methods = false:none | |
csharp_style_expression_bodied_constructors = false:none | |
csharp_style_expression_bodied_operators = false:none | |
csharp_style_expression_bodied_properties = true:none | |
csharp_style_expression_bodied_indexers = true:none | |
csharp_style_expression_bodied_accessors = true:none | |
# Pattern matching | |
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | |
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | |
# Null-checking preferences | |
csharp_style_throw_expression = true:suggestion | |
csharp_style_conditional_delegate_call = true:suggestion | |
# Modifier preferences | |
csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:suggestion | |
# Expression-level preferences | |
csharp_prefer_braces = true:suggestion | |
csharp_style_deconstructed_variable_declaration = true:suggestion | |
csharp_prefer_simple_default_expression = true:suggestion | |
csharp_style_pattern_local_over_anonymous_function = true:suggestion | |
csharp_style_inlined_variable_declaration = true:suggestion | |
############################### | |
# 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_object_initializers = true | |
csharp_new_line_before_members_in_anonymous_types = true | |
csharp_new_line_between_query_expression_clauses = true | |
# Indentation preferences | |
csharp_indent_case_contents = true | |
csharp_indent_switch_labels = true | |
csharp_indent_labels = flush_left | |
# Space preferences | |
csharp_space_after_cast = false | |
csharp_space_after_keywords_in_control_flow_statements = true | |
csharp_space_between_method_call_parameter_list_parentheses = false | |
csharp_space_between_method_declaration_parameter_list_parentheses = false | |
csharp_space_between_parentheses = false | |
# Wrapping preferences | |
csharp_preserve_single_line_statements = true | |
csharp_preserve_single_line_blocks = true | |
############################### | |
# VB Coding Conventions # | |
############################### | |
[*.vb] | |
# Modifier preferences | |
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:suggestion |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment