Alex Parker

Just a thought...

Using Visual Studio 2003's outline function on your VBScript files...

If you have ever written a long vbscript file and would like to take advantage of the outline features of Visual Studio 2003.  Just copy the following macro into the macros and execute it evertime you load your file.

I made a minor update to show the function/sub that is being outlined.

This is a sample I found on the Microsoft Site, I just made some minor changes.

    Sub OutlineSection()

        ' Before running this example, open a text document.

        Dim objSel As TextSelection = DTE.ActiveDocument.Selection

 

        ' Move to the beginning of the document so we can iterate over the

        ' whole thing.

        objSel.StartOfDocument()

        While objSel.FindPattern("Function ")

            ' If we found the beginning of a debug-only section, save the

            ' position.

            Dim lStartLine As Long = objSel.TopPoint.Line + 1 ' Increment by one to show Function outside of outline

            Dim lStartColumn As Long = objSel.TopPoint.LineCharOffset

 

            ' Look for the end.

            If objSel.FindPattern("End Function") Then

                ' Select the entire section and outline it.

                objSel.SwapAnchor()

                objSel.MoveToLineAndOffset(lStartLine, lStartColumn, True)

                objSel.OutlineSection()

                objSel.LineDown()

            End If

        End While

 

        objSel.StartOfDocument()

        While objSel.FindPattern("Sub ")

            ' If we found the beginning of a debug-only section, save the

            ' position.

            Dim lStartLine As Long = objSel.TopPoint.Line + 1 ' Increment by one to show Sub outside of outline

            Dim lStartColumn As Long = objSel.TopPoint.LineCharOffset

 

            ' Look for the end.

            If objSel.FindPattern("End Sub") Then

                ' Select the entire section and outline it.

                objSel.SwapAnchor()

                objSel.MoveToLineAndOffset(lStartLine, lStartColumn, True)

                objSel.OutlineSection()

                objSel.LineDown()

            End If

        End While

    End Sub

Posted: May 28 2004, 12:49 PM by alex | with 3 comment(s)
Filed under:

Comments

TrackBack said:

# June 7, 2004 3:29 PM

Joe Daevis said:

Solemn article. It make me lost in thoughts.
# January 27, 2006 11:21 PM

Joe Daevis said:

Solemn article. It make me lost in thoughts.
# January 27, 2006 11:21 PM
Leave a Comment

(required) 

(required) 

(optional)

(required)