Please note that the screenshots are now outdated. I want to see some reactions to the new look before I decide to keep it permanently.
0.0.1.4 > 0.1ÃŸ
- Fixed Filter Template dialog code to properly edit and add templates.
- Fixed Search Template dialog code to properly edit and add templates.
- Added option to save the current state
- Added option to load a saved state
- Added option to clear the search history
- Changed version numbering from x.x.x.x to x.x
- Added a blue theme to the forms, not sure whether it's an improvement or not...
- Form size and location are now restored on next start
What is Argus?
Following up this earlier post on DC by Riposa, I've made a freeware search utility for Windows that will search inside one or more files for a given search term. The application is called Argus, and you can download the 0.0.1.4 ALPHA version from the link at the end of this post. I recommend you read this post before you try the application.
Argus is a search utility that will search inside one or more files for a specific search term. What makes Argus unique is the capability of matching terms that are not an exact match. I.e., misspelled words, derived words and words that are phonetically identical can be found with this tool.
Because of the lack of documentation in Argus, I will explain the main functionality in this post. In the future a help file will be included with Argus.
After installing Argus, you can launch it from the Start Menu folder Argus and you will be presented with this screen:
The main screen consists of four sections, Search Options, Search Scope, Results and Context View. You can expand and collapse a section by clicking on its header. However, you cannot collapse the Results section.
At the top, next to the menus, you will find the text field to enter your search term and the button to start a search. Argus keeps track of your used search terms and you can use the drop down button to quickly look up your previously used terms.
Before you start a search, you may want to set some search options. Argus uses Search Templates that will hold a set of settings that are used for a search. By default Argus has four defined Search Templates: Exact, Phonetic, Extensive and Regular Expressions. You can click on the 'Manage Templates...' button to view, edit or add Search Templates:
In the above example the 'Exact' template is shown and you can see that a search conducted with this template will only return exact matches, with exact letter casing and whole words only. It also ignores any words that are written in all uppercase and words that contain digits. You can add new templates or edit the existing ones to suit your needs.
Once you have defined the method, you must define a scope to search in. The Search Scope section allows you to define the files to search in. Argus uses Filter Templates which defines the type of files that are included in the search when you add one or more folders to a search scope. There are three default Filter Templates: All files, All but executables and Text files. You can click on the 'Manage Filters...' button to view, edit or add Filter Templates:
Here the 'All but executables' template is highlighted. You can see that the include filter contains *.*, which results in all files to be included. However, the exclude filter contains some entries. Files that match one or more of these exclude filters are not included in the search scope.
The filters are basically the same as what you might use on a command prompt. You can use the wildcards '?' and '*' to match any one or more characters. Please mind that your are not limited to extensions. You may also define a Filter Template that has an include filter 'readme.txt' to only search in files called readme.txt located in any of the folders you specify.
Clicking the 'Add Folder(s)...' button allows you to browse for a folder to search in. You will be prompted to include subfolders or not after your selection.
Clicking the 'Add File(s)...' button allows you to browse for one or more files to include in the search. The Filter Template has no effect on these files!
You can clear the search scope by pressing CTRL+DEL or right clicking in the search scope list and selecting 'Remove all'.
Once you have chosen your search method and scope, you can enter a search term and hit Enter or click the Search button to start searching.
I've started an example search in the above screenshot. I used the extensive search in all text files in my C:\Temp folder and its subfolders. The Search Scope header reports that 31 files match the used Filter Template. I searched for 'install' and the Results section header reports 42 items that match my criteria.
I've highlighted one of the matches. The match is in the C:\temp\ClearTemp folder, the filename is readme.txt. The match is located on line 11, column 152 in the file. In this case the match is 100%.
The Context View section shows the entire line this match is located in and highlights the match itself.
You can right-click any search result and run a macro on it. There is one macro defined: 'Launch file...'. This will launch the file with its associated application. You can use the 'Tools' > 'Macro Editor...' menu to define your own macros:
Above, the default macro 'Launch file' is selected. All it does is launch the application %assoc%, which is a shorthand term for the associated application. You can define your own macro and launch any application you wish. You can use the various shortcut terms to pass them as an argument to the application. For example, if you set the launch application to Notepad.exe and use the argument %path%, Notepad will be launched and open the selected file. Most text editors have an option to scroll to a certain line and column position from the command line. You can use %line% and %col% for this.
Search Methods Summary
Exact: Will match only exact terms, case sensitivity is optional, whole words is optional.
Phonetic: Will match all terms that are phonetically identical. Optionally, you can use Phonetic Near to match any term that is phonetically similar to the search term.
Extensive: This method will usually result in the most matches, but it also the slowest method. It searches for the extact term, but it will also match misspelled versions. For example, if you search for 'install', it may return 'instal', 'nstall', 'isntall', 'unstall', 'instoll', 'enstill', etc. This is most useful if you are looking for a name that may be spelled differently or you don't remember exactly.
Regular Expressions: This search allows you to enter a RegEx pattern in the search field and it will show all matches across the files. This can be useful to extract email addresses, phone numbers, etc from multiple files. You can toggle case sensitivity in the Search Template Manager.
Argus comes with 9 dictionaries: English (US), English (UK), English (Canada), English (Australia), Spanish (Spain), Spanish (Mexico), French, Italian and German. For now, the dictionaries are only used for phonetic based searched. In the future they will be used for spell checking pusposes as well.
You can change the default dictionary (English US) by using the 'Tools' > 'Dictionary' menu. The available menu items are based on the files in the 'Dictionaries' folder of the Argus installation folder.
In the future I plan to add:
- Spell checking
- Search for multiple terms using boolean identifiers
- Searching inside compressed archives
Please let me know about any features you may feel are useful to add or modify.
Please use the links below to download and install Argus. In the future, I will make a home page for Argus. I hope you will test the application thoroughly and report your findings in this thread. Many thanks in advance!
ArgusInstaller.exe is the main application installer
The other files are optional dictionaries (Italian, French, German / Spanish / Other English). They are not required for the program to run properly (the US English dictionary is included by default). The dictionaries are only used for phonetically searching.