sxkbd

Firmware for RP2040-based corne split keyboard
git clone https://git.sinitax.com/sinitax/sxkbd
Log | Files | Refs | Submodules | README | LICENSE | sfeed.txt

keyboard_de.h (7532B)


      1 #pragma once
      2 
      3 #include "keysym.h"
      4 #include "hid/keyboard.h"
      5 
      6 /*
      7  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
      8  * │ ^ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ ß │ ´ │       │
      9  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
     10  * │     │ Q │ W │ E │ R │ T │ Z │ U │ I │ O │ P │ Ü │ + │     │
     11  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
     12  * │      │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Ö │ Ä │ # │    │
     13  * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
     14  * │    │ < │ Y │ X │ C │ V │ B │ N │ M │ , │ . │ - │          │
     15  * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
     16  * │    │    │    │                        │    │    │    │    │
     17  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
     18  */
     19 
     20 /* Row 1 */
     21 #define DE_CIRC KC_GRV  // ^ (dead)
     22 #define DE_1    KC_1    // 1
     23 #define DE_2    KC_2    // 2
     24 #define DE_3    KC_3    // 3
     25 #define DE_4    KC_4    // 4
     26 #define DE_5    KC_5    // 5
     27 #define DE_6    KC_6    // 6
     28 #define DE_7    KC_7    // 7
     29 #define DE_8    KC_8    // 8
     30 #define DE_9    KC_9    // 9
     31 #define DE_0    KC_0    // 0
     32 #define DE_SS   KC_MINS // ß
     33 #define DE_ACUT KC_EQL  // ´ (dead)
     34 
     35 /* Row 2 */
     36 #define DE_Q    KC_Q    // Q
     37 #define DE_W    KC_W    // W
     38 #define DE_E    KC_E    // E
     39 #define DE_R    KC_R    // R
     40 #define DE_T    KC_T    // T
     41 #define DE_Z    KC_Y    // Z
     42 #define DE_U    KC_U    // U
     43 #define DE_I    KC_I    // I
     44 #define DE_O    KC_O    // O
     45 #define DE_P    KC_P    // P
     46 #define DE_UDIA KC_LBRC // Ü
     47 #define DE_PLUS KC_RBRC // +
     48 
     49 /* Row 3 */
     50 #define DE_A    KC_A    // A
     51 #define DE_S    KC_S    // S
     52 #define DE_D    KC_D    // D
     53 #define DE_F    KC_F    // F
     54 #define DE_G    KC_G    // G
     55 #define DE_H    KC_H    // H
     56 #define DE_J    KC_J    // J
     57 #define DE_K    KC_K    // K
     58 #define DE_L    KC_L    // L
     59 #define DE_ODIA KC_SCLN // Ö
     60 #define DE_ADIA KC_QUOT // Ä
     61 #define DE_HASH KC_NUHS // #
     62 
     63 /* Row 4 */
     64 #define DE_LABK KC_NUBS // <
     65 #define DE_Y    KC_Z    // Y
     66 #define DE_X    KC_X    // X
     67 #define DE_C    KC_C    // C
     68 #define DE_V    KC_V    // V
     69 #define DE_B    KC_B    // B
     70 #define DE_N    KC_N    // N
     71 #define DE_M    KC_M    // M
     72 #define DE_COMM KC_COMM // ,
     73 #define DE_DOT  KC_DOT  // .
     74 #define DE_MINS KC_SLSH // -
     75 
     76 
     77 /* Shifted symbols
     78  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
     79  * │ ° │ ! │ " │ § │ $ │ % │ & │ / │ ( │ ) │ = │ ? │ ` │       │
     80  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
     81  * │     │   │   │   │   │   │   │   │   │   │   │   │ * │     │
     82  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
     83  * │      │   │   │   │   │   │   │   │   │   │   │   │ ' │    │
     84  * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
     85  * │    │ > │   │   │   │   │   │   │   │ ; │ : │ _ │          │
     86  * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
     87  * │    │    │    │                        │    │    │    │    │
     88  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
     89  */
     90 
     91 /* Row 1 */
     92 #define DE_DEG  S(DE_CIRC) // °
     93 #define DE_EXLM S(DE_1)    // !
     94 #define DE_DQUO S(DE_2)    // "
     95 #define DE_SECT S(DE_3)    // §
     96 #define DE_DLR  S(DE_4)    // $
     97 #define DE_PERC S(DE_5)    // %
     98 #define DE_AMPR S(DE_6)    // &
     99 #define DE_SLSH S(DE_7)    // /
    100 #define DE_LPRN S(DE_8)    // (
    101 #define DE_RPRN S(DE_9)    // )
    102 #define DE_EQL  S(DE_0)    // =
    103 #define DE_QUES S(DE_SS)   // ?
    104 #define DE_GRV  S(DE_ACUT) // ` (dead)
    105 
    106 /* Row 2 */
    107 #define DE_ASTR S(DE_PLUS) // *
    108 
    109 /* Row 3 */
    110 #define DE_QUOT S(DE_HASH) // '
    111 
    112 /* Row 4 */
    113 #define DE_RABK S(DE_LABK) // >
    114 #define DE_SCLN S(DE_COMM) // ;
    115 #define DE_COLN S(DE_DOT)  // :
    116 #define DE_UNDS S(DE_MINS) // _
    117 
    118 /* alternate names */
    119 #define DE_LESS DE_LABK
    120 #define DE_GRTR S(DE_LABK)
    121 
    122 /* AltGr symbols
    123  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
    124  * │   │   │ ² │ ³ │   │   │   │ { │ [ │ ] │ } │ \ │   │       │
    125  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
    126  * │     │ @ │   │ € │   │   │   │   │   │   │   │   │ ~ │     │
    127  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
    128  * │      │   │   │   │   │   │   │   │   │   │   │   │   │    │
    129  * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
    130  * │    │ | │   │   │   │   │   │   │ µ │   │   │   │          │
    131  * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
    132  * │    │    │    │                        │    │    │    │    │
    133  * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
    134  */
    135 
    136 /* Row 1 */
    137 #define DE_SUP2 ALGR(DE_2)    // ²
    138 #define DE_SUP3 ALGR(DE_3)    // ³
    139 #define DE_LCBR ALGR(DE_7)    // {
    140 #define DE_LBRC ALGR(DE_8)    // [
    141 #define DE_RBRC ALGR(DE_9)    // ]
    142 #define DE_RCBR ALGR(DE_0)    // }
    143 #define DE_BSLS ALGR(DE_SS)   // (backslash)
    144 
    145 /* Row 2 */
    146 #define DE_AT   ALGR(DE_Q)    // @
    147 #define DE_EURO ALGR(DE_E)    // €
    148 #define DE_TILD ALGR(DE_PLUS) // ~
    149 
    150 /* Row 4 */
    151 #define DE_PIPE ALGR(DE_LABK) // |
    152 #define DE_MICR ALGR(DE_M)    // µ