~ruther/qmk_firmware

f1c7b813aa7a09e2d3fdd46d373115d1e85f4c3e — Florian Beeres 8 years ago a005327
New layout for XD60/64 (#1748)

* Add yuuki keymap

Documentation is still a TODO and the keymap may not be final

* GRV on colon

* add KC_GRV to FN ESC

* hhkb ish

* hhkbish 2

* HHKBish and documentation

* Fix Markdown warnings

* typo
2 files changed, 54 insertions(+), 0 deletions(-)

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

Customized xd60 keymap with inspirations from HHKB and the layout I used on my Vortex Core (a 40% keyboard).

## Programming Instructions

Change the layout in `keymap.c` then run `make xd60-yuuki`. The compiled file will be located in `.build/xd60_yuuki.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-yuuki.hex`
* `sudo dfu-programmer atmega32u4 start`

## Layout

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

| Key                        | Function                           |
| -------------------------- | ---------------------------------- |
| Capslock | Forward Slash when tapped and Left Control when held |
| Left Control | Temporarily activate function layer |
| FN + ESC | Grave |
| Space Cadet Shift | Left Shift tapped writes ( and Right Shift tapped writes )  |
| FN + HJKL | Arrow Keys |
| Rightmost key in second row from bottom | Temporarily activate function layer |
| FN + C | ^ |
| FN + V | & (both for convenience as I use these keys a lot with VIM navigation and I find them hard reach) |
\ No newline at end of file

A keyboards/xd60/keymaps/yuuki/keymap.c => keyboards/xd60/keymaps/yuuki/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_ESC,    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,   \
      CTL_SLSH,  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_LSPO,   KC_NO,   KC_Z,     KC_X,     KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM,  KC_DOT,   KC_NO,    KC_RSPC,  KC_UP,    MO(FN),    \
      MO(FN),    KC_LGUI, KC_LALT,                              KC_SPC,                              KC_RALT,  KC_RCTL,  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_TRNS,  KC_TRNS,  KC_TRNS,            KC_DEL,    \
      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_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_PGUP,  KC_TRNS,   \
      KC_TRNS,   KC_TRNS, KC_TRNS,                              KC_SPC,                              KC_TRNS,  KC_TRNS,  KC_HOME,  KC_PGDOWN,KC_END
      ),

};