Quick Find extension in the Productivity Power Tools

Quick Find extension in the Productivity Power Tools

Rate This
  • Comments 32

We’re pleased to announce a new Quick Find (Ctrl+F) extension in the February release of the Productivity Power Tools.  This is the first version of the Quick Find extension and we are planning to make some improvements to it in future Power Tools releases, but this blog post describes the reasons for the extension, its functionality, where we’re planning to take it in future versions, and how to send us feedback.

Why make a Find extension?

Find is a feature that is used day in and day out by the vast majority of developers, and yet the built-in Find dialog leaves something to be desired.  In fact, Find is the code editor feature that generates the most suggestions on Connect and has for several versions.  We haven’t made significant changes to Find since VS 2005 and felt that with the Productivity Power Tools, the time was right to act on your feedback.

Our overarching goal is that unlike VS 2010 Find/Replace, the Power Tools Quick Find/Replace should be lightweight, quick, and simple.

VS 2010 Find

Power Tools Find

Covers too much code Occupies very little space
Jumps around during searches Remains stationary
No immediate results Uses an incremental search for nearly instant results
Uses outdated regular expression syntax Uses familiar .NET regular expression syntax

What can it do today?

Basic Quick Find/Replace

Pressing Ctrl+F will invoke the extension’s Quick Find.  Incremental Search users will also notice that Ctrl+F and Ctrl+I are one and the same – our hope is that the extension is fast and light enough to replace the built-in Incremental Search.  The UI should always sit in the upper right corner of the editor and includes, from left to right:  toggle to switch to Replace, Find What box, Find Previous button, Find Next button, and Close button.  It looks like this:

Quick Find extension UI

Pressing Ctrl+H will invoke the extension’s Quick Replace.  Its UI has everything from Find plus a Replace With box, Replace Next button, and Replace All button.  It looks like this:

Quick Replace extension UI

Results are found incrementally and all matches are highlighted almost instantaneously in the editor.  The default highlight color is yellow and is customizable through Tools->Options->Environment->Fonts and Colors->Find Highlight (Extension).  The Enhanced Scrollbar extension, also new in this power tools release, also displays markers that show where all of the results are in your file.  These are orange by default and customizable through Tools->Options->Productivity Power Tools->Enhanced Scroll Bar->Find results color.

Find extension with highlights

Find History and Options

The Quick Find extension also includes a search history and common options in the Find What dropdown box:

Quick Find extension history and options

The “Use Regular Expression” option has also received a long-awaited update:  it now uses .NET regular expressions!  This is one of the most common requests we receive for the Find dialog, so we’ve added it to the extension’s Quick Find.  We are also hoping to update the regular expressions in the built-in Find in Files dialog; that part is much harder to do via extensibility and is not available yet, but it is on our to-do list.

Clicking “Advanced Options…” or pressing Ctrl+Shift+F will take you to the built-in Find in Files dialog.  To reach the built-in Quick Find, just go to Find in Files and press Ctrl+F.  Similarly, you can reach Replace in Files with Ctrl+Shift+H and Quick Replace with Ctrl+Shift+H, Ctrl+H.

Last but definitely not least, there is a “Send Feedback…” link at the bottom of the Find What dropdown.  This allows you to directly e-mail the team that built this extension, including the developer, tester, and program manager.  We read every e-mail and are already planning an update to the extension based on your feedback.  We would love to hear from you!

Where is the extension going in the future?

Based on your feedback and our bug backlog and ’wish list’ of mini-features to add, we’re planning an update to the Find extension in the next Pro Power Tools release.  This is not an exhaustive list and not all of these will make it into the very next version, but we’ve highlighted the top issues we hope to address.

Find in more scopes

By far the #1 piece of extension feedback so far is about scope.  The current version of the extension always uses the current document or window as its scope, but you can still do a find in selection, current project, entire solution, etc. by going to Find in Files (Ctrl+Shift+F) or, for selection and current block, the built-in Quick Find (Ctrl+Shift+F, Ctrl+F).  We have heard loud and clear that being able to search in other scopes is critical and we’ll be working that into Quick Find in the next Pro Power Tools update (release date still TBD – watch this blog for news!).

More complete keyboard support

