vtcode-ghostty-vt-sys 0.98.5

Safe Ghostty VT snapshot wrapper for VT Code
Documentation

vtcode-ghostty-vt-sys

Safe Ghostty VT snapshot wrapper for VT Code.

Uses libloading to dynamically load the native Ghostty VT library at runtime, providing a safe Rust interface for rendering terminal snapshots. Supported on Linux and macOS; other platforms return an unavailable error.

Usage

use vtcode_ghostty_vt_sys::{GhosttyRenderRequest, render_terminal_snapshot};

let request = GhosttyRenderRequest {
    cols: 80,
    rows: 24,
    scrollback_lines: 1000,
};

let output = render_terminal_snapshot(request, b"hello world\r\nline two")?;
println!("screen: {}", output.screen_contents);
println!("scrollback: {}", output.scrollback);

API Reference

  • GhosttyRenderRequest — Terminal dimensions for rendering: cols, rows, scrollback_lines.
  • GhosttyRenderOutput — Rendered result containing screen_contents and scrollback.
  • render_terminal_snapshot(request, vt_stream: &[u8]) -> Result<GhosttyRenderOutput> — Feed raw VT byte stream through the Ghostty terminal emulator and return the rendered text.

Dependencies

  • anyhow — error handling
  • libloading — runtime dynamic library loading