这是一个应该这样做的宏。有一些很奇怪的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(工具 - > Macros->宏IDE)一个新的宏,粘贴上述代码进去,然后分配一个键盘快捷键它(工具 - >选项 - >环境 - >键盘,在列表框中搜索它)。点击键盘快捷键,所有的EasyCode评论将会消失。
玩得开心!
有没有一种方法可以让你的同事每次使用这种可憎的东西时自动化一些东西? :) – hydrogen 2010-09-07 06:49:57
如果它混淆了每个人的代码中不可读和无用的评论,或许更好的解决方案是说服你的同事停用这个功能,或者改变他的编辑器。 – ereOn 2010-09-07 07:17:35
@ereOn:不幸的是,那位编辑严重依赖这些评论。它用很奇怪的,机器可读的评论来替代很好的,人类可读的代码。 – bastibe 2010-09-07 11:12:24