Skip to content

std/ansi ​

Cursor movement, screen control, and 256-color and 24-bit color escape codes: the lower-level primitives a full-screen terminal UI needs, next to std/color's named 16-color wrappers. Each function returns an escape string; build a frame in one buffer and write it once to avoid flicker.

milo
from "std/ansi" import { Ansi }

Example ​

milo
var frame = Ansi.clearScreen() + Ansi.cursorTo(1, 1)
frame += Ansi.fg256(208) + "status: ok" + Ansi.reset()
print(frame)

API reference ​

Ansi ​

milo
pub struct Ansi

Ansi namespace — terminal escape sequences (Ansi.cursorTo, Ansi.reset, ...).

Ansi.bg24 ​

milo
fn Ansi.bg24(r: i64, g: i64, b: i64): string

Ansi.bg256 ​

milo
fn Ansi.bg256(code: i64): string

Ansi.clearLine ​

milo
fn Ansi.clearLine(): string

Ansi.clearScreen ​

milo
fn Ansi.clearScreen(): string

Ansi.clearToEnd ​

milo
fn Ansi.clearToEnd(): string

Ansi.cursorColumn ​

milo
fn Ansi.cursorColumn(col: i64): string

Ansi.cursorDown ​

milo
fn Ansi.cursorDown(n: i64): string

Ansi.cursorHome ​

milo
fn Ansi.cursorHome(): string

Ansi.cursorLeft ​

milo
fn Ansi.cursorLeft(n: i64): string

Ansi.cursorRight ​

milo
fn Ansi.cursorRight(n: i64): string

Ansi.cursorTo ​

milo
fn Ansi.cursorTo(row: i64, col: i64): string

Ansi.cursorUp ​

milo
fn Ansi.cursorUp(n: i64): string

Ansi.disableBracketedPaste ​

milo
fn Ansi.disableBracketedPaste(): string

Ansi.enableBracketedPaste ​

milo
fn Ansi.enableBracketedPaste(): string

Ansi.enterAltScreen ​

milo
fn Ansi.enterAltScreen(): string

Ansi.exitAltScreen ​

milo
fn Ansi.exitAltScreen(): string

Ansi.fg24 ​

milo
fn Ansi.fg24(r: i64, g: i64, b: i64): string

Ansi.fg256 ​

milo
fn Ansi.fg256(code: i64): string

Ansi.hideCursor ​

milo
fn Ansi.hideCursor(): string

Ansi.pushBg24 ​

milo
fn Ansi.pushBg24(buf: &mut string, r: i64, g: i64, b: i64): void

Ansi.pushFg24 ​

milo
fn Ansi.pushFg24(buf: &mut string, r: i64, g: i64, b: i64): void

Ansi.reset ​

milo
fn Ansi.reset(): string

Ansi.restoreCursor ​

milo
fn Ansi.restoreCursor(): string

Ansi.saveCursor ​

milo
fn Ansi.saveCursor(): string

Ansi.showCursor ​

milo
fn Ansi.showCursor(): string