Extended Search version 2.0 for Delphi 3. To Install Extended Search, ensure all files are in the same directory: XSearch3.dll XS3Inst.exe XS3Unins.exe XS3Read.txt Then run XS3Inst. Extended Search will appear under Delphi's search menu the next time Delphi 3 is started. To uninstall, run XS3Uninst.exe. WHAT DOES IT DO? Ever get tired of the DOS-shell -> GREP -> Task switch -> File|Open -> Search|Find cycle? What a waste of time. Ever forget which unit TIndexDef is declared in? Well, I always did. Extended Search is an Add-In expert which brings GREP-Like functionality to Delphi's Search menu, allowing you to search through multiple files for a specific character pattern, display each occurence in its particular context, and open the desired file in the Delphi editor with the cursor positioned at the line of interest, saving a LOT of keystrokes. It supports all the basic GREP options: Expression searches, Case-sensitivity, whole word, and sub-directory searches, line numbers and filenames only. HOW DO I USE IT? Extended Search's fundamentals are pretty much like GREP. You specify a search string, a file or group of files, and some options and it returns a list of the occurences of the search string in those files. The two distinguishing features of this version of Extended Search are File Aliases and the Search Results list. File Aliases: The File Specification edit box takes either an explicit file set specification (i.e., c:\delphi32\source\vcl\*.pas) or a File Alias. Aliases are defined in the properties page (reached via the local menu). To enter a new alias, right-click and choose 'Add Item' or press the INSERT key. Search Results: The search results are displayed in the Search Results Tree-View. Use the space bar, mouse double-click, or right arrow to expand each node and view the context of each occurrence of your search string in a particular file. Press the spacebar or double-click on an occurrence and the file is opened in the Delphi editor and the cursor is positioned on that line. Spacebar, double-click or left arrow again contracts and expanded node. New Features for 2.0: -Searching is done in an interruptible background thread. -Supports GREP-style regular expressions, where the following characters have special meanings: ^ (start of line) Example: ^Delphi Matches the line "Delphi Component Library" but not "{ Delphi Component Library }" $ (end of line) Example: Integer;$ Matches the line "function Foo: Integer;" but not "function Foo: Integer; virtual; ? (any single character) Example: co?y Matches "copy" and "cozy" but not "cop" or "coy" \ (treat next character as literal) Example: co?y\? Matches "copy?" and "cozy?" * (match zero or more occurences of next character) Example: jo*ly Matches "jolly" and "joy" Combine with "?" for a wildcard: Example: jo*?y Matches any character between "o" and "y": "jolly", "joy", "john murphy", "joe smythe", etc. + (match one or more occurences of next character) Example: jo+ly Matches "jolly" but not "joy" Combine with "?" for a wildcard which requires one character in between: Example: jo+?y Matches at least one character between "o" and "y": "jolly", "john murphy", "joe smythe", etc. but not "joy" Sets of characters may also be specified as: [aeiou0-9] match a, e, i, o, u, and 0 thru 9 [~aeiou0-9] match anything but a, e, i, o, u, and 0 thru 9 Example: [cr-t]ough Matches "cough", "rough" and "tough" but not "dough" Example: [~rt]ough Matches "cough" and "dough" but not "rough" or "tough" -Searches open editor files if they match the current filespec. -Optionally searches all files in the current project ("current project" is defined by the Delphi IDE API as those modules appearing in the project manager. -Multiple filespecs are allowed, semi-colon delimited. In addition, on the properties page you may specify a list of default extensions (also semi-colon delimited) which will be used when any filespec omits the filename. For example, the filespec d:\delphi30\source\vcl; c:\batch\*.bat with default extensions as pas;inc which will search all files with .inc and .pas extension in d:\delphi30\source\vcl and only files with .bat extension in c:\batch. -The form is now resizable. -There is a customizable menu hotkey. -Can optionally grab current token from editor window when form is activated. -Drop-down list for file specs. REGISTRATION: Registration is $15 ($30 will include the complete source code, including the regular expression search engine), and, upon request, includes Extended Search v 2.0 for Delphi 2.0 and Borland C++Builder 1.0. To register: - On the Internet: http://www.got.net/~duncan/delphi.htm or http://www.shareit.com/programs/100451.htm. Alternatively, you can go to http://www.shareit.com and enter the program number there: 100451. - On Compuserve: GO SWREG, #15652 - Snail Mail: Send a check to Mark Duncan P.O. Box 671 Ben Lomond, CA 95005-0671 If you find any problems or have any additional suggestions, please contact me at "duncan@got.net" Thanks, Mark Duncan