|
|
|
|
/* Copyright 2015-2016 Matthias Schmidtt
|
|
|
|
|
*
|
|
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
|
* the Free Software Foundation, either version 2 of the License, or
|
|
|
|
|
* (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
|
*
|
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#ifndef KEYMAP_GERMAN
|
|
|
|
|
#define KEYMAP_GERMAN
|
|
|
|
|
|
|
|
|
|
#include "keymap.h"
|
|
|
|
|
|
|
|
|
|
// Alt gr
|
|
|
|
|
#define ALGR(kc) RALT(kc)
|
|
|
|
|
#define DE_ALGR KC_RALT
|
|
|
|
|
|
|
|
|
|
// normal characters
|
|
|
|
|
#define DE_Z KC_Y
|
|
|
|
|
#define DE_Y KC_Z
|
|
|
|
|
|
|
|
|
|
#define DE_A KC_A
|
|
|
|
|
#define DE_B KC_B
|
|
|
|
|
#define DE_C KC_C
|
|
|
|
|
#define DE_D KC_D
|
|
|
|
|
#define DE_E KC_E
|
|
|
|
|
#define DE_F KC_F
|
|
|
|
|
#define DE_G KC_G
|
|
|
|
|
#define DE_H KC_H
|
|
|
|
|
#define DE_I KC_I
|
|
|
|
|
#define DE_J KC_J
|
|
|
|
|
#define DE_K KC_K
|
|
|
|
|
#define DE_L KC_L
|
|
|
|
|
#define DE_M KC_M
|
|
|
|
|
#define DE_N KC_N
|
|
|
|
|
#define DE_O KC_O
|
|
|
|
|
#define DE_P KC_P
|
|
|
|
|
#define DE_Q KC_Q
|
|
|
|
|
#define DE_R KC_R
|
|
|
|
|
#define DE_S KC_S
|
|
|
|
|
#define DE_T KC_T
|
|
|
|
|
#define DE_U KC_U
|
|
|
|
|
#define DE_V KC_V
|
|
|
|
|
#define DE_W KC_W
|
|
|
|
|
#define DE_X KC_X
|
|
|
|
|
|
|
|
|
|
#define DE_0 KC_0
|
|
|
|
|
#define DE_1 KC_1
|
|
|
|
|
#define DE_2 KC_2
|
|
|
|
|
#define DE_3 KC_3
|
|
|
|
|
#define DE_4 KC_4
|
|
|
|
|
#define DE_5 KC_5
|
|
|
|
|
#define DE_6 KC_6
|
|
|
|
|
#define DE_7 KC_7
|
|
|
|
|
#define DE_8 KC_8
|
|
|
|
|
#define DE_9 KC_9
|
|
|
|
|
|
|
|
|
|
#define DE_DOT KC_DOT
|
|
|
|
|
#define DE_COMM KC_COMM
|
|
|
|
|
|
|
|
|
|
#define DE_SS KC_MINS
|
|
|
|
|
#define DE_AE KC_QUOT
|
|
|
|
|
#define DE_UE KC_LBRC
|
|
|
|
|
#define DE_OE KC_SCLN
|
|
|
|
|
|
|
|
|
|
#define DE_CIRC KC_GRAVE // accent circumflex ^ and ring °
|
|
|
|
|
#define DE_ACUT KC_EQL // accent acute ´ and grave `
|
|
|
|
|
#define DE_PLUS KC_RBRC // + and * and ~
|
|
|
|
|
#define DE_HASH KC_BSLS // # and '
|
|
|
|
|
#define DE_LESS KC_NUBS // < and > and |
|
|
|
|
|
#define DE_MINS KC_SLSH // - and _
|
|
|
|
|
|
|
|
|
|
// shifted characters
|
|
|
|
|
#define DE_RING LSFT(DE_CIRC) // °
|
|
|
|
|
#define DE_EXLM LSFT(KC_1) // !
|
|
|
|
|
#define DE_DQOT LSFT(KC_2) // "
|
|
|
|
|
#define DE_PARA LSFT(KC_3) // §
|
|
|
|
|
#define DE_DLR LSFT(KC_4) // $
|
|
|
|
|
#define DE_PERC LSFT(KC_5) // %
|
|
|
|
|
#define DE_AMPR LSFT(KC_6) // &
|
|
|
|
|
#define DE_SLSH LSFT(KC_7) // /
|
|
|
|
|
#define DE_LPRN LSFT(KC_8) // (
|
|
|
|
|
#define DE_RPRN LSFT(KC_9) // )
|
|
|
|
|
#define DE_EQL LSFT(KC_0) // =
|
|
|
|
|
#define DE_QST LSFT(DE_SS) // ?
|
|
|
|
|
#define DE_GRV LSFT(DE_ACUT) // `
|
|
|
|
|
#define DE_ASTR LSFT(DE_PLUS) // *
|
|
|
|
|
#define DE_QUOT LSFT(DE_HASH) // '
|
|
|
|
|
#define DE_MORE LSFT(DE_LESS) // >
|
|
|
|
|
#define DE_COLN LSFT(KC_DOT) // :
|
|
|
|
|
#define DE_SCLN LSFT(KC_COMM) // ;
|
|
|
|
|
#define DE_UNDS LSFT(DE_MINS) // _
|
|
|
|
|
|
|
|
|
|
// Alt Gr-ed characters
|
|
|
|
|
#define DE_SQ2 ALGR(KC_2) // ²
|
|
|
|
|
#define DE_SQ3 ALGR(KC_3) // ³
|
|
|
|
|
#define DE_LCBR ALGR(KC_7) // {
|
|
|
|
|
#define DE_LBRC ALGR(KC_8) // [
|
|
|
|
|
#define DE_RBRC ALGR(KC_9) // ]
|
|
|
|
|
#define DE_RCBR ALGR(KC_0) // }
|
|
|
|
|
#define DE_BSLS ALGR(DE_SS) // backslash
|
|
|
|
|
#define DE_AT ALGR(KC_Q) // @
|
|
|
|
|
#define DE_EURO ALGR(KC_E) // €
|
|
|
|
|
#define DE_TILD ALGR(DE_PLUS) // ~
|
|
|
|
|
#define DE_PIPE ALGR(DE_LESS) // |
|
|
|
|
|
|
|
|
|
|
#endif
|