SonicFileFinder

— Fast & Simple File Searching in Visual Studio —

What is SonicFileFinder?

SonicFileFinder is a free add-in for Visual Studio that allows a fast and convenient search for any file within every Project of the loaded Solution by entering the complete filename or just a part of it. The found file(s) can either be edited with a single keystroke or a Windows Explorer / CommandLine prompt can be opened at the file’s location.

Donations

If you like and use SonicFileFinder, why not send me a little something from my amazon wish lists in the USUK and Germany.
Or you could just buy me a coffee. Thank you!

The development of SonicFileFinder has been ceased. Read more about the why in this blog post.

Features

The main functionality of SonicFileFinder consists of finding files by name within every Project of the current Solution.

To do that simply enter a filename or a part of a filename into the search box. The list of files will automatically be updated to match the search term. The exclude box can be used to exclude files from the search.

To edit a found file simply select the file in the result list and press Enter, use the Open button or Doubleclick it with your mouse.

Display Modes

SonicFileFinder is able to run in two different display modes:

  • As a popup window
  • As a dockable tool window

Popup window mode:

sonicFileFinderDialog_222759eb-7487-436d-a896-4c73b75f4e82_0

Tool window mode:

sonicFileFinderToolWindow_2839b922-e607-4223-bd88-5d77e2d22aaf_0

Best Match

By sorting the Match column in descending order, you see the best matching result on top of the result list (see Screenshot above).

Shortened Paths

To keep the file paths shown in the Path column short, the common base path of all files is determined, extracted from the original paths and shown in the column header.

Search Options

You can use wildcards, use placeholders or search by initials.

Folder names
Just add a “” before typing a folder name to search for folders in the same way as for files.
Say you have two files with the same file name, but in different folders. For example: file 1: abc/def/MyFile.txt; file 2: abc/ghj/MyFile.txt
You could then type “/de my” or “/a /d MF” or “/abc/def/myfi”, etc. to find file 1.

Wildcards
The * can be used a wildcard character.
When simply typing a search text, that text is looked for anywhere in the file name. It behaves like you have entered *MySearchText*.
To search from the beginning of a file name just enter a search text and place the * afterwards, e.g. MySearchText* to find any file name beginning with MySearchText.
To match the end of a file name, just type the * first and enter the search text afterwards, e.g. *.cs to find any C# file.
You can use the wildcard anywhere in the search text. My*Text would match all files beginning with My and ending with Text.

Placeholders
The ? can be used as a placeholder.
Placeholders can be used to match a specific number of any character in a search text, e.g. My??????Text would match MySearchText, but not MyFirstSearchText.

AND search
You can enter multiple search terms separated by SPACE for performing an AND search, e.g. My Text would match MySearchText, but not MyFirstSearch.

Search by initials
This search option could save you some typing for finding files with long file names.
If you are looking for a file named MyFirstClass.cs you can just type MFC and it will match this file name.
Note that you have to type uppercase letters to use this feature. As soon as you begin typing uppercase letters, search by initials becomes active and you will only find files containing those letters.

You can also use wildcards in conjunction with search by initials. Example: There are two files MyFirstClass.cpp and MyFirstClass.cs. Searching for MFCwould match both files, but searching for MFC*p would only match MyFirstClass.cpp.

Search History

Each time you perform an action (open, explore, command line) on a found file, the used search and exclusion terms are saved to be used for later searches. The search history is displayed underneath the search/exclusion box and can be navigated using the keyboard or the mouse. This feature can be disabled in the configuration dialog. Note, that the history is hidden by default. It pops up using either a click on the “History” button, oder by using a keyboard shortcut.

Keyboard Commands

SonicFileFinder is completely keyboard controllable.

Explore

By pressing the Explore Button, Windows Explorer will be opened at the location of the selected file.

Command Line

By pressing the Command Line Button, either the standard CommandLine or a PowerShell window will be opened at the location of the selected file.

Contact

If you have any suggestions, you have found a bug or just want to say hello, feel free to contact me by writing an email to sonicfilefinder@jens-schaller.de or use the contact form.

Donations

If you like and use SonicFileFinder, why not send me a little something from my amazon wish lists in the USUK and Germany.
Or you could just buy me a coffee. Thank you!