From aeb027ed608870446a0aa4abddae079b7241a088 Mon Sep 17 00:00:00 2001 From: zozo Date: Mon, 11 Apr 2016 23:27:27 +0200 Subject: [PATCH] First version of a bepo (french layout based on Dvorak rules) keymap. --- keyboard/ergodox_ez/keymaps/bepo/bepo.hex | Bin 0 -> 50655 bytes keyboard/ergodox_ez/keymaps/bepo/keymap.c | 185 ++++++++++++++++++++++ 2 files changed, 185 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/bepo/bepo.hex create mode 100644 keyboard/ergodox_ez/keymaps/bepo/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/bepo/bepo.hex b/keyboard/ergodox_ez/keymaps/bepo/bepo.hex new file mode 100644 index 0000000000000000000000000000000000000000..1af3f014094c1eff09e149ac4d589b00b2ebfd4e GIT binary patch literal 50655 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 | ( | ) | | |ScroLo| @ | + | - | / | * | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | % | B |E_ACUT| P | O |E_GRAV| Esc | |CapsLo| ^ | V | D | L | J | Z | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | W | A | U | I | E | , |------| |------| C | T | S | R | N | M | + * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------| + * | E_CIRC |A_GRAV| Y | X | . | K | | | | ' | Q | G | H | F | C_CEDIL| + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | L_Fx | L_Num| L_Nav| LCtrl| |Delete|LSuper| |RSuper|Insert| | AltGr| | |PrntSc| Pause| + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | LCtrl| | RCtrl| | | + * | Space|Backsp|------| |------|RShift|Enter | + * | |ace | LAlt| | AltGr| | | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( +// Left hand +BP_DOLLAR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, KC_NO, +BP_PERCENT, BP_B, BP_E_ACUTE, BP_P, BP_O, BP_E_GRAVE, KC_ESC, +BP_W, BP_A, BP_U, BP_I, BP_E, BP_COMMA, +BP_ECRC, BP_A_GRAVE, BP_Y, BP_X, BP_DOT, BP_K, KC_TAB, +KC_NO, MO(FNX), MO(NUM), MO(NAV), KC_LCTL, + KC_DEL, KC_LGUI, + KC_LCTL, + KC_SPC, KC_BSPC, KC_LALT, +// Right hand + KC_SLCK, BP_AT, BP_PLUS, BP_MINUS, BP_SLASH, BP_ASTR, BP_EQUAL, + KC_CAPSLOCK, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z, + BP_C, BP_T, BP_S, BP_R, BP_N, BP_M, + KC_NUMLOCK, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED, + BP_ALGR, KC_NO, KC_NO, KC_PSCREEN, KC_PAUSE, +KC_RGUI, KC_INS, +KC_RCTL, +BP_ALGR, KC_RSHIFT, KC_ENTER), +/* Keymap 1: function layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | | | | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[FNX] = KEYMAP( +// Left hand +KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, +// Right hand + KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_NO, +KC_NO, KC_NO, KC_NO), +/* Keymap 2: numeric layer, sends keypad codes + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | + | - | / | * | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | 0 | 00 | . | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | Enter| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUM] = KEYMAP( +// Left hand +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, +// Right hand + KC_NO, KC_NO, KC_KP_PLUS, KC_KP_MINUS, KC_KP_SLASH, KC_KP_ASTERISK, KC_NO, + KC_NO, KC_NO, KC_KP_7, KC_KP_8, KC_KP_9, KC_NO, KC_NO, + KC_NO, KC_KP_4, KC_KP_5, KC_KP_6, KC_NO, KC_NO, + KC_NO, KC_NO, KC_KP_1, KC_KP_2, KC_KP_3, KC_NO, KC_NO, + KC_KP_0, M(KP_00), KC_KP_COMMA, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_NO, +KC_NO, KC_NO, KC_KP_ENTER), +/* Keymap 3: navigation layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | Home | Up | End | PgUp | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | Left | Down | Right| PgDn | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | | | | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NAV] = KEYMAP( +// Left hand +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, +// Right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO, + KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDOWN, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_NO, +KC_NO, KC_NO, KC_NO) +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case KP_00: + if (record->event.pressed) { + return MACRO( D(KP_0), U(KP_0), D(KP_0), U(KP_0), END ); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { +};