diff options
| author | Jack Humbert <jack.humb@gmail.com> | 2016-11-21 20:00:13 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-11-21 20:00:13 -0500 |
| commit | 4bb0eaef262b90837ae666516ca8f40878d3c392 (patch) | |
| tree | 20d2151f68093ff2895bdca370a95864c86c2389 | |
| parent | be265decae734b08eb8d6ac537bd2a22495ad2f2 (diff) | |
| parent | b75538c0bfca03f7b493b7b7dbaf9dc5e7631e53 (diff) | |
| download | qmk_firmware-4bb0eaef262b90837ae666516ca8f40878d3c392.tar.gz qmk_firmware-4bb0eaef262b90837ae666516ca8f40878d3c392.zip | |
Merge pull request #893 from Sihui/sh-hhkb-jp
[HHKB JP with Dvorak]
| -rw-r--r-- | keyboards/hhkb/keymaps/sh_jp/Makefile | 1 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/sh_jp/README.md | 86 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/sh_jp/keymap.c | 60 |
3 files changed, 147 insertions, 0 deletions
diff --git a/keyboards/hhkb/keymaps/sh_jp/Makefile b/keyboards/hhkb/keymaps/sh_jp/Makefile new file mode 100644 index 000000000..a7f700f01 --- /dev/null +++ b/keyboards/hhkb/keymaps/sh_jp/Makefile | |||
| @@ -0,0 +1 @@ | |||
| OPT_DEFS += -DHHKB_JP | |||
diff --git a/keyboards/hhkb/keymaps/sh_jp/README.md b/keyboards/hhkb/keymaps/sh_jp/README.md new file mode 100644 index 000000000..4f82f2f4e --- /dev/null +++ b/keyboards/hhkb/keymaps/sh_jp/README.md | |||
| @@ -0,0 +1,86 @@ | |||
| 1 | ###Keymaps with both Dvorak layout and QWER layout for HHKB JP. | ||
| 2 | |||
| 3 | 1. The default layout is Dvorak. | ||
| 4 | 2. Use `Tog` to toggle between Dvorak and QWER | ||
| 5 | 3. Holding `NewCmd`, the original `LftCmd`, will activate the `NewCmd` layer which means `NewCmd+key` is the same as `Cmd+key` in normal QWER layout.<sup>[1](#cmdTab)</sup> | ||
| 6 | - For example, no matter you are in Dvorak layout or QWER layout, you can use `Cmd+s` to save a currently editing file. | ||
| 7 | 4. `Symb` makes type symbols easier | ||
| 8 | - for example: `Symb+a` is `!`. | ||
| 9 | 5. `Spc+key` equals to `Shft+key` while using `Spc` alone will yield a space as usual. | ||
| 10 | 6. There's an extra `Tab` in the last line. | ||
| 11 | |||
| 12 | ``` | ||
| 13 | Layer DVOR: | ||
| 14 | ,-----------------------------------------------------------. | ||
| 15 | |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| |Bsp| | ||
| 16 | |-----------------------------------------------------------| | ||
| 17 | |Tab | '| ,| .| P| Y| F| G| C| R| L| /| =| | | ||
| 18 | |------------------------------------------------------` Ent| | ||
| 19 | |Ctrl | A| O| E| U| I| D| H| T| N| S| -| \| | | ||
| 20 | |-----------------------------------------------------------| | ||
| 21 | |Shft | ;| Q| J| K| X| B| M| W| V| Z| | Up| | | ||
| 22 | |-----------------------------------------------------------| | ||
| 23 | |FN| `| Alt|NewCmd|Symb| Spc |Symb|Tab|RCmd|Tog|Lft|Dwn|Rgh| | ||
| 24 | `-----------------------------------------------------------' | ||
| 25 | ``` | ||
| 26 | |||
| 27 | ``` | ||
| 28 | Layer QWER: | ||
| 29 | ,-----------------------------------------------------------. | ||
| 30 | |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| -| =| |Bsp| | ||
| 31 | |-----------------------------------------------------------| | ||
| 32 | |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | ||
| 33 | |------------------------------------------------------` Ent| | ||
| 34 | |Ctrl | A| S| D| F| G| H| J| K| L| ;| '| \| | | ||
| 35 | |-----------------------------------------------------------| | ||
| 36 | |Shft | Z| X| C| V| B| N| M| ,| .| /| | Up| | | ||
| 37 | |-----------------------------------------------------------| | ||
| 38 | |FN| `| Alt|NewCmd|Symb| Spc |Symb|Tab|Cmd|Tog|Lft|Dwn|Rgh| | ||
| 39 | `-----------------------------------------------------------' | ||
| 40 | ``` | ||
| 41 | |||
| 42 | ``` | ||
| 43 | Layer Symb: | ||
| 44 | ,-----------------------------------------------------------. | ||
| 45 | | | | | | | | | | | | | | | | | | ||
| 46 | |-----------------------------------------------------------| | ||
| 47 | | | | | [| ]| | | {| }| | | | | | | ||
| 48 | |------------------------------------------------------` | | ||
| 49 | | | !| @| #| $| %| ^| &| *| (| )| '| \| | | ||
| 50 | |-----------------------------------------------------------| | ||
| 51 | | | | | | | | | | | | | | | | | ||
| 52 | |-----------------------------------------------------------| | ||
| 53 | | | | | | | | | | | | | | | | ||
| 54 | `-----------------------------------------------------------' | ||
| 55 | ``` | ||
| 56 | |||
| 57 | ``` | ||
| 58 | Layer FUNC: HHKB mode (HHKB Fn) | ||
| 59 | ,-----------------------------------------------------------. | ||
| 60 | |Pwr| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del| | ||
| 61 | |-----------------------------------------------------------| | ||
| 62 | |Caps | | | | | | | |Psc|Slk|Pus|Up | | | | ||
| 63 | |------------------------------------------------------` | | ||
| 64 | | |VoD|VoU|Mut| | | *| /|Hom|PgU|Lef|Rig| | | | ||
| 65 | |-----------------------------------------------------------| | ||
| 66 | | | | | | | | +| -|End|PgD|Dow| | | | | ||
| 67 | |-----------------------------------------------------------| | ||
| 68 | | || | | | | | | | | || | | | | ||
| 69 | `-----------------------------------------------------------' | ||
| 70 | ``` | ||
| 71 | |||
| 72 | ``` | ||
| 73 | Empty Layer: | ||
| 74 | ,-----------------------------------------------------------. | ||
| 75 | | | | | | | | | | | | | | | | | | ||
| 76 | |-----------------------------------------------------------| | ||
| 77 | | | | | | | | | | | | | | | | | ||
| 78 | |------------------------------------------------------` | | ||
| 79 | | | | | | | | | | | | | | | | | ||
| 80 | |-----------------------------------------------------------| | ||
| 81 | | | | | | | | | | | | | | | | | ||
| 82 | |-----------------------------------------------------------| | ||
| 83 | | | | | | | | | | | | | | | | ||
| 84 | `-----------------------------------------------------------' | ||
| 85 | ``` | ||
| 86 | <a name="cmdTab">1</a>: `NewCmd + Tab` does not work, you can use `RCmd+Tab` to switch among applications. | ||
diff --git a/keyboards/hhkb/keymaps/sh_jp/keymap.c b/keyboards/hhkb/keymaps/sh_jp/keymap.c new file mode 100644 index 000000000..d4cb3b041 --- /dev/null +++ b/keyboards/hhkb/keymaps/sh_jp/keymap.c | |||
| @@ -0,0 +1,60 @@ | |||
| 1 | #include "hhkb.h" | ||
| 2 | |||
| 3 | #define _______ KC_TRNS | ||
| 4 | |||
| 5 | enum { | ||
| 6 | DVOR, | ||
| 7 | QWER, | ||
| 8 | NEW_CMD, | ||
| 9 | SYMB, | ||
| 10 | FUNC | ||
| 11 | }; | ||
| 12 | |||
| 13 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 14 | [DVOR] = KEYMAP_JP( | ||
| 15 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_JYEN, KC_BSPC, | ||
| 16 | KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, | ||
| 17 | KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_BSLS, KC_ENT, | ||
| 18 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RO, KC_UP, KC_RSFT, | ||
| 19 | MO(FUNC), KC_ZKHK, KC_LALT, MO(NEW_CMD), MO(SYMB), MT(MOD_LSFT, KC_SPC), MO(SYMB), KC_TAB, KC_RGUI, TG(QWER), KC_LEFT, KC_DOWN, KC_RGHT | ||
| 20 | ), | ||
| 21 | [QWER] = KEYMAP_JP( | ||
| 22 | 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_JYEN, KC_BSPC, | ||
| 23 | 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, | ||
| 24 | 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_BSLS, KC_ENT, | ||
| 25 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_UP, KC_RSFT, | ||
| 26 | MO(FUNC), KC_ZKHK, KC_LALT, MO(NEW_CMD), MO(SYMB), MT(MOD_LSFT, KC_SPC), MO(SYMB), KC_TAB, KC_RGUI, _______, KC_LEFT, KC_DOWN, KC_RGHT | ||
| 27 | ), | ||
| 28 | |||
| 29 | [NEW_CMD] = KEYMAP_JP( | ||
| 30 | _______, LGUI(KC_1), LGUI(KC_2), LGUI(KC_3), LGUI(KC_4), LGUI(KC_5), LGUI(KC_6), LGUI(KC_7), LGUI(KC_8), LGUI(KC_9), LGUI(KC_0), _______, _______, _______, LGUI(KC_BSPC), | ||
| 31 | _______, LGUI(KC_Q), LGUI(KC_W), LGUI(KC_E), LGUI(KC_R), LGUI(KC_T), LGUI(KC_Y), LGUI(KC_U), LGUI(KC_I), LGUI(KC_O), LGUI(KC_P), LGUI(KC_LBRC), LGUI(KC_RBRC), | ||
| 32 | _______, LGUI(KC_A), LGUI(KC_S), LGUI(KC_D), LGUI(KC_F), LGUI(KC_G), LGUI(KC_H), LGUI(KC_J), LGUI(KC_K), LGUI(KC_L), _______, _______, _______, _______, | ||
| 33 | LGUI(KC_LSFT), LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), LGUI(KC_B), LGUI(KC_N), LGUI(KC_M), LGUI(KC_COMM), LGUI(KC_DOT), LGUI(KC_SLSH), _______, _______, _______, | ||
| 34 | _______, _______, _______, _______, _______, LGUI(KC_SPC), _______, _______, _______, _______, LGUI(KC_LEFT), LGUI(KC_DOWN), LGUI(KC_RGHT) | ||
| 35 | ), | ||
| 36 | |||
| 37 | [SYMB] = KEYMAP_JP( | ||
| 38 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
| 39 | _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, LSFT(KC_LBRC), LSFT(KC_RBRC), _______, _______,_______, _______, | ||
| 40 | _______, LSFT(KC_1),LSFT(KC_2),LSFT(KC_3),LSFT(KC_4), LSFT(KC_5), LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LSFT(KC_0), _______, _______, _______, | ||
| 41 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
| 42 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 43 | ), | ||
| 44 | |||
| 45 | [FUNC] = KEYMAP_JP( | ||
| 46 | KC_PWR, 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, | ||
| 47 | KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, | ||
| 48 | _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, | ||
| 49 | _______, _______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, | ||
| 50 | _______, _______, _______, _______, _______, _______ , _______, _______, _______, _______, _______, _______, _______ | ||
| 51 | ) | ||
| 52 | }; | ||
| 53 | |||
| 54 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t macro_id, uint8_t opt) { | ||
| 55 | return MACRO_NONE; | ||
| 56 | } | ||
| 57 | |||
| 58 | const uint16_t PROGMEM fn_actions[] = { | ||
| 59 | |||
| 60 | }; | ||
