كيف تلقائيًا تلقائيًا تعليقات معينة في Visual Studio 2010؟

StackOverflow https://stackoverflow.com/questions/3656275

سؤال

يستخدم زميل لي رجس - مقت شديد، عمل بغيض محرر النصوص الذي يترك بشكل روتيني كتل التعليق في جميع أنحاء الكود. وغني عن القول ، هذا يقودني إلى حد ما. تبدو كتل التعليق هكذا:

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

أي أنهم جميعا يبدأون EasyCODE ومعظمهم يمتد عدة خطوط. لحسن الحظ ، يمكن لـ VS2010 انهيار كتل التعليقات ، لذلك لا أفعل يجب أن أراهم طوال الوقت.

هل هناك طريقة لأتمتة ذلك؟ طريقة لانهيار كل هؤلاء الرهيبة تلقائيًا 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 (أدوات-> وحدات ماكرو> الماكرو IDE) ، قم بلصق الكود أعلاه فيه ، ثم قم بتعيين اختصار لوحة المفاتيح إليه (أدوات-> خيارات-> بيئة-> لوحة المفاتيح ، ابحث عنها في LISTBOX). اضغط على اختصار لوحة المفاتيح وستختفي جميع تعليقات EasyCode.

استمتع!

نصائح أخرى

لا يمكنك فعل ذلك تلقائيًا. ومع ذلك ، يمكنك تحديد قطعة من التعليمات البرمجية ، والاختيار من قائمة السياق التي تحدد/إخفاء التحديد (Ctrl+M Ctrl+H). لذا حدد التعليقات القبيحة وافعلها بهذه الطريقة.

مأخوذ من هنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top