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.
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.
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.
Main Features
Display modes
SonicFileFinder is able to run in two different display modes:
- As a popup window
- As a dockable tool window
Popup window mode:
Tool window mode:
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 MFC would match both files, but searching for MFC*p would only match MyFirstClass.cpp.
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.
Live preview
When navigating through the result list using the Cursor Up/Down keys with Use live preview enabled, the selected file will be automatically loaded into the editor.