diff --git a/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.Parsers.cs b/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.Parsers.cs index 1da5d7921a219c977c66bb1f95e8ff03a4d7cdd0..f1d9e2e32586184e10055580d9a6fd150861b15b 100644 --- a/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.Parsers.cs +++ b/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.Parsers.cs @@ -80,9 +80,16 @@ internal static bool DetermineIfNewLineOptionIsSet(string value, NewLineOption o } private static NewLineOption? ConvertToNewLineOption(string value) - => s_newLineOptionsEditorConfigMap.TryGetValue(value, out var option) - ? option - : (NewLineOption?)null; + { + if (s_newLineOptionsEditorConfigMap.TryGetValue(value, out var option)) { + return option; + } + if (s_legacyNewLineOptionsEditorConfigMap.TryGetValue(value, out var legacyOption)) + { + return legacyOption; + } + return null; + } private static string GetNewLineOptionEditorConfigString(OptionSet optionSet) { diff --git a/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.cs b/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.cs index b1992b24fee2a5fe0028d4a02a00bf3e07d5164f..fab57e7a88544ae10f321c37e469471d3e95bbd2 100644 --- a/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.cs +++ b/src/Workspaces/CSharp/Portable/Formatting/CSharpFormattingOptions.cs @@ -40,6 +40,11 @@ public static partial class CSharpFormattingOptions KeyValuePairUtil.Create("no_change", LabelPositionOptions.NoIndent), KeyValuePairUtil.Create("one_less_than_current", LabelPositionOptions.OneLess), }); + private static readonly BidirectionalMap s_legacyNewLineOptionsEditorConfigMap = + new BidirectionalMap(new[] + { + KeyValuePairUtil.Create("object_collection_array_initalizers", NewLineOption.ObjectCollectionsArrayInitializers), + }); private static readonly BidirectionalMap s_newLineOptionsEditorConfigMap = new BidirectionalMap(new[] { @@ -52,7 +57,7 @@ public static partial class CSharpFormattingOptions KeyValuePairUtil.Create("anonymous_methods", NewLineOption.AnonymousMethods), KeyValuePairUtil.Create("control_blocks", NewLineOption.ControlBlocks), KeyValuePairUtil.Create("anonymous_types", NewLineOption.AnonymousTypes), - KeyValuePairUtil.Create("object_collection_array_initalizers", NewLineOption.ObjectCollectionsArrayInitializers), + KeyValuePairUtil.Create("object_collection_array_initializers", NewLineOption.ObjectCollectionsArrayInitializers), KeyValuePairUtil.Create("lambdas", NewLineOption.Lambdas), KeyValuePairUtil.Create("local_functions", NewLineOption.LocalFunction), }); diff --git a/src/Workspaces/CSharpTest/Formatting/EditorConfigOptionParserTests.cs b/src/Workspaces/CSharpTest/Formatting/EditorConfigOptionParserTests.cs index edfde43278d33fc91eac5b1a10964a5ee17ec54c..cbf06f05991152a6767f053433636c69b98fa82e 100644 --- a/src/Workspaces/CSharpTest/Formatting/EditorConfigOptionParserTests.cs +++ b/src/Workspaces/CSharpTest/Formatting/EditorConfigOptionParserTests.cs @@ -92,6 +92,7 @@ static void TestParseEditorConfigLabelPositioningFalse(string value) InlineData("control_blocks", NewLineOption.ControlBlocks), InlineData("anonymous_types", NewLineOption.AnonymousTypes), InlineData("object_collection_array_initalizers", NewLineOption.ObjectCollectionsArrayInitializers), + InlineData("object_collection_array_initializers", NewLineOption.ObjectCollectionsArrayInitializers), InlineData("lambdas", NewLineOption.Lambdas), InlineData("local_functions", NewLineOption.LocalFunction)] static void TestParseNewLineOptionTrue(string value, NewLineOption option)