|
| typedef void(*) | GhosttyTerminalBellFn(GhosttyTerminal terminal, void *userdata) |
| typedef void(*) | GhosttyTerminalUnknownSequenceFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalUnknownSequence *sequence) |
| typedef void(*) | GhosttyClipboardWriteReplyFn(const GhosttyClipboardWrite *write, const GhosttyClipboardWriteReply *reply) |
| typedef void(*) | GhosttyTerminalClipboardWriteFn(GhosttyTerminal terminal, void *userdata, const GhosttyClipboardWrite *write) |
| typedef void(*) | GhosttyClipboardReadReplyFn(const GhosttyClipboardRead *read, const GhosttyClipboardReadReply *reply) |
| typedef void(*) | GhosttyTerminalClipboardReadFn(GhosttyTerminal terminal, void *userdata, const GhosttyClipboardRead *read) |
| typedef void(*) | GhosttyTerminalDesktopNotificationFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalDesktopNotification *notification) |
| typedef void(*) | GhosttyTerminalProgressReportFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalProgressReport *report) |
| typedef void(*) | GhosttyTerminalProgramStatusFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalProgramStatus *report) |
| typedef void(*) | GhosttyTerminalSemanticPromptFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalSemanticPrompt *event) |
| typedef void(*) | GhosttyTerminalResetFn(GhosttyTerminal terminal, void *userdata) |
| typedef void(*) | GhosttyTerminalResizeWindowFn(GhosttyTerminal terminal, void *userdata, const GhosttyTerminalResizeWindow *request) |
| typedef bool(*) | GhosttyTerminalColorSchemeFn(GhosttyTerminal terminal, void *userdata, GhosttyColorScheme *out_scheme) |
| typedef bool(*) | GhosttyTerminalDeviceAttributesFn(GhosttyTerminal terminal, void *userdata, GhosttyDeviceAttributes *out_attrs) |
| typedef GhosttyString(*) | GhosttyTerminalEnquiryFn(GhosttyTerminal terminal, void *userdata) |
| typedef bool(*) | GhosttyTerminalSizeFn(GhosttyTerminal terminal, void *userdata, GhosttySizeReportSize *out_size) |
| typedef void(*) | GhosttyTerminalTitleChangedFn(GhosttyTerminal terminal, void *userdata) |
| typedef void(*) | GhosttyTerminalRenderHoldFn(GhosttyTerminal terminal, void *userdata, bool held) |
| typedef void(*) | GhosttyTerminalPwdChangedFn(GhosttyTerminal terminal, void *userdata) |
| typedef void(*) | GhosttyTerminalWritePtyFn(GhosttyTerminal terminal, void *userdata, const uint8_t *data, size_t len) |
| typedef GhosttyString(*) | GhosttyTerminalXtversionFn(GhosttyTerminal terminal, void *userdata) |
|
| enum | GhosttyTerminalCompressionMode { GHOSTTY_TERMINAL_COMPRESSION_MODE_INCREMENTAL = 0
, GHOSTTY_TERMINAL_COMPRESSION_MODE_FULL = 1
, GHOSTTY_TERMINAL_COMPRESSION_MODE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalCompressionResult { GHOSTTY_TERMINAL_COMPRESSION_RESULT_UNSUPPORTED = 0
, GHOSTTY_TERMINAL_COMPRESSION_RESULT_PENDING = 1
, GHOSTTY_TERMINAL_COMPRESSION_RESULT_COMPLETE = 2
, GHOSTTY_TERMINAL_COMPRESSION_RESULT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalScrollViewportTag {
GHOSTTY_SCROLL_VIEWPORT_TOP
, GHOSTTY_SCROLL_VIEWPORT_BOTTOM
, GHOSTTY_SCROLL_VIEWPORT_DELTA
, GHOSTTY_SCROLL_VIEWPORT_ROW
,
GHOSTTY_SCROLL_VIEWPORT_DELTA_PROMPT
, GHOSTTY_SCROLL_VIEWPORT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalScreen { GHOSTTY_TERMINAL_SCREEN_PRIMARY = 0
, GHOSTTY_TERMINAL_SCREEN_ALTERNATE = 1
, GHOSTTY_TERMINAL_SCREEN_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalCursorStyle { GHOSTTY_TERMINAL_CURSOR_STYLE_BAR = 0
, GHOSTTY_TERMINAL_CURSOR_STYLE_BLOCK = 1
, GHOSTTY_TERMINAL_CURSOR_STYLE_UNDERLINE = 2
, GHOSTTY_TERMINAL_CURSOR_STYLE_BLOCK_HOLLOW = 3
, GHOSTTY_TERMINAL_CURSOR_STYLE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalUnknownSequenceTag { GHOSTTY_TERMINAL_UNKNOWN_SEQUENCE_APC = 0
, GHOSTTY_TERMINAL_UNKNOWN_SEQUENCE_OSC = 1
, GHOSTTY_TERMINAL_UNKNOWN_SEQUENCE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyClipboardLocation { GHOSTTY_CLIPBOARD_LOCATION_STANDARD = 0
, GHOSTTY_CLIPBOARD_LOCATION_SELECTION = 1
, GHOSTTY_CLIPBOARD_LOCATION_PRIMARY = 2
, GHOSTTY_CLIPBOARD_LOCATION_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyClipboardWriteResult {
GHOSTTY_CLIPBOARD_WRITE_RESULT_SUCCESS = 0
, GHOSTTY_CLIPBOARD_WRITE_RESULT_DENIED = 1
, GHOSTTY_CLIPBOARD_WRITE_RESULT_UNSUPPORTED = 2
, GHOSTTY_CLIPBOARD_WRITE_RESULT_BUSY = 3
,
GHOSTTY_CLIPBOARD_WRITE_RESULT_INVALID_DATA = 4
, GHOSTTY_CLIPBOARD_WRITE_RESULT_IO_ERROR = 5
, GHOSTTY_CLIPBOARD_WRITE_RESULT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyClipboardReadResult {
GHOSTTY_CLIPBOARD_READ_RESULT_SUCCESS = 0
, GHOSTTY_CLIPBOARD_READ_RESULT_DENIED = 1
, GHOSTTY_CLIPBOARD_READ_RESULT_UNSUPPORTED = 2
, GHOSTTY_CLIPBOARD_READ_RESULT_BUSY = 3
,
GHOSTTY_CLIPBOARD_READ_RESULT_IO_ERROR = 4
, GHOSTTY_CLIPBOARD_READ_RESULT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalProgressState {
GHOSTTY_TERMINAL_PROGRESS_STATE_REMOVE = 0
, GHOSTTY_TERMINAL_PROGRESS_STATE_SET = 1
, GHOSTTY_TERMINAL_PROGRESS_STATE_ERROR = 2
, GHOSTTY_TERMINAL_PROGRESS_STATE_INDETERMINATE = 3
,
GHOSTTY_TERMINAL_PROGRESS_STATE_PAUSE = 4
, GHOSTTY_TERMINAL_PROGRESS_STATE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyProgramStatusState {
GHOSTTY_PROGRAM_STATUS_STATE_IDLE = 0
, GHOSTTY_PROGRAM_STATUS_STATE_WORKING = 1
, GHOSTTY_PROGRAM_STATUS_STATE_DONE = 2
, GHOSTTY_PROGRAM_STATUS_STATE_BLOCKED = 3
,
GHOSTTY_PROGRAM_STATUS_STATE_ERROR = 4
, GHOSTTY_PROGRAM_STATUS_STATE_CLEAR = 5
, GHOSTTY_PROGRAM_STATUS_STATE_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyProgramStatusKind { GHOSTTY_PROGRAM_STATUS_KIND_NONE = 0
, GHOSTTY_PROGRAM_STATUS_KIND_PERMISSION = 1
, GHOSTTY_PROGRAM_STATUS_KIND_QUESTION = 2
, GHOSTTY_PROGRAM_STATUS_KIND_AUTH = 3
, GHOSTTY_PROGRAM_STATUS_KIND_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttySemanticPromptKind {
GHOSTTY_SEMANTIC_PROMPT_INVALID = 0
, GHOSTTY_SEMANTIC_PROMPT_PROMPT_START = 1
, GHOSTTY_SEMANTIC_PROMPT_INPUT_START = 2
, GHOSTTY_SEMANTIC_PROMPT_OUTPUT_START = 3
,
GHOSTTY_SEMANTIC_PROMPT_COMMAND_END = 4
, GHOSTTY_SEMANTIC_PROMPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttySemanticPromptPromptKind { GHOSTTY_SEMANTIC_PROMPT_PROMPT_PRIMARY = 0
, GHOSTTY_SEMANTIC_PROMPT_PROMPT_RIGHT = 1
, GHOSTTY_SEMANTIC_PROMPT_PROMPT_CONTINUATION = 2
, GHOSTTY_SEMANTIC_PROMPT_PROMPT_SECONDARY = 3
, GHOSTTY_SEMANTIC_PROMPT_PROMPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalResizeWindowTag { GHOSTTY_TERMINAL_RESIZE_WINDOW_GRID = 0
, GHOSTTY_TERMINAL_RESIZE_WINDOW_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalOption {
GHOSTTY_TERMINAL_OPT_USERDATA = 0
, GHOSTTY_TERMINAL_OPT_WRITE_PTY = 1
, GHOSTTY_TERMINAL_OPT_BELL = 2
, GHOSTTY_TERMINAL_OPT_ENQUIRY = 3
,
GHOSTTY_TERMINAL_OPT_XTVERSION = 4
, GHOSTTY_TERMINAL_OPT_TITLE_CHANGED = 5
, GHOSTTY_TERMINAL_OPT_SIZE = 6
, GHOSTTY_TERMINAL_OPT_COLOR_SCHEME = 7
,
GHOSTTY_TERMINAL_OPT_DEVICE_ATTRIBUTES = 8
, GHOSTTY_TERMINAL_OPT_TITLE = 9
, GHOSTTY_TERMINAL_OPT_PWD = 10
, GHOSTTY_TERMINAL_OPT_COLOR_FOREGROUND = 11
,
GHOSTTY_TERMINAL_OPT_COLOR_BACKGROUND = 12
, GHOSTTY_TERMINAL_OPT_COLOR_CURSOR = 13
, GHOSTTY_TERMINAL_OPT_COLOR_PALETTE = 14
, GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_STORAGE_LIMIT = 15
,
GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_FILE = 16
, GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_TEMP_FILE = 17
, GHOSTTY_TERMINAL_OPT_KITTY_IMAGE_MEDIUM_SHARED_MEM = 18
, GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES = 19
,
GHOSTTY_TERMINAL_OPT_APC_MAX_BYTES_KITTY = 20
, GHOSTTY_TERMINAL_OPT_SELECTION = 21
, GHOSTTY_TERMINAL_OPT_DEFAULT_CURSOR_STYLE = 22
, GHOSTTY_TERMINAL_OPT_DEFAULT_CURSOR_BLINK = 23
,
GHOSTTY_TERMINAL_OPT_GLYPH_PROTOCOL = 24
, GHOSTTY_TERMINAL_OPT_PWD_CHANGED = 25
, GHOSTTY_TERMINAL_OPT_CLIPBOARD_WRITE = 26
, GHOSTTY_TERMINAL_OPT_SCROLLBACK_MAX_BYTES = 27
,
GHOSTTY_TERMINAL_OPT_SCROLLBACK_MAX_LINES = 28
, GHOSTTY_TERMINAL_OPT_DESKTOP_NOTIFICATION = 29
, GHOSTTY_TERMINAL_OPT_PROGRESS_REPORT = 30
, GHOSTTY_TERMINAL_OPT_CONTINUATION_MAX_BYTES = 31
,
GHOSTTY_TERMINAL_OPT_TITLE_REPORT = 32
, GHOSTTY_TERMINAL_OPT_MODE_DEFAULT = 33
, GHOSTTY_TERMINAL_OPT_MODE = 34
, GHOSTTY_TERMINAL_OPT_UNKNOWN_SEQUENCE = 35
,
GHOSTTY_TERMINAL_OPT_UNKNOWN_MAX_BYTES = 36
, GHOSTTY_TERMINAL_OPT_TERMINFO_NAME = 37
, GHOSTTY_TERMINAL_OPT_CLIPBOARD_READ = 38
, GHOSTTY_TERMINAL_OPT_CLIPBOARD_WRITE_MAX_BYTES = 39
,
GHOSTTY_TERMINAL_OPT_RESIZE_PULL_SCROLLBACK = 40
, GHOSTTY_TERMINAL_OPT_RENDER_HOLD = 41
, GHOSTTY_TERMINAL_OPT_SEMANTIC_PROMPT = 42
, GHOSTTY_TERMINAL_OPT_RESET = 43
,
GHOSTTY_TERMINAL_OPT_XT_CHECKSUM_REPORT = 44
, GHOSTTY_TERMINAL_OPT_XT_CHECKSUM_EXTENSION = 45
, GHOSTTY_TERMINAL_OPT_PROGRAM_STATUS = 46
, GHOSTTY_TERMINAL_OPT_RESIZE_WINDOW = 47
,
GHOSTTY_TERMINAL_OPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
| enum | GhosttyTerminalData {
GHOSTTY_TERMINAL_DATA_INVALID = 0
, GHOSTTY_TERMINAL_DATA_COLS = 1
, GHOSTTY_TERMINAL_DATA_ROWS = 2
, GHOSTTY_TERMINAL_DATA_CURSOR_X = 3
,
GHOSTTY_TERMINAL_DATA_CURSOR_Y = 4
, GHOSTTY_TERMINAL_DATA_CURSOR_PENDING_WRAP = 5
, GHOSTTY_TERMINAL_DATA_ACTIVE_SCREEN = 6
, GHOSTTY_TERMINAL_DATA_CURSOR_VISIBLE = 7
,
GHOSTTY_TERMINAL_DATA_KITTY_KEYBOARD_FLAGS = 8
, GHOSTTY_TERMINAL_DATA_SCROLLBAR = 9
, GHOSTTY_TERMINAL_DATA_CURSOR_STYLE = 10
, GHOSTTY_TERMINAL_DATA_MOUSE_TRACKING = 11
,
GHOSTTY_TERMINAL_DATA_TITLE = 12
, GHOSTTY_TERMINAL_DATA_PWD = 13
, GHOSTTY_TERMINAL_DATA_TOTAL_ROWS = 14
, GHOSTTY_TERMINAL_DATA_SCROLLBACK_ROWS = 15
,
GHOSTTY_TERMINAL_DATA_WIDTH_PX = 16
, GHOSTTY_TERMINAL_DATA_HEIGHT_PX = 17
, GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND = 18
, GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND = 19
,
GHOSTTY_TERMINAL_DATA_COLOR_CURSOR = 20
, GHOSTTY_TERMINAL_DATA_COLOR_PALETTE = 21
, GHOSTTY_TERMINAL_DATA_COLOR_FOREGROUND_DEFAULT = 22
, GHOSTTY_TERMINAL_DATA_COLOR_BACKGROUND_DEFAULT = 23
,
GHOSTTY_TERMINAL_DATA_COLOR_CURSOR_DEFAULT = 24
, GHOSTTY_TERMINAL_DATA_COLOR_PALETTE_DEFAULT = 25
, GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_STORAGE_LIMIT = 26
, GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_FILE = 27
,
GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_TEMP_FILE = 28
, GHOSTTY_TERMINAL_DATA_KITTY_IMAGE_MEDIUM_SHARED_MEM = 29
, GHOSTTY_TERMINAL_DATA_KITTY_GRAPHICS = 30
, GHOSTTY_TERMINAL_DATA_SELECTION = 31
,
GHOSTTY_TERMINAL_DATA_VIEWPORT_ACTIVE = 32
, GHOSTTY_TERMINAL_DATA_VT_PROCESSING_ERROR = 33
, GHOSTTY_TERMINAL_DATA_SCROLLBACK_MAX_BYTES = 34
, GHOSTTY_TERMINAL_DATA_SCROLLBACK_MAX_LINES = 35
,
GHOSTTY_TERMINAL_DATA_CONTINUATION_MAX_BYTES = 36
, GHOSTTY_TERMINAL_DATA_MODE = 37
, GHOSTTY_TERMINAL_DATA_VT_GROUND = 38
, GHOSTTY_TERMINAL_DATA_CURSOR_AT_PROMPT = 39
,
GHOSTTY_TERMINAL_DATA_CLIPBOARD_WRITE_MAX_BYTES = 40
, GHOSTTY_TERMINAL_DATA_MOUSE_SHAPE = 41
, GHOSTTY_TERMINAL_DATA_MEMORY_USAGE = 42
, GHOSTTY_TERMINAL_DATA_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
} |
|
| GHOSTTY_API GhosttyResult | ghostty_terminal_new (const GhosttyAllocator *allocator, GhosttyTerminal *terminal, uint16_t cols, uint16_t rows) |
| GHOSTTY_API void | ghostty_terminal_free (GhosttyTerminal terminal) |
| GHOSTTY_API void | ghostty_terminal_reset (GhosttyTerminal terminal) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_resize (GhosttyTerminal terminal, uint16_t cols, uint16_t rows, uint32_t cell_width_px, uint32_t cell_height_px) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_set (GhosttyTerminal terminal, GhosttyTerminalOption option, const void *value) |
| GHOSTTY_API void | ghostty_terminal_vt_write (GhosttyTerminal terminal, const uint8_t *data, size_t len) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_vt_write_until_ground (GhosttyTerminal terminal, const uint8_t *data, size_t len, size_t *out_consumed) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_continuation_write (GhosttyTerminal terminal, GhosttyWriter writer) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_continuation_buf (GhosttyTerminal terminal, uint8_t *buf, size_t buf_len, size_t *out_written) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_continuation_alloc (GhosttyTerminal terminal, const GhosttyAllocator *allocator, uint8_t **out_ptr, size_t *out_len) |
| GHOSTTY_API void | ghostty_terminal_scroll_viewport (GhosttyTerminal terminal, GhosttyTerminalScrollViewport behavior) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_compression_activity (GhosttyTerminal terminal, uint64_t *out_activity) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_compress (GhosttyTerminal terminal, GhosttyTerminalCompressionMode mode, GhosttyTerminalCompressionResult *out_result) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_get (GhosttyTerminal terminal, GhosttyTerminalData data, void *out) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_get_multi (GhosttyTerminal terminal, size_t count, const GhosttyTerminalData *keys, void **values, size_t *out_written) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_grid_ref (GhosttyTerminal terminal, GhosttyPoint point, GhosttyGridRef *out_ref) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_grid_ref_track (GhosttyTerminal terminal, GhosttyPoint point, GhosttyTrackedGridRef *out_ref) |
| GHOSTTY_API GhosttyResult | ghostty_terminal_point_from_grid_ref (GhosttyTerminal terminal, const GhosttyGridRef *ref, GhosttyPointTag tag, GhosttyPointCoordinate *out) |
Complete terminal emulator state and rendering.
Definition in file terminal.h.