qmk_firmware/internals/unicode.md

6.4 KiB

group unicode

Summary

Members Descriptions
enum unicode_input_modes
public _Static_assert(sizeof(unicode_config_t),"Unicode EECONFIG out of spec.")
public void unicode_input_mode_init(void)
public uint8_t get_unicode_input_mode(void) Get the current Unicode input mode.
public void set_unicode_input_mode(uint8_t mode) Set the Unicode input mode.
public void unicode_input_mode_step(void) Change to the next Unicode input mode.
public void unicode_input_mode_step_reverse(void) Change to the previous Unicode input mode.
public void unicode_input_mode_set_user(uint8_t input_mode) User-level callback, invoked when the input mode is changed.
public void unicode_input_mode_set_kb(uint8_t input_mode) Keyboard-level callback, invoked when the input mode is changed.
public void unicode_input_start(void) Begin the Unicode input sequence. The exact behavior depends on the currently selected input mode.
public void unicode_input_finish(void) Complete the Unicode input sequence. The exact behavior depends on the currently selected input mode.
public void unicode_input_cancel(void) Cancel the Unicode input sequence. The exact behavior depends on the currently selected input mode.
public void register_hex(uint16_t hex) Send a 16-bit hex number.
public void register_hex32(uint32_t hex) Send a 32-bit hex number.
public void register_unicode(uint32_t code_point) Input a single Unicode character. A surrogate pair will be sent if required by the input mode.
public void send_unicode_string(const char * str) Send a string containing Unicode characters.
union unicode_config_t

Members

enum unicode_input_modes

Values Descriptions
UNICODE_MODE_MACOS
UNICODE_MODE_LINUX
UNICODE_MODE_WINDOWS
UNICODE_MODE_BSD
UNICODE_MODE_WINCOMPOSE
UNICODE_MODE_EMACS
UNICODE_MODE_COUNT

public _Static_assert(sizeof(unicode_config_t),"Unicode EECONFIG out of spec.")

public void unicode_input_mode_init(void)

public uint8_t get_unicode_input_mode(void)

Get the current Unicode input mode.

Returns

The currently active Unicode input mode.

public void set_unicode_input_mode(uint8_t mode)

Set the Unicode input mode.

Parameters

  • mode The input mode to set.

public void unicode_input_mode_step(void)

Change to the next Unicode input mode.

public void unicode_input_mode_step_reverse(void)

Change to the previous Unicode input mode.

public void unicode_input_mode_set_user(uint8_t input_mode)

User-level callback, invoked when the input mode is changed.

Parameters

  • input_mode The new input mode.

public void unicode_input_mode_set_kb(uint8_t input_mode)

Keyboard-level callback, invoked when the input mode is changed.

Parameters

  • input_mode The new input mode.

public void unicode_input_start(void)

Begin the Unicode input sequence. The exact behavior depends on the currently selected input mode.

public void unicode_input_finish(void)

Complete the Unicode input sequence. The exact behavior depends on the currently selected input mode.

public void unicode_input_cancel(void)

Cancel the Unicode input sequence. The exact behavior depends on the currently selected input mode.

public void register_hex(uint16_t hex)

Send a 16-bit hex number.

Parameters

  • hex The number to send.

public void register_hex32(uint32_t hex)

Send a 32-bit hex number.

Parameters

  • hex The number to send.

public void register_unicode(uint32_t code_point)

Input a single Unicode character. A surrogate pair will be sent if required by the input mode.

Parameters

  • code_point The code point of the character to send.

public void send_unicode_string(const char * str)

Send a string containing Unicode characters.

Parameters

  • str The string to send.