Search code examples
visual-studiovisual-studio-2008keyboard-shortcuts

Visual Studio : short cut Key : Duplicate Line


Is there a shortcut for Duplicate Line command in Visual Studio 2008?

Some similar examples:


Solution

  • In Visual Studio 2022

    Ctrl + E, V

    In Visual Studio 2019

    Ctrl + D

    In Visual Studio 2017 (v15.6 and after)

    Ctrl + D

    In Visual Studio 2017 (pre v15.6)

    (edit) This feature is now built-in in VS2017: Ctrl + E, V duplicates a line if nothing is selected, or duplicates selection. You can assign it to a different key combination, or find it in the menu:

    Duplicate line in VS2017

    See this reference for more information.

    Pre VS2017, built-in method using clipboard

    As @cand mentioned, you can just do Ctrl + C ; Ctrl + V.

    Ctrl + C will copy the line if nothing is selected.

    Macro solution (pre VS2017)

    If you'd like to implement a more complete solution, perhaps to create a simpler keyboard shortcut or you don't want to effect the clipboard, see this guide:

    Visual Basic:

    Imports System
    Imports EnvDTE
    Imports EnvDTE80
    Imports System.Diagnostics
     
    Public Module DuplicateLastLineModule
        Sub DuplicateLine()
            Dim line As String
            DTE.ActiveDocument.Selection.StartOfLine(0)
            DTE.ActiveDocument.Selection.EndOfLine(True)
            line = DTE.ActiveDocument.Selection.Text
            DTE.ActiveDocument.Selection.EndOfLine()
            DTE.ActiveDocument.Selection.NewLine()
            DTE.ActiveDocument.Selection.StartOfLine(0)
            DTE.ActiveDocument.Selection.Text = line
        End Sub
    End Module
    

    To create the macro, just go to the macro explorer ("Tools->Macros->Macro Explorer" or Alt+F8) and copy paste the code in a new module. Now just assign a keyboard shortcut to it:

    1. go to Tools->Options...
    2. under Environment, click Keyboard
    3. in the "Show Commands Containing" textbox, enter "duplicate" (this according to the name you gave the module.)
    4. you should now see the macro in the list below
    5. choose "Text Editor" from the "Use new shortcut in" list
    6. set focus in the "Press shortcut keys" textbox and hit the combination on the keyboard you wish to use for it (Ctrl+Shift+D in my case)
    7. hit the "Assign" button
    8. you should now see the shortcut in the "Shortcuts for selected command" textbox
    9. hit the OK button

    And that's it. Enjoy!