From 794a41aeabfc85a0c053f9c5090402406b21432f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Charlotte=20=F0=9F=A6=9D=20Delenk?= Date: Sun, 24 Jul 2022 20:49:19 +0100 Subject: [PATCH] extract keys and structs into header --- .../rkb1/keymaps/default/key_neo2_table.h | 1 + .../rkb1/keymaps/default/key_qwerty_table.h | 1 + .../rkb1/keymaps/default/key_qwertz_table.h | 1 + .../rkb1/keymaps/default/key_unicode_table.h | 1 + keyboards/rkb1/keymaps/default/keymap.c | 318 +---------------- keyboards/rkb1/keymaps/default/keymap.h | 320 ++++++++++++++++++ 6 files changed, 325 insertions(+), 317 deletions(-) create mode 100644 keyboards/rkb1/keymaps/default/keymap.h diff --git a/keyboards/rkb1/keymaps/default/key_neo2_table.h b/keyboards/rkb1/keymaps/default/key_neo2_table.h index 3f3439a7cc..74e379ffd5 100644 --- a/keyboards/rkb1/keymaps/default/key_neo2_table.h +++ b/keyboards/rkb1/keymaps/default/key_neo2_table.h @@ -1,4 +1,5 @@ #pragma once +#include "keymap.h" const struct decoded_key key_neo2_mapping[] = { {KC_SPC, 1, 0}, // " " diff --git a/keyboards/rkb1/keymaps/default/key_qwerty_table.h b/keyboards/rkb1/keymaps/default/key_qwerty_table.h index c2d420c05a..95e72c8923 100644 --- a/keyboards/rkb1/keymaps/default/key_qwerty_table.h +++ b/keyboards/rkb1/keymaps/default/key_qwerty_table.h @@ -1,4 +1,5 @@ #pragma once +#include "keymap.h" const struct decoded_key key_qwerty_mapping[] = { {KC_SPC, 1, 0}, // " " diff --git a/keyboards/rkb1/keymaps/default/key_qwertz_table.h b/keyboards/rkb1/keymaps/default/key_qwertz_table.h index 6f209ef942..57d6d259ad 100644 --- a/keyboards/rkb1/keymaps/default/key_qwertz_table.h +++ b/keyboards/rkb1/keymaps/default/key_qwertz_table.h @@ -1,4 +1,5 @@ #pragma once +#include "keymap.h" // Only contains ASCII characters, because the rest is sparsely mapped const struct decoded_key key_qwertz_mapping[] = { diff --git a/keyboards/rkb1/keymaps/default/key_unicode_table.h b/keyboards/rkb1/keymaps/default/key_unicode_table.h index 32f44484f1..a953e45a57 100644 --- a/keyboards/rkb1/keymaps/default/key_unicode_table.h +++ b/keyboards/rkb1/keymaps/default/key_unicode_table.h @@ -1,4 +1,5 @@ #pragma once +#include "keymap.h" static const char* key_unicode_mappings[] = {" ", "!", "\"", "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ":", ";", "<", "=", ">", "?", "@", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "[", "\\", "]", "^", "_", "`", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "{", "|", "}", "~", "\u00a0", "¡", "¢", "£", "¤", "¥", "§", "ª", "«", "¬", "\u00ad", "°", "±", "²", "³", "·", "¹", "º", "»", "¿", "Ä", "Ö", "×", "Ü", "ß", "ä", "ö", "÷", "ü", "ſ", "Γ", "Δ", "Θ", "Λ", "Ξ", "Π", "Σ", "Φ", "Ψ", "Ω", "α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "ς", "σ", "τ", "υ", "φ", "χ", "ψ", "ω", "ϑ", "ϕ", "ϰ", "ϱ", "ϵ", "ẞ", "\u2011", "–", "—", "‘", "’", "‚", "“", "”", "„", "†", "•", "‣", "…", "\u202f", "‰", "′", "″", "‹", "›", "⁄", "₀", "₁", "₂", "₃", "€", "ℂ", "ℓ", "ℕ", "№", "ℚ", "ℝ", "ℤ", "ℵ", "←", "↑", "→", "↓", "↔", "↕", "↦", "⇌", "⇐", "⇒", "⇔", "∀", "∂", "∃", "∅", "∇", "∈", "−", "∓", "∔", "∖", "∘", "√", "∝", "∞", "∡", "∣", "∥", "∧", "∨", "∩", "∪", "∫", "∸", "≈", "≠", "≡", "≤", "≥", "≪", "≫", "⊂", "⊃", "⊆", "⊇", "⊕", "⊖", "⊛", "⊙", "⊥", "⊶", "⊷", "⋂", "⋃", "⋅", "⌀", "⌈", "⌉", "⌊", "⌋", "␣", "□", "♠", "♣", "♥", "♦", "♀", "♂", "⚥", "✔", "✘", "⟨", "⟩", "^", "ˇ", "↻", "˙", "˞", ".", "`", "¸", "˛", "°", "¨", "῾", "¯", "´", "˜", "/", "˝", "᾿", "˘", "→", "⇤"}; diff --git a/keyboards/rkb1/keymaps/default/keymap.c b/keyboards/rkb1/keymaps/default/keymap.c index 8f7114de19..66ee425582 100644 --- a/keyboards/rkb1/keymaps/default/keymap.c +++ b/keyboards/rkb1/keymaps/default/keymap.c @@ -1,312 +1,6 @@ #include QMK_KEYBOARD_H #include "keymap_steno.h" - -// I don’t take constructive criticism sorry -enum custom_keycodes { - SPACE = SAFE_RANGE, // " " - EXCLAM, // ! - QUOT, // " - NUMBER, // # - DOLLAR, // $ - PERCENT, // % - AMPSAND, // & - AAPOSTR, // ' - LPARENS, // ( - RPARENS, // ) - ASTERSK, // * - PLUS, // + - COMMA, // , - HYPHMIN, // - - PERIOD, // . - FSLASH, // / - ZERO, // 0 - ONE, // 1 - TWO, // 2 - THREE, // 3 - FOUR, // 4 - FIVE, // 5 - SIX, // 6 - SEVEN, // 7 - EIGHT, // 8 - NINE, // 9 - COLON, // : - SEMCOL, // ; - LESSTHN, // < - EQUALS, // = - GREATER, // > - QUESTN, // ? - AT, // @ - CA, // A - CB, // B - CC, // C - CD, // D - CE, // E - CF, // F - CG, // G - CH, // H - CI, // I - CJ, // J - CK, // K - CL, // L - CM, // M - CN, // N - CO, // O - CP, // P - CQ, // Q - CR, // R - CS, // S - CT, // T - CU, // U - CV, // V - CW, // W - CX, // X - CY, // Y - CZ, // Z - LBRACKT, // [ - BSLASH, // '\' - RBRACKT, // ] - ACIRCUM, // ^ - LOWLINE, // _ - AGRAVE, // ` - A, // a - B, // b - C, // c - D, // d - E, // e - F, // f - G, // g - H, // h - I, // i - J, // j - K, // k - L, // l - M, // m - N, // n - O, // o - P, // p - Q, // q - R, // r - S, // s - T, // t - U, // u - V, // v - W, // w - X, // x - Y, // y - Z, // z - LBRACE, // { - VRTLINE, // | - RBRACE, // } - ATILDE, // ~ - NBSPACE, //   (U+00A0) - INVEXCL, // ¡ - CENTSGN, // ¢ - POUND, // £ - CURENCY, // ¤ - YEN, // ¥ - SECTION, // § - FEMORD, // ª - LDGUILM, // « - NOTSIGN, // ¬ - SHYPHEN, // ­ (U+00AD) - DEGREE, // ° - PLSMNS, // ± - SUPTWO, // ² - SUPTHRE, // ³ - MIDDOT, // · - SUPONE, // ¹ - MASCORD, // º - RDGUILM, // » - INVQMRK, // ¿ - CA_DIA, // Ä - CO_DIA, // Ö - MULTSGN, // × - CU_DIA, // Ü - SZLIG, // ß - A_DIA, // ä - O_DIA, // ö - DIVSGN, // ÷ - U_DIA, // ü - LONG_S, // ſ - CGAMMA, // Γ - CDELTA, // Δ - CTHETA, // Θ - CLAMBDA, // Λ - CXI, // Ξ - CPI, // Π - CSIGMA, // Σ - CPHI, // Φ - CPSI, // Ψ - COMEGA, // Ω - ALPHA, // α - BETA, // β - GAMMA, // γ - DELTA, // δ - EPSILON, // ε - ZETA, // ζ - ETA, // η - THETA, // θ - IOTA, // ι - KAPPA, // κ - LAMBDA, // λ - MU, // μ - NU, // ν - XI, // ξ - OMICRON, // ο - PI, // π - RHO, // ρ - FSIGMA, // ς - SIGMA, // σ - TAU, // τ - UPSILON, // υ - PHI, // φ - CHI, // χ - PSI, // ψ - OMEGA, // ω - VRTHETA, // ϑ - VARPHI, // ϕ - VARKPPA, // ϰ - VARRHO, // ϱ - LUNEPS, // ϵ - CSZLIG, // ẞ - NBHYP, // ‑ (U+2011) - ENDASH, // – - EMDASH, // — - LSQUOT, // ‘ - RSQUOT, // ’ - LOSQUOT, // ‚ - LDQUOT, // “ - RDQUOT, // ” - LODQUOT, // „ - DAGGER, // † - BULLET, // • - TRIBLLT, // ‣ - ELLIPS, // … - NNBSP, //   (U+202F) - PERMILL, // ‰ - PRIME, // ′ - DPRIME, // ″ - LSGUILM, // ‹ - RSGUILM, // › - FRACTSL, // ⁄ - SUBZERO, // ₀ - SUBONE, // ₁ - SUBTWO, // ₂ - SUBTHRE, // ₃ - EURO, // € - COMPLEX, // ℂ - SCRIPTL, // ℓ - NATURAL, // ℕ - NUMERO, // № - RATIONL, // ℚ - REAL, // ℝ - INTEGER, // ℤ - ALEF, // ℵ - LEFTARR, // ← - UPARROW, // ↑ - RIGHTAR, // → - DOWNARR, // ↓ - LRARROW, // ↔ - UDARROW, // ↕ - RARRBAR, // ↦ - RLHARPO, // ⇌ - LDBLARR, // ⇐ - RDBLARR, // ⇒ - LRDBARR, // ⇔ - FORALL, // ∀ - PARTDRV, // ∂ - THREXST, // ∃ - EMPTYST, // ∅ - NABLA, // ∇ - ELEMOF, // ∈ - MINUS, // − - MINPLS, // ∓ - DOTPLUS, // ∔ - SETMINS, // ∖ - RINGOP, // ∘ - SQRT, // √ - PROPTO, // ∝ - INFINIT, // ∞ - MEASANG, // ∡ - DIVIDES, // ∣ - PARALLL, // ∥ - LAND, // ∧ - LOR, // ∨ - INTRSCT, // ∩ - UNION, // ∪ - INTEGRL, // ∫ - DOTMINS, // ∸ - ALMSTEQ, // ≈ - NOTEQAL, // ≠ - IDENTCL, // ≡ - LEQUAL, // ≤ - GEQUAL, // ≥ - MCHLESS, // ≪ - MCHGRTR, // ≫ - SUBSET, // ⊂ - SUPRSET, // ⊃ - SUBEQL, // ⊆ - SUPREQL, // ⊇ - CPLUS, // ⊕ - CMINUS, // ⊖ - CTIMES, // ⊛ - CDOT, // ⊙ - UPTACK, // ⊥ - ORIGNAL, // ⊶ - IMAGEOF, // ⊷ - NARYINT, // ⋂ - NARYUNI, // ⋃ - DOTOPER, // ⋅ - DIAMETR, // ⌀ - LCEILNG, // ⌈ - RCEILNG, // ⌉ - LFLOOR, // ⌊ - RFLOOR, // ⌋ - OPNBOX, // ␣ - WHTSQAR, // □ - SPADE, // ♠ - CLUBS, // ♣ - HEART, // ♥ - DIAMOND, // ♦ - FEMALE, // ♀ - MALE, // ♂ - MALEFEM, // ⚥ - CHECKMK, // ✔ - XBALLOT, // ✘ - LANGLE, // ⟨ - RANGLE, // ⟩ - - CIRCUM, // ^ - HACEK, // ̌ - TURNED, // ↻ - DOTABVE, // ̇ - HOOK, // ˞ - DOTBLOW, // . - GRAVE, // ` - CEDILLE, // ¸ - OGONEK = CEDILLE, // ˛ - RING, // ° - DIARESS, // ̈ - SPASPER, // ῾ - MACRON, // ̄ - ACUTE, // ´ - TILDE, // ˜ - SOLIDUS, // / - DBLACUT, // ˝ - SPLENIS, // ᾿ - BREVE, // ˘ - VECTARR, // → - - // Miscellaneous - LEFTTAB, // tab but backwards - - COMPOSE, - PASTHRU, - OLEDON, - NEO2, - QWERTZ, - QWERTY, -}; +#include "keymap.h" static void register_layer1(uint16_t key) { register_code16(key); @@ -600,16 +294,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { uint16_t layout = NEO2; -#define DECODED_KEY_USE_UNICODE 1 -#define DECODED_KEY_ONESHOT 2 -#define DECODED_KEY_SPECIAL 4 - -struct decoded_key { - uint16_t keycode; - uint8_t layer; - uint8_t flags; -}; - #include "key_unicode_table.h" #include "key_neo2_table.h" #include "key_qwerty_table.h" diff --git a/keyboards/rkb1/keymaps/default/keymap.h b/keyboards/rkb1/keymaps/default/keymap.h new file mode 100644 index 0000000000..64c990d002 --- /dev/null +++ b/keyboards/rkb1/keymaps/default/keymap.h @@ -0,0 +1,320 @@ +#pragma once + +#include QMK_KEYBOARD_H + +// I don’t take constructive criticism sorry +enum custom_keycodes { + SPACE = SAFE_RANGE, // " " + EXCLAM, // ! + QUOT, // " + NUMBER, // # + DOLLAR, // $ + PERCENT, // % + AMPSAND, // & + AAPOSTR, // ' + LPARENS, // ( + RPARENS, // ) + ASTERSK, // * + PLUS, // + + COMMA, // , + HYPHMIN, // - + PERIOD, // . + FSLASH, // / + ZERO, // 0 + ONE, // 1 + TWO, // 2 + THREE, // 3 + FOUR, // 4 + FIVE, // 5 + SIX, // 6 + SEVEN, // 7 + EIGHT, // 8 + NINE, // 9 + COLON, // : + SEMCOL, // ; + LESSTHN, // < + EQUALS, // = + GREATER, // > + QUESTN, // ? + AT, // @ + CA, // A + CB, // B + CC, // C + CD, // D + CE, // E + CF, // F + CG, // G + CH, // H + CI, // I + CJ, // J + CK, // K + CL, // L + CM, // M + CN, // N + CO, // O + CP, // P + CQ, // Q + CR, // R + CS, // S + CT, // T + CU, // U + CV, // V + CW, // W + CX, // X + CY, // Y + CZ, // Z + LBRACKT, // [ + BSLASH, // '\' + RBRACKT, // ] + ACIRCUM, // ^ + LOWLINE, // _ + AGRAVE, // ` + A, // a + B, // b + C, // c + D, // d + E, // e + F, // f + G, // g + H, // h + I, // i + J, // j + K, // k + L, // l + M, // m + N, // n + O, // o + P, // p + Q, // q + R, // r + S, // s + T, // t + U, // u + V, // v + W, // w + X, // x + Y, // y + Z, // z + LBRACE, // { + VRTLINE, // | + RBRACE, // } + ATILDE, // ~ + NBSPACE, //   (U+00A0) + INVEXCL, // ¡ + CENTSGN, // ¢ + POUND, // £ + CURENCY, // ¤ + YEN, // ¥ + SECTION, // § + FEMORD, // ª + LDGUILM, // « + NOTSIGN, // ¬ + SHYPHEN, // ­ (U+00AD) + DEGREE, // ° + PLSMNS, // ± + SUPTWO, // ² + SUPTHRE, // ³ + MIDDOT, // · + SUPONE, // ¹ + MASCORD, // º + RDGUILM, // » + INVQMRK, // ¿ + CA_DIA, // Ä + CO_DIA, // Ö + MULTSGN, // × + CU_DIA, // Ü + SZLIG, // ß + A_DIA, // ä + O_DIA, // ö + DIVSGN, // ÷ + U_DIA, // ü + LONG_S, // ſ + CGAMMA, // Γ + CDELTA, // Δ + CTHETA, // Θ + CLAMBDA, // Λ + CXI, // Ξ + CPI, // Π + CSIGMA, // Σ + CPHI, // Φ + CPSI, // Ψ + COMEGA, // Ω + ALPHA, // α + BETA, // β + GAMMA, // γ + DELTA, // δ + EPSILON, // ε + ZETA, // ζ + ETA, // η + THETA, // θ + IOTA, // ι + KAPPA, // κ + LAMBDA, // λ + MU, // μ + NU, // ν + XI, // ξ + OMICRON, // ο + PI, // π + RHO, // ρ + FSIGMA, // ς + SIGMA, // σ + TAU, // τ + UPSILON, // υ + PHI, // φ + CHI, // χ + PSI, // ψ + OMEGA, // ω + VRTHETA, // ϑ + VARPHI, // ϕ + VARKPPA, // ϰ + VARRHO, // ϱ + LUNEPS, // ϵ + CSZLIG, // ẞ + NBHYP, // ‑ (U+2011) + ENDASH, // – + EMDASH, // — + LSQUOT, // ‘ + RSQUOT, // ’ + LOSQUOT, // ‚ + LDQUOT, // “ + RDQUOT, // ” + LODQUOT, // „ + DAGGER, // † + BULLET, // • + TRIBLLT, // ‣ + ELLIPS, // … + NNBSP, //   (U+202F) + PERMILL, // ‰ + PRIME, // ′ + DPRIME, // ″ + LSGUILM, // ‹ + RSGUILM, // › + FRACTSL, // ⁄ + SUBZERO, // ₀ + SUBONE, // ₁ + SUBTWO, // ₂ + SUBTHRE, // ₃ + EURO, // € + COMPLEX, // ℂ + SCRIPTL, // ℓ + NATURAL, // ℕ + NUMERO, // № + RATIONL, // ℚ + REAL, // ℝ + INTEGER, // ℤ + ALEF, // ℵ + LEFTARR, // ← + UPARROW, // ↑ + RIGHTAR, // → + DOWNARR, // ↓ + LRARROW, // ↔ + UDARROW, // ↕ + RARRBAR, // ↦ + RLHARPO, // ⇌ + LDBLARR, // ⇐ + RDBLARR, // ⇒ + LRDBARR, // ⇔ + FORALL, // ∀ + PARTDRV, // ∂ + THREXST, // ∃ + EMPTYST, // ∅ + NABLA, // ∇ + ELEMOF, // ∈ + MINUS, // − + MINPLS, // ∓ + DOTPLUS, // ∔ + SETMINS, // ∖ + RINGOP, // ∘ + SQRT, // √ + PROPTO, // ∝ + INFINIT, // ∞ + MEASANG, // ∡ + DIVIDES, // ∣ + PARALLL, // ∥ + LAND, // ∧ + LOR, // ∨ + INTRSCT, // ∩ + UNION, // ∪ + INTEGRL, // ∫ + DOTMINS, // ∸ + ALMSTEQ, // ≈ + NOTEQAL, // ≠ + IDENTCL, // ≡ + LEQUAL, // ≤ + GEQUAL, // ≥ + MCHLESS, // ≪ + MCHGRTR, // ≫ + SUBSET, // ⊂ + SUPRSET, // ⊃ + SUBEQL, // ⊆ + SUPREQL, // ⊇ + CPLUS, // ⊕ + CMINUS, // ⊖ + CTIMES, // ⊛ + CDOT, // ⊙ + UPTACK, // ⊥ + ORIGNAL, // ⊶ + IMAGEOF, // ⊷ + NARYINT, // ⋂ + NARYUNI, // ⋃ + DOTOPER, // ⋅ + DIAMETR, // ⌀ + LCEILNG, // ⌈ + RCEILNG, // ⌉ + LFLOOR, // ⌊ + RFLOOR, // ⌋ + OPNBOX, // ␣ + WHTSQAR, // □ + SPADE, // ♠ + CLUBS, // ♣ + HEART, // ♥ + DIAMOND, // ♦ + FEMALE, // ♀ + MALE, // ♂ + MALEFEM, // ⚥ + CHECKMK, // ✔ + XBALLOT, // ✘ + LANGLE, // ⟨ + RANGLE, // ⟩ + + CIRCUM, // ^ + HACEK, // ̌ + TURNED, // ↻ + DOTABVE, // ̇ + HOOK, // ˞ + DOTBLOW, // . + GRAVE, // ` + CEDILLE, // ¸ + OGONEK = CEDILLE, // ˛ + RING, // ° + DIARESS, // ̈ + SPASPER, // ῾ + MACRON, // ̄ + ACUTE, // ´ + TILDE, // ˜ + SOLIDUS, // / + DBLACUT, // ˝ + SPLENIS, // ᾿ + BREVE, // ˘ + VECTARR, // → + + // Miscellaneous + LEFTTAB, // tab but backwards + + COMPOSE, + PASTHRU, + OLEDON, + NEO2, + QWERTZ, + QWERTY, +}; + +#define DECODED_KEY_USE_UNICODE 1 +#define DECODED_KEY_ONESHOT 2 +#define DECODED_KEY_SPECIAL 4 + +struct decoded_key { + uint16_t keycode; + uint8_t layer; + uint8_t flags; +};