Ask HN: What's the best 'non-frustrating' search/directory UI/UX you've seen?
I'd love to know what you guys have seen out there. What have been some of the best examples of this type of ui that you've seen?
I'd love to know what you guys have seen out there. What have been some of the best examples of this type of ui that you've seen?
I'm still looking for a Linux equivalent (I'm currently using a shell wrapper for `ag --depth 0 -g <pattern> <directory>`.)
For searching file content I quite like Agent Ransack aka File Locator: https://www.mythicsoft.com/agentransack - main thing I like about it is that it's very quick and easy to see the content results from a subset of the file search results.
It may seem "lightweight" in a modern desktop machine, but I believe the way it works is: it keeps the index of your entire filesystem in RAM at all times. And it continuously monitors that filesystem to keep the index updated. It's kind of brute-force, really. I can think of some ways that could get out of hand and not seem so lightweight.
Regardless, the gap between what Everything can do and what the built-in File Explorer search can do is an embarrassing canyon, and I can't believe MS hasn't even fixed the built-in search enough to make it function correctly let alone quickly at this late stage.
You mean `locate`? Package name in Debian is mlocate.
I don't know ag and it's not a package in Debian.
That said, I agree that Everything is a must-have on Windows. I don't understand how Microsoft's own search engine is so incredibly crappy (and has been since, what, Windows 95?) while Everything is a 200KB binary that does it perfectly.
You're in for a treat then: the package name is "silversearcher-ag".
Next time you want to grep a directory of files: instead of grepping it, pause, remember this comment, install it and then do "ag <searchterm>" instead.
It's quite a bit faster. Well, lots faster.
Fair enough, it's been discussed here previously.
> and it's not a package in Debian.
It most certainly is:
https://packages.debian.org/search?keywords=silversearcher-a...
It, referring to "ag", most certainly isn't. Under another name perhaps, but with an amazing name such as "ag", `apt-cache search ag` gives 38000+ results.
> Fair enough, it's been discussed here previously.
I suppose either my memory isn't infallible or I did not refresh HN often enough that day.
Anyhow that's not what I was remarking on. I was giving an alternative program to use on GNU/Linux systems with similar functionality to Voidtools' Everything. But nobody seems to notice that.
As for the package, you might want to try "apt-file":
sudo apt install apt-file
apt-file update
apt-file find bin/ag
It makes finding some of the less search-friendly packages a little easier, if you know the binary or config file name. I think it'll also work as a poor man's "provides", but I haven't tried: apt-file find /etc/alternatives/mail
As for something like everything, there was a "spree" of tools that tried to provide something similar, but I'm not sure of their current state -- I tried looking for some a while back and got the impression they were all more or less abandoned (with the notable exception of locate/mlocate and the similar apropos/mandb for man pages).It would appear mlocate is most like everything, in that it only index on name/path, not contents.
Of the few I found only "tracker" seemed to be around:
https://wiki.gnome.org/Projects/Tracker
Other than unity's "dash" that is:
https://help.ubuntu.com/16.10/ubuntu-help/unity-dash-files.h...
Finally, there's "recoll":
Finding files is pretty straight forward using the LIKE operator against text in the filename, path or file contents. And the set-based logic of SQL works very well for identifying sets of files to work with: we have an exec() command that lets you run commands on file paths returned in query results.
License terms are free for personal use and $5/month commercial.
In terms of raw performance, I'm impressed with the speed and presentation of https://instantdomainsearch.com/ . Instant live responsiveness improves usability significantly.
Basically, because the list of songs was short-ish (in CS terms), it would fiter it based on the current search textbox what seemed like instantly.
I would have a large list and filter it down each time the user types another letter: and concentrate on making that as fast as possible.
http://intercoolerjs.org/examples/activesearch.html
Search speed, good fuzzy matching and good row/chip design are as important/more important than the basic search UI, IMO.
ctrl p, type fuzzy match, instant results.
Example:
https://www.yelp.com/search?find_desc=tacos&start=0&l=g:-122...
They keep the most common filters quickly available, make it easier to dive into more, and their search result entry contains the neighborhood so i can quickly figure out where something is, a photo, part of a review, phone number and address.
It offers autocomplete for logical operators, search operators, field names and even for values (where there is a limited amount of data available to select). And it offers enough power for nearly all queries I could think of so far.
(In contrast to SQL there are no subselects or explicit joins, but there are plugins that make subselects available).
Not sure how inspiring it is, but here you go: https://changelogs.md/
The goal of this UI is to have the bare minimum of useful info easily accessible.
[0]: https://lists.freebsd.org/pipermail/freebsd-current/2010-Aug...
I'm reminded of the (not surprisingly) defunct Google Desktop and how it would build an index of your file system and let you search it "fuzzily" like you can with Google Search.
Edited to add: Searched Google for it (how meta). Found this:
https://enterprise.google.com/search/products/gsa.html
and this:
https://en.wikipedia.org/wiki/Google_Search_Appliance#Retire...
So it may still be available - until 2018.