Created
June 22, 2017 13:06
-
-
Save MatsLanGoH/928a0f406909c2cd2e45eb9e805a97b5 to your computer and use it in GitHub Desktop.
Create a custom folder in qmk_firmware/keyboards/planck/keymaps/YOUR_KEYMAP or modify the files in the "brandon" folder
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef CONFIG_USER_H | |
#define CONFIG_USER_H | |
#include "../../config.h" | |
/* ws2812 RGB LED */ | |
#define RGB_DI_PIN B2 // Don't modify this | |
#define RGBLIGHT_TIMER | |
#define RGBLED_NUM 10 // Number of LEDs | |
#define RGBLIGHT_HUE_STEP 10 // You could modify these | |
#define RGBLIGHT_SAT_STEP 17 // if you would like finer/coarser | |
#define RGBLIGHT_VAL_STEP 17 // control. | |
#endif |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This is the canonical layout file for the Quantum project. If you want to add another keyboard, | |
// this is the style you want to emulate. | |
#include "planck.h" | |
#include "action_layer.h" | |
#ifdef BACKLIGHT_ENABLE | |
#include "backlight.h" | |
#endif | |
#include "eeconfig.h" | |
extern keymap_config_t keymap_config; | |
// 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. | |
#define _QWERTY 0 | |
#define _WORKMAN 2 | |
#define _LOWER 3 | |
#define _RAISE 4 | |
#define _ADJUST 16 | |
enum planck_keycodes { | |
QWERTY = SAFE_RANGE, | |
WORKMAN, | |
ESCTRL = MT(KC_RCTL, KC_ESC), | |
LOWER = LT(_LOWER, KC_BSPC), | |
RAISE = LT(_RAISE, KC_ENT), | |
ADJUST, | |
BACKLIT | |
}; | |
// 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 | | |
* |------+------+------+------+------+------+------+------+------+------+------+------| | |
* | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | | |
* `-----------------------------------------------------------------------------------' | |
*/ | |
[_QWERTY] = { | |
{KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | |
{ESCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, | |
{KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT }, | |
{ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | |
}, | |
/* Workman | |
* ,-----------------------------------------------------------------------------------. | |
* | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp | | |
* |------+------+------+------+------+-------------+------+------+------+------+------| | |
* | Esc | A | S | H | T | G | Y | N | E | O | I | " | | |
* |------+------+------+------+------+------|------+------+------+------+------+------| | |
* | Shift| Z | X | M | C | V | K | L | , | . | / |Enter | | |
* |------+------+------+------+------+------+------+------+------+------+------+------| | |
* |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | | |
* `-----------------------------------------------------------------------------------' | |
*/ | |
[_WORKMAN] = { | |
{KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSPC}, | |
{ESCTRL, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT}, | |
{KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT}, | |
{ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | |
}, | |
/* Lower | |
* ,-----------------------------------------------------------------------------------. | |
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | | |
* |------+------+------+------+------+-------------+------+------+------+------+------| | |
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | | |
* |------+------+------+------+------+------|------+------+------+------+------+------| | |
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | | |
* |------+------+------+------+------+------+------+------+------+------+------+------| | |
* | | | | | | | | Next | Vol- | Vol+ | Play | | |
* `-----------------------------------------------------------------------------------' | |
*/ | |
[_LOWER] = { | |
{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_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, | |
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______}, | |
{_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} | |
}, | |
/* Raise | |
* ,-----------------------------------------------------------------------------------. | |
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | | |
* |------+------+------+------+------+-------------+------+------+------+------+------| | |
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | | |
* |------+------+------+------+------+------|------+------+------+------+------+------| | |
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter | | |
* |------+------+------+------+------+------+------+------+------+------+------+------| | |
* | | | | | | | | Next | Vol- | Vol+ | Play | | |
* `-----------------------------------------------------------------------------------' | |
*/ | |
[_RAISE] = { | |
{KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, | |
{KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, | |
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______}, | |
{_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} | |
}, | |
/* Adjust (Lower + Raise) | |
* ,-----------------------------------------------------------------------------------. | |
* | | Reset| | | | | | | | | | Del | | |
* |------+------+------+------+------+-------------+------+------+------+------+------| | |
* | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| | | |
* |------+------+------+------+------+------|------+------+------+------+------+------| | |
* | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------| | |
* | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------' | |
*/ | |
[_ADJUST] = { | |
{_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, | |
{_______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, WORKMAN, _______, _______, _______}, | |
{_______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______}, | |
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} | |
} | |
}; | |
void persistant_default_layer_set(uint16_t default_layer) { | |
eeconfig_update_default_layer(default_layer); | |
default_layer_set(default_layer); | |
} | |
bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |
switch (keycode) { | |
case QWERTY: | |
if (record->event.pressed) { | |
#ifdef AUDIO_ENABLE | |
PLAY_NOTE_ARRAY(tone_qwerty, false, 0); | |
#endif | |
persistant_default_layer_set(1UL<<_QWERTY); | |
} | |
return false; | |
break; | |
case LOWER: | |
if (record->event.pressed) { | |
layer_on(_LOWER); | |
update_tri_layer(_LOWER, _RAISE, _ADJUST); | |
} else { | |
layer_off(_LOWER); | |
update_tri_layer(_LOWER, _RAISE, _ADJUST); | |
} | |
// return false; | |
break; | |
case RAISE: | |
if (record->event.pressed) { | |
layer_on(_RAISE); | |
update_tri_layer(_LOWER, _RAISE, _ADJUST); | |
} else { | |
layer_off(_RAISE); | |
update_tri_layer(_LOWER, _RAISE, _ADJUST); | |
} | |
// return false; | |
break; | |
case WORKMAN: | |
if (record->event.pressed) { | |
#ifdef AUDIO_ENABLE | |
PLAY_NOTE_ARRAY(tone_dvorak, false, 0); | |
#endif | |
persistant_default_layer_set(1UL<<_WORKMAN); | |
} | |
return false; | |
break; | |
case BACKLIT: | |
if (record->event.pressed) { | |
register_code(KC_RSFT); | |
#ifdef BACKLIGHT_ENABLE | |
backlight_step(); | |
#endif | |
} else { | |
unregister_code(KC_RSFT); | |
} | |
return false; | |
break; | |
case ADJUST: | |
if (record->event.pressed) { | |
layer_on(_ADJUST); | |
} else { | |
layer_off(_ADJUST); | |
} | |
return false; | |
break; | |
} | |
return true; | |
} | |
void matrix_init_user(void) { | |
#ifdef AUDIO_ENABLE | |
startup_user(); | |
#endif | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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 = yes # 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 = yes # Enable keyboard backlight functionality | |
MIDI_ENABLE = no # MIDI controls | |
AUDIO_ENABLE = no # Audio output on port C6 DO NOT ENABLE IF USING RGBLIGHT | |
UNICODE_ENABLE = no # Unicode | |
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | |
RGBLIGHT_ENABLE = yes # 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 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment