[Keymap] Adding hbbisenieks keymap for keebio/iris (#7440)
* hbbisenieks keymap * fixed right encoder * changes suggested during prrefactor_process_record_kb_user
parent
e62ab7e259
commit
eae21eed74
@ -0,0 +1,85 @@ |
|||||||
|
/* Copyright 2019 Danny Nguyen <danny@keeb.io>
|
||||||
|
* |
||||||
|
* 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 <http://www.gnu.org/licenses/>.
|
||||||
|
*/ |
||||||
|
#include QMK_KEYBOARD_H |
||||||
|
|
||||||
|
#define _AUDACITY 0 |
||||||
|
#define _LIGHTS 1 |
||||||
|
|
||||||
|
enum custom_keycodes { |
||||||
|
AUDACITY = SAFE_RANGE, |
||||||
|
LIGHTS, |
||||||
|
}; |
||||||
|
|
||||||
|
#define KC_ KC_TRNS |
||||||
|
#define KC_AUD AUDACITY |
||||||
|
#define KC_LITE LIGHTS |
||||||
|
#define KC_ZNRM LCTL(KC_2) // zoom normal
|
||||||
|
#define KC_SAVE LCTL(KC_S) // save
|
||||||
|
#define KC_SYNC LALT(KC_S) // sync-lock tracks
|
||||||
|
#define KC_SLNC LCTL(KC_L) // silence selection
|
||||||
|
#define KC_BL_S BL_STEP |
||||||
|
#define KC_RGBM RGB_MOD |
||||||
|
#define KC_RGBT RGB_TOG |
||||||
|
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
||||||
|
/*
|
||||||
|
| Knob 1: Vol Dn/Up | | Knob 2: Page Dn/Up | |
||||||
|
| Press: Mute | Home | Press: Play/Pause | |
||||||
|
| Hold: Layer 2 | Up | RGB Mode | |
||||||
|
| Left | Down | Right | |
||||||
|
*/ |
||||||
|
[_AUDACITY] = LAYOUT( |
||||||
|
//,-------+-------+-------.
|
||||||
|
KC_LITE,KC_SAVE,KC_ZNRM, |
||||||
|
//|-------+-------+-------|
|
||||||
|
KC_SYNC,KC_SLNC,KC_BSPC, |
||||||
|
//|-------+-------+-------|
|
||||||
|
KC_SPC , KC_F1 , KC_F2 |
||||||
|
//`-------+-------+-------'
|
||||||
|
), |
||||||
|
/*
|
||||||
|
| RESET | N/A | Media Stop | |
||||||
|
| Held: Layer 2 | Home | RGB Mode | |
||||||
|
| Media Previous | End | Media Next | |
||||||
|
*/ |
||||||
|
[_LIGHTS] = LAYOUT( |
||||||
|
//,-------+-------+-------.
|
||||||
|
KC_ ,KC_BL_S,KC_STOP, |
||||||
|
//|-------+-------+-------|
|
||||||
|
KC_RGBM,KC_HOME,KC_RGBT, |
||||||
|
//|-------+-------+-------|
|
||||||
|
KC_MPRV,KC_END ,KC_MNXT |
||||||
|
//`-------+-------+-------'
|
||||||
|
), |
||||||
|
}; |
||||||
|
|
||||||
|
void encoder_update_user(uint8_t index, bool clockwise) { |
||||||
|
if (index == 0) { |
||||||
|
if (clockwise) { |
||||||
|
tap_code(KC_RGHT); |
||||||
|
} else { |
||||||
|
tap_code(KC_LEFT); |
||||||
|
} |
||||||
|
} |
||||||
|
else if (index == 1) { |
||||||
|
if (clockwise) { |
||||||
|
SEND_STRING(SS_LCTRL("1")); // audacity zoom in
|
||||||
|
} else { |
||||||
|
SEND_STRING(SS_LCTRL("3")); // audacity zoom out
|
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,41 @@ |
|||||||
|
/*
|
||||||
|
Copyright 2017 Danny Nguyen <danny@keeb.io> |
||||||
|
|
||||||
|
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 <http://www.gnu.org/licenses/>.
|
||||||
|
*/ |
||||||
|
|
||||||
|
#pragma once |
||||||
|
|
||||||
|
/* Use I2C or Serial, not both */ |
||||||
|
|
||||||
|
#define USE_SERIAL |
||||||
|
// #define USE_I2C
|
||||||
|
|
||||||
|
/* Select hand configuration */ |
||||||
|
|
||||||
|
#define MASTER_LEFT |
||||||
|
// #define MASTER_RIGHT
|
||||||
|
// #define EE_HANDS
|
||||||
|
|
||||||
|
#define TAPPING_TERM 150 |
||||||
|
|
||||||
|
#define TAPPING_TOGGLE 2 |
||||||
|
#define PERMISSIVE_HOLD |
||||||
|
|
||||||
|
#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 |
@ -0,0 +1,161 @@ |
|||||||
|
#include QMK_KEYBOARD_H |
||||||
|
|
||||||
|
enum layer_names { |
||||||
|
_QWERTY, |
||||||
|
_LOWER, |
||||||
|
_RAISE, |
||||||
|
_ADJUST, |
||||||
|
}; |
||||||
|
|
||||||
|
enum custom_keycodes { |
||||||
|
LOWER = SAFE_RANGE, |
||||||
|
RAISE, |
||||||
|
ADJUST, |
||||||
|
GUSR, |
||||||
|
HGRP, |
||||||
|
CHUS, |
||||||
|
}; |
||||||
|
|
||||||
|
#define KC_ KC_TRNS |
||||||
|
|
||||||
|
#define KC_CAPW LGUI(LSFT(KC_3)) // Capture whole screen
|
||||||
|
#define KC_CPYW LGUI(LSFT(LCTL(KC_3))) // Copy whole screen
|
||||||
|
#define KC_CAPP LGUI(LSFT(KC_4)) // Capture portion of screen
|
||||||
|
#define KC_CPYP LGUI(LSFT(LCTL(KC_4))) // Copy portion of screen
|
||||||
|
#define KC_ESCC MT(MOD_LCTL, KC_ESC) |
||||||
|
#define KC_LOWR LOWER |
||||||
|
#define KC_RASE RAISE |
||||||
|
#define KC_RST RESET |
||||||
|
#define KC_BL_S BL_STEP |
||||||
|
|
||||||
|
// Left and right shift as mot-tap square braces
|
||||||
|
#define KC_LSBR MT(MOD_LSFT, KC_LBRC) |
||||||
|
#define KC_RSBR MT(MOD_RSFT, KC_RBRC) |
||||||
|
|
||||||
|
// mod-tap shift/minus
|
||||||
|
#define KC_SMIN MT(MOD_LSFT, KC_MINS) |
||||||
|
|
||||||
|
// Tap-toggle layers
|
||||||
|
#define KC_TT_L TT(1) |
||||||
|
#define KC_TT_R TT(2) |
||||||
|
|
||||||
|
#define KC_RGBM RGB_MOD |
||||||
|
#define KC_RGBT RGB_TOG |
||||||
|
|
||||||
|
#define KC_SLOK LGUI(LCTL(KC_Q)) // mojave lock screen
|
||||||
|
#define KC_GUSR GUSR // "gam info user" macro
|
||||||
|
#define KC_HGRP HGRP // "history | grep" macro
|
||||||
|
#define KC_CHUS CHUS // "thisisunsafe" chrome browser macro
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
||||||
|
|
||||||
|
[_QWERTY] = LAYOUT_kc( |
||||||
|
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||||
|
GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSPC, |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS, |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
ESC , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, |
||||||
|
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||||
|
LSBR, Z , X , C , V , B ,TT_L, TT_R, N , M ,COMM,DOT ,SLSH,RSBR, |
||||||
|
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||||
|
LCTL,SMIN,LGUI, ENT ,SPC ,LALT |
||||||
|
// `----+----+----' `----+----+----'
|
||||||
|
), |
||||||
|
|
||||||
|
[_LOWER] = LAYOUT_kc( |
||||||
|
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||||
|
TILD,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,MINS,EQL , , |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
,SLOK, , UP , ,RGBT, P7 , P8 , P9 , E , F ,LPRN, |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
DEL , ,LEFT,DOWN,RGHT,GUSR, P4 , P5 , P6 , C , D ,RPRN, |
||||||
|
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||||
|
BL_S, , , ,HGRP,CHUS, , , P1 , P2 , P3 , A , B , , |
||||||
|
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||||
|
, , , DOT , P0 ,COLN |
||||||
|
// `----+----+----' `----+----+----'
|
||||||
|
), |
||||||
|
|
||||||
|
[_RAISE] = LAYOUT_kc( |
||||||
|
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||||
|
F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 , |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
,RGBT,RGBM, , , , ,AMPR,MUTE, , , , |
||||||
|
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||||
|
,CAPW,CPYW,CAPP,CPYP,PGUP, EQL ,HOME,VOLU,MRWD,MFFD, , |
||||||
|
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||||
|
, , , , ,PGDN, , ,PLUS,END ,VOLD,MPLY,MSTP, , |
||||||
|
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||||
|
, , , , , |
||||||
|
// `----+----+----' `----+----+----'
|
||||||
|
), |
||||||
|
|
||||||
|
[_ADJUST] = LAYOUT( |
||||||
|
//,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------.
|
||||||
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
||||||
|
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||||
|
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, |
||||||
|
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||||
|
RESET , DEBUG , RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, |
||||||
|
//|--------+--------+--------+--------+--------+--------+--------. ,--------|--------+--------+--------+--------+--------+--------|
|
||||||
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
||||||
|
//`--------+--------+--------+----+---+--------+--------+--------/ \--------+--------+--------+---+----+--------+--------+--------'
|
||||||
|
_______, _______, _______, _______, _______, _______ |
||||||
|
// `--------+--------+--------' `--------+--------+--------'
|
||||||
|
) |
||||||
|
|
||||||
|
}; |
||||||
|
|
||||||
|
#ifdef AUDIO_ENABLE |
||||||
|
float tone_qwerty[][2] = SONG(QWERTY_SOUND); |
||||||
|
#endif |
||||||
|
|
||||||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
||||||
|
switch (keycode) { |
||||||
|
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 GUSR: |
||||||
|
if (record->event.pressed) { |
||||||
|
SEND_STRING("gam info user "); |
||||||
|
} |
||||||
|
break; |
||||||
|
case HGRP: |
||||||
|
if (record->event.pressed) { |
||||||
|
SEND_STRING("history|grep "); |
||||||
|
} |
||||||
|
break; |
||||||
|
case CHUS: |
||||||
|
if (record->event.pressed) { |
||||||
|
SEND_STRING("thisisunsafe"); |
||||||
|
} |
||||||
|
break; |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
@ -0,0 +1,6 @@ |
|||||||
|
# HBBisenieks' Iris Layout |
||||||
|
|
||||||
|
A modified Iris layout with toggle-tap layers and a hexidecimal |
||||||
|
numpad. Other features include Space-Cadet-like shift keys that can do |
||||||
|
square or curly braces and a home-row escape key. |
||||||
|
|
@ -0,0 +1,6 @@ |
|||||||
|
RGBLIGHT_ENABLE = yes
|
||||||
|
BACKLIGHT_ENABLE = yes
|
||||||
|
|
||||||
|
# Comment out for pro-micro board
|
||||||
|
BOOTLOADER = atmel-dfu
|
||||||
|
|
Loading…
Reference in new issue