pick(1) fuzzy select anything

SYNOPSIS

pick [-h ] [-v ] [-q QUERY ] [-d [-o ] ] [-x | -X ]

DESCRIPTION

pick allows users to select from a set of choices using an ncurses(3X) interface with fuzzy search functionality.

pick accepts a list of choices as input and produces the selected choice as output.

pick supports these options and arguments:

-h
output a help message and exit.
-v
output the version and exit.
-q QUERY
supply an initial search query.
-d
read and display descriptions.

When the -d option is supplied, input lines will be split into two parts by the last occurence of IFS Both parts will be displayed but only the first part will be used when searching.

-o
output description of selected on exit.
-x
enable the use of the alternate screen terminal feature.
-X
disable the use of the alternate screen terminal feature.

The pick ncurses(3X) interface is operated with the following keys:

Up/Down or Ctrl-P/Ctrl-N
Select between choices matching the current search query.
Enter
Output the currently selected choice and exit.
Printable characters
Printable characters are added to the search query input field and will refine the current search query.
Left/Right or Ctrl-B/Ctrl-F
Move the cursor left and right in the search query input field.
Ctrl-A
Move the cursor to the beginning of the line in the search query input field.
Ctrl-E
Move the cursor to the end of the line in the search query input field.
Backspace
Delete one character to the left of the cursor in the search query input field.
Ctrl-D
Delete the character under the cursor in the search query input field.
Ctrl-W
Delete to the beginning of the closest word to the left in the search query input field.
Ctrl-U
Delete to the beginning of the line in the search query input field.
Ctrl-K
Delete to the end of the line in the search query input field.

ENVIRONMENT

The following environment variables will affect the execution of pick

IFS
Determines the separator used between choices and descriptions.
VIM
If set, disables the use of the alternate screen terminal feature. This avoids issues with using the alternate screen when run using Fn system in vim(1). To force the use of the alternate screen run pick with the -x option.

EXAMPLES

pick can be used to select anything and is very effective when combined with utilities like xargs(1).

Select a file in the current directory to open using xdg-open1:

find -type f | pick | xargs xdg-open

Select a man page to display with man(1):

apropos -l . | fltr | pick -do | tac | xargs man

AUTHORS

An Calle Erlandsson Aq [email protected] An thoughtbot Aq [email protected]