Design

Terminus is split into two parts: terminus.effect which defines all the effects that can be used in terminal, and terminus, which defines the user-facing functions for interacting with effects.

Low-level Code

All the ANSI escape codes used by Terminus are defined in terminus.effect.AnsiCodes. This can be useful if you want to write escape codes directly to the terminal without the abstractions provided by the Terminus DSL. Here's a simple example.

import terminus.effect.AnsiCodes

AnsiCodes.foreground.red
// res0: String = "\u001b[31m"
AnsiCodes.erase.line
// res1: String = "\u001b[2K"
Copyright © Noel Welsh. Built with 💖