(Old Version/Thread) Fast Search With Everything

What Does It Do?

The ses script installs four commands: se, se_p, es and es_p. These are front-ends to everything.exe and es.exe respectively. The commands with a _p suffix pop up a prompt for you to edit your search terms.

se and se_p

The se command will launch a normal everything window displaying the results associated with your search terms. The obvious question is why not just use everything natively and the simple answer is that se resolves Opus aliases which as you know are very useful shortcuts. For example, to locate all the Opus scripts that were modified today:

se args=wfn:*.js path:/scripts dm:today
   instead of the much less user-friendly
everything wfn:*.js path:"C:\Users\myIdentity\AppData\Roaming\GPSoftware\Directory Opus\Script AddIns" dm:today

es and es_p

The es command creates and displays an Opus collection containing search results. You can control how the results are displayed with the espane configuration option and you can use the showemptycoll option to force the display of an empty collection if no matches are found. By default, a warning message will pop up.

General Usage

If you click the sample menu icon a window will pop up for you to edit your everything.exe search terms. Similarly, if you click the search menu icon with any qualifier key (Shift, Ctrl, Alt) held down a window will pop up for you to edit your es.exe search terms. When done click the appropriate button. Clicking Here will restrict your search to the current folder.

If a single item is selected in your source tab the editable search terms will be customised to look for all occurrences of that item, otherwise a default set of search terms will be presented for editing. Default search terms can be customised via the defterms option. The built-in default will look for all items which have been modified in the last 5 minutes excluding items in /temp and /windows locations.

Note the mandatory use of args= in se and es commands entered via buttons or as instant commands. e.g.

es args=dm:today size:>10mb
se args=wfn:*.jpg dm:201801 path:/images (assumes you have an /images alias defined)

Sample Menu

The sample menu is intended to give you ideas. Edit the buttons to see what they do. Apart from several different sets of search terms the menu includes URL links to the everything site where you can download the latest code, access the support forums, and remind yourself how the search syntax works. Some of the buttons and/or icons may not work on your system depending on whether you have Acrobat Reader and MS Office installed.

Installation

sesv2_1a.zip (5.3 KB)

  1. Download the attached zip file and extract ses.js (the script) and ses.dcf (sample buttons).
  2. Copy ses.js to your Script Addins folder which you can easily access using the built-in Opus /scripts alias.
  3. Settings --> Customize Toolbars then drag and drop ses.dcf onto a toolbar and click OK to exit Customize mode.
  4. Make sure you have the latest version of everything and its associated es.exe installed. See https://www.voidtools.com/en-au/downloads/

Dependencies

For this script to work properly you need:

  1. Directory Opus v12.5 or later.
  2. everything.exe and es.exe must be available either in the normal default installation folder (e.g. /programfiles\everything) or a location that you identify in the espath and evpath configuration options which you access via Settings --> Preferences --> Toolbars --> Scripts --> ses.

Note that es.exe is not automatically installed as part of the everything installation process. You have to download from the everything site and manually copy to where you want it.

Credits and Thanks

  • Credit to the Opus developers for continuously adding great features that make it possible for scripts like this to be developed and enhanced.
  • Credit to David Carpenter, the developer of everything, another great tool that is well supported and continuously enhanced.
  • Thanks to @Oblias2 for testing behind the scenes and coming up with several excellent suggestions.
2 Likes

Thanks for this script. Only One option doesn't work for me. other's work fine!! the first button of the menu "es with prompt" is doesn't work. when i press that, a dialog box will appear, that's tell Unable to continue- es.exe not found.
my os is windows 10 x64

Where is es.exe on your system? If it is not in the same folder as everything.exe then you can point to its location using the espath configuration option.

image

i just don't know about es.exe. (what is that)
what i do is

  1. Install Everything-1.4.1.895.x64-Setup.exe
  2. Copy ses.js to %appdata%\Roaming\GPSoftware\Directory Opus\Script AddIns folder.
  3. Settings --> Customize Toolbars then drag and drop ses.dcf onto a toolbar and click OK to exit Customize mode.

now plz tell me in details what should i do more!!!

These are the rest of the installation instructions. You can download es.exe from the link I provided.

I don't use USB installation. I download the installation file from link you provided "download installer 64-bit"
and install normally, do no change in installation path or etc. but after install there is no es.exe file in my installations folder of everything (path is C:\Program Files\Everything).

now i download Download Everything Command-line Interface
ES-1.1.0.9.zip
75 KB
extract it & paste it into the everything installation folder. (path is C:\Program Files\Everything).


after that when i press “es with prompt" it's show error. here is the screen.

What version of Opus are you running? I see from the help file that Sysinfo.FindProcess was added in v12.5. The current stable version is v12.7 and the latest beta is v12.7.3. I expect that if you upgrade to either of those the problem will go away. Please confirm.

I have updated the head post to v2.1 which includes a test for Opus version.

If you don't already have es.exe on your system or you want to test a new (or different) version of either es.exe or everything.exe a simple way to do this is to download or copy the executables into your /downloads folder and then update your ses configuration to point to them.

image

ok i tryed your new 2.1 version in the same process. Now it's says directory opus version must be at lest 12.5 and my DP version is 11. everything is clear now. Thanks for nice job man.

Are you aware that Dopus has this functionality built in?
The ScriptInitData has a property min_version.
This will prevent the script from loading.

initData.min_version = "12.5"

Hi @wowbagger. Yes, I know. I initially coded it to use min_version and then noticed that the built-in method relies on the user checking the "other" log to see what the error was. I'm not so sure that all users would know what to do so I chose to spell it out with a dialog.

makes sense, good idea.

These days Opus shows version problems directly in the scripts page in Preferences.

Of course, that doesn't help people still using Opus 11, since the improved script list UI is part of Opus 12. So using a dialog may still make sense (if people don't notice messages in the post about needing 12).

Could that change be pushed down in to v 11? Would save hanging to put this code in all our scripts.

You'd still have to worry about people running older versions of 11 even if we did update it, so I don't think it is worth it, and people would get annoyed about having to download & install a new version just to change how it detects script version issues.

Personally, I think it's enough to put something in bold next to the download link specifying the Opus version required.

Then people can't really miss it. Having the extra version check in the script is just a bonus on top of that (and saves people having to know their exact version, 12.6 vs 12.7.3 etc.)

And then you also help people using Opus 9 and 10 which don't support scripts at all.

yep fair enough