IOMENU(1)                   General Commands Manual                  IOMENU(1)

NAME
     iomenu – interactive selection menu

SYNOPSIS
     iomenu [-#] [-l lines] [-p prompt]

DESCRIPTION
     iomenu is an interactive filtering and selection tool for the terminal.

     It reads lines from standard input, and prompt for a selection.  The
     selected line is printed to standard output.

     -l lines          If lines is 0 or if -l is not set, the items are
                       displayed in an horizontal list.  Otherwise, in a
                       vertical list of at most lines lines.

     -p prompt         Set the prompt to display at the beginning of the input
                       to prompt.

     -#                If a line starts with #, iomenu will interprete it as a
                       header, which always matches, and can not be printed.

KEY BINDINGS
     An active selection is highlighted, and can be controlled with
     keybindings.  As printable keys are entered, the lines are filtered to
     match each word from the input.

     Up, Down, Ctrl + p, Ctrl + n
                      Move selection to the previous/next item.

     PageUp, PageDown, Alt + v, Ctrl + v
                      Move one page up or down.

     Ctrl + m, Ctrl + j, Enter
                      Print the selection to the standard output, and exit 0.

     Ctrl + h, Bakcspace
                      Remove last character from current input.

     Ctrl + w         Remove last word from current input.

     Ctrl + u         Remove the whole input string.

     Ctrl + i, Tab    Fill the input with current selection.

EXIT STATUS
     The iomenu utility exits 0 on success, and >0 if an error occurs.

EXAMPLES
     Open a bookmark from a list in a text file:

       iomenu < bookmarks-urls.txt | xargs firefox

     Go to a subdirectory:

       cd "$(find . -type d | iomenu)"

     Edit a file located in HOME:

       EDITOR "$(find "$HOME" -type f | iomenu -l 255)"

     Play an audio file:

       mplayer "$(find ~/Music | iomenu)"

     Select a background job to attach to:

       fg "%$(jobs | iomenu | cut -c 2)"

     Filter "ps" output and print a process ID

       { printf '# '; ps ax; } | iomenu -l 255 -s | sed -r 's/ *([0-9]*).*/1/'

SEE ALSO
     dmenu(1), slmenu(1), vis-menu(1)

BUGS
     iomenu currently only support ASCII characters.

AUTORS
     iomenu was written from scratch by Josuah Demangeon <mail@josuah.net>
     with the help of dmenu(1) and vis-menu(1) as models.

Void Linux                      August 21, 2017                     Void Linux
