* dz60/macos_arrow: move the eject key on esc to leave right cmd+bksp for move to trash * dz60/macos_arrow: move the reset key on the media layer This avoids accidental activation. * dz60/macos_arrow: disable LEDs
		
			
				
	
	
		
			93 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#include QMK_KEYBOARD_H
 | 
						|
 | 
						|
#define ______ KC_TRNS
 | 
						|
#define _BL 0
 | 
						|
#define _FL 1
 | 
						|
#define _ML 2
 | 
						|
 | 
						|
enum my_keycodes {
 | 
						|
  BR_UP = SAFE_RANGE,
 | 
						|
  BR_DOWN
 | 
						|
};
 | 
						|
 | 
						|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
						|
  /* ,-----------------------------------------------------------------------------------------.
 | 
						|
   * | Esc | 1   | 2   | 3   | 4   | 5   | 6   | 7   | 8   | 9   | 0   | -   | =   | Backspace |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * | Tab    | Q   | W   | E   | R   | T   | Y   | U   | I   | O   | P   | [   | ]   |   \    |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * | _FL      | A   | S   | D   | F   | G   | H   | J   | K   | L   | ;   | '   | Enter      |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * | Shift     | Z   | X   | C   | V   | B   | N   | M   | ,   | .   | /   | _ML | Up  |Shift|
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * | Ctrl | Alt  | Gui  |                Space               |Gui/_ML| Alt | Left| Down|Right|
 | 
						|
   * `-----------------------------------------------------------------------------------------'
 | 
						|
   */
 | 
						|
  [_BL] = LAYOUT_2_shifts(
 | 
						|
    KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
 | 
						|
    KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
 | 
						|
    MO(_FL), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
 | 
						|
    KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_ML), KC_UP, KC_RSFT,
 | 
						|
    KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, LM(_ML, MOD_RGUI), KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT),
 | 
						|
 | 
						|
  /* ,-----------------------------------------------------------------------------------------.
 | 
						|
   * |  `  | F1  | F2  | F3  | F4  | F5  | F6  | F7  | F8  | F9  | F10 | F11 | F12 |    Del    |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |        |     |     |     |     |     |     |     | UP  |     |     |     |     |        |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |          |     |     |     |     |     |     | Left| Down|Right|     |     |            |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |           |     |     |     |     |     |     |     |     |     |     |     |     |     |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |      |      |      |                                      |     |     |     |     |     |
 | 
						|
   * `-----------------------------------------------------------------------------------------'
 | 
						|
   */
 | 
						|
  [_FL] = LAYOUT(
 | 
						|
    KC_GRV, 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_DEL,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, KC_UP, ______, ______, ______, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, KC_LEFT, KC_DOWN, KC_RIGHT, ______, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______),
 | 
						|
 | 
						|
  /* ,-----------------------------------------------------------------------------------------.
 | 
						|
   * |Eject| BR- | BR+ | F3  | F4  |     |     |PREV |PLAY |NEXT |MUTE | V- | V+ |             |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |        |     |     |     |     |     |     |     |     |     |     |     |     |  Reset |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |          |     |     |     |     |     |     |     |     |     |     |     |            |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |           |     |     |     |     |     |     |     |     |     |     |     |     |     |
 | 
						|
   * |-----------------------------------------------------------------------------------------+
 | 
						|
   * |      |      |      |                                      |     |     |     |     |     |
 | 
						|
   * `-----------------------------------------------------------------------------------------'
 | 
						|
   */
 | 
						|
  [_ML] = LAYOUT(
 | 
						|
    KC_MEDIA_EJECT, BR_DOWN, BR_UP, ______, ______, KC_F5, KC_F6, KC_MEDIA_PREV_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_NEXT_TRACK, KC_AUDIO_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, RESET,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
 | 
						|
    ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______),
 | 
						|
};
 | 
						|
 | 
						|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
						|
  uint8_t key;
 | 
						|
  switch (keycode) {
 | 
						|
    case BR_DOWN:
 | 
						|
    case BR_UP:
 | 
						|
      // Clear the RGUI modifier placed by LM for _ML layer as brightness don't
 | 
						|
      // work with modifiers.
 | 
						|
      key = (keycode == BR_DOWN) ? KC_SLCK : KC_PAUS;
 | 
						|
      if (record->event.pressed) {
 | 
						|
          unregister_mods(MOD_RGUI);
 | 
						|
          add_key(key);
 | 
						|
          send_keyboard_report();
 | 
						|
      } else {
 | 
						|
          del_key(key);
 | 
						|
          send_keyboard_report();
 | 
						|
      }
 | 
						|
      return false; // Skip all further processing of this key
 | 
						|
    default:
 | 
						|
      return true; // Process all other keycodes normally
 | 
						|
  }
 | 
						|
}
 |