Improving Find & Replace in Visual Studio 11 Beta

Improving Find & Replace in Visual Studio 11 Beta

Rate This
  • Comments 34

In our previous blog post, we introduced the new Find control we are building in Visual Studio.  Our goal was to streamline and modernize the vast array of Find experiences and provide a lightweight mechanism to search within documents. With the huge number of responses we received from the Developer Preview, we knew that our top priority for the Beta release was improving the quality of Find.  Since the Developer Preview release, we have fixed a large number of customer reported bugs, including replace in selection not working, buttons being disabled in the find dialog, missing wrap alerts, match whole word not working, and more.  There still are some rough edges in the Beta Find control, but we are working hard at making Find consistent and reliable for future releases.  Along with fixing bugs, we took a hard look at addressing the top customer suggestions.  Here are some of the top suggestions reported in the Developer Preview that are now available in Beta:

  • Down arrow pops open search options
    One of our top feedback complaints was that search options were not discoverable in the new control.  Additionally, a number of users requested the ability to scroll through the History using the arrow keys.  To enable both of these scenarios, we added the ability to pop open the MRU list by hitting the down arrow key.  We hope that this change makes the search options easier to discover. 

image

  • Keyboard shortcuts
    The support for search option shortcuts was not extensive in the Developer Preview.  A number of customers wanted the ability to use the same shortcuts they were familiar with in VS2010 to set their search options.  In Beta, you can now use Alt+C to toggle Match case or Alt+E to toggle regular expressions.  You can find a full list of shortcuts in my previous post.

image

  • Find control is resizable
    Making the Find control resizable was a top customer request for users who work with larger search terms, mostly common in regular expression searches.

image

  • Regular expression builder updates
    The new Find supports .NET regular expressions, which has been a longstanding ask from customers.  However, users let us know that a number of common (and easy) VS 2010 regular expressions no longer worked in the new Find.  In the Beta Find, we have made additions to the Regular expression builder to support some of the missing patterns that you used in VS 2010.  Click on the builder menu flyout to access these newly added regular expressions.

image

  • Tab order
    Another small but useful change post Developer Preview is the tab order is now consistent with the dialog.  This is another change we pursued based off user feedback.

Even with the improvements in the Beta Find control, there are still some noticeable bugs:

  • Shared scope and options for Quick Find and Find-in-Files.
    One of our top reported bugs is the shared scope and search options for Quick Find and Find in Files. This bug causes the scope and options to be common across the new Find control and the Find dialog. This bug fix, unfortunately, was too risky to release in Beta, but we are addressing it post-Beta.  In the meantime, this extension (link below) should fix the issue so you can work with separate scope and search options.

Download: VS11_BETA_ONLY-FindSettingsSeparator.vsixx

IMPORTANT: The extension provides a workaround for the shared scope & options issue. Please note that this extension can be expected to work correctly only on Beta and should be uninstalled when upgrading to future versions. This extension will not be serviced by Microsoft. If you encounter any issues after installing the extension, please uninstall and restart Visual Studio.

  • Closing documents with an active Incremental search session throws COM Exception
    There is a bug in Find that causes a COM exception every time a document is closed with an active incremental search.  This issue will also be addressed post-Beta. To work around this issue, incremental search should be dismissed before closing documents. ISearch can be dismissed by hitting the Esc key.  Once this exception occurs, please re-invoke Find using Ctrl+F and perform a Find Next.  This will restore incremental search for future operations.

Finally, we want to thank you all for the great feedback you have been giving us.  We are using the feedback to prioritize our work areas and we appreciate you telling us the Find pain-points. Please do continue to send us feedback on the Beta Find experience!


clip_image002Murali Krishna Hosabettu Kamalesha – Program Manager, Visual Studio Editor team

Leave a Comment
  • Please add 3 and 4 and type the answer here:
  • Post
  • XP is old. XP is ****. I wish XP were dead. But it isn't. That's the unfortunate truth.

    What it comes down to is the blatant fact that Microsoft has yet to convince us that removing XP support was purely a technical decision. As seen from the workarounds available at http://tedwvc.wordpress.com, VS11 binaries *can* run on XP, albeit in a rather hacky/ugly manner. From the looks of it, it feels as if the entire decision was made by folks high up in the food chain just for the sake of dumping XP.

    On one hand, Microsoft is actively pushing C++ again. The GoingNative conference was great and the talks were all fantastic. C++11 is similarly great and full of great features.

    On the other hand, Microsoft is pushing C++11 far into the future for many of us developers. We would love to use the ranged based for loop, atomics, improved lambdas, and all that, but we can't dump 30% of our customers. It is just not realistic.

    In addition, it is simply wrong for Microsoft to put such a burden on 3rd party developers. Had Microsoft started with Office, Windows Live, etc. (yes, I'm aware that IE9 doesn't run on XP), we wouldn't need to be having this discussion at all.

    Microsoft, do the Right Thing.

  • Also, "Find Definition/Declaration" is *painfully* slow at times. Make it abortable, at least.

  • I installed the VS11_Beta_Only_FindSettingsSeparator.vsix and restarted VS11 beta, but it has made no difference. I still see that Ctrl-F and Ctrl-Shift-F seem to share the same Scope.

  • @Just one thing..:

    "Had Microsoft started with Office, Windows Live, etc. (yes, I'm aware that IE9 doesn't run on XP), we wouldn't need to be having this discussion at all."

    Windows Live Essentials 2011 (released in June 2010) requires NT6.0+.

  • I agree with CuriousGeorge: unfortunately this extension does not works. I can see it in the list of installed extensions in VS but it has no effect.

  • I was happy to see a fix come out so quickly for the shared scope bug, except the find settings separator patch DOES NOT WORK!  Has anyone gotten this to work?  It shows up as installed and enabled; it just doesn't solve the problem it was intended to fix.  Both Find in Files and the Find Control STILL share the same scope even with this extension installed/enabled.  What a mess!

    Let me know when you guys have a fix for your "fix" available and I'll once again do your alpha testing.  :(

  • Hi All,

    To investigate why the extension is not working, can you please send me a screenshot of the About screen of Visual Studio ? (Help -> About Microsoft Visual Studio) at muhosabe@microsoft.com ?

    Thanks,

    Murali

  • "One of our top feedback complaints was that search options were not discoverable in the new control."

    it's not that they're not discoverable - we all know they're there. it's that they're not ACCESSIBLE.

    you have taken a KEY feature of the code editing experience and HIDDEN it. it should be right there, front and center.

    I'm using this feature many, many times a day and this is a real paint point for me.

  • Hello again,

    Here is a quick update on the extension. Since the extension was intended to work strictly for Beta, installing the Visual Studio Update makes the extension to stop working. We're working on fixing this issue and will update you soon. Thank you all for trying out the extension and reporting this issue.

    -Murali

  • If you could let me EXCLUDE commented code, designer code, .dbml code etc, that would be incredibly great!  I JUST want to search my code.

    for example, allow us to checkmark something like:

    [ ] Search in .cs and .vb files ONLY

  • I wanted to draw your attention to a new bug I have found with Find In Files.  I have found that, when using certain Regular Expressions, the results shown in FIND RESULTS are not clickable.  You should be able to single-click on lines in the results window to preview the source file; double-clicking on lines in the results window should open that source file in its own window.  But instead, nothing whatsoever happens when I either single- or double-click lines in the find results.  

    I have written up this bug here: connect.microsoft.com/.../find-results-preview-window-does-not-always-work-with-reg-exp-find

    I raise the issue over here because I figure you guys are close to this project and, therefore, a fix will come sooner.

    Thanks!

  • The biggest pain point for me is that I cannot do Ctrl+C (in my Visual Studio page) and Ctrl+V (to paste into the search box).

  • Very nice updates.  One thing I would really love to see is multiline search/replace.  Dreamweaver of all things had this and it was extremely useful.

    >>it's not that they're not discoverable - we all know they're there.

    >> it's that they're not ACCESSIBLE.  you have taken a KEY feature

    >> of the code editing experience and HIDDEN it. it should be

    >> right there, front and center.

    I disagree.  The "old" find is cumbersome and takes up too much real estate.  Maybe a compromise?  Ctrl+F to find, and then you can pin it to a pane, showing options and all?

  • We have a new version of the Settings separator extension that now works on Visual Studio Beta update builds as well. For those of you who upgraded to VS Update, the extension would have installed, but not worked. This is because it was configured to strictly work only on Beta. Please download and install this new version and it should work for you.

    Thanks,

    Murali

    Murali Krishna Hosabettu Kamalesha | Program Manager | Visual Studio Professional - Editor team

  • Please release another beta with the corrected colors/icons/theme **BEFORE** releasing the RC so you can get feedback on the colors/icons/theme.

Page 1 of 3 (34 items) 123