11

I call up Find and Replace dialog with Ctrl+H. On F3 it finds the result but then I must hunt the Replace button using the mouse. And on every new find, it changes the screen position. Is there any way to use this dialog using only keyboard?

It will save me a few precious seconds multiplied by some very large number (I'm in the middle of heavy refactoring).

rstackhouse
  • 2,238
  • 24
  • 28
Miroslav Zadravec
  • 3,510
  • 5
  • 24
  • 35
  • 2
    Try to use refactoring feature if available, like rename – Sheen Nov 03 '10 at 14:24
  • [Resharper](https://www.jetbrains.com/resharper/) or something similar might be the way to go if you do a lot of refactoring. Alternatively, you could learn [Visual Studio Regular Expressions](https://msdn.microsoft.com/en-us/library/2k3te2cs.aspx). They are not that dissimilar from PCRE. Also, if you need help learning regex, [LinqPad](https://www.linqpad.net/) is a useful tool for testing REs (only the PCRE style ones I think, but again the syntax isn't that different). – rstackhouse Dec 22 '16 at 15:32

5 Answers5

21

In visual studio 2015:

  • Ctrl+H opens the Replace dialog.
  • Ctrl+F opens the Find dialog.

Within that dialog:

  • Alt+N - Focus "Find" entry field
  • Alt+P - Focus "Replace with" entry field
  • Alt+C - Toggle Match Case
  • Alt+W - Toggle Whole Word
  • Alt+E - Toggle Regular Expressions
  • Alt+L - Open "Look In" dropdown list. Use Up/Down and Enter to select from this list:

    • Current Block
    • Selection
    • Current Document
    • All Open Documents
    • Current Project
    • Current Solution
  • Alt+R - Replace Next

  • Alt+A - Replace All

  • Esc - Dismiss dialog

For example, to replace "foo" with "bar" within the current selection:

  • Ctrl+H - Opens the Replace dialog, with focus on "Search Term".
    • Enter "foo"
  • Alt+P - Focus is now on "Replacement Term"
    • Enter "bar"
  • Alt+L, choose "Selection", press Enter.
  • Alt+W - Whole word only
  • Alt+R - Replace first term
  • Esc - Close replace dialog.
Ben
  • 34,935
  • 6
  • 74
  • 113
3

Sorry,

As microsoft there is no keyboard shortcut as Replace Next,

You can check this url

http://msdn.microsoft.com/en-us/library/da5kh0wa.aspx

bahadir arslan
  • 4,535
  • 7
  • 44
  • 82
2

You could simply copy your desired replacement text before starting to F3 through your source text, and hit Ctrl+V when you hit the next match as VS selects the match text for you.

It is a hack, but it works.

rstackhouse
  • 2,238
  • 24
  • 28
2

If you dock the find/replace window then it will not move with each new find.

You can then alternate with 1 finger on F3 to move to next find, while hovering the mouse over the non-moving replace button to replace what you need.

JumpingJezza
  • 5,498
  • 11
  • 67
  • 106
2

It is possible to deactivate Resharper default behavior of "Alt+R" which provides a quick access to Resharper menu in Visual Studio.

Just uncheck it in Resharpers options: enter image description here

Vladdy
  • 61
  • 3