files-community / Files

Building the best file manager for Windows
https://files.community
MIT License
33.56k stars 2.14k forks source link

Feature: Everything search integration #5845

Open yaira2 opened 3 years ago

yaira2 commented 3 years ago

Value

The current search feature does the job but searches often take a long time especially if the items weren't indexed. We can add a lot of value if we integrate with an app like Everything Search. Alternatively, if we can find a way to bundle Everything with Files, we should find another way to improve search performance.

Steps to implement

Vulcanraven91 commented 1 year ago

I agree with you, I'm using it like 5 years now. Great tool. Here is a SDK Wrapper in Fluent.

https://github.com/Riboe/EverythingSharp

yaira2 commented 1 year ago

Does the wrapper require users to have Everything installed?

heftymouse commented 1 year ago

It does, since Everything's SDK operates through IPC with the running Everything instance

RedIODev commented 1 year ago

Why require to not need extra steps? I mean don't get me wrong less steps is always better. But in this case we are talking about the integration of an optional alternative search engine. It would be way more flexible and easier to implement to just make a pair of radio buttons in the settings: [x] System-Search [ ] Everything-Search

where Everything-Search is grayed out if not running on the system and add a hyperlink to the voidtools website. This would also enable the possibility to support multiple optional search engines when implementing this system in a modular way. Of cause another alternative would be to bundle Everything. But for now ignoring legal stuff this would bloat Files for people who for some reason want to use the windows search and would be really fragile being directly dependent on some foreign search engine still running separately on the system but this time started by Files. A search indexer needs to be it's own programm since it needs to sun continuously in the background and can therefore never be directly integrated in files. Just like the current search is also hosted by windows also running in an separate program. (Assuming this is how the search works. Which I didn't check) Another point for the soft/dynamic integration of Everything is that other software that uses the Everything Api can share the same Everything instance with Files. Not needing duplicate instances and installations.

yaira2 commented 1 year ago

It would be way more flexible and easier to implement to just make a pair of radio buttons in the settings:

Adding an integration can sometimes take as much effort as building the feature from scratch.

RedIODev commented 1 year ago

I currently don't have the time. But when this thread is still open in a few weeks (likely) I will try implementing it. I'm not familiar with the Files source but in C# it shouldn't be to difficult since there already is an c# api like mentioned by @Vulcanraven91

I agree with you, I'm using it like 5 years now. Great tool. Here is a SDK Wrapper in Fluent.

https://github.com/Riboe/EverythingSharp

I didn't look into it throughly but it seems most of the work is already done. Only thing needed is the ui integration and rewiring of the search box.

Svk1190 commented 1 year ago

Here is a related project - Everything Toolbar. It might be nice to have such a search bar in Files.

ghost commented 11 months ago

+1 I think it would be very useful if the files search bar was replaced with everything search.

Fefedu973 commented 9 months ago

+1 very useful

Fefedu973 commented 9 months ago

Instead of replacing all the search bars (could be optional) I think it would be better to add a "main" search bar on the home page to search everything in the computer only using everything search

Surferlul commented 9 months ago

You can use everything search to search subdirectories, so I'd find it quite useful to have everywhere. Otherwise you'll have slow search for subdirectories... Even if you'd want custom filtering on subdirectory searches, you could use everything to give you all files in the directory and do custom filtering on that information. This would make files the only file manager (that I know of) with universal instant search which is a huge plus

Fefedu973 commented 9 months ago

Yes we could use everything search everywhere with filters too (coming soon I think) but a main search bar to search all the computer really belong to the home page in NY opinion it would fit in really well

Welding-Torch commented 9 months ago

+1 much needed

jason919 commented 7 months ago

whatever you guys decide, please do something to current search, it is way too slow.

ndekross commented 7 months ago

Yes, please.

GeoDoX commented 4 months ago

What's the status of this issue? I'm seeing other issues closed as completed. Has Everything been integrated? Can this be closed?

Josh65-2201 commented 4 months ago

The other were closed as duplicate of this one. A way of integrating it following the requirements at the top hasn't been found yet.

jeregon1 commented 2 months ago

So, it's not possible using the library https://github.com/Riboe/EverythingSharp ?

Josh65-2201 commented 2 months ago

That requires everything to be installed and running in the background. It doesn't meet the requirements.

yaira2 commented 2 months ago

There is a way to bundle the dlls together with Files, but it requires further investigation. I recommend trying our Listary integration in the meantime.

sky96111 commented 1 month ago

Steps to implement

  • Integrate Everything Search with Files. The integration shouldn't require any extra steps on the users side (eg. installing Everything).

Honestly, I think it is not a good idea to bundle Everything to Files App.

I prefer this intergration. With Everything installed by user manually. Guidance can be given when Everything is not installed.

But in this case we are talking about the integration of an optional alternative search engine. It would be way more flexible and easier to implement to just make a pair of radio buttons in the settings: [x] System-Search [ ] Everything-Search

Everything needs to run in the background or service to get the ability to automatically update NTFS volume index. However bundling will limit volume update task to Files App lifecicle. And running multiple Everything instances in the background.

Everything provides an SDK for third-party applications to use IPC calls. (e.g. utools, EverythingPowerToys) Which can reuse Everything instance.

jeregon1 commented 1 month ago

Honestly, I think it's the best, just as Listary is not bundled nor Windows Indexer, I think it would be a flexible option to have Everything as an option.