Package-level declarations

Types

Link copied to clipboard
interface Clipboard

Puts text on the clipboard of the computer running the terminal.

Link copied to clipboard
@Stable
class ClipboardCopy(val text: String)

A copy of text to the clipboard.

Link copied to clipboard
interface Mosaic
Link copied to clipboard

Behaviors when there is no interactive TTY.

Link copied to clipboard
interface Notifier

Shows desktop notifications through the terminal.

Link copied to clipboard
@Immutable
value class PointerShape(val name: String)

A shape of the mouse pointer, named like the CSS cursor it corresponds to.

Link copied to clipboard
@Stable
class StaticLogger
Link copied to clipboard
interface TerminalControl

Lets other programs use the terminal for a while, like an editor or an interactive command.

Link copied to clipboard
@Immutable
class TerminalState(val focused: Boolean, val theme: Terminal.Theme, val size: Terminal.Size)
Link copied to clipboard
interface TextCanvas

Properties

Link copied to clipboard
val LocalClipboard: ProvidableCompositionLocal<Clipboard>
Link copied to clipboard
val LocalNotifier: ProvidableCompositionLocal<Notifier>
Link copied to clipboard
val LocalStaticLogger: ProvidableCompositionLocal<StaticLogger>
Link copied to clipboard
val LocalTerminalControl: ProvidableCompositionLocal<TerminalControl>
Link copied to clipboard
val LocalTerminalState: ProvidableCompositionLocal<TerminalState>

Functions

Link copied to clipboard
fun Mosaic(coroutineContext: CoroutineContext, onDraw: (Mosaic) -> Unit, terminal: Terminal): Mosaic
Link copied to clipboard
suspend fun runMosaic(onNonInteractive: NonInteractivePolicy = Exit, alternateScreen: Boolean = false, mouse: Boolean = alternateScreen, content: @Composable () -> Unit): Boolean
Link copied to clipboard
fun runMosaicBlocking(onNonInteractive: NonInteractivePolicy = Exit, alternateScreen: Boolean = false, mouse: Boolean = alternateScreen, content: @Composable () -> Unit): Boolean
Link copied to clipboard
fun runMosaicMain(alternateScreen: Boolean = false, mouse: Boolean = alternateScreen, content: @Composable () -> Unit)

Run content until it completes, for use in main.

Link copied to clipboard
@Composable
fun StaticEffect(content: @Composable () -> Unit)

Render content once as permanent output above the regular display.

Link copied to clipboard
@Composable
fun WindowPointerShape(shape: PointerShape)

Sets the shape of the mouse pointer over the terminal window while this is in the composition, in terminals which support the Kitty pointer shape protocol. Others ignore it.

Link copied to clipboard
@Composable
fun WindowTitle(title: String)

Sets the title of the terminal window while this is in the composition.