[Keymap] ericgebhart keymap and userspace updates (#15727)
Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com> Co-authored-by: Drashna Jael're <drashna@live.com>
This commit is contained in:
		
							parent
							
								
									0f110737db
								
							
						
					
					
						commit
						e865cab48e
					
				
					 35 changed files with 4202 additions and 1980 deletions
				
			
		
							
								
								
									
										24
									
								
								keyboards/crkbd/keymaps/ericgebhart/config.h
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								keyboards/crkbd/keymaps/ericgebhart/config.h
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,24 @@
 | 
			
		|||
/*
 | 
			
		||||
This is the c configuration file for the keymap
 | 
			
		||||
 | 
			
		||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
 | 
			
		||||
Copyright 2015 Jack Humbert
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
// otherwise the other promicro v3 isn't found
 | 
			
		||||
#define SPLIT_USB_DETECT
 | 
			
		||||
							
								
								
									
										60
									
								
								keyboards/crkbd/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										60
									
								
								keyboards/crkbd/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,60 @@
 | 
			
		|||
/*
 | 
			
		||||
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
 | 
			
		||||
 | 
			
		||||
  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 "ericgebhart.h"
 | 
			
		||||
 | 
			
		||||
#define Crkbd_base(...)        Base_3x6_3(__VA_ARGS__)
 | 
			
		||||
#define Crkbd_bepo(...)        Base_bepo_3x6_3(__VA_ARGS__)
 | 
			
		||||
#define Crkbd_bepo6(...)       Base_bepo6_3x6_3(__VA_ARGS__)
 | 
			
		||||
#define Crkbd_transient(...)   Transient6_3x6_3(__VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * The `Crkbd_base` macro is a template to allow the use of identical
 | 
			
		||||
 * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
 | 
			
		||||
 * that there is no need to set them up for each layout, and modify all of
 | 
			
		||||
 * them if I want to change them.  This helps to keep consistency and ease
 | 
			
		||||
 * of use. K## is a placeholder to pass through the individual keycodes
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    // Qwerty based Base layers
 | 
			
		||||
    [_DVORAK]  = Crkbd_base(___DVORAK___),
 | 
			
		||||
    [_BEAKL]   = Crkbd_base(___BEAKL15___),
 | 
			
		||||
    [_COLEMAK] = Crkbd_base(___COLEMAK_DH___),
 | 
			
		||||
    [_QWERTY]  = Crkbd_base(___QWERTY___),
 | 
			
		||||
 | 
			
		||||
    // Bepo base layers
 | 
			
		||||
    [_BEAKL_BP]  = Crkbd_bepo(___BEAKL15_FR___),
 | 
			
		||||
    [_DVORAK_BP] = Crkbd_bepo(___DVORAK_FR___),
 | 
			
		||||
    [_BEPO]      = Crkbd_bepo6(___BEPO6___),
 | 
			
		||||
 | 
			
		||||
    // Transient layers.
 | 
			
		||||
    [_SYMB]    = Crkbd_transient(___SYMB_BEAKLB_3x12___),
 | 
			
		||||
    [_SYMB_BP] = Crkbd_transient(___SYMB_BEAKLB_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [_KEYPAD]    = Crkbd_transient(___KP_C_3x12___),
 | 
			
		||||
    [_KEYPAD_BP] = Crkbd_transient(___KP_C_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [_TOPROWS]    = Crkbd_transient(___TOPROWS_3x12___),
 | 
			
		||||
    [_TOPROWS_BP] = Crkbd_transient(___TOPROWS_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [_NAV] = Crkbd_transient(___NAV_3x12___),
 | 
			
		||||
 | 
			
		||||
    [_LAYERS] = Crkbd_transient(___LAYERS_3x12___),
 | 
			
		||||
    //[_RGB] = Crkbd_transient(___RGB_3x12___),
 | 
			
		||||
    [_ADJUST] = Crkbd_transient(___ADJUST_3x12___),
 | 
			
		||||
    ///HPT_TOG, KC_NUKE, ___,        ___, TG_MODS, HPT_FBK
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -16,369 +16,33 @@
 | 
			
		|||
*/
 | 
			
		||||
#include "keymap_bepo.h"
 | 
			
		||||
#include "ericgebhart.h"
 | 
			
		||||
 | 
			
		||||
#include "layouts.h"
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
  [DVORAK] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      KC_GRV,     ___NUMBER_L___,   OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___DVORAK_L1___,  LCTL(KC_C),
 | 
			
		||||
      TAB_BKTAB,  ___DVORAK_L2___,
 | 
			
		||||
      KC_LSFT,    ___DVORAK_L3___,  TO(MDIA),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___NUMBER_R___,   KC_EQL,
 | 
			
		||||
      LCTL(KC_V), ___DVORAK_R1___,  KC_SLASH,
 | 
			
		||||
      /*    */    ___DVORAK_R2___,  KC_MINUS,
 | 
			
		||||
      TO(KEYPAD), ___DVORAK_R3___,  KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [XMONAD] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      ___,  ___FUNC_L___,     ___,
 | 
			
		||||
      ___,  ___DVORAK_L1___,  ___,
 | 
			
		||||
      ___,  ___DVORAK_L2___,
 | 
			
		||||
      ___,  ___DVORAK_L3___,  ___,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_R___,     ___,
 | 
			
		||||
      ___,  ___DVORAK_R1___,  ___,
 | 
			
		||||
      /**/  ___DVORAK_R2___,  ___,
 | 
			
		||||
      ___,  ___DVORAK_R3___,  ___,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [QWERTY] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
                            // left hand
 | 
			
		||||
      KC_GRV,     ___NUMBER_L___,   OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___QWERTY_L1___,  LCTL(KC_C),
 | 
			
		||||
      TAB_BKTAB,  ___QWERTY_L2___,
 | 
			
		||||
      KC_LSFT,    ___QWERTY_L3___,  TO(MDIA),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___NUMBER_R___,   KC_EQL,
 | 
			
		||||
      LCTL(KC_V), ___QWERTY_R1___,  KC_SLASH,
 | 
			
		||||
      /*       */ ___QWERTY_R2___,  KC_MINUS,
 | 
			
		||||
      TO(KEYPAD), ___QWERTY_R3___,  KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
          ),
 | 
			
		||||
 | 
			
		||||
  [COLEMAK] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      KC_GRV,     ___NUMBER_L___,    OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___COLEMAK_L1___,  LCTL(KC_C),
 | 
			
		||||
      TAB_BKTAB,  ___COLEMAK_L2___,
 | 
			
		||||
      KC_LSFT,    ___COLEMAK_L3___,  TO(MDIA),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___NUMBER_R___,    KC_EQL,
 | 
			
		||||
      LCTL(KC_V), ___COLEMAK_R1___,  KC_SLASH,
 | 
			
		||||
      /*       */ ___COLEMAK_R2___,  KC_MINUS,
 | 
			
		||||
      TO(KEYPAD), ___COLEMAK_R3___,  KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
          ),
 | 
			
		||||
 | 
			
		||||
  [WORKMAN] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      KC_GRV,     ___NUMBER_L___,    OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___WORKMAN_L1___,  LCTL(KC_C),
 | 
			
		||||
      TAB_BKTAB,  ___WORKMAN_L2___,
 | 
			
		||||
      KC_LSFT,    ___WORKMAN_L3___,  TO(MDIA),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___NUMBER_R___,    KC_EQL,
 | 
			
		||||
      LCTL(KC_V), ___WORKMAN_R1___,  KC_SLASH,
 | 
			
		||||
      /*    */    ___WORKMAN_R2___,  KC_MINUS,
 | 
			
		||||
      TO(KEYPAD), ___WORKMAN_R3___,  KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [NORMAN] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      KC_GRV,     ___NUMBER_L___,   OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___NORMAN_L1___,  LCTL(KC_C),
 | 
			
		||||
      TAB_BKTAB,  ___NORMAN_L2___,
 | 
			
		||||
      KC_LSFT,    ___NORMAN_L3___,  TO(MDIA),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___NUMBER_R___,   KC_EQL,
 | 
			
		||||
      LCTL(KC_V), ___NORMAN_R1___,  KC_SLASH,
 | 
			
		||||
      /*       */ ___NORMAN_R2___,  KC_MINUS,
 | 
			
		||||
      TO(KEYPAD), ___NORMAN_R3___,  KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [DVORAK_ON_BEPO] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      DB_GRV,     ___NUMBER_BEPO_L___,  OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,    ___DVORAK_FR_L1___,   DB_LBRC,
 | 
			
		||||
      TAB_BKTAB,  ___DVORAK_FR_L2___,
 | 
			
		||||
      KC_LSFT,    ___DVORAK_FR_L3___,   DB_LPRN,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT_FR___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT_BP___,
 | 
			
		||||
    // Qwerty Base layers
 | 
			
		||||
    [_DVORAK]  = Dox_base(___NUMS___, ___DVORAK___),
 | 
			
		||||
    [_QWERTY]  = Dox_base(___NUMS___, ___QWERTY___),
 | 
			
		||||
    [_COLEMAK] = Dox_base(___NUMS___, ___COLEMAK_DH___),
 | 
			
		||||
    [_BEAKL]   = Dox_base(___NUMS___, ___BEAKL15___),
 | 
			
		||||
    // Bepo Base layers
 | 
			
		||||
    [_DVORAK_BP] = Dox_bepo_base(___NUMS_BP___,    ___DVORAK_FR___),
 | 
			
		||||
    [_BEAKL_BP]  = Dox_bepo_base(___BKLNUMS_BP___, ___BEAKL15_FR___),
 | 
			
		||||
    [_BEPO]      = Dox_bepo_base6(___BEPO6___),
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,   ___NUMBER_BEPO_R___,  DB_EQL,
 | 
			
		||||
      DB_RBRC,     ___DVORAK_FR_R1___,   DB_SLASH,
 | 
			
		||||
    // transient layers.
 | 
			
		||||
    // Switch to using a transient layer macro
 | 
			
		||||
    [_SYMB]    = Dox_transient(___12_FUNC___, ___SYMB_BEAKLA_3x12___),
 | 
			
		||||
    [_SYMB_BP] = Dox_transient(___12_FUNC___, ___SYMB_BEAKLA_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
      /*      */   ___DVORAK_FR_R2___,   DB_MINUS,
 | 
			
		||||
      DB_RPRN,     ___DVORAK_FR_R3___,   KC_RSFT,
 | 
			
		||||
    [_TOPROWS]    = Dox_transient(___12___, ___TOPROWS_3x12___),
 | 
			
		||||
    [_TOPROWS_BP] = Dox_transient(___12___, ___TOPROWS_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT_FR___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT_BP___
 | 
			
		||||
      ),
 | 
			
		||||
    [_KEYPAD]    = Dox_transient(___KEYPAD_BKL_FUNC_4x12___),
 | 
			
		||||
    [_KEYPAD_BP] = Dox_transient(___KEYPAD_BKL_FUNC_BP_4x12___),
 | 
			
		||||
 | 
			
		||||
  [BEPO] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // Left hand
 | 
			
		||||
      BP_DLR,         ___SYMBOL_BEPO_L___,  OSL(LAYERS),
 | 
			
		||||
      KC_LOCK,        ___BEPO_FR_L1___,     DB_LBRC,
 | 
			
		||||
      TAB_BKTAB,      ___BEPO_FR_L2___,
 | 
			
		||||
      BP_SFT_T_ECRC,  ___BEPO_FR_L3___,     DB_RBRC,
 | 
			
		||||
 | 
			
		||||
      ___5___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      // Right hand
 | 
			
		||||
      MDIA_SYMB_KP_LAYERS,  ___SYMBOL_BEPO_R___,  BP_EQL,
 | 
			
		||||
      BP_DCIR, ___BEPO_FR_R1___, BP_W,
 | 
			
		||||
      /*    */ ___BEPO_FR_R2___, BP_CCED,
 | 
			
		||||
      BP_C,    ___BEPO_FR_R3___, KC_RSFT,
 | 
			
		||||
 | 
			
		||||
      ___5___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [XMONAD_FR] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      ___,  ___FUNC_L___,        ___,
 | 
			
		||||
      ___,  ___DVORAK_FR_L1___,  ___,
 | 
			
		||||
      ___,  ___DVORAK_FR_L2___,
 | 
			
		||||
      ___,  ___DVORAK_FR_L3___,  ___,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_LEFT_FR___,
 | 
			
		||||
      ___ERGODOX_THUMB_LEFT_BP___,
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_R___,         ___,
 | 
			
		||||
      ___,  ___DVORAK_FR_R1___,   ___,
 | 
			
		||||
      /**/  ___DVORAK_FR_R2___,   ___,
 | 
			
		||||
      ___,  ___DVORAK_FR_R3___,   ___,
 | 
			
		||||
 | 
			
		||||
      ___BOTTOM_RIGHT_FR___,
 | 
			
		||||
      ___ERGODOX_THUMB_RIGHT_BP___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  // SYMBOLS
 | 
			
		||||
  [SYMB] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
                          // left hand
 | 
			
		||||
      ___FUNC_1_6___,    ___,
 | 
			
		||||
      ___SYMBOLS6_1___,  ___,
 | 
			
		||||
      ___SYMBOLS6_2___,
 | 
			
		||||
      ___SYMBOLS6_3___,  ___,
 | 
			
		||||
      ___SYMBOLS5_4___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___,  ___SYMPAD_1___,
 | 
			
		||||
      /**/  ___SYMPAD_2___,
 | 
			
		||||
      ___,  ___SYMPAD_3___,
 | 
			
		||||
      /**/  ___5_SYMPAD_4___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [SYMB_ON_BEPO] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      ___FUNC_1_6___,       ___,
 | 
			
		||||
      ___SYMBOLS6_1_BP___,  ___,
 | 
			
		||||
      ___SYMBOLS6_2_BP___,
 | 
			
		||||
      ___SYMBOLS6_3_BP___,  ___,
 | 
			
		||||
      ___SYMBOLS5_4_BP___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___,  ___SYMPAD_1_BP___,
 | 
			
		||||
      /**/  ___SYMPAD_2_BP___,
 | 
			
		||||
      ___,  ___SYMPAD_3_BP___,
 | 
			
		||||
      /**/  ___5_SYMPAD_4_BP___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [KEYPAD] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      ___FUNC_1_6___,                ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_T___, ___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_1___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_2___, ___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_3___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___, ___, ___KEYPAD_1___, ___,
 | 
			
		||||
      /**/ ___, ___KEYPAD_2___, ___,
 | 
			
		||||
      ___, ___, ___KEYPAD_3___, ___,
 | 
			
		||||
      /*     */ ___KEYPAD_4___, ___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [KEYPAD_ON_BEPO] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      ___FUNC_1_6___,                ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_T___, ___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_1___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_2___, ___, ___,
 | 
			
		||||
      ___2___, ___FUNCPAD_3___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___, ___, ___KEYPAD_1_BP___, ___,
 | 
			
		||||
      /**/ ___, ___KEYPAD_2_BP___, ___,
 | 
			
		||||
      ___, ___, ___KEYPAD_3_BP___, ___,
 | 
			
		||||
      /*     */ ___KEYPAD_4_BP___, ___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  // MEDIA AND MOUSE
 | 
			
		||||
  [MDIA] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      ___FUNC_1_6___,      ___,
 | 
			
		||||
      ___MOUSE_BTNS_L___,  ___, ___,
 | 
			
		||||
      ___,  ___MOUSE_LDUR___,   ___,
 | 
			
		||||
      ___,  ___MWHEEL_LDUR___,  XXX,  ___,
 | 
			
		||||
      ___,  ___,  ___MOUSE_ACCL_012___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___,  KC_VOLU, ___MUTE_PRV_PLAY_NXT_STOP___,
 | 
			
		||||
      /**/  KC_VOLD, ___VI_ARROWS___,     ___,
 | 
			
		||||
      ___,  ___,     ___MOUSE_BTNS_R___,
 | 
			
		||||
      /*          */ KC_PGDN, KC_PGUP, ___3___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
 | 
			
		||||
  [LAYERS] = LAYOUT_ergodox_wrapper(
 | 
			
		||||
      // left hand
 | 
			
		||||
      ___FUNC_1_6___,                           ___,
 | 
			
		||||
      XXX,  XXX,  XXX, ___2_LAYERS_B1___,  XXX, ___,
 | 
			
		||||
      XXX,  XXX,  XXX, ___2_LAYERS_B2___, XXX,
 | 
			
		||||
      XXX,  XXX,  ___3_LAYERS_B3___,       XXX, ___,
 | 
			
		||||
      ___5___,
 | 
			
		||||
      ___6___,
 | 
			
		||||
 | 
			
		||||
      // right hand
 | 
			
		||||
      ___,  ___FUNC_7_12___,
 | 
			
		||||
      ___,  XXX, ___3_LAYERS_T_BP___,  ___2___,
 | 
			
		||||
      /**/  XXX, ___3_LAYERS_T___,     ___2___,
 | 
			
		||||
      ___,  XXX, ___3_LAYERS_T_CTL___, ___2___,
 | 
			
		||||
      ___5___,
 | 
			
		||||
      ___6___
 | 
			
		||||
      ),
 | 
			
		||||
    [_NAV]    = Dox_transient(___12___, ___NAV_3x12___),
 | 
			
		||||
    [_LAYERS] = Dox_transient(___12___, ___LAYERS_3x12___),
 | 
			
		||||
    [_RGB]    = Dox_transient(___12___, ___RGB_3x12___),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// Runs constantly in the background, in a loop.
 | 
			
		||||
void matrix_scan_user(void) {
 | 
			
		||||
 | 
			
		||||
  uint8_t layer = biton32(layer_state);
 | 
			
		||||
 | 
			
		||||
  ergodox_board_led_off();
 | 
			
		||||
  ergodox_right_led_1_off();
 | 
			
		||||
  ergodox_right_led_2_off();
 | 
			
		||||
  ergodox_right_led_3_off();
 | 
			
		||||
  if(!on_qwerty())
 | 
			
		||||
    ergodox_right_led_1_on();
 | 
			
		||||
  switch (layer) {
 | 
			
		||||
    //case DVORAK:
 | 
			
		||||
    //ergodox_right_led_1_off();
 | 
			
		||||
    //break;
 | 
			
		||||
    // first led on for a bepo software keyboard layer
 | 
			
		||||
  case DVORAK_ON_BEPO:
 | 
			
		||||
    ergodox_right_led_2_on();
 | 
			
		||||
    break;
 | 
			
		||||
  case BEPO:
 | 
			
		||||
    ergodox_right_led_1_on();
 | 
			
		||||
    ergodox_right_led_1_off();
 | 
			
		||||
    ergodox_right_led_1_on();
 | 
			
		||||
    ergodox_right_led_1_off();
 | 
			
		||||
    ergodox_right_led_1_on();
 | 
			
		||||
    break;
 | 
			
		||||
  case SYMB:
 | 
			
		||||
    ergodox_right_led_3_on();
 | 
			
		||||
    break;
 | 
			
		||||
  case MDIA:
 | 
			
		||||
    ergodox_right_led_3_on();
 | 
			
		||||
    break;
 | 
			
		||||
  case LAYERS:
 | 
			
		||||
    ergodox_right_led_1_on();
 | 
			
		||||
    ergodox_right_led_2_on();
 | 
			
		||||
    ergodox_right_led_3_on();
 | 
			
		||||
    break;
 | 
			
		||||
  default:
 | 
			
		||||
    ergodox_board_led_off();
 | 
			
		||||
    break;
 | 
			
		||||
 | 
			
		||||
    /* default: */
 | 
			
		||||
    /*   // none */
 | 
			
		||||
    /*   break; */
 | 
			
		||||
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
  clear_oneshot_mods();
 | 
			
		||||
  set_oneshot_locked_mods(mods);
 | 
			
		||||
  register_mods(mods);
 | 
			
		||||
 | 
			
		||||
  register_code(action.key.code);
 | 
			
		||||
  unregister_code(action.key.code);
 | 
			
		||||
 | 
			
		||||
  layer_on(action.layer_tap.val);
 | 
			
		||||
  layer_off(action.layer_tap.val);
 | 
			
		||||
 | 
			
		||||
  clear_oneshot_locked_mods();
 | 
			
		||||
  clear_oneshot_mods();
 | 
			
		||||
  unregister_mods(mods);
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										139
									
								
								keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										139
									
								
								keyboards/ergodox_ez/keymaps/ericgebhart/layouts.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,139 @@
 | 
			
		|||
/*
 | 
			
		||||
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
 | 
			
		||||
 | 
			
		||||
  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/>.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/********************************************************************/
 | 
			
		||||
/* Ergodox EZ                                                       */
 | 
			
		||||
/********************************************************************/
 | 
			
		||||
// This one is is set up to pass in the number row.
 | 
			
		||||
// Beakl and bepo both change the number row.
 | 
			
		||||
// Left, middle, right, bottom, and thumbs all stay the same.
 | 
			
		||||
#define Base_dox(                                                       \
 | 
			
		||||
                 K01, K02, K03, K04, K05,                               \
 | 
			
		||||
                 K06, K07, K08, K09, K0A,                               \
 | 
			
		||||
                 K11, K12, K13, K14, K15,                               \
 | 
			
		||||
                 K16, K17, K18, K19, K1A,                               \
 | 
			
		||||
                 K21, K22, K23, K24, K25,                               \
 | 
			
		||||
                 K26, K27, K28, K29, K2A,                               \
 | 
			
		||||
                 K31, K32, K33, K34, K35,                               \
 | 
			
		||||
                 K36, K37, K38, K39, K3A                                \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_edox(                                                           \
 | 
			
		||||
             ROW0_LEFT(K01, K02, K03, K04, K05),                        \
 | 
			
		||||
             ___2_MIDDLE_1___,                                          \
 | 
			
		||||
             ROW0_RIGHT(K06, K07, K08, K09, K0A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW1_LEFT(K11, K12, K13, K14, K15),                        \
 | 
			
		||||
             ___2_MIDDLE_2___,                                          \
 | 
			
		||||
             ROW1_RIGHT(K16, K17, K18, K19, K1A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW2_LEFT(K21, K22, K23, K24, K25),                        \
 | 
			
		||||
             ROW2_RIGHT(K26, K27, K28, K29, K2A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW3_LEFT(K31, K32, K33, K34, K35),                        \
 | 
			
		||||
             ___2_MIDDLE_3___,                                          \
 | 
			
		||||
             ROW3_RIGHT(K36, K37, K38, K39, K3A),                       \
 | 
			
		||||
             ___5_BOTTOM_LEFT___,   ___5_BOTTOM_RIGHT___,               \
 | 
			
		||||
             ___12_DOX_ALL_THUMBS___                                    \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
#define Base_dox_bepo(                                                  \
 | 
			
		||||
                      K01, K02, K03, K04, K05,                          \
 | 
			
		||||
                      K06, K07, K08, K09, K0A,                          \
 | 
			
		||||
                      K11, K12, K13, K14, K15,                          \
 | 
			
		||||
                      K16, K17, K18, K19, K1A,                          \
 | 
			
		||||
                      K21, K22, K23, K24, K25,                          \
 | 
			
		||||
                      K26, K27, K28, K29, K2A,                          \
 | 
			
		||||
                      K31, K32, K33, K34, K35,                          \
 | 
			
		||||
                      K36, K37, K38, K39, K3A                           \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_edox(                                                           \
 | 
			
		||||
             ROW0_LEFT(K01, K02, K03, K04, K05),                        \
 | 
			
		||||
             ___2_MIDDLE_1___,                                          \
 | 
			
		||||
             ROW0_RIGHT(K06, K07, K08, K09, K0A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW1_LEFT(K11, K12, K13, K14, K15),                        \
 | 
			
		||||
             ___2_MIDDLE_2___,                                          \
 | 
			
		||||
             ROW1_RIGHT(K16, K17, K18, K19, K1A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW2_LEFT(K21, K22, K23, K24, K25),                        \
 | 
			
		||||
             ROW2_RIGHT(K26, K27, K28, K29, K2A),                       \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW3_LEFT(K31, K32, K33, K34, K35),                        \
 | 
			
		||||
             ___2_MIDDLE_3___,                                          \
 | 
			
		||||
             ROW3_RIGHT(K36, K37, K38, K39, K3A),                       \
 | 
			
		||||
             ___5_BOTTOM_LEFT___, ___5_BOTTOM_RIGHT___,                 \
 | 
			
		||||
             ___12_DOX_ALL_THUMBS_BP___                                 \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define Base_dox_bepo6(                                                 \
 | 
			
		||||
                       K01, K02, K03, K04, K05, K06,                    \
 | 
			
		||||
                       K07, K08, K09, K0A, K0B, K0C,                    \
 | 
			
		||||
                       K11, K12, K13, K14, K15, K16,                    \
 | 
			
		||||
                       K17, K18, K19, K1A, K1B, K1C,                    \
 | 
			
		||||
                       K21, K22, K23, K24, K25, K26,                    \
 | 
			
		||||
                       K27, K28, K29, K2A, K2B, K2C                     \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_edox(                                                           \
 | 
			
		||||
             ___6SYMBOL_BEPO_L___,                                      \
 | 
			
		||||
             ___2_MIDDLE_T_BP___,                                       \
 | 
			
		||||
             ___6SYMBOL_BEPO_R___,                                      \
 | 
			
		||||
             ROW1_LEFT_BP6(K01, K02, K03, K04, K05, K06),               \
 | 
			
		||||
             ___2_MIDDLE_2_BP___,                                       \
 | 
			
		||||
             ROW1_RIGHT_BP6(K07, K08, K09, K0A, K0B, K0C),              \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW2_LEFT_BP6(K11, K12, K13, K14, K15, K16),               \
 | 
			
		||||
             ROW2_RIGHT_BP6(K17, K18, K19, K1A, K1B, K1C),              \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ROW3_LEFT_BP6(K21, K22, K23, K24, K25, K26),               \
 | 
			
		||||
             ___2_MIDDLE_3_BP___,                                       \
 | 
			
		||||
             ROW3_RIGHT_BP6(K27, K28, K29, K2A, K2B, K2C),              \
 | 
			
		||||
                                                                        \
 | 
			
		||||
             ___5_BOTTOM_LEFT_BP___, ___5_BOTTOM_RIGHT_BP___,           \
 | 
			
		||||
             ___12_DOX_ALL_THUMBS_BP___                                 \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
#define Transient_dox6(                                                 \
 | 
			
		||||
                       K01, K02, K03, K04, K05, K06,                    \
 | 
			
		||||
                       K07, K08, K09, K0A, K0B, K0C,                    \
 | 
			
		||||
                       K11, K12, K13, K14, K15, K16,                    \
 | 
			
		||||
                       K17, K18, K19, K1A, K1B, K1C,                    \
 | 
			
		||||
                       K21, K22, K23, K24, K25, K26,                    \
 | 
			
		||||
                       K27, K28, K29, K2A, K2B, K2C,                    \
 | 
			
		||||
                       K31, K32, K33, K34, K35, K36,                    \
 | 
			
		||||
                       K37, K38, K39, K3A, K3B, K3C                     \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_edox(                                                           \
 | 
			
		||||
             K01, K02, K03, K04, K05, K06,                              \
 | 
			
		||||
             ___2___,                                                   \
 | 
			
		||||
             K07, K08, K09, K0A, K0B, K0C,                              \
 | 
			
		||||
             K11, K12, K13, K14, K15, K16,                              \
 | 
			
		||||
             ___2___,                                                   \
 | 
			
		||||
             K17, K18, K19, K1A, K1B, K1C,                              \
 | 
			
		||||
             K21, K22, K23, K24, K25, K26,                              \
 | 
			
		||||
             K27, K28, K29, K2A, K2B, K2C,                              \
 | 
			
		||||
             K31, K32, K33, K34, K35, K36,                              \
 | 
			
		||||
             ___2___,                                                   \
 | 
			
		||||
             K37, K38, K39, K3A, K3B, K3C,                              \
 | 
			
		||||
             ___5___, ___5___,                                          \
 | 
			
		||||
             ___12___                                                   \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
#define Dox_base(...)        Base_dox(__VA_ARGS__)
 | 
			
		||||
#define Dox_bepo_base(...)   Base_dox_bepo(__VA_ARGS__)
 | 
			
		||||
#define Dox_bepo_base6(...)  Base_dox_bepo6(__VA_ARGS__)
 | 
			
		||||
#define Dox_transient(...)   Transient_dox6(__VA_ARGS__)
 | 
			
		||||
| 
						 | 
				
			
			@ -19,175 +19,30 @@
 | 
			
		|||
#include "ericgebhart.h"
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  // 4x10
 | 
			
		||||
  [_DVORAK]  = BASE_5x14(___NUMS___, ___DVORAK___),
 | 
			
		||||
  [_QWERTY]  = BASE_5x14(___NUMS___, ___QWERTY___),
 | 
			
		||||
  [_COLEMAK] = BASE_5x14(___NUMS___, ___COLEMAK_DH___),
 | 
			
		||||
  [_BEAKL]   = BASE_5x14(___BKLNUMS___, ___BEAKL15___),
 | 
			
		||||
 | 
			
		||||
    [DVORAK] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_DVORAK_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_DVORAK_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_DVORAK_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  //[_DVORAK_BP] = BASE_5x14_bepo(___DVORAK_FR___),
 | 
			
		||||
  //[_BEAKL_BP]  = BASE_5x14_bepo(___BEAKL15_FR___),
 | 
			
		||||
 | 
			
		||||
    [QWERTY] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_QWERTY_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_QWERTY_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_QWERTY_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  // 4x12
 | 
			
		||||
  //[_BEPO]      = BASE_5x14_bepo6(___BEPO6_FR___),
 | 
			
		||||
 | 
			
		||||
    [COLEMAK] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_COLEMAK_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_COLEMAK_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_COLEMAK_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  // transient macro takes a 3x12 for args
 | 
			
		||||
  [_SYMB]    = TRANSIENT_5x14(___12___, ___SYMB_BEAKLA_3x12___),
 | 
			
		||||
  //[_SYMB_BP] = TRANSIENT_5x14(___SYMB_BEAKLA_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [WORKMAN] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_WORKMAN_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_WORKMAN_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_WORKMAN_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  [_TOPROWS]    = TRANSIENT_5x14(___12___, ___TOPROWS_3x12___),
 | 
			
		||||
  //[_TOPROWS_BP] = TRANSIENT_5x14(___TOPROWS_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [NORMAN] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_NORMAN_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_NORMAN_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_NORMAN_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  [_KEYPAD]    = TRANSIENT_5x14(___12___, ___KP_C_3x12___),
 | 
			
		||||
  //[_KEYPAD_BP] = TRANSIENT_5x14(___KP_C_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [DVORAK_ON_BEPO] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_DVORAK_B_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_DVORAK_B_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_DVORAK_B_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM_FR___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [BEPO] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        KC_GRV,    ___12_DVORAK_B_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB, ___12_DVORAK_B_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,   ___12_DVORAK_B_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_14_BOTTOM_BP___,
 | 
			
		||||
        ___ORTHO_14_THUMBS_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [XMONAD] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___, ___12_DVORAK_1___,  ___,
 | 
			
		||||
        ___, ___12_DVORAK_2___,  ___,
 | 
			
		||||
        ___, ___12_DVORAK_3___,  ___,
 | 
			
		||||
        ___14___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [XMONAD_FR] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___, ___12_DVORAK_B_1___,  ___,
 | 
			
		||||
        ___, ___12_DVORAK_B_2___,  ___,
 | 
			
		||||
        ___, ___12_DVORAK_B_3___,  ___,
 | 
			
		||||
        ___14___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    // SYMBOLS
 | 
			
		||||
    [SYMB] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_SYMB_1___,
 | 
			
		||||
        ___14_SYMB_2___,
 | 
			
		||||
        ___14_SYMB_3___,
 | 
			
		||||
        ___14_SYMB_4___,
 | 
			
		||||
        ___14___
 | 
			
		||||
                                       ),
 | 
			
		||||
 | 
			
		||||
    [KEYPAD] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_KP_1___,
 | 
			
		||||
        ___14_KP_2___,
 | 
			
		||||
        ___14_KP_3___,
 | 
			
		||||
        ___14_KP_4___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [KEYPAD_ON_BEPO] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_KP_B_1___,
 | 
			
		||||
        ___14_KP_B_2___,
 | 
			
		||||
        ___14_KP_B_3___,
 | 
			
		||||
        ___14_KP_B_4___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [SYMB_ON_BEPO] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_SYMB_B_1___,
 | 
			
		||||
        ___14_SYMB_B_2___,
 | 
			
		||||
        ___14_SYMB_B_3___,
 | 
			
		||||
        ___14_SYMB_B_4___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    // MEDIA AND MOUSE
 | 
			
		||||
    [MDIA] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_MDIA_1___,
 | 
			
		||||
        ___14_MDIA_2___,
 | 
			
		||||
        ___14_MDIA_3___,
 | 
			
		||||
        ___14_MDIA_4___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [LAYERS] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_LAYERS_1___,
 | 
			
		||||
        ___14_LAYERS_2___,
 | 
			
		||||
        ___14_LAYERS_3___,
 | 
			
		||||
        ___14___,
 | 
			
		||||
        ___14___
 | 
			
		||||
                                         ),
 | 
			
		||||
 | 
			
		||||
    [_RGB] = LAYOUT_ortho_5x14_wrapper(
 | 
			
		||||
        ___14_RGB_1___,
 | 
			
		||||
        ___14_RGB_2___,
 | 
			
		||||
        ___14_RGB_3___,
 | 
			
		||||
        ___14___,
 | 
			
		||||
        ___14___
 | 
			
		||||
        ),
 | 
			
		||||
  // Navigation and control
 | 
			
		||||
  [_NAV]    = TRANSIENT_5x14(___12___, ___NAV_3x12___),
 | 
			
		||||
  [_LAYERS] = TRANSIENT_5x14(___12___, ___LAYERS_3x12___),
 | 
			
		||||
  //[_RGB]  = TRANSIENT_5x14(___12___, ___RGB_3x12___),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* bool process_record_user(uint16_t keycode, keyrecord_t *record) { */
 | 
			
		||||
/*   switch (keycode) { */
 | 
			
		||||
/*     case QWERTY: */
 | 
			
		||||
/*       if (record->event.pressed) { */
 | 
			
		||||
/*         set_single_persistent_default_layer(_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 ADJUST: */
 | 
			
		||||
/*       if (record->event.pressed) { */
 | 
			
		||||
/*         layer_on(_ADJUST); */
 | 
			
		||||
/*       } else { */
 | 
			
		||||
/*         layer_off(_ADJUST); */
 | 
			
		||||
/*       } */
 | 
			
		||||
/*       return false; */
 | 
			
		||||
/*       break; */
 | 
			
		||||
/*   } */
 | 
			
		||||
/*   return true; */
 | 
			
		||||
/* } */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										53
									
								
								keyboards/kinesis/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								keyboards/kinesis/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,53 @@
 | 
			
		|||
/*
 | 
			
		||||
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
 | 
			
		||||
 | 
			
		||||
  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 "keymap_bepo.h"
 | 
			
		||||
#include "ericgebhart.h"
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_PVARG(...)     LAYOUT_pretty(__VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define Kinesis_base(...)        Base_4x6_4_6(__VA_ARGS__)
 | 
			
		||||
#define Kinesis_bepo_base(...)   Base_bepo_4x6_4_6(__VA_ARGS__)
 | 
			
		||||
#define Kinesis_bepo_base6(...)  Base_bepo6_4x6_4_6(__VA_ARGS__)
 | 
			
		||||
#define Kinesis_transient(...)   Transient6_4x6_4_6(__VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
  // Qwerty Base layers
 | 
			
		||||
  [_DVORAK]  = Kinesis_base(___NUMS___, ___DVORAK___),
 | 
			
		||||
  [_QWERTY]  = Kinesis_base(___NUMS___, ___QWERTY___),
 | 
			
		||||
  [_COLEMAK] = Kinesis_base(___NUMS___, ___COLEMAK_DH___),
 | 
			
		||||
  [_BEAKL]   = Kinesis_base(___BKLNUMS___, ___BEAKL15___),
 | 
			
		||||
  // Bepo Base layers
 | 
			
		||||
  [_DVORAK_BP] = Kinesis_bepo_base(___NUMS_BP___, ___DVORAK_FR___),
 | 
			
		||||
  [_BEAKL_BP]  = Kinesis_bepo_base(___BKLNUMS_BP___,   ___BEAKL15_FR___),
 | 
			
		||||
 | 
			
		||||
  [_BEPO]      = Kinesis_bepo_base6(___BEPO6___),
 | 
			
		||||
 | 
			
		||||
  // transient layers.
 | 
			
		||||
  // Switch to using a transient layer macro
 | 
			
		||||
  [_SYMB]    = Kinesis_transient(___12_FUNC___, ___SYMB_BEAKLA_3x12___),
 | 
			
		||||
  [_SYMB_BP] = Kinesis_transient(___12_FUNC___, ___SYMB_BEAKLA_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
  [_TOPROWS]    = Kinesis_transient(___12___, ___TOPROWS_3x12___),
 | 
			
		||||
  [_TOPROWS_BP] = Kinesis_transient(___12___, ___TOPROWS_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
  [_NAV]    = Kinesis_transient(___12___, ___NAV_3x12___),
 | 
			
		||||
  [_LAYERS] = Kinesis_transient(___12___, ___LAYERS_3x12___),
 | 
			
		||||
  [_ADJUST] = Kinesis_transient(___12___, ___ADJUST_3x12___),
 | 
			
		||||
  //[_RGB]    = Kinesis_transient(___12___, ___RGB_3x12___),
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										5
									
								
								keyboards/kinesis/keymaps/ericgebhart/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								keyboards/kinesis/keymaps/ericgebhart/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
Overview
 | 
			
		||||
========
 | 
			
		||||
 | 
			
		||||
These are my keymaps. There isn't much here. Go take a look at my Userspace readme.
 | 
			
		||||
That's where all the code is.
 | 
			
		||||
							
								
								
									
										16
									
								
								keyboards/kinesis/keymaps/ericgebhart/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								keyboards/kinesis/keymaps/ericgebhart/rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
# Build Options
 | 
			
		||||
#   change yes to no to disable
 | 
			
		||||
#
 | 
			
		||||
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
 | 
			
		||||
MOUSEKEY_ENABLE = yes       # Mouse keys
 | 
			
		||||
EXTRAKEY_ENABLE = yes       # Audio control and System control
 | 
			
		||||
CONSOLE_ENABLE = no         # Console for debug
 | 
			
		||||
COMMAND_ENABLE = yes        # Commands for debug and configuration
 | 
			
		||||
NKRO_ENABLE = yes           # Enable N-Key Rollover
 | 
			
		||||
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 | 
			
		||||
MIDI_ENABLE = no            # MIDI controls
 | 
			
		||||
AUDIO_ENABLE = no           # Audio output
 | 
			
		||||
UNICODE_ENABLE = no         # Unicode
 | 
			
		||||
RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight. 
 | 
			
		||||
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										101
									
								
								keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										101
									
								
								keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,101 @@
 | 
			
		|||
/*
 | 
			
		||||
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
 | 
			
		||||
 | 
			
		||||
  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 "ericgebhart.h"
 | 
			
		||||
#include "layouts.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  // Qwerty based Base layers
 | 
			
		||||
  [_DVORAK]  = Rebound_base(___DVORAK___),
 | 
			
		||||
  [_BEAKL]   = Rebound_base(___BEAKL15___),
 | 
			
		||||
  [_COLEMAK] = Rebound_base(___COLEMAK_DH___),
 | 
			
		||||
  [_QWERTY]  = Rebound_base(___QWERTY___),
 | 
			
		||||
 | 
			
		||||
  // Bepo base layers
 | 
			
		||||
  [_BEAKL_BP]  = Rebound_base_bepo(___BEAKL15_FR___),
 | 
			
		||||
  [_DVORAK_BP] = Rebound_base_bepo(___DVORAK_FR___),
 | 
			
		||||
  [_BEPO]      = Rebound_base_bepo6(___BEPO6___),
 | 
			
		||||
 | 
			
		||||
  // Transient layers.
 | 
			
		||||
  [_SYMB]    = Rebound_transient(___SYMB_BEAKLA_3x12___),
 | 
			
		||||
  [_SYMB_BP] = Rebound_transient(___SYMB_BEAKLA_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
  [_KEYPAD]    = Rebound_transient(___KP_C_3x12___),
 | 
			
		||||
  [_KEYPAD_BP] = Rebound_transient(___KP_C_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
  [_TOPROWS]    = Rebound_transient(___TOPROWS_3x12___),
 | 
			
		||||
  [_TOPROWS_BP] = Rebound_transient(___TOPROWS_BP_3x12___),
 | 
			
		||||
  [_NAV]    = Rebound_transient(___NAV_3x12___),
 | 
			
		||||
  [_LAYERS] = Rebound_transient(___LAYERS_3x12___),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		||||
  switch(get_highest_layer(layer_state)){
 | 
			
		||||
  case _DVORAK:
 | 
			
		||||
    if (clockwise) {
 | 
			
		||||
      tap_code16(KC_VOLD);
 | 
			
		||||
    } else {
 | 
			
		||||
      tap_code16(KC_VOLU);
 | 
			
		||||
    }
 | 
			
		||||
    break;
 | 
			
		||||
 | 
			
		||||
  case _NAV:
 | 
			
		||||
    if (clockwise) {
 | 
			
		||||
      tap_code16(S(KC_TAB));
 | 
			
		||||
    } else {
 | 
			
		||||
      tap_code16(KC_TAB);
 | 
			
		||||
    }
 | 
			
		||||
    break;
 | 
			
		||||
  }
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
void oled_task_user(void) {
 | 
			
		||||
  // Host Keyboard Layer Status
 | 
			
		||||
  oled_write_P(PSTR(""), false);
 | 
			
		||||
 | 
			
		||||
  switch (get_highest_layer(layer_state)) {
 | 
			
		||||
  case _BASE:
 | 
			
		||||
    oled_write_P(PSTR("Rebound\n"), false);
 | 
			
		||||
    oled_write_P(PSTR("Rev4\n"), false);
 | 
			
		||||
    break;
 | 
			
		||||
  case _NAV:
 | 
			
		||||
    oled_write_P(PSTR("Nav\n"), false);
 | 
			
		||||
    break;
 | 
			
		||||
  case _SYMB_BEAKL:
 | 
			
		||||
  case _SYMB:
 | 
			
		||||
    oled_write_P(PSTR("Symbols\n"), false);
 | 
			
		||||
    break;
 | 
			
		||||
  case _KEYPAD:
 | 
			
		||||
    oled_write_P(PSTR("Top Rows\n"), false);
 | 
			
		||||
    break;
 | 
			
		||||
  default:
 | 
			
		||||
    // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
			
		||||
    oled_write_ln_P(PSTR("Undefined"), false);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // Host Keyboard LED Status
 | 
			
		||||
  led_t led_state = host_keyboard_led_state();
 | 
			
		||||
  oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR("    "), false);
 | 
			
		||||
  oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR("    "), false);
 | 
			
		||||
  oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR("    "), false);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										113
									
								
								keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										113
									
								
								keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,113 @@
 | 
			
		|||
/*
 | 
			
		||||
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
 | 
			
		||||
 | 
			
		||||
  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/>.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/********************************************************************/
 | 
			
		||||
/* Rebound 4 rows, 1x12, 3x13  */
 | 
			
		||||
/********************************************************************/
 | 
			
		||||
 | 
			
		||||
#define LVARG_rebound(...)    LAYOUT_all(__VA_ARGS__)
 | 
			
		||||
#define LAYOUT_rebound_base(                                            \
 | 
			
		||||
                            K01, K02, K03, K04, K05,                    \
 | 
			
		||||
                            K06, K07, K08, K09, K0A,                    \
 | 
			
		||||
                            K11, K12, K13, K14, K15,                    \
 | 
			
		||||
                            K16, K17, K18, K19, K1A,                    \
 | 
			
		||||
                            K21, K22, K23, K24, K25,                    \
 | 
			
		||||
                            K26, K27, K28, K29, K2A                     \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_rebound(                                                        \
 | 
			
		||||
                ROW1_LEFT(K01, K02, K03, K04, K05),                     \
 | 
			
		||||
                ROW1_RIGHT(K06, K07, K08, K09, K0A),                    \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW2_LEFT(K11, K12, K13, K14, K15),                     \
 | 
			
		||||
                KC_CCCV,                                                \
 | 
			
		||||
                ROW2_RIGHT(K16, K17, K18, K19, K1A),                    \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW3_LEFT(K21, K22, K23, K24, K25),                     \
 | 
			
		||||
                MO(_ADJUST),                                            \
 | 
			
		||||
                ROW3_RIGHT(K26, K27, K28, K29, K2A),                    \
 | 
			
		||||
                ___13_BOTTOM___                                         \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_rebound_base_bepo(                                       \
 | 
			
		||||
                                 K01, K02, K03, K04, K05,               \
 | 
			
		||||
                                 K06, K07, K08, K09, K0A,               \
 | 
			
		||||
                                 K11, K12, K13, K14, K15,               \
 | 
			
		||||
                                 K16, K17, K18, K19, K1A,               \
 | 
			
		||||
                                 K21, K22, K23, K24, K25,               \
 | 
			
		||||
                                 K26, K27, K28, K29, K2A                \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_rebound(                                                        \
 | 
			
		||||
                ROW1_LEFT_BP(K01, K02, K03, K04, K05),                  \
 | 
			
		||||
                ROW1_RIGHT_BP(K06, K07, K08, K09, K0A),                 \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW2_LEFT_BP(K11, K12, K13, K14, K15),                  \
 | 
			
		||||
                KC_CCCV,                                                \
 | 
			
		||||
                ROW2_RIGHT_BP(K16, K17, K18, K19, K1A),                 \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW3_LEFT_BP(K21, K22, K23, K24, K25),                  \
 | 
			
		||||
                MO(_ADJUST),                                            \
 | 
			
		||||
                ROW3_RIGHT_BP(K26, K27, K28, K29, K2A),                 \
 | 
			
		||||
                ___13_BOTTOM_BP___                                      \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
// Just for bepo because it's a 3x6 matrix on each side.
 | 
			
		||||
// So 3 pairs of 6 keys, left and right.
 | 
			
		||||
#define LAYOUT_rebound_base_bepo6(                                      \
 | 
			
		||||
                                  K01, K02, K03, K04, K05, K06,         \
 | 
			
		||||
                                  K07, K08, K09, K0A, K0B, K0C,         \
 | 
			
		||||
                                  K11, K12, K13, K14, K15, K16,         \
 | 
			
		||||
                                  K17, K18, K19, K1A, K1B, K1C,         \
 | 
			
		||||
                                  K21, K22, K23, K24, K25, K26,         \
 | 
			
		||||
                                  K27, K28, K29, K2A, K2B, K2C          \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_rebound(                                                        \
 | 
			
		||||
                ROW1_LEFT_BP6(K01, K02, K03, K04, K05, K06),            \
 | 
			
		||||
                ROW1_RIGHT_BP6(K07, K08, K09, K0A, K0B, K0C),           \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW2_LEFT_BP6(K11, K12, K13, K14, K15, K16),            \
 | 
			
		||||
                KC_CCCV,                                                \
 | 
			
		||||
                ROW2_RIGHT_BP6(K17, K18, K19, K1A, K1B, K1C),           \
 | 
			
		||||
                                                                        \
 | 
			
		||||
                ROW3_LEFT_BP6(K21, K22, K23, K24, K25, K26),            \
 | 
			
		||||
                MO(_ADJUST),                                            \
 | 
			
		||||
                ROW3_RIGHT_BP6(K27, K28, K29, K2A, K2B, K2C),           \
 | 
			
		||||
                ___13_BOTTOM_BP___                                      \
 | 
			
		||||
                                                                        )
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_rebound_transient(                                       \
 | 
			
		||||
                                 K01, K02, K03, K04, K05, K06,          \
 | 
			
		||||
                                 K07, K08, K09, K0A, K0B, K0C,          \
 | 
			
		||||
                                 K11, K12, K13, K14, K15, K16,          \
 | 
			
		||||
                                 K17, K18, K19, K1A, K1B, K1C,          \
 | 
			
		||||
                                 K21, K22, K23, K24, K25, K26,          \
 | 
			
		||||
                                 K27, K28, K29, K2A, K2B, K2C           \
 | 
			
		||||
                                                                        ) \
 | 
			
		||||
  LVARG_rebound(                                                        \
 | 
			
		||||
                K01, K02, K03, K04, K05, K06,                           \
 | 
			
		||||
                K07, K08, K09, K0A, K0B, K0C,                           \
 | 
			
		||||
                K11, K12, K13, K14, K15, K16,                           \
 | 
			
		||||
                ___,                                                    \
 | 
			
		||||
                K17, K18, K19, K1A, K1B, K1C,                           \
 | 
			
		||||
                K21, K22, K23, K24, K25, K26,                           \
 | 
			
		||||
                ___,                                                    \
 | 
			
		||||
                K27, K28, K29, K2A, K2B, K2C,                           \
 | 
			
		||||
                ___, ___12___)
 | 
			
		||||
 | 
			
		||||
#define Rebound_base(...)       LAYOUT_rebound_base(__VA_ARGS__)
 | 
			
		||||
#define Rebound_base_bepo(...)  LAYOUT_rebound_base_bepo(__VA_ARGS__)
 | 
			
		||||
#define Rebound_base_bepo6(...) LAYOUT_rebound_base_bepo6(__VA_ARGS__)
 | 
			
		||||
#define Rebound_transient(...)  LAYOUT_rebound_transient(__VA_ARGS__)
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
Overview
 | 
			
		||||
========
 | 
			
		||||
 | 
			
		||||
These are my keymaps. There isn't much here. Go take a look at my Userspace readme.
 | 
			
		||||
That's where all the code is.
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
# Build Options
 | 
			
		||||
#   change yes to no to disable
 | 
			
		||||
#
 | 
			
		||||
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
 | 
			
		||||
MOUSEKEY_ENABLE = yes       # Mouse keys
 | 
			
		||||
EXTRAKEY_ENABLE = yes       # Audio control and System control
 | 
			
		||||
CONSOLE_ENABLE = no         # Console for debug
 | 
			
		||||
COMMAND_ENABLE = yes        # Commands for debug and configuration
 | 
			
		||||
NKRO_ENABLE = yes           # Enable N-Key Rollover
 | 
			
		||||
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 | 
			
		||||
MIDI_ENABLE = no            # MIDI controls
 | 
			
		||||
AUDIO_ENABLE = no           # Audio output
 | 
			
		||||
UNICODE_ENABLE = no         # Unicode
 | 
			
		||||
RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight.
 | 
			
		||||
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 | 
			
		||||
TAP_DANCE_ENABLE = yes      # Enable the tap dance feature.
 | 
			
		||||
| 
						 | 
				
			
			@ -20,136 +20,33 @@
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  // 4x10
 | 
			
		||||
  [_DVORAK]  = BASE_5x15(___NUMS___, ___DVORAK___),
 | 
			
		||||
  [_QWERTY]  = BASE_5x15(___NUMS___, ___QWERTY___),
 | 
			
		||||
  [_COLEMAK] = BASE_5x15(___NUMS___, ___COLEMAK_DH___),
 | 
			
		||||
  [_BEAKL]   = BASE_5x15(___BKLNUMS___, ___BEAKL15___),
 | 
			
		||||
 | 
			
		||||
    [DVORAK] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        KC_GRV,     ___ORTHO_15_N___, KC_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_DVORAK_1___, KC_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_DVORAK_2___, KC_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_DVORAK_3___, KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  //[_DVORAK_BP] = BASE_5x15_bepo(___DVORAK_FR___),
 | 
			
		||||
  //[_BEAKL_BP]  = BASE_5x15_bepo(___BEAKL15_FR___),
 | 
			
		||||
 | 
			
		||||
    [QWERTY] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        KC_GRV,     ___ORTHO_15_N___, KC_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_QWERTY_1___, KC_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_QWERTY_2___, KC_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_QWERTY_3___, KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  // 4x12
 | 
			
		||||
  //[_BEPO]      = BASE_5x15_bepo6(___BEPO6_FR___),
 | 
			
		||||
 | 
			
		||||
    [COLEMAK] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        KC_GRV,     ___ORTHO_15_N___, KC_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_COLEMAK_1___, KC_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_COLEMAK_2___, KC_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_COLEMAK_3___, KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  // transient macro takes a 4x12 for args
 | 
			
		||||
  [_SYMB]    = TRANSIENT_5x15(___12___, ___SYMB_BEAKLA_3x12___),
 | 
			
		||||
  //[_SYMB_BP] = TRANSIENT_5x15(___12___, ___SYMB_BEAKLA_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [WORKMAN] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        KC_GRV,     ___ORTHO_15_N___, KC_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_WORKMAN_1___, KC_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_WORKMAN_2___, KC_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_WORKMAN_3___, KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  [_TOPROWS]    = TRANSIENT_5x15(___12___, ___TOPROWS_3x12___),
 | 
			
		||||
  //[_TOPROWS_BP] = TRANSIENT_5x15(___12___, ___TOPROWS_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [NORMAN] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        KC_GRV,     ___ORTHO_15_N___, KC_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_NORMAN_1___,  KC_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_NORMAN_2___,  KC_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_NORMAN_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM___
 | 
			
		||||
        ),
 | 
			
		||||
  [_KEYPAD]    = TRANSIENT_5x15(___12___, ___KP_C_3x12___),
 | 
			
		||||
  //[_KEYPAD_BP] = TRANSIENT_5x15(___12___, ___KP_C_BP_3x12___),
 | 
			
		||||
 | 
			
		||||
    [DVORAK_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        DB_GRV, ___ORTHO_15_B_N___, DB_EQL,
 | 
			
		||||
        KC_LOCK,    ___13_DVORAK_B_1___,  DB_SLASH,
 | 
			
		||||
        TAB_BKTAB,  ___13_DVORAK_B_2___,  DB_MINUS,
 | 
			
		||||
        KC_LSFT,    ___13_DVORAK_B_3___,  KC_RSFT,
 | 
			
		||||
        ___ORTHO_15_BOTTOM_FR___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [XMONAD] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___,  ___13_DVORAK_1___, ___,
 | 
			
		||||
        ___,  ___13_DVORAK_2___, ___,
 | 
			
		||||
        ___,  ___13_DVORAK_3___, ___,
 | 
			
		||||
        ___15___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [XMONAD_FR] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___,  ___13_DVORAK_B_1___,  ___,
 | 
			
		||||
        ___,  ___13_DVORAK_B_2___,  ___,
 | 
			
		||||
        ___,  ___13_DVORAK_B_3___,  ___,
 | 
			
		||||
        ___15___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [BEPO] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_B_SYMB___,
 | 
			
		||||
        KC_LOCK,        ___13_BEPO_1___, BP_W,
 | 
			
		||||
        TAB_BKTAB,      ___13_BEPO_2___, BP_CCED,
 | 
			
		||||
        BP_SFT_T_ECRC,  ___13_BEPO_3___, BP_SFT_T_W,
 | 
			
		||||
        ___ORTHO_15_BOTTOM_BP___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    // SYMBOLS
 | 
			
		||||
    [SYMB] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_SYMB_1___,
 | 
			
		||||
        ___15_SYMB_2___,
 | 
			
		||||
        ___15_SYMB_3___,
 | 
			
		||||
        ___15_SYMB_4___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [KEYPAD] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_KP_1___,
 | 
			
		||||
        ___15_KP_2___,
 | 
			
		||||
        ___15_KP_3___,
 | 
			
		||||
        ___15_KP_4___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [KEYPAD_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_KP_B_1___,
 | 
			
		||||
        ___15_KP_B_2___,
 | 
			
		||||
        ___15_KP_B_3___,
 | 
			
		||||
        ___15_KP_B_4___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [SYMB_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_SYMB_B_1___,
 | 
			
		||||
        ___15_SYMB_B_2___,
 | 
			
		||||
        ___15_SYMB_B_3___,
 | 
			
		||||
        ___15_SYMB_B_4___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    // MEDIA AND MOUSE
 | 
			
		||||
    [MDIA] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_MDIA_1___,
 | 
			
		||||
        ___15_MDIA_2___,
 | 
			
		||||
        ___15_MDIA_3___,
 | 
			
		||||
        ___15_MDIA_4___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [LAYERS] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_LAYERS_1___,
 | 
			
		||||
        ___15_LAYERS_2___,
 | 
			
		||||
        ___15_LAYERS_3___,
 | 
			
		||||
        ___15___
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
    [_RGB] = LAYOUT_ortho_5x15_wrapper(
 | 
			
		||||
        ___ORTHO_15_FUNC_1_12___,
 | 
			
		||||
        ___15_RGB_1___,
 | 
			
		||||
        ___15_RGB_2___,
 | 
			
		||||
        ___15_RGB_3___,
 | 
			
		||||
        ___15___
 | 
			
		||||
        ),
 | 
			
		||||
  // Navigation and control
 | 
			
		||||
  [_NAV]    = TRANSIENT_5x15(___12___, ___NAV_3x12___),
 | 
			
		||||
  [_LAYERS] = TRANSIENT_5x15(___12___, ___LAYERS_3x12___),
 | 
			
		||||
  //[_RGB]  = TRANSIENT_5x15(___12___, ___RGB_3x12___),
 | 
			
		||||
  [_ADJUST]    = TRANSIENT_5x15(___12___, ___ADJUST_3x12___),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -199,18 +96,18 @@ void keyboard_post_init_user(void) {
 | 
			
		|||
 | 
			
		||||
layer_state_t layer_state_set_user(layer_state_t state) {
 | 
			
		||||
  // rgblight_set_layer_state(0, !on_qwerty());
 | 
			
		||||
  rgblight_set_layer_state(0, layer_state_cmp(state, DVORAK));
 | 
			
		||||
  rgblight_set_layer_state(0, layer_state_cmp(state, _DVORAK));
 | 
			
		||||
 | 
			
		||||
  rgblight_set_layer_state(1, layer_state_cmp(state, BEPO));
 | 
			
		||||
  rgblight_set_layer_state(2, layer_state_cmp(state, DVORAK));
 | 
			
		||||
  rgblight_set_layer_state(1, layer_state_cmp(state, _BEPO));
 | 
			
		||||
  rgblight_set_layer_state(2, layer_state_cmp(state, _DVORAK));
 | 
			
		||||
  //|| layer_state_cmp(state, DVORAK_ON_BEPO)));
 | 
			
		||||
  rgblight_set_layer_state(3, layer_state_cmp(state, MDIA));
 | 
			
		||||
  rgblight_set_layer_state(4, layer_state_cmp(state, SYMB) );
 | 
			
		||||
  rgblight_set_layer_state(3, layer_state_cmp(state, _NAV));
 | 
			
		||||
  rgblight_set_layer_state(4, layer_state_cmp(state, _SYMB) );
 | 
			
		||||
 | 
			
		||||
  //(layer_state_cmp(state, SYMB) || (layer_state_cmp(state, SYMB_ON_BEPO))));
 | 
			
		||||
  rgblight_set_layer_state(5, layer_state_cmp(state, KEYPAD) );
 | 
			
		||||
  rgblight_set_layer_state(5, layer_state_cmp(state, _KEYPAD) );
 | 
			
		||||
  ///(layer_state_cmp(state, KEYPAD) || (layer_state_cmp(state, KEYPAD_ON_BEPO))));
 | 
			
		||||
  rgblight_set_layer_state(6, layer_state_cmp(state, LAYERS));
 | 
			
		||||
  rgblight_set_layer_state(6, layer_state_cmp(state, _LAYERS));
 | 
			
		||||
  rgblight_set_layer_state(7, layer_state_cmp(state, _RGB));
 | 
			
		||||
  return state;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue