ivy-prompt
A line editor interface wrapper for Rob Pike's Ivy,
an interpreter for an APL-like language.
It provides a
Readline-style input
prompt with input history and tab-completion.
The original ivy
command interacts with the world via standard input/output,
integrating well with a Unix or
Plan 9 environment or a text editor like
Acme.
However, if you prefer or are used to a mode of interaction more akin to Bash,
Haskell's GHCi, or Python's REPL with an interactive line editor, then this
project is for you.
Although Ivy is described by its creator as "a plaything," it should not
be underestimated.
Watch Russ Cox' videos
of solutions for Advent of Code 2021
using Ivy for a demonstration of its capabilities or take the built-in
tour with the )demo
command.
Installation
First install Ivy itself, if you haven't already done so:
go install robpike.io/ivy@latest # or @master if you want to use
# the development version of Ivy.
The ivy
binary should be in the PATH
.
Then install this wrapper:
go install github.com/fzipp/ivy-prompt@latest
Run it:
ivy-prompt
Line Editing
See the liner
documentation for
a complete table of supported keystrokes / actions. Here's a small selection:
Keystroke |
Action |
Tab |
Next completion |
Up |
Previous match from history |
Down |
Next match from history |
Ctrl-L |
Clear screen (line is unmodified) |
Ctrl-D |
(if line is empty) quit |
License
This project is free and open source software licensed under the
BSD 3-Clause License.