# Vtex v0.1.0 - Table of Contents

> A streaming VT/ANSI escape-sequence library for SSH/Telnet game servers, BBS engines and MUD frameworks: parse terminal input into semantic events and build the control sequences to draw the screen.

## Pages

- [Vtex](readme.md)
- [Integrating Vtex](integration.md)
- [Changelog](changelog.md)

## Modules

- [Vtex](Vtex.md): Vtex — a streaming VT/ANSI escape-sequence library for Elixir.

- Input
  - [Vtex.Input](Vtex.Input.md): Maps raw tokens from `Vtex.Input.Tokenizer` to semantic input events.
  - [Vtex.Input.Stream](Vtex.Input.Stream.md): Stateful streaming wrapper around `Vtex.Input.Tokenizer`.
  - [Vtex.Input.Tokenizer](Vtex.Input.Tokenizer.md): Pure, stateless tokenizer for VT/ANSI escape sequences.

- Output
  - [Vtex.Output.ANSI](Vtex.Output.ANSI.md): A drop-in superset of Elixir's `IO.ANSI`.
  - [Vtex.Output.Cursor](Vtex.Output.Cursor.md): Cursor-control output sequences.
  - [Vtex.Output.OSC](Vtex.Output.OSC.md): Operating System Command output sequences: window title and hyperlinks.
  - [Vtex.Output.Screen](Vtex.Output.Screen.md): Screen-control output sequences: clearing, the alternate buffer, scroll regions.

- Both directions
  - [Vtex.Focus](Vtex.Focus.md): Focus-reporting support: the control sequences that turn it on and off.
  - [Vtex.Mouse](Vtex.Mouse.md): SGR mouse-reporting support: the control sequences that turn reporting on and
off, and a decoder for the events the terminal sends back.
  - [Vtex.Paste](Vtex.Paste.md): Bracketed paste support: the control sequences that turn it on and off.
  - [Vtex.SGR](Vtex.SGR.md): SGR (Select Graphic Rendition) colour and text-style attributes, both ways.

## Mix Tasks

- [mix vtex.smoke](Mix.Tasks.Vtex.Smoke.md): Reads your keystrokes in raw mode and runs them through the real
`Vtex.Input.Stream` -> `Vtex.Input` pipeline, printing the events Vtex produces.

