From cbe1af47de94092b4374c95e9f190fbf5ab0f7d9 Mon Sep 17 00:00:00 2001
From: Jonathan Rascher <jon@bcat.name>
Date: Sun, 25 Aug 2019 10:40:32 -0500
Subject: Add new 60% Tsangan HHKB layout (#6607)

---
 layouts/community/60_tsangan_hhkb/bcat/keymap.c  | 42 ++++++++++++++++++++++++
 layouts/community/60_tsangan_hhkb/bcat/readme.md | 18 ++++++++++
 2 files changed, 60 insertions(+)
 create mode 100644 layouts/community/60_tsangan_hhkb/bcat/keymap.c
 create mode 100644 layouts/community/60_tsangan_hhkb/bcat/readme.md

(limited to 'layouts')

diff --git a/layouts/community/60_tsangan_hhkb/bcat/keymap.c b/layouts/community/60_tsangan_hhkb/bcat/keymap.c
new file mode 100644
index 0000000000..3436941b1c
--- /dev/null
+++ b/layouts/community/60_tsangan_hhkb/bcat/keymap.c
@@ -0,0 +1,42 @@
+#include QMK_KEYBOARD_H
+
+enum layer {
+    LAYER_DEFAULT,
+    LAYER_FUNCTION,
+    LAYER_ADJUST,
+};
+
+/* Switch to function layer when held. */
+#define LY_FUNC MO(LAYER_FUNCTION)
+
+/* Switch to adjust layer when held; send menu key when tapped. */
+#define LY_ADJST LT(LAYER_ADJUST, KC_APP)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+    /* Default layer: http://www.keyboard-layout-editor.com/#/gists/86b33d75aa6f56d8781ab3d8475f4e77 */
+    [LAYER_DEFAULT] = LAYOUT_60_tsangan_hhkb(
+        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_BSLS,  KC_GRV,
+        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_BSPC,
+        KC_LCTL,  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_Z,     KC_X,     KC_C,     KC_V,     KC_B,     KC_N,     KC_M,     KC_COMM,  KC_DOT,   KC_SLSH,  KC_RSFT,  LY_FUNC,
+        KC_LCTL,  KC_LGUI,  KC_LALT,  KC_SPC,   KC_RALT,  LY_ADJST, KC_RCTL
+    ),
+
+    /* Function layer: http://www.keyboard-layout-editor.com/#/gists/f6311fd7e315de781143b80eb040a551 */
+    [LAYER_FUNCTION] = LAYOUT_60_tsangan_hhkb(
+        _______,  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_INS,   KC_DEL,
+        _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,  _______,  _______,  _______,  KC_PSCR,  KC_SLCK,  KC_PAUS,  KC_UP,    _______,  _______,
+        KC_CAPS,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,  _______,  _______,  _______,  KC_HOME,  KC_PGUP,  KC_LEFT,  KC_RGHT,  _______,
+        _______,  _______,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  KC_END,   KC_PGDN,  KC_DOWN,  _______,  _______,
+        _______,  _______,  _______,  _______,  _______,  _______,  _______
+    ),
+
+    /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/65ac939caec878401603bc36290852d4 */
+    [LAYER_ADJUST] = LAYOUT_60_tsangan_hhkb(
+        _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,
+        _______,  _______,  _______,  _______,  _______,  _______,  EEP_RST,  RESET,    _______,  _______,  _______,  RGB_VAI,  _______,  _______,
+        _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  RGB_HUI,  RGB_SAI,  RGB_RMOD, RGB_MOD,  RGB_TOG,
+        _______,  _______,  _______,  _______,  _______,  BL_BRTG,  BL_DEC,   BL_INC,   RGB_HUD,  RGB_SAD,  RGB_VAD,  _______,  _______,
+        _______,  _______,  _______,  _______,  _______,  _______,  _______
+    ),
+};
diff --git a/layouts/community/60_tsangan_hhkb/bcat/readme.md b/layouts/community/60_tsangan_hhkb/bcat/readme.md
new file mode 100644
index 0000000000..bb1b59e63e
--- /dev/null
+++ b/layouts/community/60_tsangan_hhkb/bcat/readme.md
@@ -0,0 +1,18 @@
+# bcat's 60% Tsangan HHKB layout
+
+This is a normal Tsangan/HHKB (split backspace, split right shift) layout with
+arrow and navigation keys that match a standard HHKB layout, as well as media
+keys centered around the WASD cluster. Additionally, the redundant right Super
+key on the bottom row actives an adjust layer to control RGB underglow.
+
+## Default layer
+
+![Default layer layout](https://i.imgur.com/cBYvCOh.png)
+
+## Function layer
+
+![Function layer layout](https://i.imgur.com/ut9PvhF.png)
+
+## Adjust layer
+
+![Adjust layer layout](https://i.imgur.com/Z6YIxdP.png)
-- 
cgit v1.2.3