keymap_german.h 1.6 KB

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