summaryrefslogtreecommitdiffstats
path: root/keyboards/orthodox
diff options
context:
space:
mode:
authordrashna <drashna@live.com>2017-11-07 06:11:08 +0100
committerJack Humbert <jack.humb@gmail.com>2017-11-07 06:11:08 +0100
commit363aa8aa2eeedaded6fe9fd35ba5c02329d83959 (patch)
tree189433181f4ee93c3bfbb194c090b7530e0e83cd /keyboards/orthodox
parentef2961798cddb43dbcbac9d72ca9d84d71ad565e (diff)
downloadqmk_firmware-363aa8aa2eeedaded6fe9fd35ba5c02329d83959.tar.gz
qmk_firmware-363aa8aa2eeedaded6fe9fd35ba5c02329d83959.tar.xz
Migrated most code from keymaps to userspace (#1980)
* Add woodpad * Cleanup * Remove misc layouts for woodpad * Move woodpad to handwired * Updated RGB Underglow info * Cleanup macros * Tweaked RGB lighting stuff * Start to merge orthodox/ergodox keymaps (persistant layers) * Add woodpad * Add forced NKRO * Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow * Updated macros and added workman keymaps * Fixed RGB lighting for Workman layout * Add leader keys * Remove force NKRO * Add Viterbi one handed layout and minor tweaks to others * Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts * Made "make" keystroke universal * Clean up and updates of drashna keymaps * Add workman layer to planck * Update to keymaps * Fix makefile toggle code in ez keymap Finish adding RGB code to orthodox * Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function * Remove unnecessary planck layout * Fixed Workman song * update make command and added lit reset * Fixed formatting to fall in line with official standards * Minor tweaks * Removed Leader Keys from Ergodox EZ Keymap Added KC_RESET that resets board and sets underglow to red * Tweak reset code * Cleanup * Remove misc layouts for woodpad * Move woodpad to handwired * Updated RGB Underglow info * Cleanup macros * Tweaked RGB lighting stuff * Start to merge orthodox/ergodox keymaps (persistant layers) * Add forced NKRO * Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow * Updated macros and added workman keymaps * Fixed RGB lighting for Workman layout * Add leader keys * Remove force NKRO * Add Viterbi one handed layout and minor tweaks to others * Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts * Made "make" keystroke universal * Clean up and updates of drashna keymaps * Add workman layer to planck * Update to keymaps * Fix makefile toggle code in ez keymap Finish adding RGB code to orthodox * Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function * Remove unnecessary planck layout * Fixed Workman song * update make command and added lit reset * Fixed formatting to fall in line with official standards * Minor tweaks * Removed Leader Keys from Ergodox EZ Keymap Added KC_RESET that resets board and sets underglow to red * Tweak reset code * Fix rebasing issues * remove head files * Fix "macro" issue * Rename ez keymaps for userspace * Revert "Rename ez keymaps for userspace" This reverts commit c25425911852e41711a5f0273b5741adb16e5bd4. * Renamed Ergodox EZ layouts so that all of my personal layouts are on the same name, in prep for using userspaces * Fix ergodox code * Remove "drashna-ez" keymap as it's no longer needed * Migrate majority of code to Userspace
Diffstat (limited to 'keyboards/orthodox')
-rw-r--r--keyboards/orthodox/keymaps/drashna/keymap.c216
1 files changed, 3 insertions, 213 deletions
diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c
index 3ad0af71b..b6618f151 100644
--- a/keyboards/orthodox/keymaps/drashna/keymap.c
+++ b/keyboards/orthodox/keymaps/drashna/keymap.c
@@ -22,6 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "orthodox.h"
#include "action_layer.h"
#include "eeconfig.h"
+#include "drashna.h"
extern keymap_config_t keymap_config;
@@ -29,41 +30,11 @@ extern keymap_config_t keymap_config;
// 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 _COLEMAK 1
-#define _DVORAK 2
-#define _WORKMAN 3
-#define _LOWER 8
-#define _RAISE 9
-#define _ADJUST 16
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- WORKMAN,
- LOWER,
- RAISE,
- ADJUST,
- KC_MAKE,
- KC_RESET
-};
// Fillers to make layering more clear
#define _______ KC_TRNS
#define XXXXXXX KC_NO
-#ifdef RGBLIGHT_ENABLE
-#define rgblight_set_blue rgblight_sethsv (0xFF, 0xFF, 0xFF);
-#define rgblight_set_red rgblight_sethsv (0x00, 0xFF, 0xFF);
-#define rgblight_set_green rgblight_sethsv (0x78, 0xFF, 0xFF);
-#define rgblight_set_orange rgblight_sethsv (0x1E, 0xFF, 0xFF);
-#define rgblight_set_teal rgblight_sethsv (0xC3, 0xFF, 0xFF);
-#define rgblight_set_magenta rgblight_sethsv (0x12C, 0xFF, 0xFF);
-#define rgblight_set_yellow rgblight_sethsv (0x3C, 0xFF, 0xFF);
-#define rgblight_set_purple rgblight_sethsv (0x10E, 0xFF, 0xFF);
-#endif
-
#ifdef TAP_DANCE_ENABLE
enum {
@@ -136,196 +107,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = KEYMAP(\
KC_MAKE, KC_RESET, TD(TD_FLSH), _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, XXXXXXX, _______, _______, XXXXXXX, _______, AG_SWAP, QWERTY, COLEMAK, DVORAK, WORKMAN, _______, \
+ _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, XXXXXXX, _______, _______, XXXXXXX, _______, AG_SWAP, KC_QWERTY, KC_COLEMAK, KC_DVORAK, KC_WORKMAN, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MAGIC_TOGGLE_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY \
)
};
-#ifdef AUDIO_ENABLE
-float tone_qwerty[][2] = SONG(QWERTY_SOUND);
-float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float tone_workman[][2] = SONG(PLOVER_SOUND);
-#endif
-
-void persistent_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_SONG(tone_qwerty);
-#endif
- persistent_default_layer_set(1UL << _QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(tone_colemak);
-#endif
- persistent_default_layer_set(1UL << _COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(tone_dvorak);
-#endif
- persistent_default_layer_set(1UL << _DVORAK);
- }
- return false;
- break;
- case WORKMAN:
- if (record->event.pressed) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(tone_workman);
-#endif
- persistent_default_layer_set(1UL << _WORKMAN);
- }
- 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 ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- }
- else {
- layer_off(_ADJUST);
- }
- return false;
- break;
- case KC_MAKE:
- if (!record->event.pressed) {
-#ifdef RGBLIGHT_ENABLE
- SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP " RGBLIGHT_ENABLE=yes AUDIO_ENABLE=yes" SS_TAP(X_ENTER));
-#else
- SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP " RGBLIGHT_ENABLE=no AUDIO_ENABLE=yes"SS_TAP(X_ENTER));
-#endif
- }
- return false;
- break;
- case KC_RESET:
- if (!record->event.pressed) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable();
- rgblight_mode(1);
- rgblight_setrgb(0xff, 0x00, 0x00);
-#endif
- reset_keyboard();
- }
- return false;
- break;
- }
+bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
return true;
}
-void matrix_init_user(void) { // Runs boot tasks for keyboard
-#ifdef RGBLIGHT_ENABLE
- uint8_t default_layer = eeconfig_read_default_layer();
-
- rgblight_enable();
-
- if (true) {
- if (default_layer & (1UL << _COLEMAK)) {
- rgblight_set_magenta;
- }
- else if (default_layer & (1UL << _DVORAK)) {
- rgblight_set_green;
- }
- else if (default_layer & (1UL << _WORKMAN)) {
- rgblight_set_purple;
- }
- else {
- rgblight_set_teal;
- }
- }
- else
- {
- rgblight_set_red;
- rgblight_mode(5);
- }
-#endif
-
-};
-
-void matrix_scan_user(void) { // runs frequently to update info
-
-};
-
-uint32_t layer_state_set_kb(uint32_t state) { // runs on layer switch
-#ifdef RGBLIGHT_ENABLE
- uint8_t default_layer = eeconfig_read_default_layer();
-
- switch (biton32(state)) {
- case _COLEMAK:
- rgblight_set_magenta;
- rgblight_mode(1);
- break;
- case _DVORAK:
- rgblight_set_green;
- rgblight_mode(1);
- break;
- case _RAISE:
- rgblight_set_yellow;
- rgblight_mode(5);
- break;
- case _LOWER:
- rgblight_set_orange;
- rgblight_mode(5);
- break;
- case _ADJUST:
- rgblight_set_red;
- rgblight_mode(23);
- break;
- case 6:
- rgblight_set_blue;
- break;
- case _QWERTY:
- if (default_layer & (1UL << _COLEMAK)) {
- rgblight_set_magenta;
- }
- else if (default_layer & (1UL << _DVORAK)) {
- rgblight_set_green;
- }
- else if (default_layer & (1UL << _WORKMAN)) {
- rgblight_set_purple;
- }
- else {
- rgblight_set_teal;
- }
- rgblight_mode(1);
- break;
- }
-#endif
- return state;
-}