7#ifndef GHOSTTY_VT_TERMINAL_H
8#define GHOSTTY_VT_TERMINAL_H
186 GHOSTTY_TERMINAL_COMPRESSION_MODE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
203 GHOSTTY_TERMINAL_COMPRESSION_RESULT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
235 GHOSTTY_SCROLL_VIEWPORT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
277 GHOSTTY_TERMINAL_SCREEN_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
297 GHOSTTY_TERMINAL_CURSOR_STYLE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
348 GHOSTTY_CLIPBOARD_LOCATION_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
425 GHOSTTY_CLIPBOARD_WRITE_RESULT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
917 GHOSTTY_TERMINAL_OPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
1266 GHOSTTY_TERMINAL_DATA_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE,
1338 uint32_t cell_width_px,
1339 uint32_t cell_height_px);
1388 const uint8_t* data,
1430 uint64_t* out_activity);
1550 size_t* out_written);
struct GhosttyTrackedGridRefImpl * GhosttyTrackedGridRef
GHOSTTY_API GhosttyResult ghostty_terminal_set(GhosttyTerminal terminal, GhosttyTerminalOption option, const void *value)
GHOSTTY_API GhosttyResult ghostty_terminal_point_from_grid_ref(GhosttyTerminal terminal, const GhosttyGridRef *ref, GhosttyPointTag tag, GhosttyPointCoordinate *out)
GHOSTTY_API GhosttyResult ghostty_terminal_compression_activity(GhosttyTerminal terminal, uint64_t *out_activity)
GHOSTTY_API GhosttyResult ghostty_terminal_get(GhosttyTerminal terminal, GhosttyTerminalData data, void *out)
GHOSTTY_API void ghostty_terminal_reset(GhosttyTerminal terminal)
GhosttyTerminalCompressionMode
bool(* GhosttyTerminalColorSchemeFn)(GhosttyTerminal terminal, void *userdata, GhosttyColorScheme *out_scheme)
GHOSTTY_API GhosttyResult ghostty_terminal_grid_ref_track(GhosttyTerminal terminal, GhosttyPoint point, GhosttyTrackedGridRef *out_ref)
GHOSTTY_API void ghostty_terminal_scroll_viewport(GhosttyTerminal terminal, GhosttyTerminalScrollViewport behavior)
GHOSTTY_API GhosttyResult ghostty_terminal_get_multi(GhosttyTerminal terminal, size_t count, const GhosttyTerminalData *keys, void **values, size_t *out_written)
bool(* GhosttyTerminalSizeFn)(GhosttyTerminal terminal, void *userdata, GhosttySizeReportSize *out_size)
void(* GhosttyTerminalWritePtyFn)(GhosttyTerminal terminal, void *userdata, const uint8_t *data, size_t len)
GhosttyTerminalCompressionResult
struct GhosttyTerminalImpl * GhosttyTerminal
GhosttyTerminalScrollViewportTag
GHOSTTY_API void ghostty_terminal_free(GhosttyTerminal terminal)
void(* GhosttyTerminalPwdChangedFn)(GhosttyTerminal terminal, void *userdata)
GHOSTTY_API GhosttyResult ghostty_terminal_mode_set(GhosttyTerminal terminal, GhosttyMode mode, bool value)
void(* GhosttyTerminalBellFn)(GhosttyTerminal terminal, void *userdata)
void(* GhosttyTerminalTitleChangedFn)(GhosttyTerminal terminal, void *userdata)
bool(* GhosttyTerminalDeviceAttributesFn)(GhosttyTerminal terminal, void *userdata, GhosttyDeviceAttributes *out_attrs)
GHOSTTY_API void ghostty_terminal_vt_write(GhosttyTerminal terminal, const uint8_t *data, size_t len)
GHOSTTY_API GhosttyResult ghostty_terminal_grid_ref(GhosttyTerminal terminal, GhosttyPoint point, GhosttyGridRef *out_ref)
GHOSTTY_API GhosttyResult ghostty_terminal_resize(GhosttyTerminal terminal, uint16_t cols, uint16_t rows, uint32_t cell_width_px, uint32_t cell_height_px)
GhosttyString(* GhosttyTerminalXtversionFn)(GhosttyTerminal terminal, void *userdata)
GHOSTTY_API GhosttyResult ghostty_terminal_new(const GhosttyAllocator *allocator, GhosttyTerminal *terminal, uint16_t cols, uint16_t rows)
GhosttyClipboardWriteResult
GhosttyTerminalCursorStyle
GHOSTTY_API GhosttyResult ghostty_terminal_mode_get(GhosttyTerminal terminal, GhosttyMode mode, bool *out_value)
GhosttyString(* GhosttyTerminalEnquiryFn)(GhosttyTerminal terminal, void *userdata)
GhosttyClipboardWriteResult(* GhosttyTerminalClipboardWriteFn)(GhosttyTerminal terminal, void *userdata, const GhosttyClipboardWrite *write)
GHOSTTY_API GhosttyResult ghostty_terminal_compress(GhosttyTerminal terminal, GhosttyTerminalCompressionMode mode, GhosttyTerminalCompressionResult *out_result)
@ GHOSTTY_TERMINAL_COMPRESSION_MODE_INCREMENTAL
@ GHOSTTY_TERMINAL_COMPRESSION_MODE_FULL
@ GHOSTTY_TERMINAL_COMPRESSION_RESULT_UNSUPPORTED
@ GHOSTTY_TERMINAL_COMPRESSION_RESULT_COMPLETE
@ GHOSTTY_TERMINAL_COMPRESSION_RESULT_PENDING
@ GHOSTTY_SCROLL_VIEWPORT_BOTTOM
@ GHOSTTY_SCROLL_VIEWPORT_ROW
@ GHOSTTY_SCROLL_VIEWPORT_DELTA
@ GHOSTTY_SCROLL_VIEWPORT_TOP
@ GHOSTTY_CLIPBOARD_LOCATION_PRIMARY
@ GHOSTTY_CLIPBOARD_LOCATION_STANDARD
@ GHOSTTY_CLIPBOARD_LOCATION_SELECTION
@ GHOSTTY_TERMINAL_SCREEN_ALTERNATE
@ GHOSTTY_TERMINAL_SCREEN_PRIMARY
@ GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND_DEFAULT
@ GHOSTTY_TERMINAL_DATA_WIDTH_PX
@ GHOSTTY_TERMINAL_DATA_VIEWPORT_ACTIVE
@ GHOSTTY_TERMINAL_DATA_SCROLLBACK_MAX_LINES
@ GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND
@ GHOSTTY_TERMINAL_DATA_COLOR_PALETTE_DEFAULT
@ GHOSTTY_TERMINAL_DATA_COLS
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_FILE
@ GHOSTTY_TERMINAL_DATA_TITLE
@ GHOSTTY_TERMINAL_DATA_CURSOR_VISIBLE
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_TEMP_FILE
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_STORAGE_LIMIT
@ GHOSTTY_TERMINAL_DATA_SCROLLBACK_MAX_BYTES
@ GHOSTTY_TERMINAL_DATA_ROWS
@ GHOSTTY_TERMINAL_DATA_SCROLLBACK_ROWS
@ GHOSTTY_TERMINAL_DATA_TOTAL_ROWS
@ GHOSTTY_TERMINAL_DATA_CURSOR_PENDING_WRAP
@ GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_SHARED_MEM
@ GHOSTTY_TERMINAL_DATA_SELECTION
@ GHOSTTY_TERMINAL_DATA_INVALID
@ GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND_DEFAULT
@ GHOSTTY_TERMINAL_DATA_KITTY_KEYBOARD_FLAGS
@ GHOSTTY_TERMINAL_DATA_COLOR_CURSOR_DEFAULT
@ GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND
@ GHOSTTY_TERMINAL_DATA_SCROLLBAR
@ GHOSTTY_TERMINAL_DATA_CURSOR_Y
@ GHOSTTY_TERMINAL_DATA_ACTIVE_SCREEN
@ GHOSTTY_TERMINAL_DATA_VT_PROCESSING_ERROR
@ GHOSTTY_TERMINAL_DATA_CURSOR_X
@ GHOSTTY_TERMINAL_DATA_MOUSE_TRACKING
@ GHOSTTY_TERMINAL_DATA_PWD
@ GHOSTTY_TERMINAL_DATA_COLOR_PALETTE
@ GHOSTTY_TERMINAL_DATA_KITTY_GRAPHICS
@ GHOSTTY_TERMINAL_DATA_CURSOR_STYLE
@ GHOSTTY_TERMINAL_DATA_HEIGHT_PX
@ GHOSTTY_TERMINAL_DATA_COLOR_CURSOR
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_SUCCESS
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_IO_ERROR
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_DENIED
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_UNSUPPORTED
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_INVALID_DATA
@ GHOSTTY_CLIPBOARD_WRITE_RESULT_BUSY
@ GHOSTTY_TERMINAL_CURSOR_STYLE_BAR
@ GHOSTTY_TERMINAL_CURSOR_STYLE_BLOCK
@ GHOSTTY_TERMINAL_CURSOR_STYLE_UNDERLINE
@ GHOSTTY_TERMINAL_CURSOR_STYLE_BLOCK_HOLLOW
@ GHOSTTY_TERMINAL_OPT_SCROLLBACK_MAX_BYTES
@ GHOSTTY_TERMINAL_OPT_ENQUIRY
@ GHOSTTY_TERMINAL_OPT_SCROLLBACK_MAX_LINES
@ GHOSTTY_TERMINAL_OPT_TITLE_CHANGED
@ GHOSTTY_TERMINAL_OPT_GLYPH_PROTOCOL
@ GHOSTTY_TERMINAL_OPT_DEFAULT_CURSOR_STYLE
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_STORAGE_LIMIT
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_SHARED_MEM
@ GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES_KITTY
@ GHOSTTY_TERMINAL_OPT_PWD_CHANGED
@ GHOSTTY_TERMINAL_OPT_COLOR_CURSOR
@ GHOSTTY_TERMINAL_OPT_COLOR_FOREGROUND
@ GHOSTTY_TERMINAL_OPT_SIZE
@ GHOSTTY_TERMINAL_OPT_USERDATA
@ GHOSTTY_TERMINAL_OPT_COLOR_PALETTE
@ GHOSTTY_TERMINAL_OPT_COLOR_SCHEME
@ GHOSTTY_TERMINAL_OPT_XTVERSION
@ GHOSTTY_TERMINAL_OPT_CLIPBOARD_WRITE
@ GHOSTTY_TERMINAL_OPT_DEVICE_ATTRIBUTES
@ GHOSTTY_TERMINAL_OPT_SELECTION
@ GHOSTTY_TERMINAL_OPT_PWD
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_TEMP_FILE
@ GHOSTTY_TERMINAL_OPT_WRITE_PTY
@ GHOSTTY_TERMINAL_OPT_BELL
@ GHOSTTY_TERMINAL_OPT_COLOR_BACKGROUND
@ GHOSTTY_TERMINAL_OPT_TITLE
@ GHOSTTY_TERMINAL_OPT_DEFAULT_CURSOR_BLINK
@ GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_FILE
@ GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES
const GhosttyClipboardContent * contents
GhosttyClipboardLocation location
#define GHOSTTY_ENUM_TYPED