qmk_firmware/keyboards/rkb1/keymaps/default/key_qwertz_table.h

165 lines
9.5 KiB
C
Raw Normal View History

2022-07-24 09:32:21 +00:00
#pragma once
2022-07-24 19:49:19 +00:00
#include "keymap.h"
2022-07-24 09:32:21 +00:00
// Only contains ASCII characters, because the rest is sparsely mapped
const struct decoded_key key_qwertz_mapping[] = {
{KC_SPC, 1, 0}, // " "
{KC_1, 2, 0}, // !
{KC_2, 2, 0}, // "
{KC_NUHS, 1, 0}, // #
{KC_4, 2, 0}, // $
{KC_5, 2, 0}, // %
{KC_6, 2, 0}, // &
{KC_NUHS, 2, 0}, // '
{KC_8, 2, 0}, // (
{KC_9, 2, 0}, // )
{KC_RBRC, 2, 0}, // *
{KC_RBRC, 1, 0}, // +
{KC_COMM, 1, 0}, // ,
{KC_SLSH, 1, 0}, // -
{KC_DOT, 1, 0}, // .
{KC_7, 2, 0}, // /
{KC_0, 1, 0}, // 0
{KC_1, 1, 0}, // 1
{KC_2, 1, 0}, // 2
{KC_3, 1, 0}, // 3
{KC_4, 1, 0}, // 4
{KC_5, 1, 0}, // 5
{KC_6, 1, 0}, // 6
{KC_7, 1, 0}, // 7
{KC_8, 1, 0}, // 8
{KC_9, 1, 0}, // 9
{KC_DOT, 2, 0}, // :
{KC_COMM, 2, 0}, // ;
{KC_NUBS, 1, 0}, // <
{KC_0, 2, 0}, // =
{KC_NUBS, 2, 0}, // >
{KC_MINS, 2, 0}, // ?
{KC_Q, 4, 0}, // @
{KC_A, 2, 0}, // A
{KC_B, 2, 0}, // B
{KC_C, 2, 0}, // C
{KC_D, 2, 0}, // D
{KC_E, 2, 0}, // E
{KC_F, 2, 0}, // F
{KC_G, 2, 0}, // G
{KC_H, 2, 0}, // H
{KC_I, 2, 0}, // I
{KC_J, 2, 0}, // J
{KC_K, 2, 0}, // K
{KC_L, 2, 0}, // L
{KC_M, 2, 0}, // M
{KC_N, 2, 0}, // N
{KC_O, 2, 0}, // O
{KC_P, 2, 0}, // P
{KC_Q, 2, 0}, // Q
{KC_R, 2, 0}, // R
{KC_S, 2, 0}, // S
{KC_T, 2, 0}, // T
{KC_U, 2, 0}, // U
{KC_V, 2, 0}, // V
{KC_W, 2, 0}, // W
{KC_X, 2, 0}, // X
{KC_Z, 2, 0}, // Y
{KC_Y, 2, 0}, // Z
{KC_8, 4, 0}, // [
{KC_MINS, 4, 0}, // '\'
{KC_9, 4, 0}, // ]
{KC_NO, 0, DECODED_KEY_SPECIAL}, // ^
{KC_SLSH, 2, 0}, // _
{KC_NO, 0, DECODED_KEY_SPECIAL}, // `
{KC_A, 1, 0}, // a
{KC_B, 1, 0}, // b
{KC_C, 1, 0}, // c
{KC_D, 1, 0}, // d
{KC_E, 1, 0}, // e
{KC_F, 1, 0}, // f
{KC_G, 1, 0}, // g
{KC_H, 1, 0}, // h
{KC_I, 1, 0}, // i
{KC_J, 1, 0}, // j
{KC_K, 1, 0}, // k
{KC_L, 1, 0}, // l
{KC_M, 1, 0}, // m
{KC_N, 1, 0}, // n
{KC_O, 1, 0}, // o
{KC_P, 1, 0}, // p
{KC_Q, 1, 0}, // q
{KC_R, 1, 0}, // r
{KC_S, 1, 0}, // s
{KC_T, 1, 0}, // t
{KC_U, 1, 0}, // u
{KC_V, 1, 0}, // v
{KC_W, 1, 0}, // w
{KC_X, 1, 0}, // x
{KC_Z, 1, 0}, // y
{KC_Y, 1, 0}, // z
{KC_7, 4, 0}, // {
{KC_NUBS, 4, 0}, // |
{KC_0, 4, 0}, // }
{KC_RBRC, 4, 0} // ~
};
struct sparse_decoded_key {
uint16_t key;
struct decoded_key decoded_key;
};
const struct sparse_decoded_key key_qwertz_sparse_mapping[] = {{NBSPACE, {KC_SPC, 4, 0}}, // Non-breaking space
{INVEXCL, {KC_5, 4, 0}}, // ¡
{SECTION, {KC_3, 2, 0}}, // §
{LDGUILM, {KC_V, 4, 0}}, // «
{SHYPHEN, {KC_SLSH, 4, 0}}, // soft hyphen
{DEGREE, {KC_GRV, 2, 0}}, // °
{SUPTWO, {KC_2, 4, 0}}, // ²
{SUPTHRE, {KC_3, 4, 0}}, // ³
{MIDDOT, {KC_DOT, 7, 0}}, // ·
{SUPONE, {KC_I, 7, 0}}, // ¹
{RDGUILM, {KC_C, 4, 0}}, // »
{INVQMRK, {KC_6, 4, 0}}, // ¿
{CA_DIA, {KC_QUOT, 2, 0}}, // Ä
{CO_DIA, {KC_SCLN, 2, 0}}, // Ö
{CU_DIA, {KC_LBRC, 2, 0}}, // Ü
{SZLIG, {KC_MINS, 1, 0}}, // ß
{A_DIA, {KC_QUOT, 1, 0}}, // ä
{O_DIA, {KC_SCLN, 1, 0}}, // ö
{U_DIA, {KC_LBRC, 1, 0}}, // ü
{LONG_S, {KC_LBRC, 7, 0}}, // ſ
{MU, {KC_M, 4, 0}}, // μ
{CSZLIG, {KC_H, 4, 0}}, // ẞ
{ENDASH, {KC_N, 4, 0}}, //
{EMDASH, {KC_4, 4, 0}}, // —
{LSQUOT, {KC_DOT, 4, 0}}, //
{RSQUOT, {KC_1, 4, 0}}, //
{LDQUOT, {KC_V, 7, 0}}, // “
{RDQUOT, {KC_B, 7, 0}}, // ”
{LODQUOT, {KC_X, 7, 0}}, // „
{ELLIPS, {KC_DOT, 4, 0}}, // …
{NNBSP, {KC_SPC, 7, 0}}, // narrow non-breaking space
{PRIME, {KC_F, 4, 0}}, //
{DPRIME, {KC_G, 4, 0}}, // ″
{LSGUILM, {KC_B, 4, 0}}, //
{RSGUILM, {KC_Z, 4, 0}}, //
{EURO, {KC_E, 4, 0}}, // €
{EMPTYST, {KC_D, 4, 0}}, // ∅
{LEQUAL, {KC_A, 4, 0}}, // ≤
{GEQUAL, {KC_O, 4, 0}}, // ≥
{CIRCUM, {KC_GRV, 1, DECODED_KEY_ONESHOT}},
{HACEK, {KC_W, 3, DECODED_KEY_ONESHOT}},
{DOTABVE, {KC_EQL, 3, DECODED_KEY_ONESHOT}},
{DOTBLOW, {KC_SCLN, 3, DECODED_KEY_ONESHOT}},
{GRAVE, {KC_EQL, 2, DECODED_KEY_ONESHOT}},
{CEDILLE, {KC_J, 4, DECODED_KEY_ONESHOT}},
// TODO: disambiguate CEDILLE and OGONEK somehow
{OGONEK, {KC_L, 4, DECODED_KEY_ONESHOT}},
{DIARESS, {KC_R, 4, DECODED_KEY_ONESHOT}},
{MACRON, {KC_T, 4, DECODED_KEY_ONESHOT}},
{ACUTE, {KC_EQL, 1, DECODED_KEY_ONESHOT}},
{TILDE, {KC_I, 4, DECODED_KEY_ONESHOT}},
{DBLACUT, {KC_Y, 4, DECODED_KEY_ONESHOT}},
{SPLENIS, {KC_LBRC, 4, DECODED_KEY_ONESHOT}},
{BREVE, {KC_U, 4, DECODED_KEY_ONESHOT}},
{0, {0, 0, 0}}};