gpt4 book ai didi

c++ - 如何在 Visual Studio 2010 中自动折叠某些注释?

转载 作者:行者123 更新时间:2023-11-30 04:37:43 25 4
gpt4 key购买 nike

我的一位同事使用 abomination 文本编辑器,它经常在代码中留下注释 block 。不用说,这让我很生气。评论 block 看起来像这样:

/* EasyCODE ) */
/* EasyCODE ( 0
WndProc */
/* EasyCODE F */

即它们都以 EasyCODE 开头,并且大多数跨越多行。值得庆幸的是,VS2010 可以折叠评论 block ,所以我不必一直看到它们。

有没有办法自动化?自动折叠所有那些可怕的 EasyCODE block 的方法将是天赐之物!

最佳答案

这是一个应该执行此操作的宏。它没有捕捉到一些更奇怪的 EasyCode 评论,但它主要起到了作用。

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a ' remove for VS2008
Imports EnvDTE100 ' remove for VS2008
Imports System.Diagnostics
Imports System.Collections.Generic

Public Module HideEasyCODEComments
''
'' Collapse all EasyCODE comment blocks
''
Sub ToggleSummaryCommentsOutlineExpansion()
If (DTE.ActiveDocument Is Nothing) Then
Exit Sub
End If

If (DTE.UndoContext.IsOpen) Then
DTE.UndoContext.Close()
End If

DTE.SuppressUI = True

Try
DTE.UndoContext.Open("ToggleSummaryCommentsOutline")
Catch
End Try

Dim objSelection As TextSelection = DTE.ActiveDocument.Selection
Dim line As Integer = objSelection.CurrentLine
objSelection.StartOfDocument()

' find all EasyCODE blocks
While objSelection.FindText("^.*\/\* EasyCODE.*((\n.*\*\/)|(\n.*\/\*.*)|(\n\/\/.*))*", vsFindOptions.vsFindOptionsRegularExpression)
DTE.ExecuteCommand("Edit.HideSelection")
End While
objSelection.StartOfDocument()
objSelection.GotoLine(line)

DTE.UndoContext.Close()
DTE.SuppressUI = False
End Sub

End Module

在宏IDE(Tools->Macros->Macro IDE)中新建一个宏,把上面的代码粘贴进去,然后给它分配一个快捷键(Tools->Options->Environment->Keyboard,搜索它在列表框中)。点击键盘快捷键,所有 EasyCode 注释都将消失。

玩得开心!

关于c++ - 如何在 Visual Studio 2010 中自动折叠某些注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3656275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com