From 8a7daf34a26fddcf1ddc5331cce7e160beea76c3 Mon Sep 17 00:00:00 2001 From: johannes Date: Fri, 3 Feb 2017 10:47:37 +0100 Subject: [PATCH 1/3] initial keymap --- keyboards/planck/config.h | 5 +- keyboards/planck/keymaps/johannes/Makefile | 25 +++++ keyboards/planck/keymaps/johannes/keymap.c | 100 ++++++++++++++++++++ keyboards/planck/keymaps/johannes/readme.md | 2 + 4 files changed, 129 insertions(+), 3 deletions(-) create mode 100644 keyboards/planck/keymaps/johannes/Makefile create mode 100644 keyboards/planck/keymaps/johannes/keymap.c create mode 100644 keyboards/planck/keymaps/johannes/readme.md diff --git a/keyboards/planck/config.h b/keyboards/planck/config.h index 5cf96bb88..fe59d8b50 100644 --- a/keyboards/planck/config.h +++ b/keyboards/planck/config.h @@ -32,10 +32,9 @@ along with this program. If not, see . #define MATRIX_COLS 12 /* Planck PCB default pin-out */ -#define MATRIX_ROW_PINS { D0, D5, B5, B6 } -#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 } +#define MATRIX_ROW_PINS { F4, F5, F6, F7 } +#define MATRIX_COL_PINS { B1, B3, B2, B6, B5, B4, D2, D7, C6, D4, D0, D1 } #define UNUSED_PINS - #define AUDIO_VOICES #define BACKLIGHT_PIN B7 diff --git a/keyboards/planck/keymaps/johannes/Makefile b/keyboards/planck/keymaps/johannes/Makefile new file mode 100644 index 000000000..0c0632da0 --- /dev/null +++ b/keyboards/planck/keymaps/johannes/Makefile @@ -0,0 +1,25 @@ + + +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/johannes/keymap.c b/keyboards/planck/keymaps/johannes/keymap.c new file mode 100644 index 000000000..afbad2440 --- /dev/null +++ b/keyboards/planck/keymaps/johannes/keymap.c @@ -0,0 +1,100 @@ +#include "planck.h" + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | super|shift | Space|Raise | lower| alt | | |fn | + * `-----------------------------------------------------------------------------------' + */ +[0] = { + {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {KC_LCTRL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {XXXXXXX, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, XXXXXXX, XXXXXXX, M(3)} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | { | } | + | | | Å | Ä | Ö | _ | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | \ | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Reset | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[1] = { + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, + {_______, _______, KC_LCBR, KC_RCBR, KC_PLUS, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_UNDS, KC_PIPE}, + {_______, _______, _______, _______, _______, _______, _______,_______, _______,_______, KC_BSLS, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | [ | ] | = | | left| down| up | right| - | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[2] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, + {_______, _______, KC_LBRC, KC_RBRC, KC_EQL, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_MINS, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + +[3] = { + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case 1: + if (record->event.pressed) { + layer_on(1); + } else { + layer_off(1); + } + break; + case 2: + if (record->event.pressed) { + layer_on(2); + } else { + layer_off(2); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/planck/keymaps/johannes/readme.md b/keyboards/planck/keymaps/johannes/readme.md new file mode 100644 index 000000000..3a4824b5b --- /dev/null +++ b/keyboards/planck/keymaps/johannes/readme.md @@ -0,0 +1,2 @@ +# A more basic Planck Layout for copying + From f936a3d5c23c1562bdcd237fcba6bd4e5223f0b8 Mon Sep 17 00:00:00 2001 From: johannes Date: Fri, 3 Feb 2017 14:10:19 +0100 Subject: [PATCH 2/3] stuff --- keyboards/planck/keymaps/johannes/keymap.c | 38 ++++++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/keyboards/planck/keymaps/johannes/keymap.c b/keyboards/planck/keymaps/johannes/keymap.c index afbad2440..d6c0ca81f 100644 --- a/keyboards/planck/keymaps/johannes/keymap.c +++ b/keyboards/planck/keymaps/johannes/keymap.c @@ -19,14 +19,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | super|shift | Space|Raise | lower| alt | | |fn | + * | | | | super|shift | Space|Raise | lower| alt | altgr| |fn | * `-----------------------------------------------------------------------------------' */ [0] = { {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, {KC_LCTRL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, - {XXXXXXX, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, XXXXXXX, XXXXXXX, M(3)} + {XXXXXXX, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, KC_RALT, XXXXXXX, M(3)} }, /* Lower @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = { {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, - {_______, _______, KC_LCBR, KC_RCBR, KC_PLUS, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_UNDS, KC_PIPE}, + {_______, _______, KC_LCBR, KC_RCBR, KC_PLUS, _______, _______, M(4), M(5), M(6), KC_UNDS, _______}, {_______, _______, _______, _______, _______, _______, _______,_______, _______,_______, KC_BSLS, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, @@ -65,6 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, +// Fn-layer [3] = { {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, @@ -94,6 +95,37 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) } else { layer_off(2); } + break; + case 3: + if (record->event.pressed) { + layer_on(3); + } else { + layer_off(3); + } + break; + case 4: // å + if (record->event.pressed) { + register_code(KC_RALT); + register_code(KC_W); + } else { + unregister_code(KC_RALT); + } + break; + case 5: // ä + if (record->event.pressed) { + register_code(KC_RALT); + register_code(KC_Q); + } else { + unregister_code(KC_RALT); + } + break; + case 6: // ö + if (record->event.pressed) { + register_code(KC_RALT); + register_code(KC_P); + } else { + unregister_code(KC_RALT); + } break; } return MACRO_NONE; From 835adb7848f4a2d6feb848bdfab1e9990f5f430a Mon Sep 17 00:00:00 2001 From: Johannes Larsson Date: Wed, 12 Apr 2017 23:11:51 +0200 Subject: [PATCH 3/3] colemak layout maybe --- keyboards/planck/keymaps/johannes/keymap.c | 48 +++++++++++++++------- 1 file changed, 33 insertions(+), 15 deletions(-) diff --git a/keyboards/planck/keymaps/johannes/keymap.c b/keyboards/planck/keymaps/johannes/keymap.c index d6c0ca81f..51c8f7a09 100644 --- a/keyboards/planck/keymaps/johannes/keymap.c +++ b/keyboards/planck/keymaps/johannes/keymap.c @@ -11,22 +11,40 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[0] = { + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, + {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, + {KC_LCTRL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {TG(1), XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, KC_RALT, XXXXXXX, M(3)} +}, + /* Qwerty * ,-----------------------------------------------------------------------------------. * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| * | Esc | A | S | D | F | G | H | J | K | L | ; | ' | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * | Ctrl | Z | X | C | V | B | N | M | , | . | / |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | super|shift | Space|Raise | lower| alt | altgr| |fn | * `-----------------------------------------------------------------------------------' */ -[0] = { +[1] = { {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, {KC_LCTRL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, - {XXXXXXX, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, KC_RALT, XXXXXXX, M(3)} + {_______, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSHIFT, KC_SPC, M(2), M(1), KC_LALT, KC_RALT, XXXXXXX, M(3)} }, /* Lower @@ -40,9 +58,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Reset | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ -[1] = { +[2] = { {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, - {_______, _______, KC_LCBR, KC_RCBR, KC_PLUS, _______, _______, M(4), M(5), M(6), KC_UNDS, _______}, + {_______, _______, KC_LCBR, KC_RCBR, KC_PLUS, _______, _______, RALT(KC_P), RALT(KC_Q), RALT(KC_P), KC_UNDS, _______}, {_______, _______, _______, _______, _______, _______, _______,_______, _______,_______, KC_BSLS, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, @@ -58,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ -[2] = { +[3] = { {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, {_______, _______, KC_LBRC, KC_RBRC, KC_EQL, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_MINS, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PIPE, _______}, @@ -66,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }, // Fn-layer -[3] = { +[4] = { {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, @@ -83,25 +101,25 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { switch(id) { case 1: - if (record->event.pressed) { - layer_on(1); - } else { - layer_off(1); - } - break; - case 2: if (record->event.pressed) { layer_on(2); } else { layer_off(2); } break; - case 3: + case 2: if (record->event.pressed) { layer_on(3); } else { layer_off(3); } + break; + case 3: + if (record->event.pressed) { + layer_on(4); + } else { + layer_off(4); + } break; case 4: // å if (record->event.pressed) {