libghostty-vt 0.0.0
Loading...
Searching...
No Matches
encoder.h File Reference
#include <stddef.h>
#include <stdint.h>
#include <ghostty/vt/types.h>
#include <ghostty/vt/allocator.h>
#include <ghostty/vt/terminal.h>
#include <ghostty/vt/key/event.h>

Go to the source code of this file.

Macros

#define GHOSTTY_KITTY_KEY_DISABLED   0
#define GHOSTTY_KITTY_KEY_DISAMBIGUATE   (1 << 0)
#define GHOSTTY_KITTY_KEY_REPORT_EVENTS   (1 << 1)
#define GHOSTTY_KITTY_KEY_REPORT_ALTERNATES   (1 << 2)
#define GHOSTTY_KITTY_KEY_REPORT_ALL   (1 << 3)
#define GHOSTTY_KITTY_KEY_REPORT_ASSOCIATED   (1 << 4)
#define GHOSTTY_KITTY_KEY_ALL   (GHOSTTY_KITTY_KEY_DISAMBIGUATE | GHOSTTY_KITTY_KEY_REPORT_EVENTS | GHOSTTY_KITTY_KEY_REPORT_ALTERNATES | GHOSTTY_KITTY_KEY_REPORT_ALL | GHOSTTY_KITTY_KEY_REPORT_ASSOCIATED)

Typedefs

typedef struct GhosttyKeyEncoderImpl * GhosttyKeyEncoder
typedef uint8_t GhosttyKittyKeyFlags

Enumerations

enum  GhosttyOptionAsAlt { GHOSTTY_OPTION_AS_ALT_FALSE = 0 , GHOSTTY_OPTION_AS_ALT_TRUE = 1 , GHOSTTY_OPTION_AS_ALT_LEFT = 2 , GHOSTTY_OPTION_AS_ALT_RIGHT = 3 , GHOSTTY_OPTION_AS_ALT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE }
enum  GhosttyKeyEncoderOption {
  GHOSTTY_KEY_ENCODER_OPT_INVALID = 0 , GHOSTTY_KEY_ENCODER_OPT_CURSOR_KEY_APPLICATION = 1 , GHOSTTY_KEY_ENCODER_OPT_KEYPAD_KEY_APPLICATION = 2 , GHOSTTY_KEY_ENCODER_OPT_IGNORE_KEYPAD_WITH_NUMLOCK = 3 ,
  GHOSTTY_KEY_ENCODER_OPT_ALT_ESC_PREFIX = 4 , GHOSTTY_KEY_ENCODER_OPT_MODIFY_OTHER_KEYS_STATE_2 = 5 , GHOSTTY_KEY_ENCODER_OPT_KITTY_FLAGS = 6 , GHOSTTY_KEY_ENCODER_OPT_MACOS_OPTION_AS_ALT = 7 ,
  GHOSTTY_KEY_ENCODER_OPT_BACKARROW_KEY_MODE = 8 , GHOSTTY_KEY_ENCODER_OPT_MAX_VALUE = GHOSTTY_ENUM_MAX_VALUE
}

Functions

GHOSTTY_API GhosttyResult ghostty_key_encoder_new (const GhosttyAllocator *allocator, GhosttyKeyEncoder *encoder)
GHOSTTY_API void ghostty_key_encoder_free (GhosttyKeyEncoder encoder)
GHOSTTY_API GhosttyResult ghostty_key_encoder_set (GhosttyKeyEncoder encoder, GhosttyKeyEncoderOption option, const void *value)
GHOSTTY_API GhosttyResult ghostty_key_encoder_set_from_terminal (GhosttyKeyEncoder encoder, GhosttyTerminal terminal)
GHOSTTY_API GhosttyResult ghostty_key_encoder_encode (GhosttyKeyEncoder encoder, GhosttyKeyEvent event, uint8_t *buf, size_t buf_len, size_t *out_written)

Detailed Description

Key event encoding to terminal escape sequences.

Definition in file key/encoder.h.