My oh my!
This one is terrific — especially on a low-end machine with indexing disabled. Extremely impressive!
So many thanks Marco for sharing this tool and script with us.
And since I just discovered
papers and
runret along with
Everything, I must admit I was so enthusiastic that I went berserk with your script...
I'm short on time so I couldn't read all the posts and I can't test under different OSes/codepages, etc. I don't know if you're ok with me posting an alternate suggestion —clearly based and inspired by your script—, but I thought there might be some ideas that can be used to fuel the next version(s). I've kept your code as-is as much as possible so it will be easier to compare.
Anyway if you'd rather I remove it, don't hesitate to say so.
------------------
Quick summary of the ideas:
•
Enter search in AddressBar just like a regular search: simply prefix the usual search with @ (Alias) e.g. "
@? XY"
•
Limit search to current path (by default), like with regular searches
— Search everywhere by prefixing search terms with "
\" , e.g. "
@? \ XY"
•
Enable or disable diacritics by default (in script header), or on the fly (toggle) with switch "-d", e.g. "
@? élite -d"
•
Autoload Everything if not running
•
AutoPurge of all Everything papers not in use, i.e. not currently opened in any tabs: all searches in different tabs/panes remain available
Now a good but not-so-good one:
• Much faster search result, "on the fly" without creating any file, by letting only XY create its own "paper" file, and only if results are found.
Rationale: I'd noticed the huge difference of speed between a search in ET and via the script was due to disk access (at least on a slow machine), so I used
runret instead.
I see in your comment that you had discarded it because of problems with CJK, so my code is probably a regression in that regard. Though for European languages, it seems to work well.
Addendum to install notes:
– To register the "Everything Search Alias", enter the following line in the AddressBar and press Enter:
Code: Select all
@?=::global $PRE_query; $PRE_query="<@1>"; load "<xyscripts>\Everything in XYplorer.xys", "Find";
– Then to search, type in AddressBar:
"@? " followed by your query, e.g.
"@? FindMe"
Edit: Yikes, you just posted an update!!!...
(BTW, as an extra note, my tests were made on a WinXP - now it's time to try your new version!)
------------------