[Keyboard] Pinky refactor (#11643)
* QMK Configurator layout support for Pinky 3-row and 4-row versions * refactor default keymaps - use an enum for layer names - remove redundant definitions - qmk cformat pass - modify pinky/4 via keymap to mirror pinky/4 default functionality * remove LAYOUT_kc macros This usage is not endorsed by QMK as it has been found to be confusing to novice users. * add VIA support to pinky/3 * update config.h files Removes unnecessary definitions for Backlight, RGB Underglow, Magic config and MIDI. * update main rules.mk file Updates the rules.mk file to match the formatting of the current QMK-provided template. Removes sample bootloader comments, feature rules that are no longer included in the template, and updates the in-line comments. * update and split keyboard readme Updates the main readme file's formatting, adds instructions to access bootloader mode, and adds more specific readmes for each version. * add line breaks between rows in the info.json files * rename layout macros for Community Layout forward compatibility The layouts of the Pinky3 and Pinky4 aren't currently Community Layouts, but support for them could be added with a rules.mk edit should the layouts be added to QMK.
This commit is contained in:
		
							parent
							
								
									3b663ee495
								
							
						
					
					
						commit
						a7d79f4c00
					
				
					 16 changed files with 568 additions and 555 deletions
				
			
		| 
						 | 
				
			
			@ -15,140 +15,87 @@
 | 
			
		|||
 */
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
// Layer names don't all need to be of the same length, obviously, and you can also skip them
 | 
			
		||||
// entirely and just use numbers.
 | 
			
		||||
#define _QWERTY 0
 | 
			
		||||
#define _LOWER 3
 | 
			
		||||
#define _RAISE 4
 | 
			
		||||
#define _ADJUST 16
 | 
			
		||||
 | 
			
		||||
// Defines the keycodes used by our macros in process_record_user
 | 
			
		||||
enum custom_keycodes {
 | 
			
		||||
  QWERTY = SAFE_RANGE,
 | 
			
		||||
  LOWER,
 | 
			
		||||
  RAISE,
 | 
			
		||||
  ADJUST
 | 
			
		||||
enum layer_names {
 | 
			
		||||
    _QWERTY,
 | 
			
		||||
    _LOWER,
 | 
			
		||||
    _RAISE,
 | 
			
		||||
    _ADJUST
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define ________ KC_TRNS
 | 
			
		||||
#define XXXXXXXX KC_NO
 | 
			
		||||
#define KC_LOWER LOWER
 | 
			
		||||
#define KC_RAISE RAISE
 | 
			
		||||
#define KC_ADJ   ADJUST
 | 
			
		||||
#define KC_CTLTB CTL_T(KC_TAB)
 | 
			
		||||
enum custom_keycodes {
 | 
			
		||||
    QWERTY = SAFE_RANGE,
 | 
			
		||||
    LOWER,
 | 
			
		||||
    RAISE,
 | 
			
		||||
    ADJUST
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define CTL_TAB CTL_T(KC_TAB)
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  [_QWERTY] = LAYOUT( \
 | 
			
		||||
  //,---------------------------------------------------------------------.  ,---------------------------------------------------------------------.
 | 
			
		||||
        KC_ESC,     KC_1,     KC_2,     KC_3,     KC_4,     KC_5,  KC_LPRN,     KC_RPRN,     KC_6,     KC_7,     KC_8,     KC_9,     KC_0,  KC_BSPC,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
        KC_TAB,     KC_Q,     KC_W,     KC_E,     KC_R,     KC_T,  KC_LBRC,     KC_RBRC,     KC_Y,     KC_U,     KC_I,     KC_O,     KC_P,  KC_BSLS,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      KC_CTLTB,     KC_A,     KC_S,     KC_D,     KC_F,     KC_G,  KC_LCBR,     KC_RCBR,     KC_H,     KC_J,     KC_K,     KC_L,  KC_SCLN,  KC_QUOT,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
       KC_LSFT,     KC_Z,     KC_X,     KC_C,     KC_V,     KC_B,   KC_ADJ,      KC_ADJ,     KC_N,     KC_M,  KC_COMM,   KC_DOT,  KC_SLSH,   KC_ENT,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
                                     KC_LALT, KC_LOWER,  KC_LGUI,   KC_SPC,      KC_SPC,  KC_RGUI, KC_RAISE,  KC_RALT \
 | 
			
		||||
                                //`---------------------------------------'  `---------------------------------------'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_LOWER] = LAYOUT( \
 | 
			
		||||
  //,---------------------------------------------------------------------.  ,---------------------------------------------------------------------.
 | 
			
		||||
        KC_GRV, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________,  KC_MINS,   KC_EQL, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
                                    ________, ________, ________, ________,    ________, ________, ________, ________ \
 | 
			
		||||
                                //`---------------------------------------'  `---------------------------------------'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_RAISE] = LAYOUT( \
 | 
			
		||||
  //,---------------------------------------------------------------------.  ,---------------------------------------------------------------------.
 | 
			
		||||
        KC_GRV, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________,  KC_MINS,   KC_EQL, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
                                    ________, ________, ________, ________,    ________, ________, ________, ________ \
 | 
			
		||||
                                //`---------------------------------------'  `---------------------------------------'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_ADJUST] = LAYOUT( \
 | 
			
		||||
  //,---------------------------------------------------------------------.  ,---------------------------------------------------------------------.
 | 
			
		||||
      ________,    KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5, ________,    ________,    KC_F6,    KC_F7,    KC_F8,    KC_F9,   KC_F10, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________,   KC_F11,   KC_F12, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________,  KC_HOME,  KC_PGDN,  KC_PGUP,   KC_END, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
      ________, ________, ________, ________, ________, ________, ________,    ________, ________, ________, ________, ________, ________, ________,\
 | 
			
		||||
  //|---------+---------+---------+---------+---------+---------+---------|  |---------+---------+---------+---------+---------+---------+---------|
 | 
			
		||||
                                    ________, ________, ________, ________,    ________, ________, ________, ________ \
 | 
			
		||||
                                //`---------------------------------------'  `---------------------------------------'
 | 
			
		||||
  )
 | 
			
		||||
    [_QWERTY] = LAYOUT_split_4x7_4(
 | 
			
		||||
        KC_ESC , KC_1   , KC_2   , KC_3   , KC_4   , KC_5   , KC_LPRN,    KC_RPRN, KC_6   , KC_7   , KC_8   , KC_9   , KC_0   , KC_BSPC,
 | 
			
		||||
        KC_TAB , KC_Q   , KC_W   , KC_E   , KC_R   , KC_T   , KC_LBRC,    KC_RBRC, KC_Y   , KC_U   , KC_I   , KC_O   , KC_P   , KC_BSLS,
 | 
			
		||||
        CTL_TAB, KC_A   , KC_S   , KC_D   , KC_F   , KC_G   , KC_LCBR,    KC_RCBR, KC_H   , KC_J   , KC_K   , KC_L   , KC_SCLN, KC_QUOT,
 | 
			
		||||
        KC_LSFT, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , ADJUST ,    ADJUST , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_ENT ,
 | 
			
		||||
                                   KC_LALT, LOWER  , KC_LGUI, KC_SPC ,    KC_SPC , KC_RGUI, RAISE  , KC_RALT
 | 
			
		||||
    ),
 | 
			
		||||
    [_LOWER] = LAYOUT_split_4x7_4(
 | 
			
		||||
        KC_GRV , _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, KC_MINS, KC_EQL , _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
                                   _______, _______, _______, _______,    _______, _______, _______, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [_RAISE] = LAYOUT_split_4x7_4(
 | 
			
		||||
        KC_GRV , _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, KC_MINS, KC_EQL , _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
                                   _______, _______, _______, _______,    _______, _______, _______, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [_ADJUST] = LAYOUT_split_4x7_4(
 | 
			
		||||
        _______, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_F5  , _______,    _______, KC_F6  , KC_F7  , KC_F8  , KC_F9  , KC_F10 , _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, KC_F11 , KC_F12 , _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______,    _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
                                   _______, _______, _______, _______,    _______, _______, _______, _______
 | 
			
		||||
    )
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
			
		||||
  if (record->event.pressed) {
 | 
			
		||||
    // set_timelog();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  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;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void matrix_scan_user(void) {
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void led_set_user(uint8_t usb_led) {
 | 
			
		||||
    if (record->event.pressed) {
 | 
			
		||||
        // set_timelog();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    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;
 | 
			
		||||
    }
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue