geeboard

through the keyboard our ghosts rule the machine_
git clone git://source.orangerot.dev:/geeboard.git
Log | Files | Refs | Submodules | LICENSE

keymap.c (9857B)


      1 #include QMK_KEYBOARD_H
      2 #include "keymap_german.h"
      3 
      4 // for intellisense, has to be commented for building
      5 /*
      6 #include "..\..\..\..\quantum\keymap_extras\keymap_german.h"
      7 #include "..\..\..\..\tmk_core\common\keycode.h"
      8 */
      9 
     10 /*
     11 Bone2Planck for the planck keyboard from the qmk_firmware at commit 7ea022b as of the 
     12 [[Keymap Removal] Planck and related keymaps.](https://github.com/qmk/qmk_firmware/pull/22683)
     13 */
     14 
     15 
     16 /* This Layout tries to emulate the Bone2 Variant of Neo2, and is intended to be used with a German QWERTZ Softwarelayout.
     17 It has "üäöß" as it is optimized for a mix of German & English.
     18 My favourite features are the placement of the special characters often used for programming right on the home row
     19 and the number & navigation block combo, so you never have to move your hands from their home position.
     20 
     21 Bone2 wiki page: http://wiki.neo-layout.org/wiki/Bone
     22 */
     23 
     24 void pointing_device_init_user(void) {
     25   set_auto_mouse_layer(6);     // only required if AUTO_MOUSE_DEFAULT_LAYER is not set to index of <mouse_layer>
     26   set_auto_mouse_enable(true); // always required before the auto mouse feature will work
     27 }
     28 
     29 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
     30 
     31 /* Bone2 (adapted)
     32 * ,-----------------------------------------------------------------------------------.
     33 * | ß    |   J  |   D  |   U  |   A  |   X  |   P  |   H  |   L  |   M  |   W  |  Q   |
     34 * |------+------+------+------+------+-------------+------+------+------+------+------|
     35 * |  M1  |   C  |   T  |   I  |   E  |   O  |   B  |   N  |   R  |   S  |   G  |M1/Ent|  //hold for M1, tap for Enter
     36 * |------+------+------+------+------+------|------+------+------+------+------+------|
     37 * | Shift|   F  |   V  |   Ü  |   Ä  |   Ö  |   Y  |   Z  |   ,  |   .  |   K  |Shift |
     38 * |------+------+------+------+------+------+------+------+------+------+------+------|
     39 * | Ctrl | GUI  | Alt  |  M4  |  M2  |    Space    |  M2  |  M4  | Alt  | Esc  | Ctrl |
     40 * `-----------------------------------------------------------------------------------'
     41 */
     42 // columnt -t -o' '
     43 [0] = LAYOUT_ortho_4x12(
     44     DE_SS,               DE_J,    DE_D,    DE_U,    DE_A,    DE_X,    DE_P,    DE_H,   DE_L,    DE_M,    DE_W,   DE_Q         ,
     45     LT(1,KC_TAB),        DE_C,    DE_T,    DE_I,    DE_E,    DE_O,    DE_B,    DE_N,   DE_R,    DE_S,    DE_G,   LT(1,KC_ENT) ,
     46     MT(MOD_LSFT,KC_ESC), DE_F,    DE_V,    DE_UDIA, DE_ADIA, DE_ODIA, DE_Y,    DE_Z,   DE_COMM, DE_DOT,  DE_K,   KC_LSFT      ,
     47     KC_LCTL,             KC_LALT, KC_LGUI, MO(2),   KC_SPC,  XXXXXXX, XXXXXXX, KC_ENT, MO(4),   KC_RALT, KC_ESC, KC_RCTL
     48 ),
     49 
     50 /* M1 Special Characters
     51 *  very ergonomic placement for coding
     52 * ,-----------------------------------------------------------------------------------.
     53 * | °    |   @  |   _  |   [  |   ]  |   ^  |   !  |   <  |   >  |   =  |   &  |  €   |
     54 * |------+------+------+------+------+-------------+------+------+------+------+------|
     55 * |  M1  |   \  |   /  |   {  |   }  |   *  |   ?  |   (  |   )  |   -  |   :  |  @   |  //hold for M1, tap for Enter
     56 * |------+------+------+------+------+------|------+------+------+------+------+------|
     57 * | Shift|   #  |   $  |   |  |   ~  |   `  |   +  |   %  |   "  |   '  |   ;  |Shift |
     58 * |------+------+------+------+------+------+------+------+------+------+------+------|
     59 * | Ctrl | GUI  | Alt  |  M4  |  M2  |    Space    |  M2  |  M4  | Alt  | Esc  | Ctrl |
     60 * `-----------------------------------------------------------------------------------'
     61 */
     62 [1] = LAYOUT_ortho_4x12(
     63      DE_DEG,  DE_AT,   DE_UNDS, DE_LBRC, DE_RBRC, DE_CIRC, DE_EXLM, DE_LABK, DE_RABK, DE_EQL,  DE_AMPR, DE_EURO ,
     64      _______, DE_BSLS, DE_SLSH, DE_LCBR, DE_RCBR, DE_ASTR, DE_QUES, DE_LPRN, DE_RPRN, DE_MINS, DE_COLN, DE_AT   ,
     65      _______, DE_HASH, DE_DLR,  DE_PIPE, DE_TILD, DE_GRV, DE_PLUS, DE_PERC, DE_DQUO, DE_QUOT, DE_SCLN, _______ ,
     66      _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
     67 ),
     68 
     69 /* M2 Navigation & Number Blocks
     70 *  very easy to get used to & intuituve placement
     71 * ,-----------------------------------------------------------------------------------.
     72 * |      | PgUp | Bksp |  Up  |  DEL | PgDn |      |   7  |   8  |   9  |      | Ins  |
     73 * |------+------+------+------+------+-------------+------+------+------+------+------|
     74 * |  Tab | Home |  Lft | Down | Right| End  |      |   4  |   5  |   6  |   .  | Enter|
     75 * |------+------+------+------+------+------|------+------+------+------+------+------|
     76 * | Shift|      |  Tab |      | Enter|      |   0  |   1  |   2  |   3  |   ,  |Shift |
     77 * |------+------+------+------+------+------+------+------+------+------+------+------|
     78 * | Ctrl | GUI  | Alt  |  M3  |  M2  |    Space    |  M2  |  M3  | Alt  | Esc  | Ctrl |
     79 * `-----------------------------------------------------------------------------------'
     80 */
     81 [2] = LAYOUT_ortho_4x12(
     82      XXXXXXX, KC_PGUP, KC_BSPC, KC_UP,   KC_DEL,  KC_PGDN, XXXXXXX, DE_7,    DE_8,  DE_9,    XXXXXXX, KC_INS  ,
     83      KC_TAB,  KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,  XXXXXXX, DE_4,    DE_5,  DE_6,    DE_DOT,  KC_ENT  ,
     84      _______, XXXXXXX, KC_TAB,  XXXXXXX, KC_ENT,  XXXXXXX, DE_0,    DE_1,    DE_2,  DE_3,    DE_COMM, _______ ,
     85      _______, _______, _______, MO(3),   _______, _______, _______, _______, MO(3), _______, _______, _______
     86 ),
     87 
     88 /* M3 Switched Navigation & Number Blocks for one handed use
     89 *  accessed by sliding from M2 to M3 with thumb
     90 * ,-----------------------------------------------------------------------------------.
     91 * |  Ins |      |  7   |  8   |  9   |      | PgUp | Bksp |  Up  |  DEL | PgDn |      |
     92 * |------+------+------+------+------+-------------+------+------+------+------+------|
     93 * |  Tab |      |  4   |  5   |  6   |   .  | Home | Left | Down | Right| End  | Enter|
     94 * |------+------+------+------+------+------|------+------+------+------+------+------|
     95 * | Shift|  0   |  1   |  2   |  3   |   ,  |      | Tab  |      | Enter|      |Shift |
     96 * |------+------+------+------+------+------+------+------+------+------+------+------|
     97 * | Ctrl | GUI  | Alt  |  M3  |      |    Space    |      |  M3  | Alt  | Esc  | Ctrl |
     98 * `-----------------------------------------------------------------------------------'
     99 */
    100 
    101 [3] = LAYOUT_ortho_4x12(
    102      KC_INS,  XXXXXXX, DE_7,    DE_8,    DE_9,    XXXXXXX, KC_PGUP, KC_BSPC, KC_UP,   KC_DEL,  KC_PGDN, XXXXXXX ,
    103      _______, XXXXXXX, DE_4,    DE_5,    DE_6,    DE_DOT,  KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,  _______ ,
    104      _______, DE_0,    DE_1,    DE_2,    DE_3,    DE_COMM, XXXXXXX, KC_TAB,  XXXXXXX, KC_ENT,  XXXXXXX, _______ ,
    105      _______, _______, _______, _______, XXXXXXX, _______, _______, XXXXXXX, _______, _______, _______, _______
    106 ),
    107 
    108 
    109 /* M4 Function & Media Keys
    110 * ,-----------------------------------------------------------------------------------.
    111 * |      |      | Print|Scroll|Pause |      |      |  F7  |  F8  |  F9  |  F12 |      |
    112 * |------+------+------+------+------+-------------+------+------+------+------+------|
    113 * | Tab  |      | Mute | Vol- | Vol+ |      |   ³  |  F4  |  F5  |  F6  |  F11 | Enter|
    114 * |------+------+------+------+------+------|------+------+------+------+------+------|
    115 * | Shift|      | Prev | Play | Next |      |   ²  |  F1  |  F2  |  F3  |  F10 |Shift |
    116 * |------+------+------+------+------+------+------+------+------+------+------+------|
    117 * | Ctrl | GUI  | Alt  |  M4  |  M5  |    Space    |  M5  |  M4  | Alt  | Esc  | Ctrl |
    118 * `-----------------------------------------------------------------------------------'
    119 */
    120 [4] = LAYOUT_ortho_4x12(
    121      XXXXXXX, XXXXXXX, KC_PSCR, KC_SCRL, KC_PAUS, XXXXXXX, XXXXXXX, KC_F7, KC_F8,   KC_F9,   KC_F12,  XXXXXXX ,
    122      KC_TAB,  XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, DE_SUP3, KC_F4, KC_F5,   KC_F6,   KC_F11,  KC_ENT  ,
    123      _______, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, DE_SUP2, KC_F1, KC_F2,   KC_F3,   KC_F10,  _______ ,
    124      _______, _______, _______, _______, MO(5),   _______, _______, MO(5), _______, _______, _______, _______
    125 ),
    126 
    127 
    128 /* M5 Switched Function & Media Keys|
    129 *  accessed by sliding from M4 to M5 with thumb
    130 * ,-----------------------------------------------------------------------------------.
    131 * |      |      |  F7  |  F8  |  F9  |  F12 |      | Print|Scroll| Pause|      |      |
    132 * |------+------+------+------+------+-------------+------+------+------+------+------|
    133 * | Tab  |  ³   |  F4  |  F5  |  F6  |  F11 |      | Mute | Vol- | Vol+ |      | Enter|
    134 * |------+------+------+------+------+------|------+------+------+------+------+------|
    135 * | Shift|  ²   |  F1  |  F2  |  F3  |  F10 |      | Prev | Play | Next |      |Shift |
    136 * |------+------+------+------+------+------+------+------+------+------+------+------|
    137 * | Ctrl | GUI  | Alt  |      |  M5  |    Space    |  M5  |      | Alt  | Esc  | Ctrl |
    138 * `-----------------------------------------------------------------------------------'
    139 */
    140 [5] = LAYOUT_ortho_4x12(
    141      XXXXXXX, XXXXXXX, KC_F7,   KC_F8,   KC_F9,   KC_F12,  XXXXXXX, KC_PSCR, KC_SCRL, KC_PAUS, XXXXXXX, XXXXXXX ,
    142      _______, DE_SUP3, KC_F4,   KC_F5,   KC_F6,   KC_F11,  XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, _______ ,
    143      _______, DE_SUP2, KC_F1,   KC_F2,   KC_F3,   KC_F10,  XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, _______ ,
    144      _______, _______, _______, XXXXXXX, _______, _______, _______, _______, XXXXXXX, _______, _______, _______
    145 ),
    146 [6] = LAYOUT_ortho_4x12(
    147      _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
    148      _______, _______, _______, _______, _______, _______, _______, MS_BTN1, MS_BTN2, MS_BTN3, _______, _______,
    149      _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
    150      _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
    151 ),
    152 };