Constructors
Members
Prints stuff to an ad-hoc logging file when running the repl or terminal in development mode
Very handy for the common case where you're debugging termi... [Debug]
Prints stuff to an ad-hoc logging file when running the repl or terminal in development mode
Very handy for the common case where you're debugging terminal interactions
and cannot use println
because it will stomp all over your already messed
up terminal state and block debugging. With [[Debug]], you can have a
separate terminal open tailing the log file and log as verbosely as you
want without affecting the primary terminal you're using to interact with
Ammonite.
A filter as an abstract class, letting you provide a [[filter]] instead of
an op
, automatically providing a good .toString
for debugging, and
providing a...
A filter as an abstract class, letting you provide a [[filter]] instead of
an op
, automatically providing a good .toString
for debugging, and
providing a reasonable "place" inside the inheriting class/object to put
state or helpers or other logic associated with the filter.
The way you configure your terminal behavior; a trivial wrapper around a
function, though you should provide a good .toString
method to make
debugging e...[TermInfo][TermAction]
[Filter]
The way you configure your terminal behavior; a trivial wrapper around a
function, though you should provide a good .toString
method to make
debugging easier. The [[TermInfo]] and [[TermAction]] types are its
interface to the terminal.
[[Filter]]s are composed sequentially: if a filter returns None
the next
filter is tried, while if a filter returns Some
that ends the cascade.
While your op
function interacts with the terminal purely through
immutable case classes, the Filter itself is free to maintain its own state
and mutate it whenever, even when returning None
to continue the cascade.
A collection of helpers that to simpify the common case of building filters
A collection of helpers that to simpify the common case of building filters
A truly-lazy implementation of scala.Stream
A truly-lazy implementation of scala.Stream
One place to assign all the esotic control key input snippets to easy-to-remember names
One place to assign all the esotic control key input snippets to easy-to-remember names
The core logic around a terminal; it defines the base filters
API
through which anything (including basic cursor-navigation and typing)
interacts with t...
The core logic around a terminal; it defines the base filters
API
through which anything (including basic cursor-navigation and typing)
interacts with the terminal.
Maintains basic invariants, such as "cursor should always be within the buffer", and "ansi terminal should reflect most up to date TermState"