From 27e3458f44ee9b06ec84431b9d4e861668ace563 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Fri, 18 May 2018 15:32:50 -0700 Subject: Updating my maps in upstream master (#2987) * Adding Rama M10-A Macropad * ch-ch-ch changes... * Major overhaul based on SMT's keymap. * more changes. * Moved the FKeys to the ADJUST layer. * More rearranging. * Alias in Atreus62 keymap to make it more legible Added config.h to fix tapping_term issue for Caps Lock key in OSX * Added OrthoDox layout. * More layout changes. * Fixing things with the keyboard. * Finishing touches. Set left-hand master in config.h Embedded the arrow keys in keymap.c * Revised keymap making this easier to use. * additions and changes. * changes to various keymaps. * Minor adjustments to OrthoDox layout. * Added Eco keymap. Updated Let's Split keymap. * Added gherkin * Removed my M10A keymap * Planck Keymap Updates Updated my Planck keymap and created a simple keymap for Seph's Preonic. * Added readme * readme fixes * Update readme.md more clarification * Keymap Tweaks Removed the Power button setting from the keymap. It was in a horrible location. I'll work on getting it setup somewhere else sometime later. * Added Readme I finally got around to adding a readme to this keymap. I've also added minor changes to the layout. * Fixed Keymap Error * Fixed Readme * adding iris and levinson keymaps * Tweaks to keymap * added youngJZ keymap * Changes to keymap Added a readme.md * Levinson changes Added the readme.md and rules.mk files. Configured RGB underglow and backlighting. * fixed readme * changes to keymaps * Updated keymap * Updated readme.md * Updated Readme (again) * Updated Readme Fixed formatting. Again. * Updated readme This is the last readme update for this keyboard update. I hope. * Added Contra keymap * Kinesis Keymap Update * Updated Keymaps I've updated my Kinesis (Stapelberg) layout and my Clueboard 66 layout. I've also updated my Kinesis Readme. * Clueboard Keymap update Added media keys to my Clueboard 66 Rev2 layout. * Added keymap Added Minidox keymap & rules. Added user function to Let's Split keymap that turns off the red LEDs on the Pro Micros. * New Zen keymap Added Zen keyboard to my list of keyboards, so had to generate a new keymap for it. Also adding some changes to my MiniDox keymap and config.h, as well as my Levinson's config.h. The config.h file changes enable ee_hands. * A few changes for useability I made a few changes to the Minidox keymap to see if I can't make it more useable. I'm also working on streamlining the Zen keyboard keymap to reduce layers. * Re-vamped Iris keymap. * changes * minor keymap change This was a minor keymap change to use mod_tap for the backspace key: ALT when held, BSPC when tapped. * Added Fourier keymap * Keymap Cleanup Moved KC_ESC to KC_CAPS, and changed KC_ESC to KC_GRV This is because of muscle memory, I kept hitting ESC when trying to hit TAB. * Keymap Adjustments Swapped Caps/Esc, put Caps in Raise/Lower layers, put Grv in normal Esc position. Adjusted the readme.md to reflect these changes. * minor tweaks Added code to disable red ProMicro LEDs after flashing. * Clean-up * Corrections to keymap. Fixed a foul-up in the Zen keymap where the lctrl was where the LOWER should have been. * Changes to make this fall in line with the new Layout features * Moving to LAYOUTs for 4x12 boards * fixed config.h file * standardization changes * Reverted Atreus62 keymap to LAYOUT format * Switch Preonic and Nyquist to ortho_5x12 * Corrections to config.h * config.h file tweaks * config.h file tweaks --- keyboards/iris/keymaps/xyverz/config.h | 44 +++++++++ keyboards/iris/keymaps/xyverz/keymap.c | 161 +++++++++++++++++++++++++++++++++ keyboards/iris/keymaps/xyverz/rules.mk | 2 + 3 files changed, 207 insertions(+) create mode 100644 keyboards/iris/keymaps/xyverz/config.h create mode 100644 keyboards/iris/keymaps/xyverz/keymap.c create mode 100644 keyboards/iris/keymaps/xyverz/rules.mk (limited to 'keyboards/iris') diff --git a/keyboards/iris/keymaps/xyverz/config.h b/keyboards/iris/keymaps/xyverz/config.h new file mode 100644 index 000000000..0c61a8eac --- /dev/null +++ b/keyboards/iris/keymaps/xyverz/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2017 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "config_common.h" + +#define USE_SERIAL +#define EE_HANDS + +#define PREVENT_STUCK_MODIFIERS + +#undef PRODUCT +#define PRODUCT Iris Keyboard + +#undef MANUFACTURER +#define MANUFACTURER Ian Sterling + +#undef DESCRIPTION +#define DESCRIPTION A column-staggered split ortholinear keyboard + +#undef RGBLED_NUM +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 12 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 + +#endif diff --git a/keyboards/iris/keymaps/xyverz/keymap.c b/keyboards/iris/keymaps/xyverz/keymap.c new file mode 100644 index 000000000..c1a066b68 --- /dev/null +++ b/keyboards/iris/keymaps/xyverz/keymap.c @@ -0,0 +1,161 @@ +#include QMK_KEYBOARD_H +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + +#define _QWERTY 0 +#define _COLEMAK 1 +#define _DVORAK 2 +#define _LOWER 3 +#define _RAISE 4 +#define _ADJUST 16 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + LOWER, + RAISE, + ADJUST, +}; + +#define KC_____ KC_TRNS +#define KC_LOWR LOWER +#define KC_RASE RAISE +#define KC_RST RESET +#define KC_BL_S BL_STEP +#define KC_QWRT QWERTY +#define KC_CLMK COLEMAK +#define KC_DVRK DVORAK +#define KC_BSLT ALT_T(KC_BSPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT_kc ( + EQL , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS, + TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS, + ESC , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, + LSFT, Z , X , C , V , B ,LOWR, RASE, N , M ,COMM,DOT ,SLSH,RSFT, + LCTL,BSPC,LGUI, ENT ,SPC ,LALT + ), + + [_COLEMAK] = LAYOUT_kc ( + EQL , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS, + TAB , Q , W , F , P , G , J , L , U , Y ,SCLN,BSPC, + ESC , A , R , S , T , D , H , N , E , I , O ,QUOT, + LSFT, Z , X , C , V , B ,LOWR, RASE, K , M ,COMM,DOT ,SLSH,RSFT, + LCTL,BSPC,LGUI, ENT ,SPC ,LALT + ), + + [_DVORAK] = LAYOUT_kc ( + LBRC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,RBRC, + TAB ,QUOT,COMM,DOT , P , Y , F , G , C , R , L ,SLSH, + ESC , A , O , E , U , I , D , H , T , N , S ,MINS, + LSFT,SCLN, Q , J , K , X ,LOWR, RASE, B , M , W , V , Z ,RSFT, + LCTL,BSLT,LGUI, ENT ,SPC ,LALT + ), + + [_LOWER] = LAYOUT_kc ( + F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 , + TILD,____,____, UP ,____,____, ____,____,____,____,____,____, + CAPS,____,LEFT,DOWN,RGHT,HOME, PGUP,UNDS,PLUS,LCBR,RCBR,PIPE, + BL_S,____,MUTE,VOLD,VOLU,END ,____, ____,PGDN,MPRV,MPLY,MNXT,____,____, + ____,DEL ,____, ____,INS ,____ + ), + + [_RAISE] = LAYOUT_kc ( + F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 , + GRV ,____,____, UP ,____,____, ____,____,____,____,____,____, + CAPS,____,LEFT,DOWN,RGHT,HOME, PGUP,MINS,EQL ,LBRC,RBRC,BSLS, + BL_S,____,MUTE,VOLD,VOLU,END ,____, ____,PGDN,MPRV,MPLY,MNXT,____,____, + ____,DEL ,____, ____,INS ,____ + ), + + [_ADJUST] = LAYOUT_kc ( + F11 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F12 , + ____,RST ,____,____,____,____, ____,____,____,____,____,____, + ____,____,____,____,____,____, ____,QWRT,CLMK,DVRK,____,____, + ____,____,____,____,____,____,____, ____,____,____,____,____,____,____, + ____,____,____, ____,____,____ + ) + +}; + +#ifdef AUDIO_ENABLE +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +#endif + +void persistent_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +void matrix_init_user(void) { + // This will disable the red LEDs on the ProMicros + DDRD &= ~(1<<5); + PORTD &= ~(1<<5); + DDRB &= ~(1<<0); + PORTB &= ~(1<<0); +}; + +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 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; + } + return true; +} diff --git a/keyboards/iris/keymaps/xyverz/rules.mk b/keyboards/iris/keymaps/xyverz/rules.mk new file mode 100644 index 000000000..d7463419b --- /dev/null +++ b/keyboards/iris/keymaps/xyverz/rules.mk @@ -0,0 +1,2 @@ +RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes -- cgit v1.2.3-24-g4f1b