diff --git a/.editorconfig b/.editorconfig index 9a88a72..71a0517 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,1334 +1,1338 @@ [*] -charset = utf-8 -end_of_line = lf -indent_size = 4 -indent_style = space -insert_final_newline = false -max_line_length = 120 -tab_width = 4 -trim_trailing_whitespace = false -ij_continuation_indent_size = 8 +charset = utf-8 +end_of_line = lf +indent_size = 2 +indent_style = space +insert_final_newline = false +max_line_length = 120 +tab_width = 2 +trim_trailing_whitespace = false +ij_continuation_indent_size = 4 ij_formatter_off_tag = @formatter:off -ij_formatter_on_tag = @formatter:on -ij_formatter_tags_enabled = true -ij_smart_tabs = false -ij_visual_guides = -ij_wrap_on_typing = false +ij_formatter_on_tag = @formatter:on +ij_formatter_tags_enabled = true +ij_smart_tabs = false +ij_visual_guides = +ij_wrap_on_typing = false # Microsoft .NET properties -csharp_preferred_modifier_order = public, private, protected, internal, file, new, static, abstract, virtual, sealed, readonly, override, extern, unsafe, volatile, async, required:suggestion -csharp_space_after_keywords_in_control_flow_statements = false -csharp_style_namespace_declarations = file_scoped:warning -csharp_style_prefer_utf8_string_literals = true:warning -csharp_style_var_elsewhere = false:suggestion -csharp_style_var_for_built_in_types = false:suggestion -csharp_style_var_when_type_is_apparent = true:suggestion -csharp_using_directive_placement = outside_namespace:silent -dotnet_naming_rule.private_constants_rule.import_to_resharper = as_predefined -dotnet_naming_rule.private_constants_rule.severity = warning -dotnet_naming_rule.private_constants_rule.style = all_upper_style -dotnet_naming_rule.private_constants_rule.symbols = private_constants_symbols -dotnet_naming_rule.unity_serialized_field_rule.import_to_resharper = True -dotnet_naming_rule.unity_serialized_field_rule.resharper_description = Unity serialized field -dotnet_naming_rule.unity_serialized_field_rule.resharper_guid = 5f0fdb63-c892-4d2c-9324-15c80b22a7ef -dotnet_naming_rule.unity_serialized_field_rule.severity = warning -dotnet_naming_rule.unity_serialized_field_rule.style = lower_camel_case_style -dotnet_naming_rule.unity_serialized_field_rule.symbols = unity_serialized_field_symbols -dotnet_naming_style.all_upper_style.capitalization = all_upper -dotnet_naming_style.all_upper_style.word_separator = _ -dotnet_naming_style.lower_camel_case_style.capitalization = camel_case -dotnet_naming_symbols.private_constants_symbols.applicable_accessibilities = private -dotnet_naming_symbols.private_constants_symbols.applicable_kinds = field -dotnet_naming_symbols.private_constants_symbols.required_modifiers = const -dotnet_naming_symbols.unity_serialized_field_symbols.applicable_accessibilities = * -dotnet_naming_symbols.unity_serialized_field_symbols.applicable_kinds = -dotnet_naming_symbols.unity_serialized_field_symbols.resharper_applicable_kinds = unity_serialised_field -dotnet_naming_symbols.unity_serialized_field_symbols.resharper_required_modifiers = instance -dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary:warning -dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:warning -dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary:warning -dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion -dotnet_style_predefined_type_for_member_access = true:suggestion -dotnet_style_qualification_for_event = false:suggestion -dotnet_style_qualification_for_field = false:suggestion -dotnet_style_qualification_for_method = false:suggestion -dotnet_style_qualification_for_property = false:suggestion -dotnet_style_require_accessibility_modifiers = never:suggestion +csharp_preferred_modifier_order = public, private, protected, internal, file, new, static, abstract, virtual, sealed, readonly, override, extern, unsafe, volatile, async, required:suggestion +csharp_space_after_keywords_in_control_flow_statements = false +csharp_style_namespace_declarations = file_scoped:warning +csharp_style_prefer_utf8_string_literals = true:warning +csharp_style_var_elsewhere = false:suggestion +csharp_style_var_for_built_in_types = false:suggestion +csharp_style_var_when_type_is_apparent = true:suggestion +csharp_using_directive_placement = outside_namespace:silent +dotnet_naming_rule.private_constants_rule.import_to_resharper = as_predefined +dotnet_naming_rule.private_constants_rule.severity = warning +dotnet_naming_rule.private_constants_rule.style = all_upper_style +dotnet_naming_rule.private_constants_rule.symbols = private_constants_symbols +dotnet_naming_rule.unity_serialized_field_rule.import_to_resharper = True +dotnet_naming_rule.unity_serialized_field_rule.resharper_description = Unity serialized field +dotnet_naming_rule.unity_serialized_field_rule.resharper_guid = 5f0fdb63-c892-4d2c-9324-15c80b22a7ef +dotnet_naming_rule.unity_serialized_field_rule.severity = warning +dotnet_naming_rule.unity_serialized_field_rule.style = lower_camel_case_style +dotnet_naming_rule.unity_serialized_field_rule.symbols = unity_serialized_field_symbols +dotnet_naming_style.all_upper_style.capitalization = all_upper +dotnet_naming_style.all_upper_style.word_separator = _ +dotnet_naming_style.lower_camel_case_style.capitalization = camel_case +dotnet_naming_symbols.private_constants_symbols.applicable_accessibilities = private +dotnet_naming_symbols.private_constants_symbols.applicable_kinds = field +dotnet_naming_symbols.private_constants_symbols.required_modifiers = const +dotnet_naming_symbols.unity_serialized_field_symbols.applicable_accessibilities = * +dotnet_naming_symbols.unity_serialized_field_symbols.applicable_kinds = +dotnet_naming_symbols.unity_serialized_field_symbols.resharper_applicable_kinds = unity_serialised_field +dotnet_naming_symbols.unity_serialized_field_symbols.resharper_required_modifiers = instance +dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary:warning +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:warning +dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary:warning +dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion +dotnet_style_predefined_type_for_member_access = true:suggestion +dotnet_style_qualification_for_event = false:suggestion +dotnet_style_qualification_for_field = false:suggestion +dotnet_style_qualification_for_method = false:suggestion +dotnet_style_qualification_for_property = false:suggestion +dotnet_style_require_accessibility_modifiers = never:suggestion # ReSharper properties -resharper_align_linq_query = true -resharper_align_multiline_argument = true -resharper_align_multiline_array_and_object_initializer = false -resharper_align_multiline_binary_expressions_chain = true -resharper_align_multiline_binary_patterns = true -resharper_align_multiline_calls_chain = true -resharper_align_multiline_expression = true -resharper_align_multiline_expression_braces = true -resharper_align_multiline_extends_list = true -resharper_align_multiline_for_stmt = true -resharper_align_multiline_list_pattern = true -resharper_align_multiline_parameter = true -resharper_align_multiline_property_pattern = true -resharper_align_multiline_switch_expression = true -resharper_align_multiple_declaration = true -resharper_align_multline_type_parameter_constrains = true -resharper_align_multline_type_parameter_list = true -resharper_align_ternary = align_all -resharper_align_tuple_components = true -resharper_autodetect_indent_settings = true -resharper_braces_for_for = required_for_multiline -resharper_braces_for_foreach = required_for_multiline -resharper_braces_for_ifelse = required_for_multiline -resharper_braces_for_while = required_for_multiline -resharper_builtin_type_apply_to_native_integer = true -resharper_constructor_or_destructor_body = expression_body -resharper_csharp_align_first_arg_by_paren = true -resharper_csharp_empty_block_style = together_same_line -resharper_csharp_place_comments_at_first_column = true -resharper_csharp_prefer_qualified_reference = false -resharper_default_value_when_type_not_evident = default_expression -resharper_enforce_line_ending_style = true +resharper_align_first_arg_by_paren = false +resharper_align_linq_query = true +resharper_align_multiline_argument = true +resharper_align_multiline_array_and_object_initializer = false +resharper_align_multiline_binary_expressions_chain = true +resharper_align_multiline_binary_patterns = true +resharper_align_multiline_calls_chain = true +resharper_align_multiline_expression = true +resharper_align_multiline_expression_braces = true +resharper_align_multiline_extends_list = true +resharper_align_multiline_for_stmt = true +resharper_align_multiline_list_pattern = true +resharper_align_multiline_parameter = true +resharper_align_multiline_property_pattern = true +resharper_align_multiline_switch_expression = true +resharper_align_multiple_declaration = true +resharper_align_multline_type_parameter_constrains = true +resharper_align_multline_type_parameter_list = true +resharper_align_ternary = align_all +resharper_align_tuple_components = true +resharper_autodetect_indent_settings = true +resharper_braces_for_for = required_for_multiline +resharper_braces_for_foreach = required_for_multiline +resharper_braces_for_ifelse = required_for_multiline +resharper_braces_for_while = required_for_multiline +resharper_builtin_type_apply_to_native_integer = false +resharper_constructor_or_destructor_body = expression_body +resharper_csharp_align_first_arg_by_paren = false +resharper_csharp_empty_block_style = together_same_line +resharper_csharp_place_comments_at_first_column = true +resharper_csharp_prefer_qualified_reference = false +resharper_default_value_when_type_not_evident = default_expression +resharper_enforce_line_ending_style = true resharper_formatter_off_tag = @formatter:off -resharper_formatter_on_tag = @formatter:on -resharper_formatter_tags_enabled = true -resharper_for_built_in_types = use_var_when_evident -resharper_function_declaration_return_type_style = on_single_line -resharper_function_definition_return_type_style = on_single_line -resharper_html_pi_attribute_style = first_attribute_on_single_line -resharper_indent_anonymous_method_block = true -resharper_indent_preprocessor_if = outdent -resharper_indent_preprocessor_other = outdent -resharper_indent_preprocessor_region = outdent -resharper_int_align = true -resharper_int_align_bitfield_sizes = true -resharper_int_align_comments = true -resharper_int_align_declaration_names = true -resharper_int_align_enum_initializers = true -resharper_int_align_eq = true -resharper_keep_existing_embedded_arrangement = false -resharper_keep_existing_initializer_arrangement = false -resharper_keep_existing_list_patterns_arrangement = false -resharper_keep_existing_property_patterns_arrangement = false -resharper_keep_existing_switch_expression_arrangement = false -resharper_line_break_after_colon_in_member_initializer_lists = on_single_line -resharper_line_break_before_requires_clause = on_single_line -resharper_linkage_specification_indentation = all -resharper_local_function_body = expression_body -resharper_member_initializer_list_style = on_single_line -resharper_method_or_operator_body = expression_body -resharper_outdent_binary_ops = true -resharper_outdent_binary_pattern_ops = true -resharper_outdent_commas = true -resharper_outdent_dots = true -resharper_outdent_statement_labels = true -resharper_parentheses_redundancy_style = remove -resharper_place_attribute_on_same_line = false -resharper_place_simple_embedded_statement_on_same_line = false -resharper_qualified_using_at_nested_scope = true -resharper_show_autodetect_configure_formatting_tip = false -resharper_simple_block_style = on_single_line -resharper_simple_case_statement_style = line_break -resharper_simple_embedded_statement_style = on_single_line -resharper_space_after_ptr_in_data_member = false -resharper_space_after_ptr_in_method = false -resharper_space_after_ref_in_data_member = false -resharper_space_after_ref_in_method = false -resharper_space_before_ptr_in_data_member = true -resharper_space_before_ptr_in_method = true -resharper_space_before_ref_in_data_member = true -resharper_space_before_ref_in_method = true -resharper_space_before_template_params = false -resharper_space_within_empty_braces = false -resharper_toplevel_function_declaration_return_type_style = on_single_line -resharper_toplevel_function_definition_return_type_style = on_single_line -resharper_use_indent_from_vs = false -resharper_wrap_after_dot_in_method_calls = true -resharper_wrap_base_clause_style = chop_if_long -resharper_wrap_braced_init_list_style = chop_if_long -resharper_wrap_ctor_initializer_style = chop_if_long -resharper_wrap_lines = true -resharper_xmldoc_attribute_indent = align_by_first_attribute -resharper_xmldoc_attribute_style = first_attribute_on_single_line -resharper_xmldoc_pi_attribute_style = first_attribute_on_single_line +resharper_formatter_on_tag = @formatter:on +resharper_formatter_tags_enabled = true +resharper_for_built_in_types = use_var_when_evident +resharper_function_declaration_return_type_style = on_single_line +resharper_function_definition_return_type_style = on_single_line +resharper_html_pi_attribute_style = first_attribute_on_single_line +resharper_indent_anonymous_method_block = false +resharper_indent_preprocessor_if = outdent +resharper_indent_preprocessor_other = outdent +resharper_indent_preprocessor_region = outdent +resharper_int_align = true +resharper_int_align_bitfield_sizes = true +resharper_int_align_comments = true +resharper_int_align_declaration_names = true +resharper_int_align_enum_initializers = true +resharper_int_align_eq = true +resharper_keep_existing_embedded_arrangement = false +resharper_keep_existing_initializer_arrangement = false +resharper_keep_existing_list_patterns_arrangement = false +resharper_keep_existing_property_patterns_arrangement = false +resharper_keep_existing_switch_expression_arrangement = false +resharper_line_break_after_colon_in_member_initializer_lists = on_single_line +resharper_line_break_before_requires_clause = on_single_line +resharper_linkage_specification_indentation = all +resharper_local_function_body = expression_body +resharper_member_initializer_list_style = on_single_line +resharper_method_or_operator_body = expression_body +resharper_outdent_binary_ops = true +resharper_outdent_binary_pattern_ops = true +resharper_outdent_commas = true +resharper_outdent_dots = true +resharper_outdent_statement_labels = true +resharper_parentheses_redundancy_style = remove +resharper_place_attribute_on_same_line = false +resharper_place_simple_embedded_statement_on_same_line = false +resharper_qualified_using_at_nested_scope = true +resharper_show_autodetect_configure_formatting_tip = false +resharper_simple_block_style = on_single_line +resharper_simple_case_statement_style = line_break +resharper_simple_embedded_statement_style = on_single_line +resharper_space_after_ptr_in_data_member = false +resharper_space_after_ptr_in_method = false +resharper_space_after_ref_in_data_member = false +resharper_space_after_ref_in_method = false +resharper_space_before_ptr_in_data_member = true +resharper_space_before_ptr_in_method = true +resharper_space_before_ref_in_data_member = true +resharper_space_before_ref_in_method = true +resharper_space_before_template_params = false +resharper_space_within_empty_braces = false +resharper_toplevel_function_declaration_return_type_style = on_single_line +resharper_toplevel_function_definition_return_type_style = on_single_line +resharper_use_indent_from_vs = false +resharper_wrap_after_dot_in_method_calls = true +resharper_wrap_base_clause_style = chop_if_long +resharper_wrap_braced_init_list_style = chop_if_long +resharper_wrap_ctor_initializer_style = chop_if_long +resharper_wrap_lines = true +resharper_xmldoc_attribute_indent = align_by_first_attribute +resharper_xmldoc_attribute_style = first_attribute_on_single_line +resharper_xmldoc_pi_attribute_style = first_attribute_on_single_line # ReSharper inspection severities -resharper_annotate_can_be_null_parameter_highlighting = warning -resharper_annotate_can_be_null_type_member_highlighting = warning -resharper_annotate_not_null_parameter_highlighting = warning -resharper_annotate_not_null_type_member_highlighting = warning -resharper_arguments_style_anonymous_function_highlighting = warning -resharper_arguments_style_literal_highlighting = warning -resharper_arguments_style_named_expression_highlighting = warning -resharper_arguments_style_other_highlighting = warning -resharper_arguments_style_string_literal_highlighting = warning -resharper_arrange_accessor_owner_body_highlighting = warning -resharper_arrange_constructor_or_destructor_body_highlighting = warning -resharper_arrange_local_function_body_highlighting = warning -resharper_arrange_method_or_operator_body_highlighting = warning -resharper_arrange_redundant_parentheses_highlighting = hint -resharper_arrange_static_member_qualifier_highlighting = warning -resharper_arrange_this_qualifier_highlighting = hint -resharper_arrange_trailing_comma_in_multiline_lists_highlighting = warning -resharper_arrange_trailing_comma_in_singleline_lists_highlighting = warning -resharper_arrange_type_member_modifiers_highlighting = hint -resharper_arrange_type_modifiers_highlighting = hint -resharper_arrange_var_keywords_in_deconstructing_declaration_highlighting = warning -resharper_async_void_method_highlighting = warning -resharper_auto_property_can_be_made_get_only_global_highlighting = warning -resharper_auto_property_can_be_made_get_only_local_highlighting = warning -resharper_bad_attribute_brackets_spaces_highlighting = warning -resharper_bad_braces_spaces_highlighting = warning -resharper_bad_colon_spaces_highlighting = warning -resharper_bad_comma_spaces_highlighting = warning -resharper_bad_control_braces_indent_highlighting = warning -resharper_bad_control_braces_line_breaks_highlighting = warning -resharper_bad_declaration_braces_indent_highlighting = warning -resharper_bad_declaration_braces_line_breaks_highlighting = warning -resharper_bad_empty_braces_line_breaks_highlighting = warning -resharper_bad_expression_braces_indent_highlighting = warning -resharper_bad_expression_braces_line_breaks_highlighting = warning -resharper_bad_generic_brackets_spaces_highlighting = warning -resharper_bad_indent_highlighting = warning -resharper_bad_linq_line_breaks_highlighting = warning -resharper_bad_member_access_spaces_highlighting = warning -resharper_bad_namespace_braces_indent_highlighting = warning -resharper_bad_parens_line_breaks_highlighting = warning -resharper_bad_parens_spaces_highlighting = warning -resharper_bad_preprocessor_indent_highlighting = warning -resharper_bad_semicolon_spaces_highlighting = warning -resharper_bad_spaces_after_keyword_highlighting = warning -resharper_bad_square_brackets_spaces_highlighting = warning -resharper_bad_switch_braces_indent_highlighting = warning -resharper_bad_symbol_spaces_highlighting = warning -resharper_built_in_type_reference_style_for_member_access_highlighting = hint -resharper_built_in_type_reference_style_highlighting = hint -resharper_check_for_reference_equality_instead_1_highlighting = warning -resharper_check_for_reference_equality_instead_2_highlighting = warning -resharper_check_for_reference_equality_instead_3_highlighting = warning -resharper_check_for_reference_equality_instead_4_highlighting = warning -resharper_class_can_be_sealed_global_highlighting = warning -resharper_class_can_be_sealed_local_highlighting = warning -resharper_class_never_instantiated_global_highlighting = warning -resharper_class_never_instantiated_local_highlighting = warning -resharper_class_with_virtual_members_never_inherited_global_highlighting = warning -resharper_class_with_virtual_members_never_inherited_local_highlighting = warning -resharper_comment_typo_highlighting = none -resharper_compare_non_constrained_generic_with_null_highlighting = warning -resharper_convert_closure_to_method_group_highlighting = warning -resharper_convert_conditional_ternary_expression_to_switch_expression_highlighting = warning -resharper_convert_if_do_to_while_highlighting = warning -resharper_convert_if_statement_to_conditional_ternary_expression_highlighting = warning -resharper_convert_if_statement_to_null_coalescing_assignment_highlighting = warning -resharper_convert_if_statement_to_null_coalescing_expression_highlighting = warning -resharper_convert_if_statement_to_return_statement_highlighting = warning -resharper_convert_if_statement_to_switch_statement_highlighting = warning -resharper_convert_if_to_or_expression_highlighting = warning -resharper_convert_nullable_to_short_form_highlighting = warning -resharper_convert_switch_statement_to_switch_expression_highlighting = warning -resharper_convert_to_auto_property_highlighting = warning -resharper_convert_to_auto_property_when_possible_highlighting = warning -resharper_convert_to_auto_property_with_private_setter_highlighting = warning -resharper_convert_to_compound_assignment_highlighting = warning -resharper_convert_to_constant_global_highlighting = warning -resharper_convert_to_constant_local_highlighting = warning -resharper_convert_to_lambda_expression_highlighting = warning -resharper_convert_to_local_function_highlighting = warning -resharper_convert_to_null_coalescing_compound_assignment_highlighting = warning -resharper_convert_to_primary_constructor_highlighting = warning -resharper_convert_to_static_class_highlighting = warning -resharper_convert_to_using_declaration_highlighting = warning -resharper_cpp_enforce_cv_qualifiers_order_highlighting = hint -resharper_cpp_enforce_cv_qualifiers_placement_highlighting = hint -resharper_cpp_enforce_do_statement_braces_highlighting = hint -resharper_cpp_enforce_for_statement_braces_highlighting = hint -resharper_cpp_enforce_function_declaration_style_highlighting = hint -resharper_cpp_enforce_if_statement_braces_highlighting = hint -resharper_cpp_enforce_type_alias_code_style_highlighting = hint -resharper_cpp_enforce_while_statement_braces_highlighting = hint -resharper_cpp_remove_redundant_braces_highlighting = hint -resharper_double_negation_in_pattern_highlighting = warning -resharper_double_negation_operator_highlighting = warning -resharper_event_never_invoked_global_highlighting = warning -resharper_event_never_subscribed_to_global_highlighting = warning -resharper_event_never_subscribed_to_local_highlighting = warning -resharper_field_can_be_made_read_only_global_highlighting = warning -resharper_field_can_be_made_read_only_local_highlighting = warning -resharper_foreach_can_be_converted_to_query_using_another_get_enumerator_highlighting = warning -resharper_foreach_can_be_partly_converted_to_query_using_another_get_enumerator_highlighting = none -resharper_for_can_be_converted_to_foreach_highlighting = warning -resharper_heap_view_boxing_allocation_highlighting = none -resharper_heap_view_closure_allocation_highlighting = none -resharper_heap_view_delegate_allocation_highlighting = none -resharper_heap_view_object_allocation_evident_highlighting = none -resharper_heap_view_object_allocation_highlighting = none -resharper_identifier_typo_highlighting = none -resharper_incorrect_blank_lines_near_braces_highlighting = warning -resharper_inheritdoc_consider_usage_highlighting = warning -resharper_inline_out_variable_declaration_highlighting = warning -resharper_inline_temporary_variable_highlighting = warning -resharper_introduce_optional_parameters_global_highlighting = warning -resharper_introduce_optional_parameters_local_highlighting = warning -resharper_invert_condition_1_highlighting = warning -resharper_invert_if_highlighting = warning -resharper_invocation_is_skipped_highlighting = warning -resharper_invoke_as_extension_method_highlighting = warning -resharper_join_declaration_and_initializer_highlighting = warning -resharper_join_null_check_with_usage_highlighting = warning -resharper_lambda_expression_must_be_static_highlighting = warning -resharper_local_function_can_be_made_static_highlighting = warning -resharper_loop_can_be_converted_to_query_highlighting = warning -resharper_loop_can_be_partly_converted_to_query_highlighting = warning -resharper_member_can_be_file_local_highlighting = warning -resharper_member_can_be_internal_highlighting = warning -resharper_member_can_be_made_static_global_highlighting = warning -resharper_member_can_be_made_static_local_highlighting = warning -resharper_member_can_be_private_global_highlighting = warning -resharper_member_can_be_private_local_highlighting = warning -resharper_member_can_be_protected_global_highlighting = warning -resharper_member_can_be_protected_local_highlighting = warning -resharper_merge_and_pattern_highlighting = warning -resharper_merge_cast_with_type_check_highlighting = warning -resharper_merge_conditional_expression_highlighting = warning -resharper_merge_into_logical_pattern_highlighting = warning -resharper_merge_into_negated_pattern_highlighting = warning -resharper_merge_into_pattern_highlighting = warning -resharper_merge_nested_property_patterns_highlighting = warning -resharper_merge_sequential_checks_highlighting = warning -resharper_method_has_async_overload_highlighting = warning -resharper_method_has_async_overload_with_cancellation_highlighting = warning -resharper_method_supports_cancellation_highlighting = warning -resharper_missing_blank_lines_highlighting = warning -resharper_missing_linebreak_highlighting = warning -resharper_missing_space_highlighting = warning -resharper_more_specific_foreach_variable_type_available_highlighting = warning -resharper_move_to_existing_positional_deconstruction_pattern_highlighting = warning -resharper_move_variable_declaration_inside_loop_condition_highlighting = warning -resharper_multiple_spaces_highlighting = warning -resharper_multiple_statements_on_one_line_highlighting = warning -resharper_multiple_type_members_on_one_line_highlighting = warning -resharper_negation_of_relational_pattern_highlighting = warning -resharper_negative_equality_expression_highlighting = warning -resharper_nested_string_interpolation_highlighting = warning -resharper_not_accessed_field_global_highlighting = warning -resharper_nullable_warning_suppression_is_used_highlighting = warning -resharper_outdent_is_off_prev_level_highlighting = warning -resharper_out_parameter_value_is_always_discarded_global_highlighting = warning -resharper_parameter_only_used_for_precondition_check_global_highlighting = warning -resharper_parameter_type_can_be_enumerable_global_highlighting = warning -resharper_parameter_type_can_be_enumerable_local_highlighting = warning -resharper_pass_string_interpolation_highlighting = warning -resharper_possible_unintended_queryable_as_enumerable_highlighting = warning -resharper_property_can_be_made_init_only_global_highlighting = warning -resharper_property_can_be_made_init_only_local_highlighting = warning -resharper_public_constructor_in_abstract_class_highlighting = warning -resharper_raw_string_can_be_simplified_highlighting = warning -resharper_redundant_accessor_body_highlighting = warning -resharper_redundant_always_match_subpattern_highlighting = warning -resharper_redundant_array_creation_expression_highlighting = warning -resharper_redundant_attribute_parentheses_highlighting = warning -resharper_redundant_attribute_usage_property_highlighting = warning -resharper_redundant_base_qualifier_highlighting = warning -resharper_redundant_blank_lines_highlighting = warning -resharper_redundant_collection_initializer_element_braces_highlighting = warning -resharper_redundant_configure_await_highlighting = warning -resharper_redundant_declaration_semicolon_highlighting = warning -resharper_redundant_discard_designation_highlighting = warning -resharper_redundant_empty_object_creation_argument_list_highlighting = warning -resharper_redundant_enum_case_label_for_default_section_highlighting = warning -resharper_redundant_explicit_params_array_creation_highlighting = warning -resharper_redundant_fixed_pointer_declaration_highlighting = warning -resharper_redundant_if_else_block_highlighting = warning -resharper_redundant_immediate_delegate_invocation_highlighting = warning -resharper_redundant_is_before_relational_pattern_highlighting = warning -resharper_redundant_lambda_signature_parentheses_highlighting = warning -resharper_redundant_overload_global_highlighting = warning -resharper_redundant_overload_local_highlighting = warning -resharper_redundant_pattern_parentheses_highlighting = warning -resharper_redundant_property_pattern_clause_highlighting = warning -resharper_redundant_query_order_by_ascending_keyword_highlighting = warning -resharper_redundant_range_bound_highlighting = warning -resharper_redundant_readonly_modifier_highlighting = warning -resharper_redundant_space_highlighting = warning -resharper_redundant_string_interpolation_highlighting = warning -resharper_redundant_to_string_call_for_value_type_highlighting = warning -resharper_redundant_verbatim_prefix_highlighting = warning -resharper_redundant_verbatim_string_prefix_highlighting = warning -resharper_redundant_with_expression_highlighting = warning -resharper_remove_constructor_invocation_highlighting = warning -resharper_remove_redundant_braces_highlighting = warning -resharper_remove_redundant_or_statement_false_highlighting = warning -resharper_remove_redundant_or_statement_true_highlighting = warning -resharper_remove_to_list_1_highlighting = warning -resharper_remove_to_list_2_highlighting = warning -resharper_replace_auto_property_with_computed_property_highlighting = warning -resharper_replace_conditional_expression_with_null_coalescing_highlighting = warning -resharper_replace_object_pattern_with_var_pattern_highlighting = warning -resharper_replace_slice_with_range_indexer_highlighting = warning -resharper_replace_substring_with_range_indexer_highlighting = warning -resharper_replace_with_field_keyword_highlighting = warning -resharper_replace_with_first_or_default_1_highlighting = warning -resharper_replace_with_first_or_default_2_highlighting = warning -resharper_replace_with_first_or_default_3_highlighting = warning -resharper_replace_with_first_or_default_4_highlighting = warning -resharper_replace_with_last_or_default_1_highlighting = warning -resharper_replace_with_last_or_default_2_highlighting = warning -resharper_replace_with_last_or_default_3_highlighting = warning -resharper_replace_with_last_or_default_4_highlighting = warning -resharper_replace_with_of_type_1_highlighting = warning -resharper_replace_with_of_type_2_highlighting = warning -resharper_replace_with_of_type_3_highlighting = warning -resharper_replace_with_of_type_any_1_highlighting = warning -resharper_replace_with_of_type_any_2_highlighting = warning -resharper_replace_with_of_type_count_1_highlighting = warning -resharper_replace_with_of_type_count_2_highlighting = warning -resharper_replace_with_of_type_first_1_highlighting = warning -resharper_replace_with_of_type_first_2_highlighting = warning -resharper_replace_with_of_type_first_or_default_1_highlighting = warning -resharper_replace_with_of_type_first_or_default_2_highlighting = warning -resharper_replace_with_of_type_last_1_highlighting = warning -resharper_replace_with_of_type_last_2_highlighting = warning -resharper_replace_with_of_type_last_or_default_1_highlighting = warning -resharper_replace_with_of_type_last_or_default_2_highlighting = warning -resharper_replace_with_of_type_long_count_highlighting = warning -resharper_replace_with_of_type_single_1_highlighting = warning -resharper_replace_with_of_type_single_2_highlighting = warning -resharper_replace_with_of_type_single_or_default_1_highlighting = warning -resharper_replace_with_of_type_single_or_default_2_highlighting = warning -resharper_replace_with_of_type_where_highlighting = warning -resharper_replace_with_simple_assignment_false_highlighting = warning -resharper_replace_with_simple_assignment_true_highlighting = warning -resharper_replace_with_single_assignment_false_highlighting = warning -resharper_replace_with_single_assignment_true_highlighting = warning -resharper_replace_with_single_call_to_any_highlighting = warning -resharper_replace_with_single_call_to_count_highlighting = warning -resharper_replace_with_single_call_to_first_highlighting = warning -resharper_replace_with_single_call_to_first_or_default_highlighting = warning -resharper_replace_with_single_call_to_last_highlighting = warning -resharper_replace_with_single_call_to_last_or_default_highlighting = warning -resharper_replace_with_single_call_to_single_highlighting = warning -resharper_replace_with_single_call_to_single_or_default_highlighting = warning -resharper_replace_with_single_or_default_1_highlighting = warning -resharper_replace_with_single_or_default_2_highlighting = warning -resharper_replace_with_single_or_default_3_highlighting = warning -resharper_replace_with_single_or_default_4_highlighting = warning -resharper_replace_with_string_is_null_or_empty_highlighting = warning -resharper_return_type_can_be_enumerable_global_highlighting = warning -resharper_return_type_can_be_enumerable_local_highlighting = warning -resharper_safe_cast_is_used_as_type_check_highlighting = warning -resharper_separate_control_transfer_statement_highlighting = warning -resharper_similar_anonymous_type_nearby_highlighting = warning -resharper_simplify_conditional_ternary_expression_highlighting = warning -resharper_simplify_linq_expression_use_all_highlighting = warning -resharper_simplify_linq_expression_use_any_highlighting = warning -resharper_simplify_linq_expression_use_min_by_and_max_by_highlighting = warning -resharper_simplify_string_interpolation_highlighting = warning -resharper_specify_string_comparison_highlighting = warning -resharper_string_ends_with_is_culture_specific_highlighting = warning -resharper_string_literal_as_interpolation_argument_highlighting = warning -resharper_string_literal_typo_highlighting = warning -resharper_string_starts_with_is_culture_specific_highlighting = warning -resharper_struct_can_be_made_read_only_highlighting = warning -resharper_struct_member_can_be_made_read_only_highlighting = warning -resharper_suggest_base_type_for_parameter_highlighting = none -resharper_suggest_base_type_for_parameter_in_constructor_highlighting = warning -resharper_suggest_var_or_type_built_in_types_highlighting = hint -resharper_suggest_var_or_type_deconstruction_declarations_highlighting = warning -resharper_suggest_var_or_type_elsewhere_highlighting = hint -resharper_suggest_var_or_type_simple_types_highlighting = hint -resharper_swap_via_deconstruction_highlighting = warning +resharper_annotate_can_be_null_parameter_highlighting = warning +resharper_annotate_can_be_null_type_member_highlighting = warning +resharper_annotate_not_null_parameter_highlighting = warning +resharper_annotate_not_null_type_member_highlighting = warning +resharper_arguments_style_anonymous_function_highlighting = warning +resharper_arguments_style_literal_highlighting = warning +resharper_arguments_style_named_expression_highlighting = warning +resharper_arguments_style_other_highlighting = warning +resharper_arguments_style_string_literal_highlighting = warning +resharper_arrange_accessor_owner_body_highlighting = warning +resharper_arrange_constructor_or_destructor_body_highlighting = warning +resharper_arrange_local_function_body_highlighting = warning +resharper_arrange_method_or_operator_body_highlighting = warning +resharper_arrange_redundant_parentheses_highlighting = hint +resharper_arrange_static_member_qualifier_highlighting = warning +resharper_arrange_this_qualifier_highlighting = hint +resharper_arrange_trailing_comma_in_multiline_lists_highlighting = warning +resharper_arrange_trailing_comma_in_singleline_lists_highlighting = warning +resharper_arrange_type_member_modifiers_highlighting = hint +resharper_arrange_type_modifiers_highlighting = hint +resharper_arrange_var_keywords_in_deconstructing_declaration_highlighting = warning +resharper_async_void_method_highlighting = warning +resharper_auto_property_can_be_made_get_only_global_highlighting = warning +resharper_auto_property_can_be_made_get_only_local_highlighting = warning +resharper_bad_attribute_brackets_spaces_highlighting = warning +resharper_bad_braces_spaces_highlighting = warning +resharper_bad_colon_spaces_highlighting = warning +resharper_bad_comma_spaces_highlighting = warning +resharper_bad_control_braces_indent_highlighting = warning +resharper_bad_control_braces_line_breaks_highlighting = warning +resharper_bad_declaration_braces_indent_highlighting = warning +resharper_bad_declaration_braces_line_breaks_highlighting = warning +resharper_bad_empty_braces_line_breaks_highlighting = warning +resharper_bad_expression_braces_indent_highlighting = warning +resharper_bad_expression_braces_line_breaks_highlighting = warning +resharper_bad_generic_brackets_spaces_highlighting = warning +resharper_bad_indent_highlighting = warning +resharper_bad_linq_line_breaks_highlighting = warning +resharper_bad_member_access_spaces_highlighting = warning +resharper_bad_namespace_braces_indent_highlighting = warning +resharper_bad_parens_line_breaks_highlighting = warning +resharper_bad_parens_spaces_highlighting = warning +resharper_bad_preprocessor_indent_highlighting = warning +resharper_bad_semicolon_spaces_highlighting = warning +resharper_bad_spaces_after_keyword_highlighting = warning +resharper_bad_square_brackets_spaces_highlighting = warning +resharper_bad_switch_braces_indent_highlighting = warning +resharper_bad_symbol_spaces_highlighting = warning +resharper_built_in_type_reference_style_for_member_access_highlighting = hint +resharper_built_in_type_reference_style_highlighting = hint +resharper_check_for_reference_equality_instead_1_highlighting = warning +resharper_check_for_reference_equality_instead_2_highlighting = warning +resharper_check_for_reference_equality_instead_3_highlighting = warning +resharper_check_for_reference_equality_instead_4_highlighting = warning +resharper_class_can_be_sealed_global_highlighting = warning +resharper_class_can_be_sealed_local_highlighting = warning +resharper_class_never_instantiated_global_highlighting = warning +resharper_class_never_instantiated_local_highlighting = warning +resharper_class_with_virtual_members_never_inherited_global_highlighting = warning +resharper_class_with_virtual_members_never_inherited_local_highlighting = warning +resharper_comment_typo_highlighting = none +resharper_compare_non_constrained_generic_with_null_highlighting = warning +resharper_convert_closure_to_method_group_highlighting = warning +resharper_convert_conditional_ternary_expression_to_switch_expression_highlighting = warning +resharper_convert_if_do_to_while_highlighting = warning +resharper_convert_if_statement_to_conditional_ternary_expression_highlighting = warning +resharper_convert_if_statement_to_null_coalescing_assignment_highlighting = warning +resharper_convert_if_statement_to_null_coalescing_expression_highlighting = warning +resharper_convert_if_statement_to_return_statement_highlighting = warning +resharper_convert_if_statement_to_switch_statement_highlighting = warning +resharper_convert_if_to_or_expression_highlighting = warning +resharper_convert_nullable_to_short_form_highlighting = warning +resharper_convert_switch_statement_to_switch_expression_highlighting = warning +resharper_convert_to_auto_property_highlighting = warning +resharper_convert_to_auto_property_when_possible_highlighting = warning +resharper_convert_to_auto_property_with_private_setter_highlighting = warning +resharper_convert_to_compound_assignment_highlighting = warning +resharper_convert_to_constant_global_highlighting = warning +resharper_convert_to_constant_local_highlighting = warning +resharper_convert_to_lambda_expression_highlighting = warning +resharper_convert_to_local_function_highlighting = warning +resharper_convert_to_null_coalescing_compound_assignment_highlighting = warning +resharper_convert_to_primary_constructor_highlighting = warning +resharper_convert_to_static_class_highlighting = warning +resharper_convert_to_using_declaration_highlighting = warning +resharper_cpp_enforce_cv_qualifiers_order_highlighting = hint +resharper_cpp_enforce_cv_qualifiers_placement_highlighting = hint +resharper_cpp_enforce_do_statement_braces_highlighting = hint +resharper_cpp_enforce_for_statement_braces_highlighting = hint +resharper_cpp_enforce_function_declaration_style_highlighting = hint +resharper_cpp_enforce_if_statement_braces_highlighting = hint +resharper_cpp_enforce_type_alias_code_style_highlighting = hint +resharper_cpp_enforce_while_statement_braces_highlighting = hint +resharper_cpp_remove_redundant_braces_highlighting = hint +resharper_double_negation_in_pattern_highlighting = warning +resharper_double_negation_operator_highlighting = warning +resharper_event_never_invoked_global_highlighting = warning +resharper_event_never_subscribed_to_global_highlighting = warning +resharper_event_never_subscribed_to_local_highlighting = warning +resharper_field_can_be_made_read_only_global_highlighting = warning +resharper_field_can_be_made_read_only_local_highlighting = warning +resharper_foreach_can_be_converted_to_query_using_another_get_enumerator_highlighting = warning +resharper_foreach_can_be_partly_converted_to_query_using_another_get_enumerator_highlighting = none +resharper_for_can_be_converted_to_foreach_highlighting = warning +resharper_heap_view_boxing_allocation_highlighting = none +resharper_heap_view_closure_allocation_highlighting = none +resharper_heap_view_delegate_allocation_highlighting = none +resharper_heap_view_object_allocation_evident_highlighting = none +resharper_heap_view_object_allocation_highlighting = none +resharper_identifier_typo_highlighting = none +resharper_incorrect_blank_lines_near_braces_highlighting = warning +resharper_inheritdoc_consider_usage_highlighting = warning +resharper_inline_out_variable_declaration_highlighting = warning +resharper_inline_temporary_variable_highlighting = warning +resharper_introduce_optional_parameters_global_highlighting = warning +resharper_introduce_optional_parameters_local_highlighting = warning +resharper_invert_condition_1_highlighting = warning +resharper_invert_if_highlighting = warning +resharper_invocation_is_skipped_highlighting = warning +resharper_invoke_as_extension_method_highlighting = warning +resharper_join_declaration_and_initializer_highlighting = warning +resharper_join_null_check_with_usage_highlighting = warning +resharper_lambda_expression_must_be_static_highlighting = warning +resharper_local_function_can_be_made_static_highlighting = warning +resharper_loop_can_be_converted_to_query_highlighting = warning +resharper_loop_can_be_partly_converted_to_query_highlighting = warning +resharper_member_can_be_file_local_highlighting = warning +resharper_member_can_be_internal_highlighting = warning +resharper_member_can_be_made_static_global_highlighting = warning +resharper_member_can_be_made_static_local_highlighting = warning +resharper_member_can_be_private_global_highlighting = warning +resharper_member_can_be_private_local_highlighting = warning +resharper_member_can_be_protected_global_highlighting = warning +resharper_member_can_be_protected_local_highlighting = warning +resharper_merge_and_pattern_highlighting = warning +resharper_merge_cast_with_type_check_highlighting = warning +resharper_merge_conditional_expression_highlighting = warning +resharper_merge_into_logical_pattern_highlighting = warning +resharper_merge_into_negated_pattern_highlighting = warning +resharper_merge_into_pattern_highlighting = warning +resharper_merge_nested_property_patterns_highlighting = warning +resharper_merge_sequential_checks_highlighting = warning +resharper_method_has_async_overload_highlighting = warning +resharper_method_has_async_overload_with_cancellation_highlighting = warning +resharper_method_supports_cancellation_highlighting = warning +resharper_missing_blank_lines_highlighting = warning +resharper_missing_linebreak_highlighting = warning +resharper_missing_space_highlighting = warning +resharper_more_specific_foreach_variable_type_available_highlighting = warning +resharper_move_to_existing_positional_deconstruction_pattern_highlighting = warning +resharper_move_variable_declaration_inside_loop_condition_highlighting = warning +resharper_multiple_spaces_highlighting = warning +resharper_multiple_statements_on_one_line_highlighting = warning +resharper_multiple_type_members_on_one_line_highlighting = warning +resharper_negation_of_relational_pattern_highlighting = warning +resharper_negative_equality_expression_highlighting = warning +resharper_nested_string_interpolation_highlighting = warning +resharper_not_accessed_field_global_highlighting = warning +resharper_nullable_warning_suppression_is_used_highlighting = warning +resharper_outdent_is_off_prev_level_highlighting = warning +resharper_out_parameter_value_is_always_discarded_global_highlighting = warning +resharper_parameter_only_used_for_precondition_check_global_highlighting = warning +resharper_parameter_type_can_be_enumerable_global_highlighting = warning +resharper_parameter_type_can_be_enumerable_local_highlighting = warning +resharper_pass_string_interpolation_highlighting = warning +resharper_possible_unintended_queryable_as_enumerable_highlighting = warning +resharper_property_can_be_made_init_only_global_highlighting = warning +resharper_property_can_be_made_init_only_local_highlighting = warning +resharper_public_constructor_in_abstract_class_highlighting = warning +resharper_raw_string_can_be_simplified_highlighting = warning +resharper_redundant_accessor_body_highlighting = warning +resharper_redundant_always_match_subpattern_highlighting = warning +resharper_redundant_array_creation_expression_highlighting = warning +resharper_redundant_attribute_parentheses_highlighting = warning +resharper_redundant_attribute_usage_property_highlighting = warning +resharper_redundant_base_qualifier_highlighting = warning +resharper_redundant_blank_lines_highlighting = warning +resharper_redundant_collection_initializer_element_braces_highlighting = warning +resharper_redundant_configure_await_highlighting = warning +resharper_redundant_declaration_semicolon_highlighting = warning +resharper_redundant_discard_designation_highlighting = warning +resharper_redundant_empty_object_creation_argument_list_highlighting = warning +resharper_redundant_enum_case_label_for_default_section_highlighting = warning +resharper_redundant_explicit_params_array_creation_highlighting = warning +resharper_redundant_fixed_pointer_declaration_highlighting = warning +resharper_redundant_if_else_block_highlighting = warning +resharper_redundant_immediate_delegate_invocation_highlighting = warning +resharper_redundant_is_before_relational_pattern_highlighting = warning +resharper_redundant_lambda_signature_parentheses_highlighting = warning +resharper_redundant_overload_global_highlighting = warning +resharper_redundant_overload_local_highlighting = warning +resharper_redundant_pattern_parentheses_highlighting = warning +resharper_redundant_property_pattern_clause_highlighting = warning +resharper_redundant_query_order_by_ascending_keyword_highlighting = warning +resharper_redundant_range_bound_highlighting = warning +resharper_redundant_readonly_modifier_highlighting = warning +resharper_redundant_space_highlighting = warning +resharper_redundant_string_interpolation_highlighting = warning +resharper_redundant_to_string_call_for_value_type_highlighting = warning +resharper_redundant_verbatim_prefix_highlighting = warning +resharper_redundant_verbatim_string_prefix_highlighting = warning +resharper_redundant_with_expression_highlighting = warning +resharper_remove_constructor_invocation_highlighting = warning +resharper_remove_redundant_braces_highlighting = warning +resharper_remove_redundant_or_statement_false_highlighting = warning +resharper_remove_redundant_or_statement_true_highlighting = warning +resharper_remove_to_list_1_highlighting = warning +resharper_remove_to_list_2_highlighting = warning +resharper_replace_auto_property_with_computed_property_highlighting = warning +resharper_replace_conditional_expression_with_null_coalescing_highlighting = warning +resharper_replace_object_pattern_with_var_pattern_highlighting = warning +resharper_replace_slice_with_range_indexer_highlighting = warning +resharper_replace_substring_with_range_indexer_highlighting = warning +resharper_replace_with_field_keyword_highlighting = warning +resharper_replace_with_first_or_default_1_highlighting = warning +resharper_replace_with_first_or_default_2_highlighting = warning +resharper_replace_with_first_or_default_3_highlighting = warning +resharper_replace_with_first_or_default_4_highlighting = warning +resharper_replace_with_last_or_default_1_highlighting = warning +resharper_replace_with_last_or_default_2_highlighting = warning +resharper_replace_with_last_or_default_3_highlighting = warning +resharper_replace_with_last_or_default_4_highlighting = warning +resharper_replace_with_of_type_1_highlighting = warning +resharper_replace_with_of_type_2_highlighting = warning +resharper_replace_with_of_type_3_highlighting = warning +resharper_replace_with_of_type_any_1_highlighting = warning +resharper_replace_with_of_type_any_2_highlighting = warning +resharper_replace_with_of_type_count_1_highlighting = warning +resharper_replace_with_of_type_count_2_highlighting = warning +resharper_replace_with_of_type_first_1_highlighting = warning +resharper_replace_with_of_type_first_2_highlighting = warning +resharper_replace_with_of_type_first_or_default_1_highlighting = warning +resharper_replace_with_of_type_first_or_default_2_highlighting = warning +resharper_replace_with_of_type_last_1_highlighting = warning +resharper_replace_with_of_type_last_2_highlighting = warning +resharper_replace_with_of_type_last_or_default_1_highlighting = warning +resharper_replace_with_of_type_last_or_default_2_highlighting = warning +resharper_replace_with_of_type_long_count_highlighting = warning +resharper_replace_with_of_type_single_1_highlighting = warning +resharper_replace_with_of_type_single_2_highlighting = warning +resharper_replace_with_of_type_single_or_default_1_highlighting = warning +resharper_replace_with_of_type_single_or_default_2_highlighting = warning +resharper_replace_with_of_type_where_highlighting = warning +resharper_replace_with_simple_assignment_false_highlighting = warning +resharper_replace_with_simple_assignment_true_highlighting = warning +resharper_replace_with_single_assignment_false_highlighting = warning +resharper_replace_with_single_assignment_true_highlighting = warning +resharper_replace_with_single_call_to_any_highlighting = warning +resharper_replace_with_single_call_to_count_highlighting = warning +resharper_replace_with_single_call_to_first_highlighting = warning +resharper_replace_with_single_call_to_first_or_default_highlighting = warning +resharper_replace_with_single_call_to_last_highlighting = warning +resharper_replace_with_single_call_to_last_or_default_highlighting = warning +resharper_replace_with_single_call_to_single_highlighting = warning +resharper_replace_with_single_call_to_single_or_default_highlighting = warning +resharper_replace_with_single_or_default_1_highlighting = warning +resharper_replace_with_single_or_default_2_highlighting = warning +resharper_replace_with_single_or_default_3_highlighting = warning +resharper_replace_with_single_or_default_4_highlighting = warning +resharper_replace_with_string_is_null_or_empty_highlighting = warning +resharper_return_type_can_be_enumerable_global_highlighting = warning +resharper_return_type_can_be_enumerable_local_highlighting = warning +resharper_safe_cast_is_used_as_type_check_highlighting = warning +resharper_separate_control_transfer_statement_highlighting = warning +resharper_similar_anonymous_type_nearby_highlighting = warning +resharper_simplify_conditional_ternary_expression_highlighting = warning +resharper_simplify_linq_expression_use_all_highlighting = warning +resharper_simplify_linq_expression_use_any_highlighting = warning +resharper_simplify_linq_expression_use_min_by_and_max_by_highlighting = warning +resharper_simplify_string_interpolation_highlighting = warning +resharper_specify_string_comparison_highlighting = warning +resharper_string_ends_with_is_culture_specific_highlighting = warning +resharper_string_literal_as_interpolation_argument_highlighting = warning +resharper_string_literal_typo_highlighting = warning +resharper_string_starts_with_is_culture_specific_highlighting = warning +resharper_struct_can_be_made_read_only_highlighting = warning +resharper_struct_member_can_be_made_read_only_highlighting = warning +resharper_suggest_base_type_for_parameter_highlighting = none +resharper_suggest_base_type_for_parameter_in_constructor_highlighting = warning +resharper_suggest_var_or_type_built_in_types_highlighting = hint +resharper_suggest_var_or_type_deconstruction_declarations_highlighting = warning +resharper_suggest_var_or_type_elsewhere_highlighting = hint +resharper_suggest_var_or_type_simple_types_highlighting = hint +resharper_swap_via_deconstruction_highlighting = warning resharper_switch_expression_handles_some_known_enum_values_with_exception_in_default_highlighting = warning -resharper_switch_statement_handles_some_known_enum_values_with_default_highlighting = none -resharper_switch_statement_missing_some_enum_cases_no_default_highlighting = none -resharper_tabs_and_spaces_mismatch_highlighting = warning -resharper_tabs_are_disallowed_highlighting = warning -resharper_tabs_outside_indent_highlighting = warning -resharper_tail_recursive_call_highlighting = warning -resharper_too_wide_local_variable_scope_highlighting = warning -resharper_try_cast_always_succeeds_highlighting = warning -resharper_try_statements_can_be_merged_highlighting = warning -resharper_type_parameter_can_be_variant_highlighting = warning -resharper_unnecessary_whitespace_highlighting = warning -resharper_unused_member_global_highlighting = warning -resharper_unused_member_hierarchy_global_highlighting = warning -resharper_unused_member_in_super_global_highlighting = warning -resharper_unused_method_return_value_global_highlighting = warning -resharper_unused_parameter_global_highlighting = warning -resharper_unused_type_global_highlighting = warning -resharper_use_array_creation_expression_1_highlighting = warning -resharper_use_array_creation_expression_2_highlighting = warning -resharper_use_array_empty_method_highlighting = warning -resharper_use_await_using_highlighting = warning -resharper_use_cancellation_token_for_i_async_enumerable_highlighting = warning -resharper_use_collection_count_property_highlighting = warning -resharper_use_configure_await_false_highlighting = warning -resharper_use_deconstruction_highlighting = warning -resharper_use_empty_types_field_highlighting = warning -resharper_use_event_args_empty_field_highlighting = warning -resharper_use_format_specifier_in_format_string_highlighting = warning -resharper_use_indexed_property_highlighting = warning -resharper_use_index_from_end_expression_highlighting = warning -resharper_use_is_operator_1_highlighting = warning -resharper_use_is_operator_2_highlighting = warning -resharper_use_method_any_0_highlighting = warning -resharper_use_method_any_1_highlighting = warning -resharper_use_method_any_2_highlighting = warning -resharper_use_method_any_3_highlighting = warning -resharper_use_method_any_4_highlighting = warning -resharper_use_method_is_instance_of_type_highlighting = warning -resharper_use_nameof_expression_for_part_of_the_string_highlighting = warning -resharper_use_nameof_expression_highlighting = warning -resharper_use_nameof_for_dependency_property_highlighting = warning -resharper_use_name_of_instead_of_type_of_highlighting = warning -resharper_use_negated_pattern_in_is_expression_highlighting = warning -resharper_use_negated_pattern_matching_highlighting = warning -resharper_use_nullable_annotation_instead_of_attribute_highlighting = warning -resharper_use_nullable_attributes_supported_by_compiler_highlighting = warning -resharper_use_null_propagation_highlighting = warning -resharper_use_object_or_collection_initializer_highlighting = warning -resharper_use_pattern_matching_highlighting = warning -resharper_use_positional_deconstruction_pattern_highlighting = warning -resharper_use_raw_string_highlighting = warning -resharper_use_string_interpolation_highlighting = warning -resharper_use_switch_case_pattern_variable_highlighting = warning -resharper_use_throw_if_null_method_highlighting = warning -resharper_use_unsigned_right_shift_operator_highlighting = warning -resharper_use_verbatim_string_highlighting = warning -resharper_use_with_expression_to_copy_anonymous_object_highlighting = warning -resharper_use_with_expression_to_copy_record_highlighting = warning -resharper_use_with_expression_to_copy_struct_highlighting = warning -resharper_use_with_expression_to_copy_tuple_highlighting = warning -resharper_virtual_member_never_overridden_global_highlighting = warning -resharper_virtual_member_never_overridden_local_highlighting = warning -resharper_web_config_module_not_resolved_highlighting = warning -resharper_web_config_type_not_resolved_highlighting = warning -resharper_web_config_wrong_module_highlighting = warning -resharper_with_expression_instead_of_initializer_highlighting = warning -resharper_wrong_indent_size_highlighting = warning +resharper_switch_statement_handles_some_known_enum_values_with_default_highlighting = none +resharper_switch_statement_missing_some_enum_cases_no_default_highlighting = none +resharper_tabs_and_spaces_mismatch_highlighting = warning +resharper_tabs_are_disallowed_highlighting = warning +resharper_tabs_outside_indent_highlighting = warning +resharper_tail_recursive_call_highlighting = warning +resharper_too_wide_local_variable_scope_highlighting = warning +resharper_try_cast_always_succeeds_highlighting = warning +resharper_try_statements_can_be_merged_highlighting = warning +resharper_type_parameter_can_be_variant_highlighting = warning +resharper_unnecessary_whitespace_highlighting = warning +resharper_unused_member_global_highlighting = warning +resharper_unused_member_hierarchy_global_highlighting = warning +resharper_unused_member_in_super_global_highlighting = warning +resharper_unused_method_return_value_global_highlighting = warning +resharper_unused_parameter_global_highlighting = warning +resharper_unused_type_global_highlighting = warning +resharper_use_array_creation_expression_1_highlighting = warning +resharper_use_array_creation_expression_2_highlighting = warning +resharper_use_array_empty_method_highlighting = warning +resharper_use_await_using_highlighting = warning +resharper_use_cancellation_token_for_i_async_enumerable_highlighting = warning +resharper_use_collection_count_property_highlighting = warning +resharper_use_configure_await_false_highlighting = warning +resharper_use_deconstruction_highlighting = warning +resharper_use_empty_types_field_highlighting = warning +resharper_use_event_args_empty_field_highlighting = warning +resharper_use_format_specifier_in_format_string_highlighting = warning +resharper_use_indexed_property_highlighting = warning +resharper_use_index_from_end_expression_highlighting = warning +resharper_use_is_operator_1_highlighting = warning +resharper_use_is_operator_2_highlighting = warning +resharper_use_method_any_0_highlighting = warning +resharper_use_method_any_1_highlighting = warning +resharper_use_method_any_2_highlighting = warning +resharper_use_method_any_3_highlighting = warning +resharper_use_method_any_4_highlighting = warning +resharper_use_method_is_instance_of_type_highlighting = warning +resharper_use_nameof_expression_for_part_of_the_string_highlighting = warning +resharper_use_nameof_expression_highlighting = warning +resharper_use_nameof_for_dependency_property_highlighting = warning +resharper_use_name_of_instead_of_type_of_highlighting = warning +resharper_use_negated_pattern_in_is_expression_highlighting = warning +resharper_use_negated_pattern_matching_highlighting = warning +resharper_use_nullable_annotation_instead_of_attribute_highlighting = warning +resharper_use_nullable_attributes_supported_by_compiler_highlighting = warning +resharper_use_null_propagation_highlighting = warning +resharper_use_object_or_collection_initializer_highlighting = warning +resharper_use_pattern_matching_highlighting = warning +resharper_use_positional_deconstruction_pattern_highlighting = warning +resharper_use_raw_string_highlighting = warning +resharper_use_string_interpolation_highlighting = warning +resharper_use_switch_case_pattern_variable_highlighting = warning +resharper_use_throw_if_null_method_highlighting = warning +resharper_use_unsigned_right_shift_operator_highlighting = warning +resharper_use_verbatim_string_highlighting = warning +resharper_use_with_expression_to_copy_anonymous_object_highlighting = warning +resharper_use_with_expression_to_copy_record_highlighting = warning +resharper_use_with_expression_to_copy_struct_highlighting = warning +resharper_use_with_expression_to_copy_tuple_highlighting = warning +resharper_virtual_member_never_overridden_global_highlighting = warning +resharper_virtual_member_never_overridden_local_highlighting = warning +resharper_web_config_module_not_resolved_highlighting = warning +resharper_web_config_type_not_resolved_highlighting = warning +resharper_web_config_wrong_module_highlighting = warning +resharper_with_expression_instead_of_initializer_highlighting = warning +resharper_wrong_indent_size_highlighting = warning [*.css] ij_css_align_closing_brace_with_properties = false -ij_css_blank_lines_around_nested_selector = 1 -ij_css_blank_lines_between_blocks = 1 -ij_css_block_comment_add_space = false -ij_css_brace_placement = end_of_line -ij_css_enforce_quotes_on_format = false -ij_css_hex_color_long_format = false -ij_css_hex_color_lower_case = false -ij_css_hex_color_short_format = false -ij_css_hex_color_upper_case = false -ij_css_keep_blank_lines_in_code = 2 -ij_css_keep_indents_on_empty_lines = false -ij_css_keep_single_line_blocks = false -ij_css_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow -ij_css_space_after_colon = true -ij_css_space_before_opening_brace = true -ij_css_use_double_quotes = true -ij_css_value_alignment = do_not_align +ij_css_blank_lines_around_nested_selector = 1 +ij_css_blank_lines_between_blocks = 1 +ij_css_block_comment_add_space = false +ij_css_brace_placement = end_of_line +ij_css_enforce_quotes_on_format = false +ij_css_hex_color_long_format = false +ij_css_hex_color_lower_case = false +ij_css_hex_color_short_format = false +ij_css_hex_color_upper_case = false +ij_css_keep_blank_lines_in_code = 2 +ij_css_keep_indents_on_empty_lines = false +ij_css_keep_single_line_blocks = false +ij_css_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow +ij_css_space_after_colon = true +ij_css_space_before_opening_brace = true +ij_css_use_double_quotes = true +ij_css_value_alignment = do_not_align [*.csv] -max_line_length = 2147483647 +max_line_length = 2147483647 ij_csv_wrap_long_lines = false -indent_style = tab -tab_width = 1 +indent_style = tab +tab_width = 1 [*.dart] max_line_length = 80 [*.less] -indent_size = 2 +indent_size = 2 ij_less_align_closing_brace_with_properties = false -ij_less_blank_lines_around_nested_selector = 1 -ij_less_blank_lines_between_blocks = 1 -ij_less_block_comment_add_space = false -ij_less_brace_placement = 0 -ij_less_enforce_quotes_on_format = false -ij_less_hex_color_long_format = false -ij_less_hex_color_lower_case = false -ij_less_hex_color_short_format = false -ij_less_hex_color_upper_case = false -ij_less_keep_blank_lines_in_code = 2 -ij_less_keep_indents_on_empty_lines = false -ij_less_keep_single_line_blocks = false -ij_less_line_comment_add_space = false -ij_less_line_comment_at_first_column = false -ij_less_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow -ij_less_space_after_colon = true -ij_less_space_before_opening_brace = true -ij_less_use_double_quotes = true -ij_less_value_alignment = 0 +ij_less_blank_lines_around_nested_selector = 1 +ij_less_blank_lines_between_blocks = 1 +ij_less_block_comment_add_space = false +ij_less_brace_placement = 0 +ij_less_enforce_quotes_on_format = false +ij_less_hex_color_long_format = false +ij_less_hex_color_lower_case = false +ij_less_hex_color_short_format = false +ij_less_hex_color_upper_case = false +ij_less_keep_blank_lines_in_code = 2 +ij_less_keep_indents_on_empty_lines = false +ij_less_keep_single_line_blocks = false +ij_less_line_comment_add_space = false +ij_less_line_comment_at_first_column = false +ij_less_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow +ij_less_space_after_colon = true +ij_less_space_before_opening_brace = true +ij_less_use_double_quotes = true +ij_less_value_alignment = 0 [*.pp] -indent_size = 2 -tab_width = 2 -ij_continuation_indent_size = 2 +indent_size = 2 +tab_width = 2 +ij_continuation_indent_size = 2 ij_puppet_keep_indents_on_empty_lines = false [*.properties] -ij_properties_align_group_field_declarations = true -ij_properties_keep_blank_lines = false -ij_properties_key_value_delimiter = equals +ij_properties_align_group_field_declarations = true +ij_properties_keep_blank_lines = false +ij_properties_key_value_delimiter = equals ij_properties_spaces_around_key_value_delimiter = true [*.sass] -indent_size = 2 +indent_size = 2 ij_sass_align_closing_brace_with_properties = false -ij_sass_blank_lines_around_nested_selector = 1 -ij_sass_blank_lines_between_blocks = 1 -ij_sass_brace_placement = 0 -ij_sass_enforce_quotes_on_format = false -ij_sass_hex_color_long_format = false -ij_sass_hex_color_lower_case = false -ij_sass_hex_color_short_format = false -ij_sass_hex_color_upper_case = false -ij_sass_keep_blank_lines_in_code = 2 -ij_sass_keep_indents_on_empty_lines = false -ij_sass_keep_single_line_blocks = false -ij_sass_line_comment_add_space = false -ij_sass_line_comment_at_first_column = false -ij_sass_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow -ij_sass_space_after_colon = true -ij_sass_space_before_opening_brace = true -ij_sass_use_double_quotes = true -ij_sass_value_alignment = 0 +ij_sass_blank_lines_around_nested_selector = 1 +ij_sass_blank_lines_between_blocks = 1 +ij_sass_brace_placement = 0 +ij_sass_enforce_quotes_on_format = false +ij_sass_hex_color_long_format = false +ij_sass_hex_color_lower_case = false +ij_sass_hex_color_short_format = false +ij_sass_hex_color_upper_case = false +ij_sass_keep_blank_lines_in_code = 2 +ij_sass_keep_indents_on_empty_lines = false +ij_sass_keep_single_line_blocks = false +ij_sass_line_comment_add_space = false +ij_sass_line_comment_at_first_column = false +ij_sass_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow +ij_sass_space_after_colon = true +ij_sass_space_before_opening_brace = true +ij_sass_use_double_quotes = true +ij_sass_value_alignment = 0 [*.scss] -indent_size = 2 +indent_size = 2 ij_scss_align_closing_brace_with_properties = false -ij_scss_blank_lines_around_nested_selector = 1 -ij_scss_blank_lines_between_blocks = 1 -ij_scss_block_comment_add_space = false -ij_scss_brace_placement = 0 -ij_scss_enforce_quotes_on_format = false -ij_scss_hex_color_long_format = false -ij_scss_hex_color_lower_case = false -ij_scss_hex_color_short_format = false -ij_scss_hex_color_upper_case = false -ij_scss_keep_blank_lines_in_code = 2 -ij_scss_keep_indents_on_empty_lines = false -ij_scss_keep_single_line_blocks = false -ij_scss_line_comment_add_space = false -ij_scss_line_comment_at_first_column = false -ij_scss_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow -ij_scss_space_after_colon = true -ij_scss_space_before_opening_brace = true -ij_scss_use_double_quotes = true -ij_scss_value_alignment = 0 +ij_scss_blank_lines_around_nested_selector = 1 +ij_scss_blank_lines_between_blocks = 1 +ij_scss_block_comment_add_space = false +ij_scss_brace_placement = 0 +ij_scss_enforce_quotes_on_format = false +ij_scss_hex_color_long_format = false +ij_scss_hex_color_lower_case = false +ij_scss_hex_color_short_format = false +ij_scss_hex_color_upper_case = false +ij_scss_keep_blank_lines_in_code = 2 +ij_scss_keep_indents_on_empty_lines = false +ij_scss_keep_single_line_blocks = false +ij_scss_line_comment_add_space = false +ij_scss_line_comment_at_first_column = false +ij_scss_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow +ij_scss_space_after_colon = true +ij_scss_space_before_opening_brace = true +ij_scss_use_double_quotes = true +ij_scss_value_alignment = 0 [*.slim] -indent_size = 2 +indent_size = 2 ij_slim_keep_indents_on_empty_lines = false [*.twig] -ij_twig_keep_indents_on_empty_lines = false +ij_twig_keep_indents_on_empty_lines = false ij_twig_spaces_inside_comments_delimiters = true -ij_twig_spaces_inside_delimiters = true +ij_twig_spaces_inside_delimiters = true ij_twig_spaces_inside_variable_delimiters = true [*.vue] -indent_size = 2 -tab_width = 2 -ij_continuation_indent_size = 4 -ij_vue_indent_children_of_top_level = template +indent_size = 2 +tab_width = 2 +ij_continuation_indent_size = 4 +ij_vue_indent_children_of_top_level = template ij_vue_interpolation_new_line_after_start_delimiter = true -ij_vue_interpolation_new_line_before_end_delimiter = true -ij_vue_interpolation_wrap = off -ij_vue_keep_indents_on_empty_lines = false -ij_vue_spaces_within_interpolation_expressions = true +ij_vue_interpolation_new_line_before_end_delimiter = true +ij_vue_interpolation_wrap = off +ij_vue_keep_indents_on_empty_lines = false +ij_vue_spaces_within_interpolation_expressions = true [.editorconfig] -ij_editorconfig_align_group_field_declarations = true -ij_editorconfig_space_after_colon = false -ij_editorconfig_space_after_comma = true -ij_editorconfig_space_before_colon = false -ij_editorconfig_space_before_comma = false +ij_editorconfig_align_group_field_declarations = true +ij_editorconfig_space_after_colon = false +ij_editorconfig_space_after_comma = true +ij_editorconfig_space_before_colon = false +ij_editorconfig_space_before_comma = false ij_editorconfig_spaces_around_assignment_operators = true [{*.ad,*.adoc,*.asciidoc,.asciidoctorconfig}] -ij_asciidoc_blank_lines_after_header = 1 +ij_asciidoc_blank_lines_after_header = 1 ij_asciidoc_blank_lines_keep_after_header = 1 -ij_asciidoc_formatting_enabled = true -ij_asciidoc_one_sentence_per_line = true +ij_asciidoc_formatting_enabled = true +ij_asciidoc_one_sentence_per_line = true [{*.ant,*.appxmanifest,*.axml,*.cscfg,*.csdef,*.disco,*.dotsettings,*.filelayout,*.fxml,*.jhm,*.jnlp,*.jrxml,*.manifest,*.myapp,*.nuspec,*.rng,*.sdef,*.stylecop,*.svcmap,*.tld,*.wadcfgx,*.webref,*.wsdl,*.xml,*.xsd,*.xsl,*.xslt,*.xul,StyleCop.Cache}] -ij_xml_align_attributes = true -ij_xml_align_text = false -ij_xml_attribute_wrap = on_every_item -ij_xml_block_comment_add_space = false -ij_xml_block_comment_at_first_column = true -ij_xml_keep_blank_lines = 2 -ij_xml_keep_indents_on_empty_lines = false -ij_xml_keep_line_breaks = true -ij_xml_keep_line_breaks_in_text = true -ij_xml_keep_whitespaces = false -ij_xml_keep_whitespaces_around_cdata = preserve -ij_xml_keep_whitespaces_inside_cdata = false -ij_xml_line_comment_at_first_column = true -ij_xml_space_after_tag_name = false +ij_xml_align_attributes = true +ij_xml_align_text = false +ij_xml_attribute_wrap = on_every_item +ij_xml_block_comment_add_space = false +ij_xml_block_comment_at_first_column = true +ij_xml_keep_blank_lines = 2 +ij_xml_keep_indents_on_empty_lines = false +ij_xml_keep_line_breaks = true +ij_xml_keep_line_breaks_in_text = true +ij_xml_keep_whitespaces = false +ij_xml_keep_whitespaces_around_cdata = preserve +ij_xml_keep_whitespaces_inside_cdata = false +ij_xml_line_comment_at_first_column = true +ij_xml_space_after_tag_name = false ij_xml_space_around_equals_in_attribute = false -ij_xml_space_inside_empty_tag = false -ij_xml_text_wrap = normal -ij_xml_use_custom_settings = false +ij_xml_space_inside_empty_tag = false +ij_xml_text_wrap = normal +ij_xml_use_custom_settings = false +indent_size = 2 +tab_width = 2 +ij_continuation_indent_size = 4 [{*.applescript,*.scpt}] -indent_size = 2 -tab_width = 2 -ij_continuation_indent_size = 4 -ij_applescript_align_multiline_binary_operation = true -ij_applescript_align_multiline_parameters = true -ij_applescript_align_multiline_parameters_in_calls = true -ij_applescript_binary_operation_sign_on_next_line = false -ij_applescript_binary_operation_wrap = off -ij_applescript_block_brace_style = next_line -ij_applescript_call_parameters_new_line_after_left_paren = false -ij_applescript_call_parameters_right_paren_on_new_line = false -ij_applescript_call_parameters_wrap = off -ij_applescript_else_on_new_line = true -ij_applescript_keep_blank_lines_in_code = 2 -ij_applescript_keep_first_column_comment = true -ij_applescript_keep_indents_on_empty_lines = false -ij_applescript_keep_line_breaks = true -ij_applescript_method_brace_style = next_line -ij_applescript_method_parameters_new_line_after_left_paren = false -ij_applescript_method_parameters_right_paren_on_new_line = false -ij_applescript_method_parameters_wrap = off +indent_size = 2 +tab_width = 2 +ij_continuation_indent_size = 4 +ij_applescript_align_multiline_binary_operation = true +ij_applescript_align_multiline_parameters = true +ij_applescript_align_multiline_parameters_in_calls = true +ij_applescript_binary_operation_sign_on_next_line = false +ij_applescript_binary_operation_wrap = off +ij_applescript_block_brace_style = next_line +ij_applescript_call_parameters_new_line_after_left_paren = false +ij_applescript_call_parameters_right_paren_on_new_line = false +ij_applescript_call_parameters_wrap = off +ij_applescript_else_on_new_line = true +ij_applescript_keep_blank_lines_in_code = 2 +ij_applescript_keep_first_column_comment = true +ij_applescript_keep_indents_on_empty_lines = false +ij_applescript_keep_line_breaks = true +ij_applescript_method_brace_style = next_line +ij_applescript_method_parameters_new_line_after_left_paren = false +ij_applescript_method_parameters_right_paren_on_new_line = false +ij_applescript_method_parameters_wrap = off ij_applescript_parentheses_expression_new_line_after_left_paren = false -ij_applescript_parentheses_expression_right_paren_on_new_line = false -ij_applescript_space_after_colon = true -ij_applescript_space_after_comma = true -ij_applescript_space_after_comma_in_type_arguments = true -ij_applescript_space_before_colon = true -ij_applescript_space_before_comma = false -ij_applescript_space_before_else_keyword = true -ij_applescript_space_before_else_left_brace = true -ij_applescript_space_before_if_parentheses = false -ij_applescript_space_before_method_call_parentheses = false -ij_applescript_space_before_method_left_brace = true -ij_applescript_space_before_method_parentheses = false -ij_applescript_space_before_while_keyword = true -ij_applescript_spaces_around_additive_operators = true -ij_applescript_spaces_around_assignment_operators = true -ij_applescript_spaces_around_equality_operators = true -ij_applescript_spaces_around_logical_operators = true -ij_applescript_spaces_around_multiplicative_operators = true -ij_applescript_spaces_around_relational_operators = true -ij_applescript_spaces_around_shift_operators = true -ij_applescript_spaces_around_unary_operator = false -ij_applescript_spaces_within_if_parentheses = false -ij_applescript_spaces_within_method_call_parentheses = false -ij_applescript_spaces_within_method_parentheses = false -ij_applescript_special_else_if_treatment = true +ij_applescript_parentheses_expression_right_paren_on_new_line = false +ij_applescript_space_after_colon = true +ij_applescript_space_after_comma = true +ij_applescript_space_after_comma_in_type_arguments = true +ij_applescript_space_before_colon = true +ij_applescript_space_before_comma = false +ij_applescript_space_before_else_keyword = true +ij_applescript_space_before_else_left_brace = true +ij_applescript_space_before_if_parentheses = false +ij_applescript_space_before_method_call_parentheses = false +ij_applescript_space_before_method_left_brace = true +ij_applescript_space_before_method_parentheses = false +ij_applescript_space_before_while_keyword = true +ij_applescript_spaces_around_additive_operators = true +ij_applescript_spaces_around_assignment_operators = true +ij_applescript_spaces_around_equality_operators = true +ij_applescript_spaces_around_logical_operators = true +ij_applescript_spaces_around_multiplicative_operators = true +ij_applescript_spaces_around_relational_operators = true +ij_applescript_spaces_around_shift_operators = true +ij_applescript_spaces_around_unary_operator = false +ij_applescript_spaces_within_if_parentheses = false +ij_applescript_spaces_within_method_call_parentheses = false +ij_applescript_spaces_within_method_parentheses = false +ij_applescript_special_else_if_treatment = true [{*.ats,*.cts,*.mts,*.ts}] -ij_continuation_indent_size = 4 -ij_typescript_align_imports = true -ij_typescript_align_multiline_array_initializer_expression = true -ij_typescript_align_multiline_binary_operation = true -ij_typescript_align_multiline_chained_methods = true -ij_typescript_align_multiline_extends_list = false -ij_typescript_align_multiline_for = true -ij_typescript_align_multiline_parameters = true -ij_typescript_align_multiline_parameters_in_calls = true -ij_typescript_align_multiline_ternary_operation = true -ij_typescript_align_object_properties = 1 -ij_typescript_align_union_types = true -ij_typescript_align_var_statements = 2 -ij_typescript_array_initializer_new_line_after_left_brace = false -ij_typescript_array_initializer_right_brace_on_new_line = false -ij_typescript_array_initializer_wrap = on_every_item -ij_typescript_assignment_wrap = on_every_item -ij_typescript_binary_operation_sign_on_next_line = false -ij_typescript_binary_operation_wrap = on_every_item -ij_typescript_blacklist_imports = rxjs/Rx,node_modules/**,**/node_modules/**,@angular/material,@angular/material/typings/** -ij_typescript_blank_lines_after_imports = 1 -ij_typescript_blank_lines_around_class = 1 -ij_typescript_blank_lines_around_field = 0 -ij_typescript_blank_lines_around_field_in_interface = 0 -ij_typescript_blank_lines_around_function = 1 -ij_typescript_blank_lines_around_method = 1 -ij_typescript_blank_lines_around_method_in_interface = 1 -ij_typescript_block_brace_style = next_line -ij_typescript_block_comment_add_space = false -ij_typescript_block_comment_at_first_column = true -ij_typescript_call_parameters_new_line_after_left_paren = false -ij_typescript_call_parameters_right_paren_on_new_line = false -ij_typescript_call_parameters_wrap = on_every_item -ij_typescript_catch_on_new_line = true -ij_typescript_chained_call_dot_on_new_line = true -ij_typescript_class_brace_style = next_line -ij_typescript_comma_on_new_line = false -ij_typescript_do_while_brace_force = always -ij_typescript_else_on_new_line = false -ij_typescript_enforce_trailing_comma = keep -ij_typescript_enum_constants_wrap = on_every_item -ij_typescript_extends_keyword_wrap = normal -ij_typescript_extends_list_wrap = on_every_item -ij_typescript_field_prefix = _ -ij_typescript_file_name_style = relaxed -ij_typescript_finally_on_new_line = true -ij_typescript_for_brace_force = if_multiline -ij_typescript_for_statement_new_line_after_left_paren = false -ij_typescript_for_statement_right_paren_on_new_line = false -ij_typescript_for_statement_wrap = on_every_item -ij_typescript_force_quote_style = true -ij_typescript_force_semicolon_style = true -ij_typescript_function_expression_brace_style = next_line -ij_typescript_if_brace_force = never -ij_typescript_import_merge_members = global -ij_typescript_import_prefer_absolute_path = true -ij_typescript_import_sort_members = true -ij_typescript_import_sort_module_name = true -ij_typescript_import_use_node_resolution = true -ij_typescript_imports_wrap = on_every_item -ij_typescript_indent_case_from_switch = true -ij_typescript_indent_chained_calls = true -ij_typescript_indent_package_children = 0 -ij_typescript_jsdoc_include_types = false -ij_typescript_jsx_attribute_value = braces -ij_typescript_keep_blank_lines_in_code = 2 -ij_typescript_keep_first_column_comment = true -ij_typescript_keep_indents_on_empty_lines = false -ij_typescript_keep_line_breaks = true -ij_typescript_keep_simple_blocks_in_one_line = false -ij_typescript_keep_simple_methods_in_one_line = false -ij_typescript_line_comment_add_space = true -ij_typescript_line_comment_at_first_column = false -ij_typescript_method_brace_style = next_line -ij_typescript_method_call_chain_wrap = on_every_item -ij_typescript_method_parameters_new_line_after_left_paren = false -ij_typescript_method_parameters_right_paren_on_new_line = false -ij_typescript_method_parameters_wrap = on_every_item -ij_typescript_object_literal_wrap = on_every_item -ij_typescript_object_types_wrap = on_every_item -ij_typescript_parentheses_expression_new_line_after_left_paren = false -ij_typescript_parentheses_expression_right_paren_on_new_line = false -ij_typescript_place_assignment_sign_on_next_line = false -ij_typescript_prefer_as_type_cast = false +ij_continuation_indent_size = 4 +ij_typescript_align_imports = true +ij_typescript_align_multiline_array_initializer_expression = true +ij_typescript_align_multiline_binary_operation = true +ij_typescript_align_multiline_chained_methods = true +ij_typescript_align_multiline_extends_list = false +ij_typescript_align_multiline_for = true +ij_typescript_align_multiline_parameters = true +ij_typescript_align_multiline_parameters_in_calls = true +ij_typescript_align_multiline_ternary_operation = true +ij_typescript_align_object_properties = 1 +ij_typescript_align_union_types = true +ij_typescript_align_var_statements = 2 +ij_typescript_array_initializer_new_line_after_left_brace = false +ij_typescript_array_initializer_right_brace_on_new_line = false +ij_typescript_array_initializer_wrap = on_every_item +ij_typescript_assignment_wrap = on_every_item +ij_typescript_binary_operation_sign_on_next_line = false +ij_typescript_binary_operation_wrap = on_every_item +ij_typescript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/** +ij_typescript_blank_lines_after_imports = 1 +ij_typescript_blank_lines_around_class = 1 +ij_typescript_blank_lines_around_field = 0 +ij_typescript_blank_lines_around_field_in_interface = 0 +ij_typescript_blank_lines_around_function = 1 +ij_typescript_blank_lines_around_method = 1 +ij_typescript_blank_lines_around_method_in_interface = 1 +ij_typescript_block_brace_style = next_line +ij_typescript_block_comment_add_space = false +ij_typescript_block_comment_at_first_column = true +ij_typescript_call_parameters_new_line_after_left_paren = false +ij_typescript_call_parameters_right_paren_on_new_line = false +ij_typescript_call_parameters_wrap = on_every_item +ij_typescript_catch_on_new_line = true +ij_typescript_chained_call_dot_on_new_line = true +ij_typescript_class_brace_style = next_line +ij_typescript_comma_on_new_line = false +ij_typescript_do_while_brace_force = always +ij_typescript_else_on_new_line = false +ij_typescript_enforce_trailing_comma = keep +ij_typescript_enum_constants_wrap = on_every_item +ij_typescript_extends_keyword_wrap = normal +ij_typescript_extends_list_wrap = on_every_item +ij_typescript_field_prefix = _ +ij_typescript_file_name_style = relaxed +ij_typescript_finally_on_new_line = true +ij_typescript_for_brace_force = if_multiline +ij_typescript_for_statement_new_line_after_left_paren = false +ij_typescript_for_statement_right_paren_on_new_line = false +ij_typescript_for_statement_wrap = on_every_item +ij_typescript_force_quote_style = true +ij_typescript_force_semicolon_style = true +ij_typescript_function_expression_brace_style = next_line +ij_typescript_if_brace_force = never +ij_typescript_import_merge_members = global +ij_typescript_import_prefer_absolute_path = true +ij_typescript_import_sort_members = true +ij_typescript_import_sort_module_name = true +ij_typescript_import_use_node_resolution = true +ij_typescript_imports_wrap = on_every_item +ij_typescript_indent_case_from_switch = true +ij_typescript_indent_chained_calls = true +ij_typescript_indent_package_children = 0 +ij_typescript_jsdoc_include_types = false +ij_typescript_jsx_attribute_value = braces +ij_typescript_keep_blank_lines_in_code = 2 +ij_typescript_keep_first_column_comment = true +ij_typescript_keep_indents_on_empty_lines = false +ij_typescript_keep_line_breaks = true +ij_typescript_keep_simple_blocks_in_one_line = false +ij_typescript_keep_simple_methods_in_one_line = false +ij_typescript_line_comment_add_space = true +ij_typescript_line_comment_at_first_column = false +ij_typescript_method_brace_style = next_line +ij_typescript_method_call_chain_wrap = on_every_item +ij_typescript_method_parameters_new_line_after_left_paren = false +ij_typescript_method_parameters_right_paren_on_new_line = false +ij_typescript_method_parameters_wrap = on_every_item +ij_typescript_object_literal_wrap = on_every_item +ij_typescript_object_types_wrap = on_every_item +ij_typescript_parentheses_expression_new_line_after_left_paren = false +ij_typescript_parentheses_expression_right_paren_on_new_line = false +ij_typescript_place_assignment_sign_on_next_line = false +ij_typescript_prefer_as_type_cast = false ij_typescript_prefer_explicit_types_function_expression_returns = false -ij_typescript_prefer_explicit_types_function_returns = false -ij_typescript_prefer_explicit_types_vars_fields = false -ij_typescript_prefer_parameters_wrap = false -ij_typescript_property_prefix = -ij_typescript_reformat_c_style_comments = false -ij_typescript_space_after_colon = true -ij_typescript_space_after_comma = true -ij_typescript_space_after_dots_in_rest_parameter = false -ij_typescript_space_after_generator_mult = true -ij_typescript_space_after_property_colon = true -ij_typescript_space_after_quest = true -ij_typescript_space_after_type_colon = true -ij_typescript_space_after_unary_not = false -ij_typescript_space_before_async_arrow_lparen = false -ij_typescript_space_before_catch_keyword = true -ij_typescript_space_before_catch_left_brace = false -ij_typescript_space_before_catch_parentheses = false -ij_typescript_space_before_class_lbrace = false -ij_typescript_space_before_class_left_brace = true -ij_typescript_space_before_colon = true -ij_typescript_space_before_comma = false -ij_typescript_space_before_do_left_brace = false -ij_typescript_space_before_else_keyword = true -ij_typescript_space_before_else_left_brace = false -ij_typescript_space_before_finally_keyword = true -ij_typescript_space_before_finally_left_brace = false -ij_typescript_space_before_for_left_brace = false -ij_typescript_space_before_for_parentheses = false -ij_typescript_space_before_for_semicolon = false -ij_typescript_space_before_function_left_parenth = false -ij_typescript_space_before_generator_mult = false -ij_typescript_space_before_if_left_brace = false -ij_typescript_space_before_if_parentheses = false -ij_typescript_space_before_method_call_parentheses = false -ij_typescript_space_before_method_left_brace = false -ij_typescript_space_before_method_parentheses = false -ij_typescript_space_before_property_colon = false -ij_typescript_space_before_quest = true -ij_typescript_space_before_switch_left_brace = false -ij_typescript_space_before_switch_parentheses = false -ij_typescript_space_before_try_left_brace = false -ij_typescript_space_before_type_colon = false -ij_typescript_space_before_unary_not = false -ij_typescript_space_before_while_keyword = true -ij_typescript_space_before_while_left_brace = false -ij_typescript_space_before_while_parentheses = false -ij_typescript_spaces_around_additive_operators = true -ij_typescript_spaces_around_arrow_function_operator = true -ij_typescript_spaces_around_assignment_operators = true -ij_typescript_spaces_around_bitwise_operators = true -ij_typescript_spaces_around_equality_operators = true -ij_typescript_spaces_around_logical_operators = true -ij_typescript_spaces_around_multiplicative_operators = true -ij_typescript_spaces_around_relational_operators = true -ij_typescript_spaces_around_shift_operators = true -ij_typescript_spaces_around_unary_operator = false -ij_typescript_spaces_within_array_initializer_brackets = false -ij_typescript_spaces_within_brackets = false -ij_typescript_spaces_within_catch_parentheses = false -ij_typescript_spaces_within_for_parentheses = false -ij_typescript_spaces_within_if_parentheses = false -ij_typescript_spaces_within_imports = false -ij_typescript_spaces_within_interpolation_expressions = false -ij_typescript_spaces_within_method_call_parentheses = false -ij_typescript_spaces_within_method_parentheses = false -ij_typescript_spaces_within_object_literal_braces = false -ij_typescript_spaces_within_object_type_braces = true -ij_typescript_spaces_within_parentheses = false -ij_typescript_spaces_within_switch_parentheses = false -ij_typescript_spaces_within_type_assertion = false -ij_typescript_spaces_within_union_types = true -ij_typescript_spaces_within_while_parentheses = false -ij_typescript_special_else_if_treatment = true -ij_typescript_ternary_operation_signs_on_next_line = false -ij_typescript_ternary_operation_wrap = on_every_item -ij_typescript_union_types_wrap = on_every_item -ij_typescript_use_chained_calls_group_indents = false -ij_typescript_use_double_quotes = true -ij_typescript_use_explicit_js_extension = auto -ij_typescript_use_path_mapping = always -ij_typescript_use_public_modifier = false -ij_typescript_use_semicolon_after_statement = true -ij_typescript_var_declaration_wrap = normal -ij_typescript_while_brace_force = always -ij_typescript_while_on_new_line = false -ij_typescript_wrap_comments = false +ij_typescript_prefer_explicit_types_function_returns = false +ij_typescript_prefer_explicit_types_vars_fields = false +ij_typescript_prefer_parameters_wrap = false +ij_typescript_property_prefix = +ij_typescript_reformat_c_style_comments = false +ij_typescript_space_after_colon = true +ij_typescript_space_after_comma = true +ij_typescript_space_after_dots_in_rest_parameter = false +ij_typescript_space_after_generator_mult = true +ij_typescript_space_after_property_colon = true +ij_typescript_space_after_quest = true +ij_typescript_space_after_type_colon = true +ij_typescript_space_after_unary_not = false +ij_typescript_space_before_async_arrow_lparen = false +ij_typescript_space_before_catch_keyword = true +ij_typescript_space_before_catch_left_brace = false +ij_typescript_space_before_catch_parentheses = false +ij_typescript_space_before_class_lbrace = false +ij_typescript_space_before_class_left_brace = true +ij_typescript_space_before_colon = true +ij_typescript_space_before_comma = false +ij_typescript_space_before_do_left_brace = false +ij_typescript_space_before_else_keyword = true +ij_typescript_space_before_else_left_brace = false +ij_typescript_space_before_finally_keyword = true +ij_typescript_space_before_finally_left_brace = false +ij_typescript_space_before_for_left_brace = false +ij_typescript_space_before_for_parentheses = false +ij_typescript_space_before_for_semicolon = false +ij_typescript_space_before_function_left_parenth = false +ij_typescript_space_before_generator_mult = false +ij_typescript_space_before_if_left_brace = false +ij_typescript_space_before_if_parentheses = false +ij_typescript_space_before_method_call_parentheses = false +ij_typescript_space_before_method_left_brace = false +ij_typescript_space_before_method_parentheses = false +ij_typescript_space_before_property_colon = false +ij_typescript_space_before_quest = true +ij_typescript_space_before_switch_left_brace = false +ij_typescript_space_before_switch_parentheses = false +ij_typescript_space_before_try_left_brace = false +ij_typescript_space_before_type_colon = false +ij_typescript_space_before_unary_not = false +ij_typescript_space_before_while_keyword = true +ij_typescript_space_before_while_left_brace = false +ij_typescript_space_before_while_parentheses = false +ij_typescript_spaces_around_additive_operators = true +ij_typescript_spaces_around_arrow_function_operator = true +ij_typescript_spaces_around_assignment_operators = true +ij_typescript_spaces_around_bitwise_operators = true +ij_typescript_spaces_around_equality_operators = true +ij_typescript_spaces_around_logical_operators = true +ij_typescript_spaces_around_multiplicative_operators = true +ij_typescript_spaces_around_relational_operators = true +ij_typescript_spaces_around_shift_operators = true +ij_typescript_spaces_around_unary_operator = false +ij_typescript_spaces_within_array_initializer_brackets = false +ij_typescript_spaces_within_brackets = false +ij_typescript_spaces_within_catch_parentheses = false +ij_typescript_spaces_within_for_parentheses = false +ij_typescript_spaces_within_if_parentheses = false +ij_typescript_spaces_within_imports = false +ij_typescript_spaces_within_interpolation_expressions = false +ij_typescript_spaces_within_method_call_parentheses = false +ij_typescript_spaces_within_method_parentheses = false +ij_typescript_spaces_within_object_literal_braces = false +ij_typescript_spaces_within_object_type_braces = true +ij_typescript_spaces_within_parentheses = false +ij_typescript_spaces_within_switch_parentheses = false +ij_typescript_spaces_within_type_assertion = false +ij_typescript_spaces_within_union_types = true +ij_typescript_spaces_within_while_parentheses = false +ij_typescript_special_else_if_treatment = true +ij_typescript_ternary_operation_signs_on_next_line = false +ij_typescript_ternary_operation_wrap = on_every_item +ij_typescript_union_types_wrap = on_every_item +ij_typescript_use_chained_calls_group_indents = false +ij_typescript_use_double_quotes = true +ij_typescript_use_explicit_js_extension = auto +ij_typescript_use_path_mapping = always +ij_typescript_use_public_modifier = false +ij_typescript_use_semicolon_after_statement = true +ij_typescript_var_declaration_wrap = normal +ij_typescript_while_brace_force = always +ij_typescript_while_on_new_line = false +ij_typescript_wrap_comments = false [{*.bash,*.sh,*.zsh}] -indent_size = 2 -tab_width = 2 -ij_shell_binary_ops_start_line = false +indent_size = 2 +tab_width = 2 +ij_shell_binary_ops_start_line = false ij_shell_keep_column_alignment_padding = false -ij_shell_minify_program = false -ij_shell_redirect_followed_by_space = false -ij_shell_switch_cases_indented = true -ij_shell_use_unix_line_separator = true -indent_style = space +ij_shell_minify_program = false +ij_shell_redirect_followed_by_space = false +ij_shell_switch_cases_indented = true +ij_shell_use_unix_line_separator = true +indent_style = space [{*.cjs,*.js}] -ij_continuation_indent_size = 4 -ij_javascript_align_imports = true -ij_javascript_align_multiline_array_initializer_expression = true -ij_javascript_align_multiline_binary_operation = true -ij_javascript_align_multiline_chained_methods = false -ij_javascript_align_multiline_extends_list = true -ij_javascript_align_multiline_for = true -ij_javascript_align_multiline_parameters = true -ij_javascript_align_multiline_parameters_in_calls = true -ij_javascript_align_multiline_ternary_operation = true -ij_javascript_align_object_properties = 1 -ij_javascript_align_union_types = false -ij_javascript_align_var_statements = 2 -ij_javascript_array_initializer_new_line_after_left_brace = false -ij_javascript_array_initializer_right_brace_on_new_line = false -ij_javascript_array_initializer_wrap = on_every_item -ij_javascript_assignment_wrap = on_every_item -ij_javascript_binary_operation_sign_on_next_line = false -ij_javascript_binary_operation_wrap = on_every_item -ij_javascript_blacklist_imports = rxjs/Rx,node_modules/**,**/node_modules/**,@angular/material,@angular/material/typings/** -ij_javascript_blank_lines_after_imports = 1 -ij_javascript_blank_lines_around_class = 1 -ij_javascript_blank_lines_around_field = 0 -ij_javascript_blank_lines_around_function = 1 -ij_javascript_blank_lines_around_method = 1 -ij_javascript_block_brace_style = next_line -ij_javascript_block_comment_add_space = false -ij_javascript_block_comment_at_first_column = true -ij_javascript_call_parameters_new_line_after_left_paren = false -ij_javascript_call_parameters_right_paren_on_new_line = false -ij_javascript_call_parameters_wrap = on_every_item -ij_javascript_catch_on_new_line = true -ij_javascript_chained_call_dot_on_new_line = true -ij_javascript_class_brace_style = next_line -ij_javascript_comma_on_new_line = false -ij_javascript_do_while_brace_force = always -ij_javascript_else_on_new_line = true -ij_javascript_enforce_trailing_comma = remove -ij_javascript_extends_keyword_wrap = normal -ij_javascript_extends_list_wrap = on_every_item -ij_javascript_field_prefix = _ -ij_javascript_file_name_style = relaxed -ij_javascript_finally_on_new_line = true -ij_javascript_for_brace_force = if_multiline -ij_javascript_for_statement_new_line_after_left_paren = false -ij_javascript_for_statement_right_paren_on_new_line = false -ij_javascript_for_statement_wrap = on_every_item -ij_javascript_force_quote_style = true -ij_javascript_force_semicolon_style = true -ij_javascript_function_expression_brace_style = next_line -ij_javascript_if_brace_force = if_multiline -ij_javascript_import_merge_members = global -ij_javascript_import_prefer_absolute_path = true -ij_javascript_import_sort_members = true -ij_javascript_import_sort_module_name = true -ij_javascript_import_use_node_resolution = true -ij_javascript_imports_wrap = on_every_item -ij_javascript_indent_case_from_switch = true -ij_javascript_indent_chained_calls = true -ij_javascript_indent_package_children = 0 -ij_javascript_jsx_attribute_value = braces -ij_javascript_keep_blank_lines_in_code = 2 -ij_javascript_keep_first_column_comment = true -ij_javascript_keep_indents_on_empty_lines = false -ij_javascript_keep_line_breaks = true -ij_javascript_keep_simple_blocks_in_one_line = false -ij_javascript_keep_simple_methods_in_one_line = false -ij_javascript_line_comment_add_space = true -ij_javascript_line_comment_at_first_column = false -ij_javascript_method_brace_style = next_line -ij_javascript_method_call_chain_wrap = on_every_item -ij_javascript_method_parameters_new_line_after_left_paren = false -ij_javascript_method_parameters_right_paren_on_new_line = false -ij_javascript_method_parameters_wrap = on_every_item -ij_javascript_object_literal_wrap = on_every_item -ij_javascript_object_types_wrap = on_every_item -ij_javascript_parentheses_expression_new_line_after_left_paren = false -ij_javascript_parentheses_expression_right_paren_on_new_line = false -ij_javascript_place_assignment_sign_on_next_line = true -ij_javascript_prefer_as_type_cast = false +ij_continuation_indent_size = 4 +ij_javascript_align_imports = true +ij_javascript_align_multiline_array_initializer_expression = true +ij_javascript_align_multiline_binary_operation = true +ij_javascript_align_multiline_chained_methods = false +ij_javascript_align_multiline_extends_list = true +ij_javascript_align_multiline_for = true +ij_javascript_align_multiline_parameters = true +ij_javascript_align_multiline_parameters_in_calls = true +ij_javascript_align_multiline_ternary_operation = true +ij_javascript_align_object_properties = 1 +ij_javascript_align_union_types = false +ij_javascript_align_var_statements = 2 +ij_javascript_array_initializer_new_line_after_left_brace = false +ij_javascript_array_initializer_right_brace_on_new_line = false +ij_javascript_array_initializer_wrap = on_every_item +ij_javascript_assignment_wrap = on_every_item +ij_javascript_binary_operation_sign_on_next_line = false +ij_javascript_binary_operation_wrap = on_every_item +ij_javascript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/** +ij_javascript_blank_lines_after_imports = 1 +ij_javascript_blank_lines_around_class = 1 +ij_javascript_blank_lines_around_field = 0 +ij_javascript_blank_lines_around_function = 1 +ij_javascript_blank_lines_around_method = 1 +ij_javascript_block_brace_style = next_line +ij_javascript_block_comment_add_space = false +ij_javascript_block_comment_at_first_column = true +ij_javascript_call_parameters_new_line_after_left_paren = false +ij_javascript_call_parameters_right_paren_on_new_line = false +ij_javascript_call_parameters_wrap = on_every_item +ij_javascript_catch_on_new_line = true +ij_javascript_chained_call_dot_on_new_line = true +ij_javascript_class_brace_style = next_line +ij_javascript_comma_on_new_line = false +ij_javascript_do_while_brace_force = always +ij_javascript_else_on_new_line = true +ij_javascript_enforce_trailing_comma = remove +ij_javascript_extends_keyword_wrap = normal +ij_javascript_extends_list_wrap = on_every_item +ij_javascript_field_prefix = _ +ij_javascript_file_name_style = relaxed +ij_javascript_finally_on_new_line = true +ij_javascript_for_brace_force = if_multiline +ij_javascript_for_statement_new_line_after_left_paren = false +ij_javascript_for_statement_right_paren_on_new_line = false +ij_javascript_for_statement_wrap = on_every_item +ij_javascript_force_quote_style = true +ij_javascript_force_semicolon_style = true +ij_javascript_function_expression_brace_style = next_line +ij_javascript_if_brace_force = if_multiline +ij_javascript_import_merge_members = global +ij_javascript_import_prefer_absolute_path = true +ij_javascript_import_sort_members = true +ij_javascript_import_sort_module_name = true +ij_javascript_import_use_node_resolution = true +ij_javascript_imports_wrap = on_every_item +ij_javascript_indent_case_from_switch = true +ij_javascript_indent_chained_calls = true +ij_javascript_indent_package_children = 0 +ij_javascript_jsx_attribute_value = braces +ij_javascript_keep_blank_lines_in_code = 2 +ij_javascript_keep_first_column_comment = true +ij_javascript_keep_indents_on_empty_lines = false +ij_javascript_keep_line_breaks = true +ij_javascript_keep_simple_blocks_in_one_line = false +ij_javascript_keep_simple_methods_in_one_line = false +ij_javascript_line_comment_add_space = true +ij_javascript_line_comment_at_first_column = false +ij_javascript_method_brace_style = next_line +ij_javascript_method_call_chain_wrap = on_every_item +ij_javascript_method_parameters_new_line_after_left_paren = false +ij_javascript_method_parameters_right_paren_on_new_line = false +ij_javascript_method_parameters_wrap = on_every_item +ij_javascript_object_literal_wrap = on_every_item +ij_javascript_object_types_wrap = on_every_item +ij_javascript_parentheses_expression_new_line_after_left_paren = false +ij_javascript_parentheses_expression_right_paren_on_new_line = false +ij_javascript_place_assignment_sign_on_next_line = true +ij_javascript_prefer_as_type_cast = false ij_javascript_prefer_explicit_types_function_expression_returns = false -ij_javascript_prefer_explicit_types_function_returns = false -ij_javascript_prefer_explicit_types_vars_fields = false -ij_javascript_prefer_parameters_wrap = false -ij_javascript_property_prefix = -ij_javascript_reformat_c_style_comments = true -ij_javascript_space_after_colon = true -ij_javascript_space_after_comma = true -ij_javascript_space_after_dots_in_rest_parameter = false -ij_javascript_space_after_generator_mult = true -ij_javascript_space_after_property_colon = true -ij_javascript_space_after_quest = true -ij_javascript_space_after_type_colon = true -ij_javascript_space_after_unary_not = false -ij_javascript_space_before_async_arrow_lparen = false -ij_javascript_space_before_catch_keyword = true -ij_javascript_space_before_catch_left_brace = false -ij_javascript_space_before_catch_parentheses = false -ij_javascript_space_before_class_lbrace = false -ij_javascript_space_before_class_left_brace = true -ij_javascript_space_before_colon = true -ij_javascript_space_before_comma = false -ij_javascript_space_before_do_left_brace = false -ij_javascript_space_before_else_keyword = true -ij_javascript_space_before_else_left_brace = false -ij_javascript_space_before_finally_keyword = true -ij_javascript_space_before_finally_left_brace = false -ij_javascript_space_before_for_left_brace = false -ij_javascript_space_before_for_parentheses = false -ij_javascript_space_before_for_semicolon = false -ij_javascript_space_before_function_left_parenth = false -ij_javascript_space_before_generator_mult = false -ij_javascript_space_before_if_left_brace = false -ij_javascript_space_before_if_parentheses = false -ij_javascript_space_before_method_call_parentheses = false -ij_javascript_space_before_method_left_brace = false -ij_javascript_space_before_method_parentheses = false -ij_javascript_space_before_property_colon = false -ij_javascript_space_before_quest = true -ij_javascript_space_before_switch_left_brace = false -ij_javascript_space_before_switch_parentheses = false -ij_javascript_space_before_try_left_brace = false -ij_javascript_space_before_type_colon = false -ij_javascript_space_before_unary_not = false -ij_javascript_space_before_while_keyword = true -ij_javascript_space_before_while_left_brace = false -ij_javascript_space_before_while_parentheses = false -ij_javascript_spaces_around_additive_operators = true -ij_javascript_spaces_around_arrow_function_operator = true -ij_javascript_spaces_around_assignment_operators = true -ij_javascript_spaces_around_bitwise_operators = true -ij_javascript_spaces_around_equality_operators = true -ij_javascript_spaces_around_logical_operators = true -ij_javascript_spaces_around_multiplicative_operators = true -ij_javascript_spaces_around_relational_operators = true -ij_javascript_spaces_around_shift_operators = true -ij_javascript_spaces_around_unary_operator = false -ij_javascript_spaces_within_array_initializer_brackets = false -ij_javascript_spaces_within_brackets = false -ij_javascript_spaces_within_catch_parentheses = false -ij_javascript_spaces_within_for_parentheses = false -ij_javascript_spaces_within_if_parentheses = false -ij_javascript_spaces_within_imports = false -ij_javascript_spaces_within_interpolation_expressions = false -ij_javascript_spaces_within_method_call_parentheses = false -ij_javascript_spaces_within_method_parentheses = false -ij_javascript_spaces_within_object_literal_braces = false -ij_javascript_spaces_within_object_type_braces = true -ij_javascript_spaces_within_parentheses = false -ij_javascript_spaces_within_switch_parentheses = false -ij_javascript_spaces_within_type_assertion = false -ij_javascript_spaces_within_union_types = true -ij_javascript_spaces_within_while_parentheses = false -ij_javascript_special_else_if_treatment = true -ij_javascript_ternary_operation_signs_on_next_line = false -ij_javascript_ternary_operation_wrap = on_every_item -ij_javascript_union_types_wrap = on_every_item -ij_javascript_use_chained_calls_group_indents = true -ij_javascript_use_double_quotes = true -ij_javascript_use_explicit_js_extension = auto -ij_javascript_use_path_mapping = always -ij_javascript_use_public_modifier = false -ij_javascript_use_semicolon_after_statement = true -ij_javascript_var_declaration_wrap = normal -ij_javascript_while_brace_force = always -ij_javascript_while_on_new_line = false -ij_javascript_wrap_comments = false +ij_javascript_prefer_explicit_types_function_returns = false +ij_javascript_prefer_explicit_types_vars_fields = false +ij_javascript_prefer_parameters_wrap = false +ij_javascript_property_prefix = +ij_javascript_reformat_c_style_comments = true +ij_javascript_space_after_colon = true +ij_javascript_space_after_comma = true +ij_javascript_space_after_dots_in_rest_parameter = false +ij_javascript_space_after_generator_mult = true +ij_javascript_space_after_property_colon = true +ij_javascript_space_after_quest = true +ij_javascript_space_after_type_colon = true +ij_javascript_space_after_unary_not = false +ij_javascript_space_before_async_arrow_lparen = false +ij_javascript_space_before_catch_keyword = true +ij_javascript_space_before_catch_left_brace = false +ij_javascript_space_before_catch_parentheses = false +ij_javascript_space_before_class_lbrace = false +ij_javascript_space_before_class_left_brace = true +ij_javascript_space_before_colon = true +ij_javascript_space_before_comma = false +ij_javascript_space_before_do_left_brace = false +ij_javascript_space_before_else_keyword = true +ij_javascript_space_before_else_left_brace = false +ij_javascript_space_before_finally_keyword = true +ij_javascript_space_before_finally_left_brace = false +ij_javascript_space_before_for_left_brace = false +ij_javascript_space_before_for_parentheses = false +ij_javascript_space_before_for_semicolon = false +ij_javascript_space_before_function_left_parenth = false +ij_javascript_space_before_generator_mult = false +ij_javascript_space_before_if_left_brace = false +ij_javascript_space_before_if_parentheses = false +ij_javascript_space_before_method_call_parentheses = false +ij_javascript_space_before_method_left_brace = false +ij_javascript_space_before_method_parentheses = false +ij_javascript_space_before_property_colon = false +ij_javascript_space_before_quest = true +ij_javascript_space_before_switch_left_brace = false +ij_javascript_space_before_switch_parentheses = false +ij_javascript_space_before_try_left_brace = false +ij_javascript_space_before_type_colon = false +ij_javascript_space_before_unary_not = false +ij_javascript_space_before_while_keyword = true +ij_javascript_space_before_while_left_brace = false +ij_javascript_space_before_while_parentheses = false +ij_javascript_spaces_around_additive_operators = true +ij_javascript_spaces_around_arrow_function_operator = true +ij_javascript_spaces_around_assignment_operators = true +ij_javascript_spaces_around_bitwise_operators = true +ij_javascript_spaces_around_equality_operators = true +ij_javascript_spaces_around_logical_operators = true +ij_javascript_spaces_around_multiplicative_operators = true +ij_javascript_spaces_around_relational_operators = true +ij_javascript_spaces_around_shift_operators = true +ij_javascript_spaces_around_unary_operator = false +ij_javascript_spaces_within_array_initializer_brackets = false +ij_javascript_spaces_within_brackets = false +ij_javascript_spaces_within_catch_parentheses = false +ij_javascript_spaces_within_for_parentheses = false +ij_javascript_spaces_within_if_parentheses = false +ij_javascript_spaces_within_imports = false +ij_javascript_spaces_within_interpolation_expressions = false +ij_javascript_spaces_within_method_call_parentheses = false +ij_javascript_spaces_within_method_parentheses = false +ij_javascript_spaces_within_object_literal_braces = false +ij_javascript_spaces_within_object_type_braces = true +ij_javascript_spaces_within_parentheses = false +ij_javascript_spaces_within_switch_parentheses = false +ij_javascript_spaces_within_type_assertion = false +ij_javascript_spaces_within_union_types = true +ij_javascript_spaces_within_while_parentheses = false +ij_javascript_special_else_if_treatment = true +ij_javascript_ternary_operation_signs_on_next_line = false +ij_javascript_ternary_operation_wrap = on_every_item +ij_javascript_union_types_wrap = on_every_item +ij_javascript_use_chained_calls_group_indents = true +ij_javascript_use_double_quotes = true +ij_javascript_use_explicit_js_extension = auto +ij_javascript_use_path_mapping = always +ij_javascript_use_public_modifier = false +ij_javascript_use_semicolon_after_statement = true +ij_javascript_var_declaration_wrap = normal +ij_javascript_while_brace_force = always +ij_javascript_while_on_new_line = false +ij_javascript_wrap_comments = false [{*.comp,*.frag,*.fsh,*.geom,*.glsl,*.tesc,*.tese,*.vert,*.vsh}] ij_glsl_keep_indents_on_empty_lines = false [{*.har,*.jsb2,*.jsb3,*.json,*.jsonc,.babelrc,.eslintrc,.prettierrc,.stylelintrc,bowerrc,jest.config}] -indent_size = 2 -ij_json_array_wrapping = normal -ij_json_keep_blank_lines_in_code = 0 +indent_size = 2 +ij_json_array_wrapping = normal +ij_json_keep_blank_lines_in_code = 0 ij_json_keep_indents_on_empty_lines = false -ij_json_keep_line_breaks = true -ij_json_keep_trailing_comma = false -ij_json_object_wrapping = normal -ij_json_property_alignment = align_on_value -ij_json_space_after_colon = true -ij_json_space_after_comma = true -ij_json_space_before_colon = false -ij_json_space_before_comma = false -ij_json_spaces_within_braces = false -ij_json_spaces_within_brackets = false -ij_json_wrap_long_lines = false -indent_style = space +ij_json_keep_line_breaks = true +ij_json_keep_trailing_comma = false +ij_json_object_wrapping = normal +ij_json_property_alignment = align_on_value +ij_json_space_after_colon = true +ij_json_space_after_comma = true +ij_json_space_before_colon = false +ij_json_space_before_comma = false +ij_json_spaces_within_braces = false +ij_json_spaces_within_brackets = false +ij_json_wrap_long_lines = false +indent_style = space [{*.htm,*.html,*.ng,*.sht,*.shtm,*.shtml}] -ij_html_add_new_line_before_tags = body,div,p,form,h1,h2,h3 -ij_html_align_attributes = true -ij_html_align_text = false -ij_html_attribute_wrap = normal -ij_html_block_comment_add_space = false -ij_html_block_comment_at_first_column = true +ij_html_add_new_line_before_tags = body, div, p, form, h1, h2, h3 +ij_html_align_attributes = true +ij_html_align_text = false +ij_html_attribute_wrap = normal +ij_html_block_comment_add_space = false +ij_html_block_comment_at_first_column = true ij_html_do_not_align_children_of_min_lines = 0 -ij_html_do_not_break_if_inline_tags = title,h1,h2,h3,h4,h5,h6,p -ij_html_do_not_indent_children_of_tags = html,body,thead,tbody,tfoot -ij_html_enforce_quotes = false -ij_html_inline_tags = a,abbr,acronym,b,basefont,bdo,big,br,cite,cite,code,dfn,em,font,i,img,input,kbd,label,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var -ij_html_keep_blank_lines = 2 -ij_html_keep_indents_on_empty_lines = false -ij_html_keep_line_breaks = true -ij_html_keep_line_breaks_in_text = true -ij_html_keep_whitespaces = false -ij_html_keep_whitespaces_inside = span,pre,textarea -ij_html_line_comment_at_first_column = true -ij_html_new_line_after_last_attribute = never -ij_html_new_line_before_first_attribute = never -ij_html_quote_style = double -ij_html_remove_new_line_before_tags = br -ij_html_space_after_tag_name = false +ij_html_do_not_break_if_inline_tags = title, h1, h2, h3, h4, h5, h6, p +ij_html_do_not_indent_children_of_tags = html, body, thead, tbody, tfoot +ij_html_enforce_quotes = false +ij_html_inline_tags = a, abbr, acronym, b, basefont, bdo, big, br, cite, cite, code, dfn, em, font, i, img, input, kbd, label, q, s, samp, select, small, span, strike, strong, sub, sup, textarea, tt, u, var +ij_html_keep_blank_lines = 2 +ij_html_keep_indents_on_empty_lines = false +ij_html_keep_line_breaks = true +ij_html_keep_line_breaks_in_text = true +ij_html_keep_whitespaces = false +ij_html_keep_whitespaces_inside = span, pre, textarea +ij_html_line_comment_at_first_column = true +ij_html_new_line_after_last_attribute = never +ij_html_new_line_before_first_attribute = never +ij_html_quote_style = double +ij_html_remove_new_line_before_tags = br +ij_html_space_after_tag_name = false ij_html_space_around_equality_in_attribute = false -ij_html_space_inside_empty_tag = false -ij_html_text_wrap = normal +ij_html_space_inside_empty_tag = false +ij_html_text_wrap = normal [{*.http,*.rest}] -indent_size = 0 -ij_continuation_indent_size = 4 -ij_http-request_call_parameters_wrap = normal -ij_http-request_method_parameters_wrap = split_into_lines -ij_http-request_space_before_comma = true +indent_size = 0 +ij_continuation_indent_size = 4 +ij_http-request_call_parameters_wrap = normal +ij_http-request_method_parameters_wrap = split_into_lines +ij_http-request_space_before_comma = true ij_http-request_spaces_around_assignment_operators = true [{*.markdown,*.md}] ij_markdown_force_one_space_after_blockquote_symbol = true -ij_markdown_force_one_space_after_header_symbol = true -ij_markdown_force_one_space_after_list_bullet = true -ij_markdown_force_one_space_between_words = true -ij_markdown_format_tables = true -ij_markdown_insert_quote_arrows_on_wrap = true -ij_markdown_keep_indents_on_empty_lines = false -ij_markdown_keep_line_breaks_inside_text_blocks = true -ij_markdown_max_lines_around_block_elements = 1 -ij_markdown_max_lines_around_header = 1 -ij_markdown_max_lines_between_paragraphs = 1 -ij_markdown_min_lines_around_block_elements = 1 -ij_markdown_min_lines_around_header = 1 -ij_markdown_min_lines_between_paragraphs = 1 -ij_markdown_wrap_text_if_long = true -ij_markdown_wrap_text_inside_blockquotes = true +ij_markdown_force_one_space_after_header_symbol = true +ij_markdown_force_one_space_after_list_bullet = true +ij_markdown_force_one_space_between_words = true +ij_markdown_format_tables = true +ij_markdown_insert_quote_arrows_on_wrap = true +ij_markdown_keep_indents_on_empty_lines = false +ij_markdown_keep_line_breaks_inside_text_blocks = true +ij_markdown_max_lines_around_block_elements = 1 +ij_markdown_max_lines_around_header = 1 +ij_markdown_max_lines_between_paragraphs = 1 +ij_markdown_min_lines_around_block_elements = 1 +ij_markdown_min_lines_around_header = 1 +ij_markdown_min_lines_between_paragraphs = 1 +ij_markdown_wrap_text_if_long = true +ij_markdown_wrap_text_inside_blockquotes = true [{*.ps1,*.psd1,*.psm1}] -max_line_length = 115 -ij_powershell_align_multiline_binary_operation = true -ij_powershell_align_multiline_chained_methods = false -ij_powershell_align_multiline_for = true -ij_powershell_align_multiline_parameters = true -ij_powershell_align_multiline_parameters_in_calls = false -ij_powershell_binary_operation_wrap = on_every_item -ij_powershell_block_brace_style = next_line -ij_powershell_call_parameters_new_line_after_left_paren = false -ij_powershell_call_parameters_right_paren_on_new_line = false -ij_powershell_call_parameters_wrap = on_every_item -ij_powershell_catch_on_new_line = true -ij_powershell_class_annotation_wrap = split_into_lines -ij_powershell_class_brace_style = next_line -ij_powershell_else_on_new_line = true -ij_powershell_field_annotation_wrap = off -ij_powershell_finally_on_new_line = true -ij_powershell_for_statement_new_line_after_left_paren = false -ij_powershell_for_statement_right_paren_on_new_line = false -ij_powershell_for_statement_wrap = on_every_item -ij_powershell_keep_blank_lines_in_code = 2 -ij_powershell_keep_first_column_comment = true -ij_powershell_keep_line_breaks = true -ij_powershell_keep_simple_blocks_in_one_line = true -ij_powershell_keep_simple_classes_in_one_line = false -ij_powershell_keep_simple_lambdas_in_one_line = true -ij_powershell_keep_simple_methods_in_one_line = true -ij_powershell_method_annotation_wrap = split_into_lines -ij_powershell_method_brace_style = next_line -ij_powershell_method_call_chain_wrap = on_every_item -ij_powershell_method_parameters_new_line_after_left_paren = false -ij_powershell_method_parameters_right_paren_on_new_line = false -ij_powershell_method_parameters_wrap = on_every_item -ij_powershell_parameter_annotation_wrap = off +max_line_length = 115 +ij_powershell_align_multiline_binary_operation = true +ij_powershell_align_multiline_chained_methods = false +ij_powershell_align_multiline_for = true +ij_powershell_align_multiline_parameters = true +ij_powershell_align_multiline_parameters_in_calls = false +ij_powershell_binary_operation_wrap = on_every_item +ij_powershell_block_brace_style = next_line +ij_powershell_call_parameters_new_line_after_left_paren = false +ij_powershell_call_parameters_right_paren_on_new_line = false +ij_powershell_call_parameters_wrap = on_every_item +ij_powershell_catch_on_new_line = true +ij_powershell_class_annotation_wrap = split_into_lines +ij_powershell_class_brace_style = next_line +ij_powershell_else_on_new_line = true +ij_powershell_field_annotation_wrap = off +ij_powershell_finally_on_new_line = true +ij_powershell_for_statement_new_line_after_left_paren = false +ij_powershell_for_statement_right_paren_on_new_line = false +ij_powershell_for_statement_wrap = on_every_item +ij_powershell_keep_blank_lines_in_code = 2 +ij_powershell_keep_first_column_comment = true +ij_powershell_keep_line_breaks = true +ij_powershell_keep_simple_blocks_in_one_line = true +ij_powershell_keep_simple_classes_in_one_line = false +ij_powershell_keep_simple_lambdas_in_one_line = true +ij_powershell_keep_simple_methods_in_one_line = true +ij_powershell_method_annotation_wrap = split_into_lines +ij_powershell_method_brace_style = next_line +ij_powershell_method_call_chain_wrap = on_every_item +ij_powershell_method_parameters_new_line_after_left_paren = false +ij_powershell_method_parameters_right_paren_on_new_line = false +ij_powershell_method_parameters_wrap = on_every_item +ij_powershell_parameter_annotation_wrap = off ij_powershell_parentheses_expression_new_line_after_left_paren = false -ij_powershell_parentheses_expression_right_paren_on_new_line = false -ij_powershell_space_after_colon = true -ij_powershell_space_after_comma = true -ij_powershell_space_after_for_semicolon = true -ij_powershell_space_after_type_cast = false -ij_powershell_space_before_annotation_parameter_list = false -ij_powershell_space_before_array_initializer_left_brace = false -ij_powershell_space_before_catch_keyword = true -ij_powershell_space_before_catch_left_brace = false -ij_powershell_space_before_class_left_brace = false -ij_powershell_space_before_colon = true -ij_powershell_space_before_comma = false -ij_powershell_space_before_do_left_brace = false -ij_powershell_space_before_else_keyword = true -ij_powershell_space_before_else_left_brace = false -ij_powershell_space_before_finally_keyword = true -ij_powershell_space_before_finally_left_brace = false -ij_powershell_space_before_for_left_brace = false -ij_powershell_space_before_for_parentheses = false -ij_powershell_space_before_for_semicolon = false -ij_powershell_space_before_if_left_brace = false -ij_powershell_space_before_if_parentheses = false -ij_powershell_space_before_method_call_parentheses = false -ij_powershell_space_before_method_left_brace = false -ij_powershell_space_before_method_parentheses = false -ij_powershell_space_before_switch_left_brace = false -ij_powershell_space_before_switch_parentheses = false -ij_powershell_space_before_try_left_brace = false -ij_powershell_space_before_while_keyword = true -ij_powershell_space_before_while_left_brace = false -ij_powershell_space_before_while_parentheses = false -ij_powershell_space_within_empty_method_call_parentheses = false -ij_powershell_space_within_empty_method_parentheses = false -ij_powershell_spaces_around_additive_operators = true -ij_powershell_spaces_around_assignment_operators = true -ij_powershell_spaces_around_bitwise_operators = true -ij_powershell_spaces_around_logical_operators = true -ij_powershell_spaces_around_method_ref_dbl_colon = false -ij_powershell_spaces_around_multiplicative_operators = true -ij_powershell_spaces_around_relational_operators = true -ij_powershell_spaces_around_unary_operator = false -ij_powershell_spaces_within_annotation_parentheses = false -ij_powershell_spaces_within_braces = true -ij_powershell_spaces_within_brackets = false -ij_powershell_spaces_within_cast_parentheses = false -ij_powershell_spaces_within_for_parentheses = false -ij_powershell_spaces_within_if_parentheses = false -ij_powershell_spaces_within_method_call_parentheses = false -ij_powershell_spaces_within_method_parentheses = false -ij_powershell_spaces_within_parentheses = false -ij_powershell_spaces_within_switch_parentheses = false -ij_powershell_spaces_within_while_parentheses = false -ij_powershell_special_else_if_treatment = true -ij_powershell_while_on_new_line = false -ij_powershell_wrap_first_method_in_call_chain = false -ij_powershell_wrap_long_lines = false +ij_powershell_parentheses_expression_right_paren_on_new_line = false +ij_powershell_space_after_colon = true +ij_powershell_space_after_comma = true +ij_powershell_space_after_for_semicolon = true +ij_powershell_space_after_type_cast = false +ij_powershell_space_before_annotation_parameter_list = false +ij_powershell_space_before_array_initializer_left_brace = false +ij_powershell_space_before_catch_keyword = true +ij_powershell_space_before_catch_left_brace = false +ij_powershell_space_before_class_left_brace = false +ij_powershell_space_before_colon = true +ij_powershell_space_before_comma = false +ij_powershell_space_before_do_left_brace = false +ij_powershell_space_before_else_keyword = true +ij_powershell_space_before_else_left_brace = false +ij_powershell_space_before_finally_keyword = true +ij_powershell_space_before_finally_left_brace = false +ij_powershell_space_before_for_left_brace = false +ij_powershell_space_before_for_parentheses = false +ij_powershell_space_before_for_semicolon = false +ij_powershell_space_before_if_left_brace = false +ij_powershell_space_before_if_parentheses = false +ij_powershell_space_before_method_call_parentheses = false +ij_powershell_space_before_method_left_brace = false +ij_powershell_space_before_method_parentheses = false +ij_powershell_space_before_switch_left_brace = false +ij_powershell_space_before_switch_parentheses = false +ij_powershell_space_before_try_left_brace = false +ij_powershell_space_before_while_keyword = true +ij_powershell_space_before_while_left_brace = false +ij_powershell_space_before_while_parentheses = false +ij_powershell_space_within_empty_method_call_parentheses = false +ij_powershell_space_within_empty_method_parentheses = false +ij_powershell_spaces_around_additive_operators = true +ij_powershell_spaces_around_assignment_operators = true +ij_powershell_spaces_around_bitwise_operators = true +ij_powershell_spaces_around_logical_operators = true +ij_powershell_spaces_around_method_ref_dbl_colon = false +ij_powershell_spaces_around_multiplicative_operators = true +ij_powershell_spaces_around_relational_operators = true +ij_powershell_spaces_around_unary_operator = false +ij_powershell_spaces_within_annotation_parentheses = false +ij_powershell_spaces_within_braces = true +ij_powershell_spaces_within_brackets = false +ij_powershell_spaces_within_cast_parentheses = false +ij_powershell_spaces_within_for_parentheses = false +ij_powershell_spaces_within_if_parentheses = false +ij_powershell_spaces_within_method_call_parentheses = false +ij_powershell_spaces_within_method_parentheses = false +ij_powershell_spaces_within_parentheses = false +ij_powershell_spaces_within_switch_parentheses = false +ij_powershell_spaces_within_while_parentheses = false +ij_powershell_special_else_if_treatment = true +ij_powershell_while_on_new_line = false +ij_powershell_wrap_first_method_in_call_chain = false +ij_powershell_wrap_long_lines = false [{*.py,*.pyw}] -ij_python_align_collections_and_comprehensions = true -ij_python_align_multiline_imports = true -ij_python_align_multiline_parameters = true -ij_python_align_multiline_parameters_in_calls = true -ij_python_blank_line_at_file_end = false -ij_python_blank_lines_after_imports = 1 -ij_python_blank_lines_after_local_imports = 0 -ij_python_blank_lines_around_class = 1 -ij_python_blank_lines_around_method = 1 -ij_python_blank_lines_around_top_level_classes_functions = 2 -ij_python_blank_lines_before_first_method = 0 -ij_python_call_parameters_new_line_after_left_paren = false -ij_python_call_parameters_right_paren_on_new_line = false -ij_python_call_parameters_wrap = on_every_item -ij_python_dict_alignment = 0 -ij_python_dict_new_line_after_left_brace = false -ij_python_dict_new_line_before_right_brace = false -ij_python_dict_wrapping = 5 -ij_python_from_import_new_line_after_left_parenthesis = false -ij_python_from_import_new_line_before_right_parenthesis = false -ij_python_from_import_parentheses_force_if_multiline = false -ij_python_from_import_trailing_comma_if_multiline = false -ij_python_from_import_wrapping = 5 -ij_python_hang_closing_brackets = true -ij_python_keep_blank_lines_in_code = 1 -ij_python_keep_blank_lines_in_declarations = 1 -ij_python_keep_indents_on_empty_lines = false -ij_python_keep_line_breaks = true -ij_python_method_parameters_new_line_after_left_paren = false -ij_python_method_parameters_right_paren_on_new_line = false -ij_python_method_parameters_wrap = on_every_item -ij_python_new_line_after_colon = false -ij_python_new_line_after_colon_multi_clause = true -ij_python_optimize_imports_always_split_from_imports = false -ij_python_optimize_imports_case_insensitive_order = true -ij_python_optimize_imports_join_from_imports_with_same_source = false -ij_python_optimize_imports_sort_by_type_first = true -ij_python_optimize_imports_sort_imports = true -ij_python_optimize_imports_sort_names_in_from_imports = true -ij_python_space_after_comma = true -ij_python_space_after_number_sign = true -ij_python_space_after_py_colon = true -ij_python_space_before_backslash = true -ij_python_space_before_comma = false -ij_python_space_before_for_semicolon = false -ij_python_space_before_lbracket = false -ij_python_space_before_method_call_parentheses = false -ij_python_space_before_method_parentheses = false -ij_python_space_before_number_sign = true -ij_python_space_before_py_colon = false -ij_python_space_within_empty_method_call_parentheses = false -ij_python_space_within_empty_method_parentheses = false -ij_python_spaces_around_additive_operators = true -ij_python_spaces_around_assignment_operators = true -ij_python_spaces_around_bitwise_operators = true -ij_python_spaces_around_eq_in_keyword_argument = false -ij_python_spaces_around_eq_in_named_parameter = false -ij_python_spaces_around_equality_operators = true -ij_python_spaces_around_multiplicative_operators = true -ij_python_spaces_around_power_operator = true -ij_python_spaces_around_relational_operators = true -ij_python_spaces_around_shift_operators = true -ij_python_spaces_within_braces = false -ij_python_spaces_within_brackets = false -ij_python_spaces_within_method_call_parentheses = false -ij_python_spaces_within_method_parentheses = false -ij_python_use_continuation_indent_for_arguments = false +ij_python_align_collections_and_comprehensions = true +ij_python_align_multiline_imports = true +ij_python_align_multiline_parameters = true +ij_python_align_multiline_parameters_in_calls = true +ij_python_blank_line_at_file_end = false +ij_python_blank_lines_after_imports = 1 +ij_python_blank_lines_after_local_imports = 0 +ij_python_blank_lines_around_class = 1 +ij_python_blank_lines_around_method = 1 +ij_python_blank_lines_around_top_level_classes_functions = 2 +ij_python_blank_lines_before_first_method = 0 +ij_python_call_parameters_new_line_after_left_paren = false +ij_python_call_parameters_right_paren_on_new_line = false +ij_python_call_parameters_wrap = on_every_item +ij_python_dict_alignment = 0 +ij_python_dict_new_line_after_left_brace = false +ij_python_dict_new_line_before_right_brace = false +ij_python_dict_wrapping = 5 +ij_python_from_import_new_line_after_left_parenthesis = false +ij_python_from_import_new_line_before_right_parenthesis = false +ij_python_from_import_parentheses_force_if_multiline = false +ij_python_from_import_trailing_comma_if_multiline = false +ij_python_from_import_wrapping = 5 +ij_python_hang_closing_brackets = true +ij_python_keep_blank_lines_in_code = 1 +ij_python_keep_blank_lines_in_declarations = 1 +ij_python_keep_indents_on_empty_lines = false +ij_python_keep_line_breaks = true +ij_python_method_parameters_new_line_after_left_paren = false +ij_python_method_parameters_right_paren_on_new_line = false +ij_python_method_parameters_wrap = on_every_item +ij_python_new_line_after_colon = false +ij_python_new_line_after_colon_multi_clause = true +ij_python_optimize_imports_always_split_from_imports = false +ij_python_optimize_imports_case_insensitive_order = true +ij_python_optimize_imports_join_from_imports_with_same_source = false +ij_python_optimize_imports_sort_by_type_first = true +ij_python_optimize_imports_sort_imports = true +ij_python_optimize_imports_sort_names_in_from_imports = true +ij_python_space_after_comma = true +ij_python_space_after_number_sign = true +ij_python_space_after_py_colon = true +ij_python_space_before_backslash = true +ij_python_space_before_comma = false +ij_python_space_before_for_semicolon = false +ij_python_space_before_lbracket = false +ij_python_space_before_method_call_parentheses = false +ij_python_space_before_method_parentheses = false +ij_python_space_before_number_sign = true +ij_python_space_before_py_colon = false +ij_python_space_within_empty_method_call_parentheses = false +ij_python_space_within_empty_method_parentheses = false +ij_python_spaces_around_additive_operators = true +ij_python_spaces_around_assignment_operators = true +ij_python_spaces_around_bitwise_operators = true +ij_python_spaces_around_eq_in_keyword_argument = false +ij_python_spaces_around_eq_in_named_parameter = false +ij_python_spaces_around_equality_operators = true +ij_python_spaces_around_multiplicative_operators = true +ij_python_spaces_around_power_operator = true +ij_python_spaces_around_relational_operators = true +ij_python_spaces_around_shift_operators = true +ij_python_spaces_within_braces = false +ij_python_spaces_within_brackets = false +ij_python_spaces_within_method_call_parentheses = false +ij_python_spaces_within_method_parentheses = false +ij_python_use_continuation_indent_for_arguments = false ij_python_use_continuation_indent_for_collection_and_comprehensions = false -ij_python_use_continuation_indent_for_parameters = true -ij_python_wrap_long_lines = false +ij_python_use_continuation_indent_for_parameters = true +ij_python_wrap_long_lines = false [{*.toml,Cargo.lock,Cargo.toml.orig,Gopkg.lock,Pipfile,poetry.lock}] ij_toml_keep_indents_on_empty_lines = false [{*.yaml,*.yml,pubspec.lock}] -indent_size = 2 -ij_yaml_align_values_properties = on_value -ij_yaml_autoinsert_sequence_marker = true -ij_yaml_block_mapping_on_new_line = false -ij_yaml_indent_sequence_value = true +indent_size = 2 +ij_yaml_align_values_properties = on_value +ij_yaml_autoinsert_sequence_marker = true +ij_yaml_block_mapping_on_new_line = false +ij_yaml_indent_sequence_value = true ij_yaml_keep_indents_on_empty_lines = false -ij_yaml_keep_line_breaks = true -ij_yaml_sequence_on_new_line = false -ij_yaml_space_before_colon = false -ij_yaml_spaces_within_braces = true -ij_yaml_spaces_within_brackets = true -indent_style = space +ij_yaml_keep_line_breaks = true +ij_yaml_sequence_on_new_line = false +ij_yaml_space_before_colon = false +ij_yaml_spaces_within_braces = true +ij_yaml_spaces_within_brackets = true +indent_style = space [*.{appxmanifest,asax,ascx,aspx,axaml,build,c,c++,cc,cginc,compute,cp,cpp,cppm,cs,cshtml,cu,cuh,cxx,dtd,fs,fsi,fsscript,fsx,fx,fxh,h,hh,hlsl,hlsli,hlslinc,hpp,hxx,inc,inl,ino,ipp,ixx,master,ml,mli,mpp,mq4,mq5,mqh,nuspec,paml,razor,resw,resx,shader,skin,tpp,usf,ush,uxml,vb,xaml,xamlx,xoml,xsd}] indent_style = space -indent_size = 4 -tab_width = 4 +indent_size = 4 +tab_width = 4 diff --git a/Aaru.Decryption.csproj b/Aaru.Decryption.csproj index 036ceda..998f3da 100644 --- a/Aaru.Decryption.csproj +++ b/Aaru.Decryption.csproj @@ -33,8 +33,8 @@ CS1591;CS1574 - - + + $(Version)+{chash:8} @@ -43,9 +43,9 @@ - - - + + + diff --git a/Aaru.Decryption.csproj.DotSettings b/Aaru.Decryption.csproj.DotSettings index dc0dbdc..67ed7f8 100644 --- a/Aaru.Decryption.csproj.DotSettings +++ b/Aaru.Decryption.csproj.DotSettings @@ -1,2 +1,5 @@ - + True \ No newline at end of file diff --git a/DVD/CSS.cs b/DVD/CSS.cs index 3a28055..08f84c1 100644 --- a/DVD/CSS.cs +++ b/DVD/CSS.cs @@ -58,99 +58,17 @@ public class CSS { static readonly byte[,] _playerKeys = { - { - 0x01, 0xaf, 0xe3, 0x12, 0x80 - }, - { - 0x12, 0x11, 0xca, 0x04, 0x3b - }, - { - 0x14, 0x0c, 0x9e, 0xd0, 0x09 - }, - { - 0x14, 0x71, 0x35, 0xba, 0xe2 - }, - { - 0x1a, 0xa4, 0x33, 0x21, 0xa6 - }, - { - 0x26, 0xec, 0xc4, 0xa7, 0x4e - }, - { - 0x2c, 0xb2, 0xc1, 0x09, 0xee - }, - { - 0x2f, 0x25, 0x9e, 0x96, 0xdd - }, - { - 0x33, 0x2f, 0x49, 0x6c, 0xe0 - }, - { - 0x35, 0x5b, 0xc1, 0x31, 0x0f - }, - { - 0x36, 0x67, 0xb2, 0xe3, 0x85 - }, - { - 0x39, 0x3d, 0xf1, 0xf1, 0xbd - }, - { - 0x3b, 0x31, 0x34, 0x0d, 0x91 - }, - { - 0x45, 0xed, 0x28, 0xeb, 0xd3 - }, - { - 0x48, 0xb7, 0x6c, 0xce, 0x69 - }, - { - 0x4b, 0x65, 0x0d, 0xc1, 0xee - }, - { - 0x4c, 0xbb, 0xf5, 0x5b, 0x23 - }, - { - 0x51, 0x67, 0x67, 0xc5, 0xe0 - }, - { - 0x53, 0x94, 0xe1, 0x75, 0xbf - }, - { - 0x57, 0x2c, 0x8b, 0x31, 0xae - }, - { - 0x63, 0xdb, 0x4c, 0x5b, 0x4a - }, - { - 0x7b, 0x1e, 0x5e, 0x2b, 0x57 - }, - { - 0x85, 0xf3, 0x85, 0xa0, 0xe0 - }, - { - 0xab, 0x1e, 0xe7, 0x7b, 0x72 - }, - { - 0xab, 0x36, 0xe3, 0xeb, 0x76 - }, - { - 0xb1, 0xb8, 0xf9, 0x38, 0x03 - }, - { - 0xb8, 0x5d, 0xd8, 0x53, 0xbd - }, - { - 0xbf, 0x92, 0xc3, 0xb0, 0xe2 - }, - { - 0xcf, 0x1a, 0xb2, 0xf8, 0x0a - }, - { - 0xec, 0xa0, 0xcf, 0xb3, 0xff - }, - { - 0xfc, 0x95, 0xa9, 0x87, 0x35 - } + { 0x01, 0xaf, 0xe3, 0x12, 0x80 }, { 0x12, 0x11, 0xca, 0x04, 0x3b }, { 0x14, 0x0c, 0x9e, 0xd0, 0x09 }, + { 0x14, 0x71, 0x35, 0xba, 0xe2 }, { 0x1a, 0xa4, 0x33, 0x21, 0xa6 }, { 0x26, 0xec, 0xc4, 0xa7, 0x4e }, + { 0x2c, 0xb2, 0xc1, 0x09, 0xee }, { 0x2f, 0x25, 0x9e, 0x96, 0xdd }, { 0x33, 0x2f, 0x49, 0x6c, 0xe0 }, + { 0x35, 0x5b, 0xc1, 0x31, 0x0f }, { 0x36, 0x67, 0xb2, 0xe3, 0x85 }, { 0x39, 0x3d, 0xf1, 0xf1, 0xbd }, + { 0x3b, 0x31, 0x34, 0x0d, 0x91 }, { 0x45, 0xed, 0x28, 0xeb, 0xd3 }, { 0x48, 0xb7, 0x6c, 0xce, 0x69 }, + { 0x4b, 0x65, 0x0d, 0xc1, 0xee }, { 0x4c, 0xbb, 0xf5, 0x5b, 0x23 }, { 0x51, 0x67, 0x67, 0xc5, 0xe0 }, + { 0x53, 0x94, 0xe1, 0x75, 0xbf }, { 0x57, 0x2c, 0x8b, 0x31, 0xae }, { 0x63, 0xdb, 0x4c, 0x5b, 0x4a }, + { 0x7b, 0x1e, 0x5e, 0x2b, 0x57 }, { 0x85, 0xf3, 0x85, 0xa0, 0xe0 }, { 0xab, 0x1e, 0xe7, 0x7b, 0x72 }, + { 0xab, 0x36, 0xe3, 0xeb, 0x76 }, { 0xb1, 0xb8, 0xf9, 0x38, 0x03 }, { 0xb8, 0x5d, 0xd8, 0x53, 0xbd }, + { 0xbf, 0x92, 0xc3, 0xb0, 0xe2 }, { 0xcf, 0x1a, 0xb2, 0xf8, 0x0a }, { 0xec, 0xa0, 0xcf, 0xb3, 0xff }, + { 0xfc, 0x95, 0xa9, 0x87, 0x35 } }; static readonly byte[] _cssTable1 = @@ -341,15 +259,7 @@ public class CSS static readonly byte[,] _permutationChallenge = { - { - 1, 3, 0, 7, 5, 2, 9, 6, 4, 8 - }, - { - 6, 1, 9, 3, 8, 5, 7, 4, 0, 2 - }, - { - 4, 0, 3, 5, 7, 2, 8, 6, 1, 9 - } + { 1, 3, 0, 7, 5, 2, 9, 6, 4, 8 }, { 6, 1, 9, 3, 8, 5, 7, 4, 0, 2 }, { 4, 0, 3, 5, 7, 2, 8, 6, 1, 9 } }; static readonly byte[,] _permutationVariant = @@ -370,10 +280,7 @@ public class CSS 0xF2, 0x2A, 0x79, 0x52, 0xFF, 0x1B, 0x7A, 0x11, 0xCA, 0x1A, 0x9B, 0x40, 0xAD, 0x01 }; - static readonly byte[] _secret = - { - 0x55, 0xD6, 0xC4, 0xC5, 0x28 - }; + static readonly byte[] _secret = { 0x55, 0xD6, 0xC4, 0xC5, 0x28 }; /// /// The disc key returned by the logical unit is encoded with the bus key to prevent man-in-the-middle attacks. @@ -391,7 +298,7 @@ public class CSS byte[] key = response.Skip(4).Take(2048).ToArray(); for(uint i = 0; i < key.Length; i++) - key[i] ^= busKey[4 - (i % busKey.Length)]; + key[i] ^= busKey[4 - i % busKey.Length]; return new CSS_CPRM.DiscKey { @@ -418,7 +325,7 @@ public class CSS byte[] key = response.Skip(5).Take(5).ToArray(); for(uint i = 0; i < key.Length; i++) - key[i] ^= busKey[4 - (i % busKey.Length)]; + key[i] ^= busKey[4 - i % busKey.Length]; return new CSS_CPRM.TitleKey { @@ -440,49 +347,49 @@ public class CSS /// The encrypted key. public static void EncryptKey(DvdCssKeyType keyType, uint variant, byte[] challenge, out byte[] key) { - byte[] bits = new byte[30]; - byte[] scratch = new byte[10]; - byte index = sizeof(byte) * 30; - byte[] temp1 = new byte[5]; - byte[] temp2 = new byte[5]; - byte carry = 0; + var bits = new byte[30]; + var scratch = new byte[10]; + byte index = sizeof(byte) * 30; + var temp1 = new byte[5]; + var temp2 = new byte[5]; + byte carry = 0; key = new byte[5]; - for(int i = 9; i >= 0; --i) + for(var i = 9; i >= 0; --i) scratch[i] = challenge[_permutationChallenge[(uint)keyType, i]]; - byte cssVariant = (byte)(keyType == 0 ? variant : _permutationVariant[(uint)keyType - 1, variant]); + var cssVariant = (byte)(keyType == 0 ? variant : _permutationVariant[(uint)keyType - 1, variant]); - for(int i = 5; --i >= 0;) + for(var i = 5; --i >= 0;) temp1[i] = (byte)(scratch[5 + i] ^ _secret[i] ^ _encryptTable2[i]); - uint lfsr0 = (uint)((temp1[0] << 17) | (temp1[1] << 9) | ((temp1[2] & ~7) << 1) | 8 | (temp1[2] & 7)); - uint lfsr1 = (uint)((temp1[3] << 9) | 0x100 | temp1[4]); + var lfsr0 = (uint)(temp1[0] << 17 | temp1[1] << 9 | (temp1[2] & ~7) << 1 | 8 | temp1[2] & 7); + var lfsr1 = (uint)(temp1[3] << 9 | 0x100 | temp1[4]); do { byte val = 0; - for(int bit = 0; bit < 8; ++bit) + for(var bit = 0; bit < 8; ++bit) { - byte oLfsr0 = (byte)(((lfsr0 >> 24) ^ (lfsr0 >> 21) ^ (lfsr0 >> 20) ^ (lfsr0 >> 12)) & 1); - lfsr0 = (lfsr0 << 1) | oLfsr0; + var oLfsr0 = (byte)((lfsr0 >> 24 ^ lfsr0 >> 21 ^ lfsr0 >> 20 ^ lfsr0 >> 12) & 1); + lfsr0 = lfsr0 << 1 | oLfsr0; - byte oLfsr1 = (byte)(((lfsr1 >> 16) ^ (lfsr1 >> 2)) & 1); - lfsr1 = (lfsr1 << 1) | oLfsr1; + var oLfsr1 = (byte)((lfsr1 >> 16 ^ lfsr1 >> 2) & 1); + lfsr1 = lfsr1 << 1 | oLfsr1; - byte combined = (byte)(Convert.ToByte(oLfsr1 == 0) + carry + Convert.ToByte(oLfsr0 == 0)); - carry = (byte)((combined >> 1) & 1); + var combined = (byte)(Convert.ToByte(oLfsr1 == 0) + carry + Convert.ToByte(oLfsr0 == 0)); + carry = (byte)(combined >> 1 & 1); val |= (byte)((combined & 1) << bit); } bits[--index] = val; } while(index > 0); - byte cse = (byte)(_variants[cssVariant] ^ _encryptTable2[cssVariant]); - int term = 0; + var cse = (byte)(_variants[cssVariant] ^ _encryptTable2[cssVariant]); + var term = 0; - for(int i = 5; --i >= 0; term = scratch[i]) + for(var i = 5; --i >= 0; term = scratch[i]) { index = (byte)(bits[25 + i] ^ scratch[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -493,7 +400,7 @@ public class CSS temp1[4] ^= temp1[0]; term = 0; - for(int i = 5; --i >= 0; term = temp1[i]) + for(var i = 5; --i >= 0; term = temp1[i]) { index = (byte)(bits[20 + i] ^ temp1[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -504,7 +411,7 @@ public class CSS temp2[4] ^= temp2[0]; term = 0; - for(int i = 5; --i >= 0; term = temp2[i]) + for(var i = 5; --i >= 0; term = temp2[i]) { index = (byte)(bits[15 + i] ^ temp2[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -516,7 +423,7 @@ public class CSS temp1[4] ^= temp1[0]; term = 0; - for(int i = 5; --i >= 0; term = temp1[i]) + for(var i = 5; --i >= 0; term = temp1[i]) { index = (byte)(bits[10 + i] ^ temp1[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -528,7 +435,7 @@ public class CSS temp2[4] ^= temp2[0]; term = 0; - for(int i = 5; --i >= 0; term = temp2[i]) + for(var i = 5; --i >= 0; term = temp2[i]) { index = (byte)(bits[5 + i] ^ temp2[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -539,7 +446,7 @@ public class CSS temp1[4] ^= temp1[0]; term = 0; - for(int i = 5; --i >= 0; term = temp1[i]) + for(var i = 5; --i >= 0; term = temp1[i]) { index = (byte)(bits[i] ^ temp1[i]); index = (byte)(_encryptTable1[index] ^ ~_encryptTable2[index] ^ cse); @@ -556,27 +463,27 @@ public class CSS static void DecryptKey(byte invert, byte[] cryptoKey, byte[] encryptedKey, out byte[] decryptedKey) { decryptedKey = new byte[5]; - byte[] k = new byte[5]; + var k = new byte[5]; - uint lfsr1Lo = (uint)(cryptoKey[0] | 0x100); + var lfsr1Lo = (uint)(cryptoKey[0] | 0x100); uint lfsr1Hi = cryptoKey[1]; - uint lfsr0 = (uint)(((cryptoKey[4] << 17) | (cryptoKey[3] << 9) | (cryptoKey[2] << 1)) + 8 - - (cryptoKey[2] & 7)); + var lfsr0 = (uint)((cryptoKey[4] << 17 | cryptoKey[3] << 9 | cryptoKey[2] << 1) + 8 - + (cryptoKey[2] & 7)); - lfsr0 = (uint)((_cssTable4[lfsr0 & 0xff] << 24) | (_cssTable4[(lfsr0 >> 8) & 0xff] << 16) | - (_cssTable4[(lfsr0 >> 16) & 0xff] << 8) | _cssTable4[(lfsr0 >> 24) & 0xff]); + lfsr0 = (uint)(_cssTable4[lfsr0 & 0xff] << 24 | _cssTable4[lfsr0 >> 8 & 0xff] << 16 | + _cssTable4[lfsr0 >> 16 & 0xff] << 8 | _cssTable4[lfsr0 >> 24 & 0xff]); uint combined = 0; for(uint i = 0; i < 5; i++) { - byte oLfsr1 = (byte)(_cssTable2[lfsr1Hi] ^ _cssTable3[lfsr1Lo]); + var oLfsr1 = (byte)(_cssTable2[lfsr1Hi] ^ _cssTable3[lfsr1Lo]); lfsr1Hi = lfsr1Lo >> 1; - lfsr1Lo = ((lfsr1Lo & 1) << 8) ^ oLfsr1; + lfsr1Lo = (lfsr1Lo & 1) << 8 ^ oLfsr1; oLfsr1 = _cssTable4[oLfsr1]; - byte oLfsr0 = (byte)(((((((lfsr0 >> 8) ^ lfsr0) >> 1) ^ lfsr0) >> 3) ^ lfsr0) >> 7); - lfsr0 = (lfsr0 >> 8) | ((uint)oLfsr0 << 24); + var oLfsr0 = (byte)((((lfsr0 >> 8 ^ lfsr0) >> 1 ^ lfsr0) >> 3 ^ lfsr0) >> 7); + lfsr0 = lfsr0 >> 8 | (uint)oLfsr0 << 24; combined += (uint)((oLfsr0 ^ invert) + oLfsr1); k[i] = (byte)(combined & 0xff); combined >>= 8; @@ -636,14 +543,14 @@ public class CSS /// Size of one sector. /// The decrypted sector. public static byte[] DecryptSector(byte[] sectorData, byte[] keyData, byte[]? cmiData, uint blocks = 1, - uint blockSize = 2048) + uint blockSize = 2048) { // None of the sectors are encrypted - if((cmiData != null && cmiData.All(static cmi => (cmi & 0x80) >> 7 == 0)) || + if(cmiData != null && cmiData.All(static cmi => (cmi & 0x80) >> 7 == 0) || keyData.All(static k => k == 0)) return sectorData; - byte[] decryptedBuffer = new byte[sectorData.Length]; + var decryptedBuffer = new byte[sectorData.Length]; for(uint i = 0; i < blocks; i++) { @@ -665,21 +572,21 @@ public class CSS } /// - /// Unscrambles a DVD sector with a title key. + /// Unscrambles a DVD sector with a title key. /// /// The title key. /// The scrambled sector. /// The unscrambled sector. static byte[] UnscrambleSector(IReadOnlyList key, byte[] sector) { - long lfsr1Lo = (key[0] ^ sector[0x54]) | 0x100; + long lfsr1Lo = key[0] ^ sector[0x54] | 0x100; long lfsr1Hi = key[1] ^ sector[0x55]; - long lfsr0 = (key[2] | (key[3] << 8) | (key[4] << 16)) ^ - (sector[0x56] | (sector[0x57] << 8) | (sector[0x58] << 16)); + long lfsr0 = (key[2] | key[3] << 8 | key[4] << 16) ^ + (sector[0x56] | sector[0x57] << 8 | sector[0x58] << 16); long oLfsr1 = lfsr0 & 7; - lfsr0 = (lfsr0 * 2) + 8 - oLfsr1; + lfsr0 = lfsr0 * 2 + 8 - oLfsr1; long combined = 0; @@ -687,13 +594,13 @@ public class CSS { oLfsr1 = _cssTable2[lfsr1Hi] ^ _cssTable3[lfsr1Lo]; lfsr1Hi = lfsr1Lo >> 1; - lfsr1Lo = ((lfsr1Lo & 1) << 8) ^ oLfsr1; + lfsr1Lo = (lfsr1Lo & 1) << 8 ^ oLfsr1; oLfsr1 = _cssTable5[oLfsr1]; - long oLfsr0 = (((((((lfsr0 >> 3) ^ lfsr0) >> 1) ^ lfsr0) >> 8) ^ lfsr0) >> 5) & 0xff; - lfsr0 = (lfsr0 << 8) | oLfsr0; + long oLfsr0 = (((lfsr0 >> 3 ^ lfsr0) >> 1 ^ lfsr0) >> 8 ^ lfsr0) >> 5 & 0xff; + lfsr0 = lfsr0 << 8 | oLfsr0; oLfsr0 = _cssTable4[oLfsr0]; combined += oLfsr0 + oLfsr1; - sector[i] = (byte)(_cssTable1[sector[i]] ^ (combined & 0xff)); + sector[i] = (byte)(_cssTable1[sector[i]] ^ combined & 0xff); combined >>= 8; } @@ -705,14 +612,17 @@ public class CSS } /// - /// Analyzes data to try to figure out if the sector is encrypted, including - /// - /// If the packet is not an MPEG packet - /// If the CMI tells us the sector isn't encrypted - /// If the key is all zeroes - /// If the MPEG Packetized Elementary Stream scrambling control value tells us the packet is not scrambled - /// If if the packet is system_header, padding_stream or private_stream2 (cannot be encrypted according to libdvdcss) - /// + /// Analyzes data to try to figure out if the sector is encrypted, including + /// + /// If the packet is not an MPEG packet + /// If the CMI tells us the sector isn't encrypted + /// If the key is all zeroes + /// If the MPEG Packetized Elementary Stream scrambling control value tells us the packet is not scrambled + /// + /// If if the packet is system_header, padding_stream or private_stream2 (cannot be encrypted according to + /// libdvdcss) + /// + /// /// /// The Copyright Management Information. /// The title key. @@ -754,21 +664,21 @@ public class CSS if(cmi.RegionInformation is 0xFF or 0x00) return true; - return ((rpc.RegionMask & 0x01) == (cmi.RegionInformation & 0x01) && (rpc.RegionMask & 0x01) != 0x01) || - ((rpc.RegionMask & 0x02) == (cmi.RegionInformation & 0x02) && (rpc.RegionMask & 0x02) != 0x02) || - ((rpc.RegionMask & 0x04) == (cmi.RegionInformation & 0x04) && (rpc.RegionMask & 0x04) != 0x04) || - ((rpc.RegionMask & 0x08) == (cmi.RegionInformation & 0x08) && (rpc.RegionMask & 0x08) != 0x08) || - ((rpc.RegionMask & 0x10) == (cmi.RegionInformation & 0x10) && (rpc.RegionMask & 0x10) != 0x10) || - ((rpc.RegionMask & 0x20) == (cmi.RegionInformation & 0x20) && (rpc.RegionMask & 0x20) != 0x20) || - ((rpc.RegionMask & 0x40) == (cmi.RegionInformation & 0x40) && (rpc.RegionMask & 0x40) != 0x40) || - ((rpc.RegionMask & 0x80) == (cmi.RegionInformation & 0x80) && (rpc.RegionMask & 0x80) != 0x80); + return (rpc.RegionMask & 0x01) == (cmi.RegionInformation & 0x01) && (rpc.RegionMask & 0x01) != 0x01 || + (rpc.RegionMask & 0x02) == (cmi.RegionInformation & 0x02) && (rpc.RegionMask & 0x02) != 0x02 || + (rpc.RegionMask & 0x04) == (cmi.RegionInformation & 0x04) && (rpc.RegionMask & 0x04) != 0x04 || + (rpc.RegionMask & 0x08) == (cmi.RegionInformation & 0x08) && (rpc.RegionMask & 0x08) != 0x08 || + (rpc.RegionMask & 0x10) == (cmi.RegionInformation & 0x10) && (rpc.RegionMask & 0x10) != 0x10 || + (rpc.RegionMask & 0x20) == (cmi.RegionInformation & 0x20) && (rpc.RegionMask & 0x20) != 0x20 || + (rpc.RegionMask & 0x40) == (cmi.RegionInformation & 0x40) && (rpc.RegionMask & 0x40) != 0x40 || + (rpc.RegionMask & 0x80) == (cmi.RegionInformation & 0x80) && (rpc.RegionMask & 0x80) != 0x80; } /// - /// This tries to find a title key for a range of sectors by doing a brute force pattern search developed by - /// Ethan Hawke of DeCSSPlus. CSS encrypted sectors have parts of them that are unencrypted (byte 0x0 - 0x80). - /// We try to find a long pattern of repeated bytes just before the encryption starts. If we assume this - /// pattern continues into the encrypted part, we can force keys until one of them satisfies this condition. + /// This tries to find a title key for a range of sectors by doing a brute force pattern search developed by + /// Ethan Hawke of DeCSSPlus. CSS encrypted sectors have parts of them that are unencrypted (byte 0x0 - 0x80). + /// We try to find a long pattern of repeated bytes just before the encryption starts. If we assume this + /// pattern continues into the encrypted part, we can force keys until one of them satisfies this condition. /// /// The sector to analyze. /// The key found. @@ -782,7 +692,7 @@ public class CSS for(uint i = 2; i < 0x30; i++) { // Find the number of bytes that repeats in cycles. - for(uint j = i + 1; j < 0x80 && sector[0x7F - (j % i)] == sector[0x7F - j]; j++) + for(uint j = i + 1; j < 0x80 && sector[0x7F - j % i] == sector[0x7F - j]; j++) { if(j <= bestPatternLength) continue; @@ -798,18 +708,18 @@ public class CSS bestPatternLength / bestPattern < 2) return false; - int offset = (int)(0x80 - ((bestPatternLength / bestPattern) * bestPattern)); + var offset = (int)(0x80 - bestPatternLength / bestPattern * bestPattern); int result = RecoverTitleKey(0, sector.Skip(0x80).Take(sector.Length - 0x80).ToArray(), - sector.Skip(offset).Take((int)(sector.Length - offset)).ToArray(), + sector.Skip(offset).Take(sector.Length - offset).ToArray(), sector.Skip(0x54).Take(5).ToArray(), out key); return result >= 0; } /// - /// Takes a guessed plain text and a encrypted bytes and tries to recover the title key - /// from those. Attack developed by Frank Stevenson. + /// Takes a guessed plain text and a encrypted bytes and tries to recover the title key + /// from those. Attack developed by Frank Stevenson. /// /// Start position. /// Buffer with encrypted bytes. @@ -817,15 +727,15 @@ public class CSS /// This sector's seed values. /// The title key. /// Positive values on success. - static int RecoverTitleKey(uint start, byte[] encryptedBytes, byte[] decryptedBytes, byte[] sectorSeed, + static int RecoverTitleKey(uint start, byte[] encryptedBytes, byte[] decryptedBytes, byte[] sectorSeed, out byte[] key) { - byte[] buffer = new byte[10]; - long oLfsr1; - long oLfsr0; - long iTry; - uint i; - int exit = -1; + var buffer = new byte[10]; + long oLfsr1; + long oLfsr0; + long iTry; + uint i; + int exit = -1; key = new byte[5]; for(i = 0; i < 10; i++) @@ -833,7 +743,7 @@ public class CSS for(iTry = start; iTry < 0x10000; iTry++) { - long lfsr1Lo = (iTry >> 8) | 0x100; + long lfsr1Lo = iTry >> 8 | 0x100; long lfsr1Hi = iTry & 0xff; long lfsr0 = 0; long combined = 0; @@ -844,12 +754,12 @@ public class CSS // Advance LFSR1 normally oLfsr1 = _cssTable2[lfsr1Hi] ^ _cssTable3[lfsr1Lo]; lfsr1Hi = lfsr1Lo >> 1; - lfsr1Lo = ((lfsr1Lo & 1) << 8) ^ oLfsr1; + lfsr1Lo = (lfsr1Lo & 1) << 8 ^ oLfsr1; oLfsr1 = _cssTable5[oLfsr1]; oLfsr0 = buffer[i]; if(combined > 0) - oLfsr0 = (oLfsr0 + 0xff) & 0x0ff; + oLfsr0 = oLfsr0 + 0xff & 0x0ff; if(oLfsr0 < oLfsr1) oLfsr0 += 0x100; @@ -857,7 +767,7 @@ public class CSS oLfsr0 -= oLfsr1; combined += oLfsr0 + oLfsr1; oLfsr0 = _cssTable4[oLfsr0]; - lfsr0 = (lfsr0 << 8) | oLfsr0; + lfsr0 = lfsr0 << 8 | oLfsr0; combined >>= 8; } @@ -868,10 +778,10 @@ public class CSS { oLfsr1 = _cssTable2[lfsr1Hi] ^ _cssTable3[lfsr1Lo]; lfsr1Hi = lfsr1Lo >> 1; - lfsr1Lo = ((lfsr1Lo & 1) << 8) ^ oLfsr1; + lfsr1Lo = (lfsr1Lo & 1) << 8 ^ oLfsr1; oLfsr1 = _cssTable5[oLfsr1]; - oLfsr0 = (((((((lfsr0 >> 3) ^ lfsr0) >> 1) ^ lfsr0) >> 8) ^ lfsr0) >> 5) & 0xff; - lfsr0 = (lfsr0 << 8) | oLfsr0; + oLfsr0 = (((lfsr0 >> 3 ^ lfsr0) >> 1 ^ lfsr0) >> 8 ^ lfsr0) >> 5 & 0xff; + lfsr0 = lfsr0 << 8 | oLfsr0; oLfsr0 = _cssTable4[oLfsr0]; combined += oLfsr0 + oLfsr1; @@ -889,12 +799,12 @@ public class CSS for(i = 0; i < 4; i++) { lfsr1Lo = lfsr0 & 0xff; - lfsr0 = (lfsr0 >> 8); + lfsr0 = lfsr0 >> 8; for(uint j = 0; j < 256; j++) { - lfsr0 = (lfsr0 & 0x1ffff) | (j << 17); - oLfsr0 = (((((((lfsr0 >> 3) ^ lfsr0) >> 1) ^ lfsr0) >> 8) ^ lfsr0) >> 5) & 0xff; + lfsr0 = lfsr0 & 0x1ffff | j << 17; + oLfsr0 = (((lfsr0 >> 3 ^ lfsr0) >> 1 ^ lfsr0) >> 8 ^ lfsr0) >> 5 & 0xff; if(oLfsr0 == lfsr1Lo) break; @@ -905,14 +815,14 @@ public class CSS for(combined = 0; combined < 8; combined++) { - if(((oLfsr1 + combined) * 2) + 8 - ((oLfsr1 + combined) & 7) != lfsr0) + if((oLfsr1 + combined) * 2 + 8 - (oLfsr1 + combined & 7) != lfsr0) continue; key[0] = (byte)(iTry >> 8); - key[1] = (byte)(iTry & 0xFF); - key[2] = (byte)(((oLfsr1 + combined) >> 0) & 0xFF); - key[3] = (byte)(((oLfsr1 + combined) >> 8) & 0xFF); - key[4] = (byte)(((oLfsr1 + combined) >> 16) & 0xFF); + key[1] = (byte)(iTry & 0xFF); + key[2] = (byte)(oLfsr1 + combined >> 0 & 0xFF); + key[3] = (byte)(oLfsr1 + combined >> 8 & 0xFF); + key[4] = (byte)(oLfsr1 + combined >> 16 & 0xFF); exit = (int)(iTry + 1); } } @@ -930,7 +840,7 @@ public class CSS } /// - /// Tries to find a title key by attacking CSS vulnerabilities. + /// Tries to find a title key by attacking CSS vulnerabilities. /// /// IOpticalMediaImage to find the title key in. /// Sector index to begin search. @@ -938,7 +848,7 @@ public class CSS /// The title key. static byte[] FindTitleKey(IOpticalMediaImage input, ulong startSector, ulong sectorsToSearch = 20000) { - byte[] titleKey = new byte[5]; + var titleKey = new byte[5]; for(ulong i = 0; i < sectorsToSearch; i++) { @@ -955,7 +865,7 @@ public class CSS } /// - /// Generates title keys for all sectors in a track. + /// Generates title keys for all sectors in a track. /// /// IOpticalMediaImage to generate keys for. /// List of Partition to analyze. @@ -963,9 +873,9 @@ public class CSS /// /// A byte array with keys for every sector in the track. One key is 5 bytes. public static byte[] GenerateTitleKeys(IOpticalMediaImage input, List partitions, ulong trackSectors, - Type pluginType) + Type pluginType) { - byte[] keys = new byte[trackSectors * 5]; + var keys = new byte[trackSectors * 5]; foreach(Partition partition in partitions) { @@ -1004,7 +914,7 @@ public class CSS } /// - /// DVD video discs always have a VIDEO_TS folder. If it doesn't have one, it's not a DVD video. + /// DVD video discs always have a VIDEO_TS folder. If it doesn't have one, it's not a DVD video. /// /// IOpticalMediaImage to check for VIDEO_TS folder in. /// IReadOnlyFilesystem to check in. diff --git a/DVD/Dump.cs b/DVD/Dump.cs index b84ed2b..01bd9ce 100644 --- a/DVD/Dump.cs +++ b/DVD/Dump.cs @@ -70,14 +70,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[8]; cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.Asf ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.Asf ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -98,14 +98,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[8]; cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.RpcState ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.RpcState ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -126,14 +126,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = Array.Empty(); cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.InvalidateAgid ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.InvalidateAgid ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -154,14 +154,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[8]; cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.AgidForCssCppm ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.AgidForCssCppm ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -183,14 +183,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[12]; cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.Key1 ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.Key1 ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -211,14 +211,14 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[16]; cdb[0] = (byte)ScsiCommands.ReportKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.ChallengeKey ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.ChallengeKey ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); @@ -236,20 +236,20 @@ public sealed class Dump /// Timeout in seconds. /// Duration in milliseconds it took for the device to execute the command. /// true if the command failed and contains the sense buffer. - public bool SendChallenge(out byte[] buffer, out byte[] senseBuffer, DvdCssKeyClass keyClass, byte[] challengeKey, - uint timeout, out double duration) + public bool SendChallenge(out byte[] buffer, out byte[] senseBuffer, DvdCssKeyClass keyClass, byte[] challengeKey, + uint timeout, out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[16]; cdb[0] = (byte)ScsiCommands.SendKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssSendKeyFormat.ChallengeKey ^ ((Agid & 0x03) << 6)); - buffer[0] = (byte)(((buffer.Length - 2) & 0xFF00) >> 8); - buffer[1] = (byte)((buffer.Length - 2) & 0xFF); + cdb[10] = (byte)((byte)CssSendKeyFormat.ChallengeKey ^ (Agid & 0x03) << 6); + buffer[0] = (byte)((buffer.Length - 2 & 0xFF00) >> 8); + buffer[1] = (byte)(buffer.Length - 2 & 0xFF); buffer[4] = challengeKey[9]; buffer[5] = challengeKey[8]; buffer[6] = challengeKey[7]; @@ -283,16 +283,16 @@ public sealed class Dump out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[12]; cdb[0] = (byte)ScsiCommands.SendKey; cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssSendKeyFormat.Key2 ^ ((Agid & 0x03) << 6)); - buffer[0] = (byte)(((buffer.Length - 2) & 0xFF00) >> 8); - buffer[1] = (byte)((buffer.Length - 2) & 0xFF); + cdb[10] = (byte)((byte)CssSendKeyFormat.Key2 ^ (Agid & 0x03) << 6); + buffer[0] = (byte)((buffer.Length - 2 & 0xFF00) >> 8); + buffer[1] = (byte)(buffer.Length - 2 & 0xFF); buffer[4] = key2[4]; buffer[5] = key2[3]; buffer[6] = key2[2]; @@ -318,7 +318,7 @@ public sealed class Dump public bool ReadDiscKey(out byte[] buffer, out byte[] senseBuffer, uint timeout, out double duration) { senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[2052]; cdb[0] = (byte)ScsiCommands.ReadDiscStructure; @@ -348,10 +348,10 @@ public sealed class Dump buffer = Array.Empty(); senseBuffer = new byte[64]; - bool sense = false; - byte[] challenge = new byte[CHALLENGE_SIZE]; - byte[] key1 = new byte[KEY_SIZE]; - byte variant = 0; + var sense = false; + var challenge = new byte[CHALLENGE_SIZE]; + var key1 = new byte[KEY_SIZE]; + byte variant = 0; for(byte i = 0; i < 4; i++) { @@ -368,7 +368,8 @@ public sealed class Dump out duration); break; - case CopyrightType.CPRM: throw new NotImplementedException(); + case CopyrightType.CPRM: + throw new NotImplementedException(); } if(sense) @@ -450,8 +451,8 @@ public sealed class Dump /// Timeout in seconds. /// Duration in milliseconds it took for the device to execute the command. /// true if the command failed and contains the sense buffer. - public bool ReadTitleKey(out byte[] buffer, out byte[] senseBuffer, DvdCssKeyClass keyClass, ulong address, - uint timeout, out double duration) + public bool ReadTitleKey(out byte[] buffer, out byte[] senseBuffer, DvdCssKeyClass keyClass, ulong address, + uint timeout, out double duration) { // We need to be in a bus key state to read title keys. Only CSS has title keys. ReadBusKey(out buffer, out senseBuffer, CopyrightType.CSS, timeout, out duration); @@ -459,7 +460,7 @@ public sealed class Dump BusKey = buffer; senseBuffer = new byte[64]; - byte[] cdb = new byte[12]; + var cdb = new byte[12]; buffer = new byte[12]; cdb[0] = (byte)ScsiCommands.ReportKey; @@ -470,7 +471,7 @@ public sealed class Dump cdb[7] = (byte)keyClass; cdb[8] = (byte)((buffer.Length & 0xFF00) >> 8); cdb[9] = (byte)(buffer.Length & 0xFF); - cdb[10] = (byte)((byte)CssReportKeyFormat.TitleKey ^ ((Agid & 0x03) << 6)); + cdb[10] = (byte)((byte)CssReportKeyFormat.TitleKey ^ (Agid & 0x03) << 6); _dev.SendScsiCommand(cdb, ref buffer, out senseBuffer, timeout, ScsiDirection.In, out duration, out bool sense); diff --git a/DVD/MPEG.cs b/DVD/MPEG.cs index 70df521..e3081d6 100644 --- a/DVD/MPEG.cs +++ b/DVD/MPEG.cs @@ -44,44 +44,107 @@ namespace Aaru.Decryption.DVD; public class MPEG { - static byte[] _mpeg2PackHeaderStartCode = - { - 0x0, 0x0, 0x1 - }; +#region Mpeg2StreamId enum public enum Mpeg2StreamId : byte { - ProgramEnd = 0xB9, PackHeader = 0xBA, SystemHeader = 0xBB, - ProgramStreamMap = 0xBC, PrivateStream1 = 0xBD, PaddingStream = 0xBE, - PrivateStream2 = 0xBF, EcmStream = 0xF0, EmmStream = 0xF1, - ItuTRecH222_0_or_IsoIec13818_1AnnexA_or_IsoIec13818_6DsmccStream = 0xF2, IsoIec13522Stream = 0xF3, - ItuTRecH222_1TypeA = 0xF4, ItuTRecH222_1TypeB = 0xF5, ItuTRecH222_1TypeC = 0xF6, - ItuTRecH222_1TypeD = 0xF7, ItuTRecH222_1TypeE = 0xF8, AncillaryStream = 0xF9, - Reserved1 = 0xFA, Reserved2 = 0xFB, Reserved3 = 0xFC, - Reserved4 = 0xFD, Reserved5 = 0xFE, ProgramStreamDirectory = 0xFF, + ProgramEnd = 0xB9, + PackHeader = 0xBA, + SystemHeader = 0xBB, + ProgramStreamMap = 0xBC, + PrivateStream1 = 0xBD, + PaddingStream = 0xBE, + PrivateStream2 = 0xBF, + EcmStream = 0xF0, + EmmStream = 0xF1, + ItuTRecH222_0_or_IsoIec13818_1AnnexA_or_IsoIec13818_6DsmccStream = 0xF2, + IsoIec13522Stream = 0xF3, + ItuTRecH222_1TypeA = 0xF4, + ItuTRecH222_1TypeB = 0xF5, + ItuTRecH222_1TypeC = 0xF6, + ItuTRecH222_1TypeD = 0xF7, + ItuTRecH222_1TypeE = 0xF8, + AncillaryStream = 0xF9, + Reserved1 = 0xFA, + Reserved2 = 0xFB, + Reserved3 = 0xFC, + Reserved4 = 0xFD, + Reserved5 = 0xFE, + ProgramStreamDirectory = 0xFF, // DVD Video can only hold 8 audio streams - MpegAudioStream1 = 0xC0, MpegAudioStream2 = 0xC1, MpegAudioStream3 = 0xC2, - MpegAudioStream4 = 0xC3, MpegAudioStream5 = 0xC4, MpegAudioStream6 = 0xC5, - MpegAudioStream7 = 0xC6, MpegAudioStream8 = 0xC7, MpegAudioStream9 = 0xC8, - MpegAudioStream10 = 0xC9, MpegAudioStream11 = 0xCA, MpegAudioStream12 = 0xCB, - MpegAudioStream13 = 0xCC, MpegAudioStream14 = 0xCD, MpegAudioStream15 = 0xCE, - MpegAudioStream16 = 0xCF, MpegAudioStream17 = 0xD0, MpegAudioStream18 = 0xD1, - MpegAudioStream19 = 0xD2, MpegAudioStream20 = 0xD3, MpegAudioStream21 = 0xD4, - MpegAudioStream22 = 0xD5, MpegAudioStream23 = 0xD6, MpegAudioStream24 = 0xD7, - MpegAudioStream25 = 0xD8, MpegAudioStream26 = 0xD9, MpegAudioStream27 = 0xDA, - MpegAudioStream28 = 0xDB, MpegAudioStream29 = 0xDC, MpegAudioStream30 = 0xDD, - MpegAudioStream31 = 0xDE, MpegAudioStream32 = 0xDF, + MpegAudioStream1 = 0xC0, + MpegAudioStream2 = 0xC1, + MpegAudioStream3 = 0xC2, + MpegAudioStream4 = 0xC3, + MpegAudioStream5 = 0xC4, + MpegAudioStream6 = 0xC5, + MpegAudioStream7 = 0xC6, + MpegAudioStream8 = 0xC7, + MpegAudioStream9 = 0xC8, + MpegAudioStream10 = 0xC9, + MpegAudioStream11 = 0xCA, + MpegAudioStream12 = 0xCB, + MpegAudioStream13 = 0xCC, + MpegAudioStream14 = 0xCD, + MpegAudioStream15 = 0xCE, + MpegAudioStream16 = 0xCF, + MpegAudioStream17 = 0xD0, + MpegAudioStream18 = 0xD1, + MpegAudioStream19 = 0xD2, + MpegAudioStream20 = 0xD3, + MpegAudioStream21 = 0xD4, + MpegAudioStream22 = 0xD5, + MpegAudioStream23 = 0xD6, + MpegAudioStream24 = 0xD7, + MpegAudioStream25 = 0xD8, + MpegAudioStream26 = 0xD9, + MpegAudioStream27 = 0xDA, + MpegAudioStream28 = 0xDB, + MpegAudioStream29 = 0xDC, + MpegAudioStream30 = 0xDD, + MpegAudioStream31 = 0xDE, + MpegAudioStream32 = 0xDF, // DVD Video can only hold 1 video stream - MpegVideStream1 = 0xE0, MpegVideStream2 = 0xE1, MpegVideStream3 = 0xE2, - MpegVideStream4 = 0xE3, MpegVideStream5 = 0xE4, MpegVideStream6 = 0xE5, - MpegVideStream7 = 0xE6, MpegVideStream8 = 0xE7, MpegVideStream9 = 0xE8, - MpegVideStream10 = 0xE9, MpegVideStream11 = 0xEA, MpegVideStream12 = 0xEB, - MpegVideStream13 = 0xEC, MpegVideStream14 = 0xED, MpegVideStream15 = 0xEE, + MpegVideStream1 = 0xE0, + MpegVideStream2 = 0xE1, + MpegVideStream3 = 0xE2, + MpegVideStream4 = 0xE3, + MpegVideStream5 = 0xE4, + MpegVideStream6 = 0xE5, + MpegVideStream7 = 0xE6, + MpegVideStream8 = 0xE7, + MpegVideStream9 = 0xE8, + MpegVideStream10 = 0xE9, + MpegVideStream11 = 0xEA, + MpegVideStream12 = 0xEB, + MpegVideStream13 = 0xEC, + MpegVideStream14 = 0xED, + MpegVideStream15 = 0xEE, MpegVideStream16 = 0xEF } +#endregion + + static readonly byte[] _mpeg2PackHeaderStartCode = { 0x0, 0x0, 0x1 }; + + public static bool ContainsMpegPackets(byte[] sectorData, uint blocks = 1, uint blockSize = 2048) + { + for(uint i = 0; i < blocks; i++) + { + if(IsMpegPacket(sectorData.Skip((int)(i * blockSize)))) + return true; + } + + return false; + } + + public static bool IsMpegPacket(IEnumerable sector) => + sector.Take(3).ToArray().SequenceEqual(_mpeg2PackHeaderStartCode); + +#region Nested type: MpegHeader + public struct MpegHeader { [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] @@ -94,15 +157,5 @@ public class MPEG byte packStuffingLengthBlock; } - public static bool ContainsMpegPackets(byte[] sectorData, uint blocks = 1, uint blockSize = 2048) - { - for(uint i = 0; i < blocks; i++) - if(IsMpegPacket(sectorData.Skip((int)(i * blockSize)))) - return true; - - return false; - } - - public static bool IsMpegPacket(IEnumerable sector) => - sector.Take(3).ToArray().SequenceEqual(_mpeg2PackHeaderStartCode); +#endregion } \ No newline at end of file diff --git a/Enums.cs b/Enums.cs index dcf25ba..ae59bb1 100644 --- a/Enums.cs +++ b/Enums.cs @@ -2,10 +2,13 @@ namespace Aaru.Decryption; public enum DvdCssKeyClass : byte { - DvdCssCppmOrCprm = 0, RewritableSecurityServicesA = 1 + DvdCssCppmOrCprm = 0, + RewritableSecurityServicesA = 1 } public enum DvdCssKeyType { - Key1 = 0, Key2 = 1, BusKey = 2 + Key1 = 0, + Key2 = 1, + BusKey = 2 } \ No newline at end of file diff --git a/Localization/Localization.Designer.cs b/Localization/Localization.Designer.cs index 90bad9b..5c77448 100644 --- a/Localization/Localization.Designer.cs +++ b/Localization/Localization.Designer.cs @@ -11,32 +11,46 @@ namespace Aaru.Decryption { using System; - [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Localization { - private static System.Resources.ResourceManager resourceMan; + private static global::System.Resources.ResourceManager resourceMan; - private static System.Globalization.CultureInfo resourceCulture; + private static global::System.Globalization.CultureInfo resourceCulture; - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Localization() { } - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] - internal static System.Resources.ResourceManager ResourceManager { + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { get { - if (object.Equals(null, resourceMan)) { - System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Aaru.Decryption.Localization.Localization", typeof(Localization).Assembly); + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Aaru.Decryption.Localization.Localization", typeof(Localization).Assembly); resourceMan = temp; } return resourceMan; } } - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] - internal static System.Globalization.CultureInfo Culture { + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { get { return resourceCulture; } @@ -45,52 +59,76 @@ namespace Aaru.Decryption { } } - internal static string REPORT_ASF_AGID_1_Sense_2_Last_Error_3_took_0_ms { + /// + /// Looks up a localized string similar to GET TITLE KEY (AGID: {1}, LBA: {2}, Sense: {3}) took {0} ms.. + /// + internal static string GET_TITLE_KEY_AGID_1_LBA_2_Sense_3_took_0_ms { get { - return ResourceManager.GetString("REPORT_ASF_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); + return ResourceManager.GetString("GET_TITLE_KEY_AGID_1_LBA_2_Sense_3_took_0_ms", resourceCulture); } } + /// + /// Looks up a localized string similar to INVALIDATE AGID (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms.. + /// internal static string INVALIDATE_AGID_AGID_1_Sense_2_Last_Error_3_took_0_ms { get { return ResourceManager.GetString("INVALIDATE_AGID_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); } } + /// + /// Looks up a localized string similar to REPORT AGID CSS/CPPM (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms.. + /// internal static string REPORT_AGID_CSS_CPPM_AGID_1_Sense_2_Last_Error_3_took_0_ms { get { return ResourceManager.GetString("REPORT_AGID_CSS_CPPM_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); } } - internal static string REPORT_KEY1_AGID_1_Sense_2_Last_Error_3_took_0_ms { + /// + /// Looks up a localized string similar to REPORT ASF (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms.. + /// + internal static string REPORT_ASF_AGID_1_Sense_2_Last_Error_3_took_0_ms { get { - return ResourceManager.GetString("REPORT_KEY1_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); + return ResourceManager.GetString("REPORT_ASF_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); } } + /// + /// Looks up a localized string similar to REPORT CHALLENGE (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms.. + /// internal static string REPORT_CHALLENGE_AGID_1_Sense_2_Last_Error_3_took_0_ms { get { return ResourceManager.GetString("REPORT_CHALLENGE_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); } } + /// + /// Looks up a localized string similar to REPORT KEY1 (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms.. + /// + internal static string REPORT_KEY1_AGID_1_Sense_2_Last_Error_3_took_0_ms { + get { + return ResourceManager.GetString("REPORT_KEY1_AGID_1_Sense_2_Last_Error_3_took_0_ms", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SEND CHALLENGE (AGID: {1}, Challenge {2}, Sense: {3}, Last Error: {4}) took {0} ms.. + /// internal static string SEND_CHALLENGE_AGID_1_Challenge_2_Sense_3_Last_Error_4_took_0_ms { get { return ResourceManager.GetString("SEND_CHALLENGE_AGID_1_Challenge_2_Sense_3_Last_Error_4_took_0_ms", resourceCulture); } } + /// + /// Looks up a localized string similar to SEND CHALLENGE (AGID: {1}, KEY2 {2}, Sense: {3}, Last Error: {4}) took {0} ms.. + /// internal static string SEND_CHALLENGE_AGID_1_KEY2_2_Sense_3_Last_Error_4_took_0_ms { get { return ResourceManager.GetString("SEND_CHALLENGE_AGID_1_KEY2_2_Sense_3_Last_Error_4_took_0_ms", resourceCulture); } } - - internal static string GET_TITLE_KEY_AGID_1_LBA_2_Sense_3_took_0_ms { - get { - return ResourceManager.GetString("GET_TITLE_KEY_AGID_1_LBA_2_Sense_3_took_0_ms", resourceCulture); - } - } } } diff --git a/Localization/Localization.es.resx b/Localization/Localization.es.resx index 52afa7b..6905f0a 100644 --- a/Localization/Localization.es.resx +++ b/Localization/Localization.es.resx @@ -1,39 +1,43 @@ - - - text/microsoft-resx - - - 1.3 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + + text/microsoft-resx + + + 1.3 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + + + GET TITLE KEY (AGID: {1}, LBA: {2}, Sense: {3}) tardó {0} ms. - + INVALIDATE AGID (AGID: {1}, Sense: {2}, Error: {3}) tardó {0} ms. - + REPORT AGID CSS/CPPM (AGID: {1}, Sense: {2}, Error: {3}) tardó {0} ms. - + REPORT ASF (AGID: {1}, Sense: {2}, Error: {3}) tardó {0} ms. - + REPORT CHALLENGE (AGID: {1}, Sense: {2}, Error: {3}) tardó {0} ms. - + REPORT KEY1 (AGID: {1}, Sense: {2}, Error: {3}) tardó {0} ms. - + SEND CHALLENGE (AGID: {1}, Desafío {2}, Sense: {3}, Error: {4}) tardó {0} ms. - + SEND CHALLENGE (AGID: {1}, KEY2 {2}, Sense: {3}, Error: {4}) tardó {0} ms. \ No newline at end of file diff --git a/Localization/Localization.resx b/Localization/Localization.resx index 32dc9b7..6df0824 100644 --- a/Localization/Localization.resx +++ b/Localization/Localization.resx @@ -1,48 +1,50 @@ - - - - - text/microsoft-resx - - - 1.3 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, - PublicKeyToken=b77a5c561934e089 - - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, - PublicKeyToken=b77a5c561934e089 - - - + + + + + text/microsoft-resx + + + 1.3 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + + + REPORT ASF (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms. - + INVALIDATE AGID (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms. - + REPORT AGID CSS/CPPM (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms. - + REPORT KEY1 (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms. - + REPORT CHALLENGE (AGID: {1}, Sense: {2}, Last Error: {3}) took {0} ms. - + SEND CHALLENGE (AGID: {1}, Challenge {2}, Sense: {3}, Last Error: {4}) took {0} ms. - + SEND CHALLENGE (AGID: {1}, KEY2 {2}, Sense: {3}, Last Error: {4}) took {0} ms. - + GET TITLE KEY (AGID: {1}, LBA: {2}, Sense: {3}) took {0} ms. \ No newline at end of file