提交 5bbe72b5 编写于 作者: P Paul Chen

Address review feedback on renaming:

1. Drop "is" for some names
2. CommentBlock -> BlockComment

Plus a little clean up.
上级 35a09497
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Collections.Generic;
using System.ComponentModel.Composition;
using System.Linq;
using System.Threading;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Extensions;
using Microsoft.CodeAnalysis.CSharp.Symbols;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Editor.Host;
using Microsoft.CodeAnalysis.Editor.Implementation.CommentBlockCompletion;
using Microsoft.CodeAnalysis.Editor.Implementation.BlockCommentCompletion;
using Microsoft.CodeAnalysis.Shared.Extensions;
using Microsoft.VisualStudio.Text;
using Microsoft.VisualStudio.Text.Operations;
using Microsoft.VisualStudio.Utilities;
using Microsoft.CodeAnalysis.Text.Shared.Extensions;
using Microsoft.CodeAnalysis.Text;
using Roslyn.Utilities;
using System.Diagnostics;
namespace Microsoft.CodeAnalysis.Editor.CSharp.CommentBlockCompletion
namespace Microsoft.CodeAnalysis.Editor.CSharp.BlockCommentCompletion
{
[ExportCommandHandler(PredefinedCommandHandlerNames.CommentBlockCompletion, ContentTypeNames.CSharpContentType)]
internal class CommentBlockCompletionCommandHandler : AbstractCommentBlockCompletionCommandHandler
[ExportCommandHandler(PredefinedCommandHandlerNames.BlockCommentCompletion, ContentTypeNames.CSharpContentType)]
internal class BlockCommentCompletionCommandHandler : AbstractBlockCommentCompletionCommandHandler
{
[ImportingConstructor]
public CommentBlockCompletionCommandHandler(
public BlockCommentCompletionCommandHandler(
ITextUndoHistoryRegistry undoHistoryRegistry,
IEditorOperationsFactoryService editorOperationsFactoryService) : base(undoHistoryRegistry, editorOperationsFactoryService)
{
......@@ -42,23 +35,23 @@ protected override string GetExteriorTextForNextLine(SnapshotPoint caretPosition
return null;
}
var isCurrentLineStartsWithCommentBlockStart = snapshotLine.StartsWith(firstNonWhitespacePosition, "/*", false);
var isCurrentLineStartsWithCommentBlockEnd = snapshotLine.StartsWith(firstNonWhitespacePosition, "*/", false);
var isCurrentLineStartsWithCommentBlockMiddle = snapshotLine.StartsWith(firstNonWhitespacePosition, "*", false);
var currentLineStartsWithBlockCommentStartString = snapshotLine.StartsWith(firstNonWhitespacePosition, "/*", false);
var currentLineStartsWithBlockCommentEndString = snapshotLine.StartsWith(firstNonWhitespacePosition, "*/", false);
var currentLineStartsWithBlockCommentMiddleString = snapshotLine.StartsWith(firstNonWhitespacePosition, "*", false);
if (!isCurrentLineStartsWithCommentBlockStart && !isCurrentLineStartsWithCommentBlockMiddle)
if (!currentLineStartsWithBlockCommentStartString && !currentLineStartsWithBlockCommentMiddleString)
{
return null;
}
if (!IsCaretInsideCommentBlockSyntax(caretPosition))
if (!IsCaretInsideBlockCommentSyntax(caretPosition))
{
return null;
}
if (isCurrentLineStartsWithCommentBlockStart)
if (currentLineStartsWithBlockCommentStartString)
{
if (IsCommentBlockEndsAfterCaret(caretPosition))
if (BlockCommentEndsRightAfterCaret(caretPosition))
{
// /*|*/
return " ";
......@@ -75,9 +68,9 @@ protected override string GetExteriorTextForNextLine(SnapshotPoint caretPosition
}
}
if (isCurrentLineStartsWithCommentBlockEnd)
if (currentLineStartsWithBlockCommentEndString)
{
if (IsCommentBlockEndsAfterCaret(caretPosition))
if (BlockCommentEndsRightAfterCaret(caretPosition))
{
// /*
// |*/
......@@ -96,9 +89,9 @@ protected override string GetExteriorTextForNextLine(SnapshotPoint caretPosition
}
}
if (isCurrentLineStartsWithCommentBlockMiddle)
if (currentLineStartsWithBlockCommentMiddleString)
{
if (IsCommentBlockEndsAfterCaret(caretPosition))
if (BlockCommentEndsRightAfterCaret(caretPosition))
{
// *|*/
return "";
......@@ -119,7 +112,7 @@ protected override string GetExteriorTextForNextLine(SnapshotPoint caretPosition
return null;
}
private static bool IsCommentBlockEndsAfterCaret(SnapshotPoint caretPosition) => caretPosition.Snapshot.GetText(caretPosition, 2) == "*/";
private static bool BlockCommentEndsRightAfterCaret(SnapshotPoint caretPosition) => caretPosition.Snapshot.GetText(caretPosition, 2) == "*/";
private static string GetPaddingOrIndentation(ITextSnapshotLine snapshotLine, int caretPosition, int firstNonWhitespacePosition, string exteriorText)
{
......@@ -161,7 +154,7 @@ private static string GetPaddingOrIndentation(ITextSnapshotLine snapshotLine, in
}
}
private static bool IsCaretInsideCommentBlockSyntax(SnapshotPoint caretPosition)
private static bool IsCaretInsideBlockCommentSyntax(SnapshotPoint caretPosition)
{
var document = caretPosition.Snapshot.GetOpenDocumentInCurrentContextWithChanges();
if (document == null)
......
......@@ -79,6 +79,7 @@
<Compile Include="AutomaticCompletion\Sessions\LessAndGreaterThanCompletionSession.cs" />
<Compile Include="AutomaticCompletion\Sessions\ParenthesisCompletionSession.cs" />
<Compile Include="AutomaticCompletion\Sessions\StringLiteralCompletionSession.cs" />
<Compile Include="BlockCommentCompletion\BlockCommentCompletionCommandHandler.cs" />
<Compile Include="BraceMatching\AbstractCSharpBraceMatcher.cs" />
<Compile Include="BraceMatching\LessThanGreaterThanBraceMatcher.cs" />
<Compile Include="BraceMatching\OpenCloseBraceBraceMatcher.cs" />
......@@ -89,7 +90,6 @@
<Compile Include="CallHierarchy\CallHierarchyCommandHandler.cs" />
<Compile Include="ChangeSignature\ChangeSignatureCommandHandler.cs" />
<Compile Include="Classification\CSharpEditorClassificationService.cs" />
<Compile Include="CommentBlockCompletion\CommentBlockCompletionCommandHandler.cs" />
<Compile Include="CommentSelection\CSharpCommentUncommentService.cs" />
<Compile Include="Completion\CompletionProviders\OverrideCompletionProvider.cs" />
<Compile Include="Completion\CompletionProviders\PartialCompletionProvider.cs" />
......
......@@ -3,19 +3,19 @@
using System;
using System.Threading.Tasks;
using Microsoft.CodeAnalysis.Editor.Commands;
using Microsoft.CodeAnalysis.Editor.CSharp.CommentBlockCompletion;
using Microsoft.CodeAnalysis.Editor.UnitTests.CommentBlockCompletion;
using Microsoft.CodeAnalysis.Editor.CSharp.BlockCommentCompletion;
using Microsoft.CodeAnalysis.Editor.UnitTests.BlockCommentCompletion;
using Microsoft.CodeAnalysis.Editor.UnitTests.Utilities;
using Microsoft.CodeAnalysis.Editor.UnitTests.Workspaces;
using Microsoft.VisualStudio.Text.Operations;
using Roslyn.Test.Utilities;
using Xunit;
namespace Microsoft.CodeAnalysis.Editor.CSharp.UnitTests.CommentBlockCompletion
namespace Microsoft.CodeAnalysis.Editor.CSharp.UnitTests.BlockCommentCompletion
{
public class CommentBlockCompletionTests : AbstractCommentBlockCompletionTests
public class BlockCommentCompletionTests : AbstractBlockCommentCompletionTests
{
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine0()
{
var code = @"
......@@ -28,7 +28,7 @@ public async Task InsertOnStartLine0()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine1()
{
var code = @"
......@@ -41,7 +41,7 @@ public async Task InsertOnStartLine1()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine2()
{
var code = @"
......@@ -54,7 +54,7 @@ public async Task InsertOnStartLine2()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine3()
{
var code = @"
......@@ -69,7 +69,7 @@ public async Task InsertOnStartLine3()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine4()
{
var code = @"
......@@ -84,7 +84,7 @@ public async Task InsertOnStartLine4()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine5()
{
var code = @"
......@@ -97,7 +97,7 @@ public async Task InsertOnStartLine5()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnStartLine6()
{
var code = @"
......@@ -110,7 +110,7 @@ public async Task InsertOnStartLine6()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task NotInsertOnStartLine0()
{
var code = @"
......@@ -125,7 +125,7 @@ public async Task NotInsertOnStartLine0()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine0()
{
var code = @"
......@@ -140,7 +140,7 @@ public async Task InsertOnMiddleLine0()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine1()
{
var code = @"
......@@ -155,7 +155,7 @@ public async Task InsertOnMiddleLine1()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine2()
{
var code = @"
......@@ -170,7 +170,7 @@ public async Task InsertOnMiddleLine2()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine3()
{
var code = @"
......@@ -187,7 +187,7 @@ public async Task InsertOnMiddleLine3()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine4()
{
var code = @"
......@@ -204,7 +204,7 @@ public async Task InsertOnMiddleLine4()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine5()
{
var code = @"
......@@ -223,7 +223,7 @@ public async Task InsertOnMiddleLine5()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine6()
{
var code = @"
......@@ -240,7 +240,7 @@ public async Task InsertOnMiddleLine6()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnMiddleLine7()
{
var code = @"
......@@ -257,7 +257,7 @@ public async Task InsertOnMiddleLine7()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnEndLine0()
{
var code = @"
......@@ -272,7 +272,7 @@ public async Task InsertOnEndLine0()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnEndLine1()
{
var code = @"
......@@ -287,7 +287,7 @@ public async Task InsertOnEndLine1()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task InsertOnEndLine2()
{
var code = @"
......@@ -302,7 +302,7 @@ public async Task InsertOnEndLine2()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task NotInsertInVerbatimString0()
{
var code = @"
......@@ -319,7 +319,7 @@ public async Task NotInsertInVerbatimString0()
await VerifyAsync(code, expected);
}
[WpfFact, Trait(Traits.Feature, Traits.Features.CommentBlockCompletion)]
[WpfFact, Trait(Traits.Feature, Traits.Features.BlockCommentCompletion)]
public async Task NotInsertInVerbatimString1()
{
var code = @"
......@@ -341,6 +341,6 @@ public async Task NotInsertInVerbatimString1()
protected override Task<TestWorkspace> CreateTestWorkspaceAsync(string initialMarkup) => TestWorkspace.CreateCSharpAsync(initialMarkup);
internal override ICommandHandler<ReturnKeyCommandArgs> CreateCommandHandler(ITextUndoHistoryRegistry undoHistoryRegistry, IEditorOperationsFactoryService editorOperationsFactoryService)
=> new CommentBlockCompletionCommandHandler(undoHistoryRegistry, editorOperationsFactoryService);
=> new BlockCommentCompletionCommandHandler(undoHistoryRegistry, editorOperationsFactoryService);
}
}
......@@ -150,6 +150,7 @@
<Compile Include="AutomaticCompletion\AutomaticLineEnderTests.cs" />
<Compile Include="AutomaticCompletion\AutomaticLiteralCompletionTests.cs" />
<Compile Include="AutomaticCompletion\AutomaticParenthesisCompletionTests.cs" />
<Compile Include="BlockCommentCompletion\BlockCommentCompletionTests.cs" />
<Compile Include="BraceHighlighting\BraceHighlightingTests.cs" />
<Compile Include="BraceMatching\CSharpBraceMatcherTests.cs" />
<Compile Include="CallHierarchy\CallHierarchyTests.cs" />
......@@ -179,7 +180,6 @@
<Compile Include="CodeActions\IntroduceVariable\IntroduceVariableTests.cs" />
<Compile Include="CodeActions\InvertIf\InvertIfTests.cs" />
<Compile Include="CodeActions\LambdaSimplifier\LambdaSimplifierTests.cs" />
<Compile Include="CommentBlockCompletion\CommentBlockCompletionTests.cs" />
<Compile Include="Diagnostics\MakeMethodSynchronous\MakeMethodSynchronousTests.cs" />
<Compile Include="CodeActions\MoveDeclarationNearReference\MoveDeclarationNearReferenceTests.cs" />
<Compile Include="CodeActions\Preview\ErrorCases\ExceptionInCodeAction.cs" />
......
......@@ -282,7 +282,6 @@
<Compile Include="Implementation\Classification\SemanticClassificationBufferTaggerProvider.cs" />
<Compile Include="Implementation\Classification\SemanticClassificationBufferTaggerProvider.Tagger.cs" />
<Compile Include="Implementation\Classification\SemanticClassificationUtilities.cs" />
<Compile Include="Implementation\CommentBlockCompletion\AbstractCommentBlockCompletionCommandHandler.cs" />
<Compile Include="Implementation\GoToImplementation\AbstractGoToImplementationService.cs" />
<Compile Include="Implementation\GoToImplementation\IGoToImplementationService.cs" />
<Compile Include="Implementation\Intellisense\Completion\OptionSetExtensions.cs" />
......@@ -321,6 +320,7 @@
<Compile Include="Implementation\AutomaticCompletion\BraceCompletionSessionProvider.BraceCompletionSession.cs" />
<Compile Include="Implementation\AutomaticCompletion\IEditorBraceCompletionSession.cs" />
<Compile Include="Implementation\AutomaticCompletion\Sessions\AbstractTokenBraceCompletionSession.cs" />
<Compile Include="Implementation\BlockCommentCompletion\AbstractBlockCommentCompletionCommandHandler.cs" />
<Compile Include="Implementation\BraceMatching\AbstractBraceMatcher.cs" />
<Compile Include="Implementation\BraceMatching\BraceCharacterAndKind.cs" />
<Compile Include="Implementation\BraceMatching\BraceHighlightingViewTaggerProvider.cs" />
......
......@@ -19,6 +19,12 @@ internal static class PredefinedCommandHandlerNames
/// <remarks></remarks>
public const string AutomaticLineEnder = "Automatic Line Ender Command Handler";
/// <summary>
/// Command handler name for Comment Block Completion.
/// </summary>
/// <remarks></remarks>
public const string BlockCommentCompletion = "Block Comment Completion Command Handler";
/// <summary>
/// Command handler name for Change Signature.
/// </summary>
......@@ -29,12 +35,6 @@ internal static class PredefinedCommandHandlerNames
/// </summary>
public const string ClassView = "Class View";
/// <summary>
/// Command handler name for Comment Block Completion.
/// </summary>
/// <remarks></remarks>
public const string CommentBlockCompletion = "Comment Block Completion Command Handler";
/// <summary>
/// Command handler name for Comment Selection.
/// </summary>
......
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Threading;
using Microsoft.CodeAnalysis.Editor.Commands;
using Microsoft.CodeAnalysis.Editor.Host;
using Microsoft.CodeAnalysis.Editor.Shared.Extensions;
using Microsoft.CodeAnalysis.Editor.Shared.Options;
using Microsoft.CodeAnalysis.Formatting;
using Microsoft.CodeAnalysis.Shared.Extensions;
using Microsoft.CodeAnalysis.Text;
using Microsoft.CodeAnalysis.Text.Shared.Extensions;
using Microsoft.VisualStudio.Text;
using Microsoft.VisualStudio.Text.Editor;
using Microsoft.VisualStudio.Text.Operations;
using Roslyn.Utilities;
namespace Microsoft.CodeAnalysis.Editor.Implementation.CommentBlockCompletion
namespace Microsoft.CodeAnalysis.Editor.Implementation.BlockCommentCompletion
{
internal abstract class AbstractCommentBlockCompletionCommandHandler : ICommandHandler<ReturnKeyCommandArgs>
internal abstract class AbstractBlockCommentCompletionCommandHandler : ICommandHandler<ReturnKeyCommandArgs>
{
private readonly ITextUndoHistoryRegistry _undoHistoryRegistry;
private readonly IEditorOperationsFactoryService _editorOperationsFactoryService;
protected AbstractCommentBlockCompletionCommandHandler(
protected AbstractBlockCommentCompletionCommandHandler(
ITextUndoHistoryRegistry undoHistoryRegistry,
IEditorOperationsFactoryService editorOperationsFactoryService)
{
......@@ -49,8 +39,6 @@ public void ExecuteCommand(ReturnKeyCommandArgs args, Action nextHandler)
return;
}
var snapshot = subjectBuffer.CurrentSnapshot;
var exteriorText = GetExteriorTextForNextLine(caretPosition.Value);
if (exteriorText == null)
{
......
......@@ -16,9 +16,9 @@
using Roslyn.Test.Utilities;
using Xunit;
namespace Microsoft.CodeAnalysis.Editor.UnitTests.CommentBlockCompletion
namespace Microsoft.CodeAnalysis.Editor.UnitTests.BlockCommentCompletion
{
public abstract class AbstractCommentBlockCompletionTests
public abstract class AbstractBlockCommentCompletionTests
{
internal abstract ICommandHandler<ReturnKeyCommandArgs> CreateCommandHandler(
ITextUndoHistoryRegistry undoHistoryRegistry,
......
......@@ -190,6 +190,7 @@
<Compile Include="Attributes\AttributeTests.cs" />
<Compile Include="AutomaticCompletion\AbstractAutomaticBraceCompletionTests.cs" />
<Compile Include="AutomaticCompletion\AbstractAutomaticLineEnderTests.cs" />
<Compile Include="BlockCommentCompletion\AbstractBlockCommentCompletionTests.cs" />
<Compile Include="BraceHighlighting\AbstractBraceHighlightingTests.cs" />
<Compile Include="BraceMatching\AbstractBraceMatcherTests.cs" />
<Compile Include="CallHierarchy\CallHierarchyTestState.cs" />
......@@ -229,7 +230,6 @@
<Compile Include="Collections\IntervalTreeTests.cs" />
<Compile Include="Commands\CommandArgsTests.cs" />
<Compile Include="Commands\TypeCharCommandArgsTests.cs" />
<Compile Include="CommentBlockCompletion\AbstractCommentBlockCompletionTests.cs" />
<Compile Include="CommentSelection\CommentUncommentSelectionCommandHandlerTests.cs" />
<Compile Include="Completion\AbstractCompletionProviderTests.cs" />
<Compile Include="Diagnostics\AbstractSuppressionAllCodeTests.cs" />
......
......@@ -19,6 +19,7 @@ public static class Features
public const string AsyncLazy = nameof(AsyncLazy);
public const string AutomaticEndConstructCorrection = "AutomaticEndConstructCorrection";
public const string AutomaticCompletion = "AutomaticCompletion";
public const string BlockCommentCompletion = "BlockCommentCompletion";
public const string BraceHighlighting = "BraceHighlighting";
public const string BraceMatching = "BraceMatching";
public const string CallHierarchy = "CallHierarchy";
......@@ -77,7 +78,6 @@ public static class Features
public const string CodeModel = "CodeModel";
public const string CodeModelEvents = "CodeModel.Events";
public const string CodeModelMethodXml = "CodeModel.MethodXml";
public const string CommentBlockCompletion = "CommentBlockCompletion";
public const string CommentSelection = "CommentSelection";
public const string Completion = "Completion";
public const string DebuggingBreakpoints = "Debugging.Breakpoints";
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册