~ruther/qmk_firmware

16843bc8c967e965a5361fe5f94abc9cd1ccc5a5 — J. Eric Mason 7 years ago 7854746
Pete's 40th XD64 Layout

Mac layout based on yuuki with some other changes, for Pete's 40th birthday keyboard
2 files changed, 54 insertions(+), 0 deletions(-)

A keyboards/xd60/keymaps/petesmom/README.md
A keyboards/xd60/keymaps/petesmom/keymap.c
A keyboards/xd60/keymaps/petesmom/README.md => keyboards/xd60/keymaps/petesmom/README.md +26 -0
@@ 0,0 1,26 @@
# pete's mom Layout

Customized xd60 keymap based on yuuki's but a step sideways with Mac support. For Pete on his 40th

## Programming Instructions

Change the layout in `keymap.c` then run `make xd60-petesmom`. The compiled file will be located in `.build/xd60_petesmom.hex` relative to the project root. To flash it onto your keyboard, use whatever program works on your OS. I personally use `dfu-programmer`, and run:

* `sudo dfu-programmer atmega32u4 erase`
* `sudo dfu-programmer atmega32u4 flash .build/xd60-petesmom.hex`
* `sudo dfu-programmer atmega32u4 start`

## Layout

See `keymap.c` for the details, but here are the important features:

| Key                        | Function                           |
| -------------------------- | ---------------------------------- |
| ESC | ESC when pressed alone but acts as ~ when pressed with Shift or LGUI down |
| FN + ESC | Grave |
| Right Shift | When tapped generates / |
| FN + HJKL | Arrow Keys |
| FN + C | ^ |
| FN + V | & |
| FN + , . RShift | Mac Vol - + Mute |
| FN + P [ ] \ | Mac Play/Pause, Prev Track, Next Track, Stop |

A keyboards/xd60/keymaps/petesmom/keymap.c => keyboards/xd60/keymaps/petesmom/keymap.c +28 -0
@@ 0,0 1,28 @@
#include "xd60.h"
#include "action_layer.h"

#define BASE 0
#define FN 1

#define CTL_SLSH CTL_T(KC_SLSH)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  // 0: Base Layer
  [BASE] = KEYMAP(
      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_BSPC,  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,   \
      KC_CAPS,   KC_A,    KC_S,     KC_D,     KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,     KC_SCLN,  KC_QUOT,  KC_NO,              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_NO,    RSFT_T(KC_SLASH),  KC_UP,    KC_RCTL,    \
      CTL_SLSH,  KC_LALT, KC_LGUI,                              KC_SPC,                              KC_RGUI,  MO(FN),  KC_LEFT,  KC_DOWN,  KC_RIGHT
      ),
  // 1: Function Layer
  [FN] = KEYMAP(
      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_DEL,    \
      KC_TRNS,   RGB_MOD, RGB_VAI,  KC_TRNS,  KC_TRNS, KC_HOME, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_MPLY,  KC_MRWD,  KC_MFFD,            KC_MSTP, \
      KC_TRNS,   RGB_TOG, RGB_VAD,  KC_MUTE,  KC_VOLU, KC_VOLD, KC_LEFT, KC_DOWN, KC_UP,   KC_RIGHT, KC_TRNS,  KC_TRNS,  KC_NO,              KC_ENT,    \
      KC_TRNS,   KC_NO,   KC_TRNS,  KC_TRNS,  KC_CIRC, KC_AMPR, KC_TRNS, KC_TRNS, KC_TRNS,KC__VOLDOWN,KC__VOLUP,KC_NO,   KC__MUTE,KC_PGUP,  RESET,   \
      KC_TRNS,   KC_TRNS, KC_TRNS,                              KC_SPC,                              KC_TRNS,  KC_TRNS,  KC_HOME,  KC_PGDOWN,KC_END
      ),

};