diff options
Diffstat (limited to 'quantum/keymap_extras/keymap_german_osx.h')
-rw-r--r-- | quantum/keymap_extras/keymap_german_osx.h | 385 |
1 files changed, 298 insertions, 87 deletions
diff --git a/quantum/keymap_extras/keymap_german_osx.h b/quantum/keymap_extras/keymap_german_osx.h index 29dee07ee0..0d15532e40 100644 --- a/quantum/keymap_extras/keymap_german_osx.h +++ b/quantum/keymap_extras/keymap_german_osx.h @@ -13,100 +13,311 @@ * 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_OSX -#define KEYMAP_GERMAN_OSX -#include "keymap.h" - -// Alt gr +#pragma once -// normal characters -#define DE_OSX_Z KC_Y -#define DE_OSX_Y KC_Z +#include "keymap.h" -#define DE_OSX_A KC_A -#define DE_OSX_B KC_B -#define DE_OSX_C KC_C -#define DE_OSX_D KC_D -#define DE_OSX_E KC_E -#define DE_OSX_F KC_F -#define DE_OSX_G KC_G -#define DE_OSX_H KC_H -#define DE_OSX_I KC_I -#define DE_OSX_J KC_J -#define DE_OSX_K KC_K -#define DE_OSX_L KC_L -#define DE_OSX_M KC_M -#define DE_OSX_N KC_N -#define DE_OSX_O KC_O -#define DE_OSX_P KC_P -#define DE_OSX_Q KC_Q -#define DE_OSX_R KC_R -#define DE_OSX_S KC_S -#define DE_OSX_T KC_T -#define DE_OSX_U KC_U -#define DE_OSX_V KC_V -#define DE_OSX_W KC_W -#define DE_OSX_X KC_X +// clang-format off -#define DE_OSX_0 KC_0 -#define DE_OSX_1 KC_1 -#define DE_OSX_2 KC_2 -#define DE_OSX_3 KC_3 -#define DE_OSX_4 KC_4 -#define DE_OSX_5 KC_5 -#define DE_OSX_6 KC_6 -#define DE_OSX_7 KC_7 -#define DE_OSX_8 KC_8 -#define DE_OSX_9 KC_9 +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐ + * │ ^ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ ß │ ´ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤ + * │ │ Q │ W │ E │ R │ T │ Z │ U │ I │ O │ P │ Ü │ + │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Ö │ Ä │ # │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤ + * │ │ < │ Y │ X │ C │ V │ B │ N │ M │ , │ . │ - │ │ + * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤ + * │ │ │ │ │ │ │ │ + * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘ + */ +// Row 1 +#define DE_CIRC KC_GRV // ^ (dead) +#define DE_1 KC_1 // 1 +#define DE_2 KC_2 // 2 +#define DE_3 KC_3 // 3 +#define DE_4 KC_4 // 4 +#define DE_5 KC_5 // 5 +#define DE_6 KC_6 // 6 +#define DE_7 KC_7 // 7 +#define DE_8 KC_8 // 8 +#define DE_9 KC_9 // 9 +#define DE_0 KC_0 // 0 +#define DE_SS KC_MINS // ß +#define DE_ACUT KC_EQL // ´ (dead) +// Row 2 +#define DE_Q KC_Q // Q +#define DE_W KC_W // W +#define DE_E KC_E // E +#define DE_R KC_R // R +#define DE_T KC_T // T +#define DE_Z KC_Y // Z +#define DE_U KC_U // U +#define DE_I KC_I // I +#define DE_O KC_O // O +#define DE_P KC_P // P +#define DE_UDIA KC_LBRC // Ü +#define DE_PLUS KC_RBRC // + +// Row 3 +#define DE_A KC_A // A +#define DE_S KC_S // S +#define DE_D KC_D // D +#define DE_F KC_F // F +#define DE_G KC_G // G +#define DE_H KC_H // H +#define DE_J KC_J // J +#define DE_K KC_K // K +#define DE_L KC_L // L +#define DE_ODIA KC_SCLN // Ö +#define DE_ADIA KC_QUOT // Ä +#define DE_HASH KC_NUHS // # +// Row 4 +#define DE_LABK KC_NUBS // < +#define DE_Y KC_Z // Y +#define DE_X KC_X // X +#define DE_C KC_C // C +#define DE_V KC_V // V +#define DE_B KC_B // B +#define DE_N KC_N // N +#define DE_M KC_M // M +#define DE_COMM KC_COMM // , +#define DE_DOT KC_DOT // . +#define DE_MINS KC_SLSH // - -#define DE_OSX_DOT KC_DOT -#define DE_OSX_COMM KC_COMM +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐ + * │ ° │ ! │ " │ § │ $ │ % │ & │ / │ ( │ ) │ = │ ? │ ` │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ * │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ │ │ │ │ │ │ │ │ │ │ ' │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤ + * │ │ > │ │ │ │ │ │ │ │ ; │ : │ _ │ │ + * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤ + * │ │ │ │ │ │ │ │ + * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘ + */ +// Row 1 +#define DE_DEG S(DE_CIRC) // ° +#define DE_EXLM S(DE_1) // ! +#define DE_DQUO S(DE_2) // " +#define DE_SECT S(DE_3) // § +#define DE_DLR S(DE_4) // $ +#define DE_PERC S(DE_5) // % +#define DE_AMPR S(DE_6) // & +#define DE_SLSH S(DE_7) // / +#define DE_LPRN S(DE_8) // ( +#define DE_RPRN S(DE_9) // ) +#define DE_EQL S(DE_0) // = +#define DE_QUES S(DE_SS) // ? +#define DE_GRV S(DE_ACUT) // ` (dead) +// Row 2 +#define DE_ASTR S(DE_PLUS) // * +// Row 3 +#define DE_QUOT S(DE_HASH) // ' +// Row 4 +#define DE_RABK S(DE_LABK) // > +#define DE_SCLN S(DE_COMM) // ; +#define DE_COLN S(DE_DOT) // : +#define DE_UNDS S(DE_MINS) // _ -#define DE_OSX_SS KC_MINS -#define DE_OSX_AE KC_QUOT -#define DE_OSX_UE KC_LBRC -#define DE_OSX_OE KC_SCLN +/* Alted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐ + * │ „ │ ¡ │ “ │ ¶ │ ¢ │ [ │ ] │ | │ { │ } │ ≠ │ ¿ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤ + * │ │ « │ ∑ │ € │ ® │ † │ Ω │ ¨ │ ⁄ │ Ø │ π │ • │ ± │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ Å │ ‚ │ ∂ │ ƒ │ © │ ª │ º │ ∆ │ @ │ Œ │ Æ │ ‘ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤ + * │ │ ≤ │ ¥ │ ≈ │ Ç │ √ │ ∫ │ ~ │ µ │ ∞ │ … │ – │ │ + * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤ + * │ │ │ │ │ │ │ │ + * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘ + */ +// Row 1 +#define DE_DLQU A(DE_CIRC) // „ +#define DE_IEXL A(DE_1) // ¡ +#define DE_LDQU A(DE_2) // “ +#define DE_PILC A(DE_3) // ¶ +#define DE_CENT A(DE_4) // ¢ +#define DE_LBRC A(DE_5) // [ +#define DE_RBRC A(DE_6) // ] +#define DE_PIPE A(DE_7) // | +#define DE_LCBR A(DE_8) // { +#define DE_RCBR A(DE_9) // } +#define DE_NEQL A(DE_0) // ≠ +#define DE_IQUE A(DE_SS) // ¿ +// Row 2 +#define DE_LDAQ A(DE_Q) // « +#define DE_NARS A(DE_W) // ∑ +#define DE_EURO A(DE_E) // € +#define DE_REGD A(DE_R) // ® +#define DE_DAGG A(DE_T) // † +#define DE_OMEG A(DE_Z) // Ω +#define DE_DIAE A(DE_U) // ¨ (dead) +#define DE_FRSL A(DE_I) // ⁄ +#define DE_OSTR A(DE_O) // Ø +#define DE_PI A(DE_P) // π +#define DE_BULT A(DE_UDIA) // • +#define DE_PLMN A(DE_PLUS) // ± +// Row 3 +#define DE_ARNG A(DE_A) // Å +#define DE_SLQU A(DE_S) // ‚ +#define DE_PDIF A(DE_D) // ∂ +#define DE_FHK A(DE_F) // ƒ +#define DE_COPY A(DE_G) // © +#define DE_FORD A(DE_H) // ª +#define DE_MORD A(DE_J) // º +#define DE_INCR A(DE_K) // ∆ +#define DE_AT A(DE_L) // @ +#define DE_OE A(DE_ODIA) // Œ +#define DE_AE A(DE_ADIA) // Æ +#define DE_LSQU A(DE_HASH) // ‘ +// Row 4 +#define DE_LTEQ A(DE_LABK) // ≤ +#define DE_YEN A(DE_Y) // ¥ +#define DE_AEQL A(DE_X) // ≈ +#define DE_CCCE A(DE_C) // Ç +#define DE_SQRT A(DE_V) // √ +#define DE_INTG A(DE_B) // ∫ +#define DE_TILD A(DE_N) // ~ (dead) +#define DE_MICR A(DE_M) // µ +#define DE_INFN A(DE_COMM) // ∞ +#define DE_ELLP A(DE_DOT) // … +#define DE_NDSH A(DE_MINS) // – -#define DE_OSX_CIRC KC_NUBS // accent circumflex ^ and ring ° -#define DE_OSX_ACUT KC_EQL // accent acute ´ and grave ` -#define DE_OSX_PLUS KC_RBRC // + and * and ~ -#define DE_OSX_HASH KC_BSLS // # and ' -#define DE_OSX_LESS KC_GRV // < and > and | -#define DE_OSX_MINS KC_SLSH // - and _ +/* Shift+Alted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐ + * │ │ ¬ │ ” │ │ £ │ fi │ │ \ │ ˜ │ · │ ¯ │ ˙ │ ˚ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤ + * │ │ » │ │ ‰ │ ¸ │ ˝ │ ˇ │ Á │ Û │ │ ∏ │ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ │ Í │ ™ │ Ï │ Ì │ Ó │ ı │ │ fl │ │ │ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┤ + * │ │ ≥ │ ‡ │ Ù │ │ ◊ │ ‹ │ › │ ˘ │ ˛ │ ÷ │ — │ │ + * ├────┴┬──┴─┬─┴───┼───┴───┴───┴───┴───┴───┼───┴─┬─┴──┬─────┤ + * │ │ │ │ │ │ │ │ + * └─────┴────┴─────┴───────────────────────┴─────┴────┴─────┘ + */ +// Row 1 +#define DE_NOT S(A(DE_1)) // ¬ +#define DE_RDQU S(A(DE_2)) // ” +#define DE_PND S(A(DE_4)) // £ +#define DE_FI S(A(DE_5)) // fi +#define DE_BSLS S(A(DE_7)) // (backslash) +#define DE_STIL S(A(DE_8)) // ˜ +#define DE_MDDT S(A(DE_9)) // · +#define DE_MACR S(A(DE_0)) // ¯ +#define DE_DOTA S(A(DE_SS)) // ˙ +#define DE_RNGA S(A(DE_ACUT)) // ˚ +// Row 2 +#define DE_RDAQ S(A(DE_Q)) // » +#define DE_PERM S(A(DE_E)) // ‰ +#define DE_CEDL S(A(DE_R)) // ¸ +#define DE_DACU S(A(DE_T)) // ˝ +#define DE_CARN S(A(DE_Z)) // ˇ +#define DE_AACU S(A(DE_U)) // Á +#define DE_UCIR S(A(DE_I)) // Û +#define DE_NARP S(A(DE_P)) // ∏ +#define DE_APPL S(A(DE_PLUS)) // (Apple logo) +// Row 3 +#define DE_IACU S(A(DE_S)) // Í +#define DE_TM S(A(DE_D)) // ™ +#define DE_IDIA S(A(DE_F)) // Ï +#define DE_IGRV S(A(DE_G)) // Ì +#define DE_OACU S(A(DE_H)) // Ó +#define DE_DLSI S(A(DE_J)) // ı +#define DE_FL S(A(DE_L)) // fl +// Row 4 +#define DE_GTEQ S(A(DE_LABK)) // ≥ +#define DE_DDAG S(A(DE_Y)) // ‡ +#define DE_UGRV S(A(DE_X)) // Ù +#define DE_LOZN S(A(DE_V)) // ◊ +#define DE_LSAQ S(A(DE_B)) // ‹ +#define DE_RSAQ S(A(DE_N)) // › +#define DE_BREV S(A(DE_M)) // ˘ +#define DE_OGON S(A(DE_COMM)) // ˛ +#define DE_DIV S(A(DE_DOT)) // ÷ +#define DE_MDSH S(A(DE_MINS)) // — -// shifted characters -#define DE_OSX_RING LSFT(DE_OSX_CIRC) // ° -#define DE_OSX_EXLM LSFT(KC_1) // ! -#define DE_OSX_DQOT LSFT(KC_2) // " -#define DE_OSX_PARA LSFT(KC_3) // § -#define DE_OSX_DLR LSFT(KC_4) // $ -#define DE_OSX_PERC LSFT(KC_5) // % -#define DE_OSX_AMPR LSFT(KC_6) // & -#define DE_OSX_SLSH LSFT(KC_7) // / -#define DE_OSX_LPRN LSFT(KC_8) // ( -#define DE_OSX_RPRN LSFT(KC_9) // ) -#define DE_OSX_EQL LSFT(KC_0) // = -#define DE_OSX_QST LSFT(DE_OSX_SS) // ? -#define DE_OSX_GRV LSFT(DE_OSX_ACUT) // ` -#define DE_OSX_ASTR LSFT(DE_OSX_PLUS) // * -#define DE_OSX_QUOT LSFT(DE_OSX_HASH) // ' -#define DE_OSX_MORE LSFT(DE_OSX_LESS) // > -#define DE_OSX_COLN LSFT(KC_DOT) // : -#define DE_OSX_SCLN LSFT(KC_COMM) // ; -#define DE_OSX_UNDS LSFT(DE_OSX_MINS) // _ +// DEPRECATED +#define DE_OSX_CIRC DE_CIRC +#define DE_OSX_1 DE_1 +#define DE_OSX_2 DE_2 +#define DE_OSX_3 DE_3 +#define DE_OSX_4 DE_4 +#define DE_OSX_5 DE_5 +#define DE_OSX_6 DE_6 +#define DE_OSX_7 DE_7 +#define DE_OSX_8 DE_8 +#define DE_OSX_9 DE_9 +#define DE_OSX_0 DE_0 +#define DE_OSX_SS DE_SS +#define DE_OSX_ACUT DE_ACUT +#define DE_OSX_Q DE_Q +#define DE_OSX_W DE_W +#define DE_OSX_E DE_E +#define DE_OSX_R DE_R +#define DE_OSX_T DE_T +#define DE_OSX_Z DE_Z +#define DE_OSX_U DE_U +#define DE_OSX_I DE_I +#define DE_OSX_O DE_O +#define DE_OSX_P DE_P +#define DE_OSX_UE DE_UDIA +#define DE_OSX_PLUS DE_PLUS +#define DE_OSX_A DE_A +#define DE_OSX_S DE_S +#define DE_OSX_D DE_D +#define DE_OSX_F DE_F +#define DE_OSX_G DE_G +#define DE_OSX_H DE_H +#define DE_OSX_J DE_J +#define DE_OSX_K DE_K +#define DE_OSX_L DE_L +#define DE_OSX_OE DE_ODIA +#define DE_OSX_AE DE_ADIA +#define DE_OSX_HASH DE_HASH +#define DE_OSX_LESS DE_LABK +#define DE_OSX_Y DE_Y +#define DE_OSX_X DE_X +#define DE_OSX_C DE_C +#define DE_OSX_V DE_V +#define DE_OSX_B DE_B +#define DE_OSX_N DE_N +#define DE_OSX_M DE_M +#define DE_OSX_COMM DE_COMM +#define DE_OSX_DOT DE_DOT +#define DE_OSX_MINS DE_MINS -// Alt-ed characters -//#define DE_OSX_SQ2 LALT(KC_2) // ² -//#define DE_OSX_SQ3 LALT(KC_3) // ³ -#define DE_OSX_LCBR LALT(KC_8) // { -#define DE_OSX_LBRC LALT(KC_5) // [ -#define DE_OSX_RBRC LALT(KC_6) // ] -#define DE_OSX_RCBR LALT(KC_9) // } -#define DE_OSX_BSLS LALT(LSFT(KC_7)) // backslash -#define DE_OSX_AT LALT(DE_OSX_L) // @ -#define DE_OSX_EURO LALT(KC_E) // € -#define DE_OSX_TILD LALT(DE_OSX_N) // ~ -#define DE_OSX_PIPE LALT(DE_OSX_7) // | +#define DE_OSX_RING DE_DEG +#define DE_OSX_EXLM DE_EXLM +#define DE_OSX_DQOT DE_DQUO +#define DE_OSX_PARA DE_SECT +#define DE_OSX_DLR DE_DLR +#define DE_OSX_PERC DE_PERC +#define DE_OSX_AMPR DE_AMPR +#define DE_OSX_SLSH DE_SLSH +#define DE_OSX_LPRN DE_LPRN +#define DE_OSX_RPRN DE_RPRN +#define DE_OSX_EQL DE_EQL +#define DE_OSX_QST DE_QUES +#define DE_OSX_GRV DE_GRV +#define DE_OSX_ASTR DE_ASTR +#define DE_OSX_QUOT DE_QUOT +#define DE_OSX_MORE DE_RABK +#define DE_OSX_COLN DE_COLN +#define DE_OSX_SCLN DE_SCLN +#define DE_OSX_UNDS DE_UNDS -#endif +#define DE_OSX_LBRC DE_LBRC +#define DE_OSX_RBRC DE_RBRC +#define DE_OSX_PIPE DE_PIPE +#define DE_OSX_LCBR DE_LCBR +#define DE_OSX_RCBR DE_RCBR +#define DE_OSX_AT DE_AT +#define DE_OSX_EURO DE_EURO +#define DE_OSX_TILD DE_TILD +#define DE_OSX_BSLS DE_BSLS |