Skip to content

A TUI playground to experiment with your favorite programs, such as grep, sed, awk, jq and yq

License

Notifications You must be signed in to change notification settings

paololazzari/play

Repository files navigation

play

Go Report Pipeline status

play is a TUI playground for your favorite programs, such as grep, sed and awk.

play

Demo

It uses the excellent tview library for the UI.

Installation

$ git clone https://github.com/paololazzari/play
$ cd play
$ go build -o /usr/local/bin/

Usage

./play <program>

N.B. The program must be installed on your machine.

The input is evaluated immediately as you type without any validation. If you want to use play in read-only mode, thus avoding any file changes (such as those that would result if, for instance, sed -i was used), then you can use a docker container:

$ docker run --rm -it -v "$(pwd)":/play:ro plazzari/play:latest <program>

To exit the application, use Ctrl C.

To exit the application printing the input expression to stdout, use Ctrl S.

Key bindings

Component Key Description
Any Ctrl C Exit application
Any Ctrl S Exit application and print input expression to stdout
Command Options Tab Move focus to positional arguments
Command Options Shift Tab Move focus to file picker
Command Options Enter Move focus to output
Positional Arguments Tab Move focus to file picker
Positional Arguments Shift Tab Move focus to command options
Positional Arguments Enter Move focus to output
Positional Arguments Ctrl O Open wide editor
Wide Editor Esc Close wide editor
Wide Editor Ctrl O Close wide editor
Wide Editor Ctrl Enter Enter newline
Wide Editor Enter Move focus to output
File picker Tab Move focus to command options
File picker Shift Tab Move focus to positional arguments options
File picker Ctrl O Open selected file/Close selected file
Output Esc Move focus to previous component

Credits

The lovely gopher was created with gopherkon.