We also knew when we released this extension that its keyboard support is not yet complete, and that’s something we plan to address.  This includes:

  • Keyboard shortcuts for everything:  Some buttons (Find Previous, Find Next, Close) already have shortcuts, but we plan to add them for the rest of the buttons (including Replace Next and Replace All) and for the search options.
  • Keyboard navigation of the dropdown:  There is a known bug where Alt+DownArrow will correctly open the history/options dropdown but the arrow keys won’t do anything after the dropdown is open.  And when the dropdown is closed, the unmodified arrow keys should cycle through your search history.  We’re planning to fix both of these issues in the future.
  • Tab/Shift+Tab navigation:  Several of you have noted that it takes three tabs to get from the Find What box to the Replace With box.  We’re reducing this to a single tab in the next version.  We also intend to fix the known bug that prevents Shift+Tab from moving out of the Find What and Replace With boxes.

Number of Matches

After you’ve done a search, we plan to add an overlay that says “x of y” (but with numbers), where x is your current match and y is the total number of matches.  This should also make it clearer when there are no matches and when your search passes the end of your document.

Send us feedback!

We’re prioritizing our idea list and adding new suggestions to that list based on your feedback, so we would love to hear from you!  Positive and negative comments, mini-feature suggestions and bug reports, and any other thoughts you have are more than welcome.  And if you choose to disable the extension (Tools->Options->Productivity Power Tools->All Extensions), we would ask that you send us a quick e-mail so we know why and can hopefully address your concerns in a future version.  Just use the “Send Feedback” link in the Find dropdown or contact us directly at VsFindFeedback@microsoft.com.

Enjoy!

Brittany Behrens
Program Manager, Visual Studio Editor team & Quick Find extension

Leave a Comment
  • Please add 8 and 7 and type the answer here:
  • Post
  • If you added toolbar buttons to toggle "match case", "match whole word", "use regular expressions", and some way to easily switch from "all open files" back to "current file" then you would make my day.  The "Match Options Commands" extension covers the first two, but not the last two.  These toolbar buttons were inexplicably removed between VS2003 and VS2005, and they were sorely missed until the Match Options Commands add-in was released, but it only covered 2 of the 3.

  • I have it installed and I'm loving it! Can't wait to see what's next. :-)

  • Replace in selection is a major missing feature. Since going back to the older dialog is clumsy when this addon is enabled, unfortunately, I have disabled this very cool addon :(

  • I find it really great. I love proper regex search, although they'd be more useful in solution-wide searches. I'm only missing the alt+a mnemonic for "replace all". Also, this post made me learn that options are in the history drop-down. That was a wtf moment for me. I know wpf is super extensible and allows you to do stuff like that but it's really unintuitive. Anyways, good job!

  • Can you please, PLEASE separate Find and Replace add-ins? The Find part is very useful, but the replace part - I'm not sure which scenario you actually covered. My usual MO is to select some part of code and do replacing in the selection. I can't do that any more, so I'm forced to switch off the extension, loosing the excelent Find tool in the process.

  • Is there a keyboard shortcut to leave the find? Control-F gets me in, but escape doesn't leave (and tab gets lost in the type and member drop downs).

  • Most important to me is to be able to use the same shortcuts as in the current Find and Replace window, especially alt+c for "Match Case" and alt+e for "Use Regular Expression".

  • Looks practical enough, but will feel practical only if it also behaves well for large solutions.

  • I have emailed this to the feedback address as well:

    Without Quick Find enabled:

    Ctrl+I, type something that matches, press arrow down.

    F3 searches for the next match and Ctrl+I starts a new incremental search.

    With Quick Find enabled:

    Ctrl+I, type something that matches, press arrow down (search window stays open).

    F3 and Ctrl+I both search for the next match.

    Now, when I start typing to do the incremental search that I just started, it enters text into the editor instead of searching for it.

    For this reason, I can not use Quick Find.

  • Neat, but I much prefer the normal search box.

  • "VS 2010 Find

    Covers too much code

    Jumps around during searches

    No immediate results

    Uses outdated regular expression syntax"

    Why did you do that in the first place?

  • Like it, but have problems when i want to a replace in a selected text in the IDE.

    Missing the shortcut keys a lot alt+a replace all etc..

    Keep up the good work..

  • I hate this feature, and everyone I know at my office hates it as well, and because of it we have removed the PowerTool plugin from our Visual Studio.

  • You did know that if you hate the QuickFind you can disable it instead of uninstalling the whole PowerTools extension, right? You can go to Tools->Options->Productivity Power Tools dialog and move the QuickFind slider to Off position...

    (Or keep it enabled and just use Ctrl+Shift+F to open the old Find dialog)

    Btw, it would be more helpful to the Editor team if you'd describe exactly what you and your colleagues don't like about the extension.

    Alin

  • when trying to switch the search for the solution of the studio falls

Page 1 of 3 (32 items) 123