~ruther/qmk_firmware

dffdeb50b79d3c623e2ed9fd1c1d82d6d0ae7bf0 — coderkun 9 years ago a3f7261
Add method to set Unicode input key for ISO 14755

https://github.com/jackhumbert/qmk_firmware/issues/672
2 files changed, 13 insertions(+), 2 deletions(-)

M quantum/process_keycode/process_unicode.c
M quantum/process_keycode/process_unicode.h
M quantum/process_keycode/process_unicode.c => quantum/process_keycode/process_unicode.c +8 -2
@@ 1,6 1,7 @@
#include "process_unicode.h"

static uint8_t input_mode;
static uint16_t linux_key = UNICODE_LNX_KEY;

uint16_t hex_to_keycode(uint8_t hex)
{


@@ 18,6 19,11 @@ void set_unicode_input_mode(uint8_t os_target)
  input_mode = os_target;
}

void set_unicode_input_key_lnx(uint16_t key)
{
  linux_key = key;
}

void unicode_input_start (void) {
  switch(input_mode) {
  case UC_OSX:


@@ 26,8 32,8 @@ void unicode_input_start (void) {
  case UC_LNX:
    register_code(KC_LCTL);
    register_code(KC_LSFT);
    register_code(KC_U);
    unregister_code(KC_U);
    register_code(linux_key);
    unregister_code(linux_key);
    unregister_code(KC_LSFT);
    unregister_code(KC_LCTL);
    break;

M quantum/process_keycode/process_unicode.h => quantum/process_keycode/process_unicode.h +5 -0
@@ 8,11 8,16 @@
#define UC_WIN 2
#define UC_BSD 3

#ifndef UNICODE_LNX_KEY
#define UNICODE_LNX_KEY KC_A
#endif

#ifndef UNICODE_TYPE_DELAY
#define UNICODE_TYPE_DELAY 10
#endif

void set_unicode_input_mode(uint8_t os_target);
void set_unicode_input_key_lnx(uint16_t linux_key);
void unicode_input_start(void);
void unicode_input_finish(void);
void register_hex(uint16_t hex);