]> git.donarmstrong.com Git - qmk_firmware.git/blob - quantum/keymap_extras/keymap_german.h
Add german keymap and german ergodox layout
[qmk_firmware.git] / quantum / keymap_extras / keymap_german.h
1 #ifndef KEYMAP_GERMAN
2 #define KEYMAP_GERMAN
3
4 #include "keymap_common.h"
5
6 // Alt gr
7 #define ALGR(kc) kc | 0x1400
8 #define DE_ALGR KC_RALT
9
10 // normal characters
11 #define DE_Z KC_Y
12 #define DE_Y KC_Z
13
14 #define DE_SS KC_MINS
15 #define DE_AE KC_QUOT
16 #define DE_UE KC_LBRC
17 #define DE_OE KC_SCLN
18
19 #define DE_CIRC KC_GRAVE // accent circumflex ^ and ring °
20 #define DE_ACUT KC_EQL // accent acute ´ and grave `
21 #define DE_PLUS KC_RBRC // + and * and ~
22 #define DE_HASH KC_BSLS // # and '
23 #define DE_LESS KC_NUBS // < and > and |
24 #define DE_MINS KC_SLSH // - and _
25
26 // shifted characters
27 #define DE_RING LSFT(DE_CIRC) // °
28 #define DE_EXLM LSFT(KC_1) // !
29 #define DE_DQOT LSFT(KC_2) // "
30 #define DE_PARA LSFT(KC_3) // §
31 #define DE_DLR  LSFT(KC_4) // $
32 #define DE_PERC LSFT(KC_5) // %
33 #define DE_AMPR LSFT(KC_6) // &
34 #define DE_SLSH LSFT(KC_7) // /
35 #define DE_LPRN LSFT(KC_8) // (
36 #define DE_RPRN LSFT(KC_9) // )
37 #define DE_EQL  LSFT(KC_0) // =
38 #define DE_QST  LSFT(DE_SS) // ?
39 #define DE_GRV  LSFT(DE_ACUT) // `
40 #define DE_ASTR LSFT(DE_PLUS) // *
41 #define DE_QUOT LSFT(DE_HASH) // '
42 #define DE_MORE LSFT(DE_LESS) // >
43 #define DE_COLN LSFT(KC_DOT) // :
44 #define DE_SCLN LSFT(KC_COMM) // ;
45 #define DE_UNDS LSFT(DE_MINS) // _
46
47 // Alt Gr-ed characters
48 #define DE_SQ2 ALGR(KC_2) // ²
49 #define DE_SQ3 ALGR(KC_3) // ³
50 #define DE_LCBR ALGR(KC_7) // {
51 #define DE_LBRC ALGR(KC_8) // [
52 #define DE_RBRC ALGR(KC_9) // ]
53 #define DE_RCBR ALGR(KC_0) // }
54 #define DE_BSLS ALGR(DE_SS) // backslash
55 #define DE_AT  ALGR(KC_Q) // @
56 #define DE_EURO ALGR(KC_E) // €
57 #define DE_TILD ALGR(DE_PLUS) // ~
58 #define DE_PIPE ALGR(DE_LESS) // |
59
60 #endif