Rofi is a fuzzy searcher for linux (select one entry from a set of entries quickly by typing a substring). fzf is a similar tool for the shell.

This is useful for quickly producing hacky GUI interfaces.

Is there a similar way to easily select one of several strings with a gui from the command-line in mac?

Example of what rofi is useful for

Searching and playing audio files from a known location.

cd music
ls | rofi | xargs vlc 

You might bind this to a key.

The key point is that you have complete programmatic control over the input to the fuzzy finder and how the output is used.

  • 1
    even if Spotlight does a lot of what you seem to describe, I am used to Quicksilver, but I don't understand if you are looking for an app or for a library to include in other projects - and btw both Spotlight and Quicksilver can be extended with plugins Jan 12, 2018 at 1:55
  • 1
    Another one would be Alfred. It can also be extended with "Workflows", but that feature requires a powerpack license that costs moneys.
    – Joonas
    Jan 12, 2018 at 8:00
  • 1
    Thanks for the reply. Hmm, how much control does one have over the input and actions of quicksilver and alfred. I kind of want something I can use for hacky scripting where I can completely control input and output from my script. Kind of a like a combobox popup that takes you 10 seconds to code.
    – Att Righ
    Jan 13, 2018 at 1:08
  • 1
    As someone who just writes barely working applescripts with Alfred, I can't really say. I've seen many Workflows where people have done cool stuff, but I wouldn't know about the process. There's Packal, which has tons of Workflows people have made (Some more can be found I github/google). Sadly Alfred doesn't have a trial for the power pack. I couldn't find good videos on custom Workflows though you should still check those out. They should at least show you how that interface works a little bit.
    – Joonas
    Jan 13, 2018 at 2:15
  • 1
    These are the best videos I could find. They show how Workflows are created. This first one is sort of basic Workflow with an argument youtu.be/OtazipiwMkQ and this second hows shows how script filters can be made youtu.be/JMIJ7N6ULXg
    – Joonas
    Jan 13, 2018 at 2:40

1 Answer 1


There is the choose app and it does exactly what you ask for. It takes stdin, shows GUI selector and returns selected item to stdout.

You can install it using brew install choose-gui

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .