Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB7
Expertise: Intermediate
Jul 20, 2002

WEBINAR:

Live

Full Text Search: The Key to Better Natural Language Queries for NoSQL in Node.js


Date: 1/31/2018 @ 2 p.m. ET

Quickly swap assignment operands

It often happens that you need to swap the operands of an assignment. For example, say that you have this set of assignments:

p1.FirstName = m_FirstName
p1.LastName = m_LastName
and later in your source code you want to add a similar set of assignments, but with reversed operands:

m_FirstName = p1.FirstName
m_LastName = p1.LastName
Here's a macro that lets you perform this operation automatically:

Sub SwapOperands()
    DTE.ActiveDocument.Selection.StartOfLine _
        (vsStartOfLineOptions.vsStartOfLineOptionsFirstText)
    DTE.ExecuteCommand("Edit.Find")
    DTE.Find.Action = vsFindAction.vsFindActionFind
    DTE.Find.FindWhat = "="
    DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument
    DTE.Find.MatchCase = False
    DTE.Find.MatchWholeWord = False
    DTE.Find.Backwards = False
    DTE.Find.MatchInHiddenText = False
    DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxLiteral
    DTE.Find.Execute()
    DTE.Windows.Item(Constants.vsWindowKindFindReplace).Close()
    DTE.ActiveDocument.Selection.Delete()
    DTE.ActiveDocument.Selection.StartOfLine _
        (vsStartOfLineOptions.vsStartOfLineOptionsFirstText, True)
    DTE.ActiveDocument.Selection.Cut()
    DTE.ActiveDocument.Selection.EndOfLine()
    DTE.ActiveDocument.Selection.Text = "= "
    DTE.ActiveDocument.Selection.Paste()
End Sub
For best usability, you should store this macro in a macro module, then assign a convenient shortcut to it, for example (two keystrokes): Ctrl-Shift-V, Ctrl-Shift-V. You can do this assignment from the Keyboard page in the Tools-Options dialog box. To execute the macro, place the caret on the assignment statement and press the shortcut you assigned to it.
Francesco Balena
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date