]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/xd75/keymaps/skewwhiffy/keymap.c
Duplicate KC space to UK (#2541)
[qmk_firmware.git] / keyboards / xd75 / keymaps / skewwhiffy / keymap.c
index 887fbed728a3dd0ed39cba16dfde3f289dba00a4..f2a8418fe7af56af389b3668c54b84607ab2c184 100644 (file)
 #include "keymap_uk.h"
 // Fillers to make layering more clear
 #define _______ KC_TRNS
-#define ___T___ KC_TRNS
-#define XXXXXXX KC_NO
 
 // Layer shorthand
 #define _CM 0 // Colemak
 #define _NB 1 // Numbers
-#define _FN 2 // Function
-#define _SYL 3 // Symbols left
-#define _SYR 4 // Symbols right
-#define _NAV 5 // Navigation
+#define _SYL 2 // Symbols left
+#define _SYR 3 // Symbols right
+#define _NAV 4 // Navigation
+
+// Layer buttons
+#define _Z_SFT SFT_T(UK_Z)
+#define _SLSH SFT_T(UK_SLSH)
+#define _X_NB LT(_NB, UK_X)
+#define _DOT_NB LT(_NB, UK_DOT)
+#define _C_SY LT(_SYL, UK_C)
+#define _COM_SY LT(_SYR, UK_COMM)
+#define _B_NAV LT(_NAV, UK_B)
+#define _K_NAV LT(_NAV, UK_K)
+#define _F1_NB LT(_NB, UK_F1)
+#define _3_NB LT(_NB, UK_3)
+
+// Custom hotkeys
+#define _TERM LCTL(UK_QUOT) // Hotkey for Cmder or iTerm
+#define _S_TAB S(UK_TAB)
+#define _C_LEFT LCTL(UK_LEFT)
+#define _C_RGHT LCTL(UK_RGHT)
+#define _A_LEFT LALT(UK_LEFT)
+#define _A_RGHT LALT(UK_RGHT)
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
 /* Colemak _CM
- * .------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
- * |        |              |              |               |              |              |        |        |        |                |        |                  |                |               |        |
- * |--------+--------------+--------------+---------------+--------------+--------------+--------+--------+--------+----------------+--------+------------------+----------------+------------------------|
- * |        | Q            |   W          | F             | P            | G            |        |        |        | J              | L      | U                | Y              | ;             |        |
- * |--------+--------------+--------------+---------------+--------------+--------------+--------+--------+--------+----------------+--------+------------------+----------------+------------------------|
- * |        | A            |   R          | S             | T            | D            |        |        |        | H              | N      | E                | I              | O             | RETURN |
- * |--------+--------------+--------------+---------------+--------------+--------------+--------+--------+--------+----------------+--------+------------------+----------------+------------------------|
- * |        | sft or Z     | nb or X      | sym or C      | V            | nav or B     |        |        |        | nav or K       | M      | sym or ,         | nb or .        | sft or /      |        |
- * |--------+--------------+--------------+---------------+--------------+--------------+--------+--------+--------+----------------+--------+------------------+----------------+------------------------|
- * | LSHIFT | LCTRL        |   LALT       | LGUI          | CTRL '       | SPACE        | LCTRL  | DEL    | LALT   | BACKSP         | RGUI   | RGUI             | RALT           | RCTRL         | RSHIFT |
- * '------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
+ * |--------------------------------------------------------------------------------------------------------------------------------------|
+ * |        | Q      | W      | F      | P      | G      |        |        |        | J      | L      | U      | Y      | ;      |        |
+ * |--------------------------------------------------------------------------------------------------------------------------------------|
+ * |        | A      | R      | S      | T      | D      |        |        |        | H      | N      | E      | I      | O      | ENT    |
+ * |--------------------------------------------------------------------------------------------------------------------------------------|
+ * |        | Z      | X      | C      | V      | B      |        |        |        | K      | M      | ,      | .      | /      |        |
+ * |        | SHIFT  | NUMBER | SYMBOL |        | NAV    |        |        |        | NAV    |        | SYMBOL | FUNC   | SHIFT  |        |
+ * |--------------------------------------------------------------------------------------------------------------------------------------|
+ * | LSHIFT | LCTRL  | LALT   | LGUI   | TERM   | SPACE  | LCTRL  | DEL    | LALT   | BACKSP | RGUI   | RGUI   | RALT   | RCTRL  | RSHIFT |
+ * |--------------------------------------------------------------------------------------------------------------------------------------|
  */
  [_CM] = {
-  { _______, _______,       _______,       _______,        _______,       _______,        _______, _______, _______, _______,        _______, _______,           _______,          _______,        _______ },
-  { _______, KC_Q,          KC_W,          KC_F,           KC_P,          KC_G,           _______, _______, _______, KC_J,           KC_L,    KC_U,              KC_Y,             KC_SCLN,        _______ },
-  { _______, KC_A,          KC_R,          KC_S,           KC_T,          KC_D,           _______, _______, _______, KC_H,           KC_N,    KC_E,              KC_I,             KC_O,           KC_ENT  },
-  { _______, SFT_T(KC_Z),   LT(_NB, KC_X), LT(_SYL, KC_C), KC_V,          LT(_NAV, KC_B), _______, _______, _______, LT(_NAV, KC_K), KC_M,    LT(_SYR, KC_COMM), LT(_FN, KC_DOT),  SFT_T(KC_SLSH), _______ },
-  { KC_LSFT, KC_LCTL,       KC_LALT,       KC_LGUI,        LCTL(KC_QUOT), KC_SPC,         KC_LCTL, KC_DEL , KC_LALT, KC_BSPC,        KC_RGUI, KC_RGUI,           KC_RALT,          KC_RCTL,        KC_RSFT },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
+  { _______, UK_Q,    UK_W,    UK_F,    UK_P,    UK_G,    _______, _______, _______, UK_J,    UK_L,    UK_U,    UK_Y,    UK_SCLN, _______ },
+  { _______, UK_A,    UK_R,    UK_S,    UK_T,    UK_D,    _______, _______, _______, UK_H,    UK_N,    UK_E,    UK_I,    UK_O,    UK_ENT  },
+  { _______, _Z_SFT,  _X_NB,   _C_SY,   UK_V,    _B_NAV,  _______, _______, _______, _K_NAV,  UK_M,    _COM_SY, _DOT_NB, _SLSH,   _______ },
+  { UK_LSFT, UK_LCTL, UK_LALT, UK_LGUI, _TERM,   UK_SPC,  UK_LCTL, UK_DEL , UK_LALT, UK_BSPC, UK_RGUI, UK_RGUI, UK_RALT, UK_RCTL, UK_RSFT },
  },
 
-/* Numbers _NB / Functions _FN
- * .----------------------------------------------------------------------------------------------------------------------------------------------------.
- * |        |        |              |        |        |        |        |        |        |        |        |        |                |        |        |
- * |--------+--------+--------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+----------------+-----------------|
- * |        |        | F7           | F8     | F9     | F10    |        |        |        |        | 7      | 8      | 9              |        |        |
- * |--------+--------+--------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+----------------+--------+--------|
- * |        |        | F4           | F5     | F6     | F11    |        |        |        |        | 4      | 5      | 6              |        |        |
- * |--------+--------+--------------+--------+--------+--------+--------+--------+--------+--------+--------+----------------------------------+--------|
- * |        |        | F1           | F2     | F3     | F12    |        |        |        |        | 1      | 2      | 3              |        |        |
- * |--------+--------+--------------+--------+--------+--------+--------+--------+--------+--------+--------+-------------------------+--------+--------|
- * |        |        |              |        |        |        |        |        |        |        | 0      | 0      | .              |        |        |
- * '----------------------------------------------------------------------------------------------------------------------------------------------------'
+/* Numbers _NB
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
+ * |        |        | F7     | F8     | F9     | F10    |        |        |        |        | 7      | 8      | 9      |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        |        | F4     | F5     | F6     | F11    |        |        |        |        | 4      | 5      | 6      |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
+ * |        |        | F1     | F2     | F3     | F12    |        |        |        |        | 1      | 2      | 3      |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------+--------|
+ * |        |        |        |        |        |        |        |        |        |        | 0      | 0      | .      |        |        |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
  */
  [_NB] = {
-  { _______, _______, _______,       _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,         _______, _______, },
-  { _______, _______, KC_F7,         KC_F8,   KC_F9,   KC_F10,  _______, _______, _______, _______, KC_7,    KC_8,    KC_9,            _______, _______  },
-  { _______, _______, KC_F4,         KC_F5,   KC_F6,   KC_F11,  _______, _______, _______, _______, KC_4,    KC_5,    KC_6,            _______, _______  },
-  { _______, _______, LT(_NB, KC_X), KC_F2,   KC_F3,   KC_F12,  _______, _______, _______, _______, KC_1,    KC_2,    KC_3,            _______, _______  },
-  { _______, _______, _______,       _______, _______, _______, _______, _______, _______, _______, KC_0,    KC_0,    KC_DOT,          _______, _______  },
- },
- [_FN] = {
-  { _______, _______, _______,       _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,         _______, _______, },
-  { _______, _______, KC_F7,         KC_F8,   KC_F9,   KC_F10,  _______, _______, _______, _______, KC_7,    KC_8,    KC_9,            _______, _______  },
-  { _______, _______, KC_F4,         KC_F5,   KC_F6,   KC_F11,  _______, _______, _______, _______, KC_5,    KC_5,    KC_6,            _______, _______  },
-  { _______, _______, KC_F1,         KC_F2,   KC_F3,   KC_F12,  _______, _______, _______, _______, KC_1,    KC_2,    LT(_FN, KC_DOT), _______, _______  },
-  { _______, _______, _______,       _______, _______, _______, _______, _______, _______, _______, KC_0,    KC_0,    KC_DOT,          _______, _______  },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
+  { _______, _______, UK_F7,   UK_F8,   UK_F9,   UK_F10,  _______, _______, _______, _______, UK_7,    UK_8,    UK_9,    _______, _______ },
+  { _______, _______, UK_F4,   UK_F5,   UK_F6,   UK_F11,  _______, _______, _______, _______, UK_4,    UK_5,    UK_6,    _______, _______ },
+  { _______, _______, _F1_NB,  UK_F2,   UK_F3,   UK_F12,  _______, _______, _______, _______, UK_1,    UK_2,    _3_NB,   _______, _______ },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, UK_0,    UK_0,    UK_DOT,  _______, _______ },
  },
 
-/* Symbols _SYL and _SYR
- * .-------------------------------------------------------------------------------------------------------------------------------------------------------.
- * |        |        |        |               |        |        |        |        |        |        |        |                  |        |        |        |
- * |--------+--------+--------+---------------+--------+--------+--------+--------+--------+--------+--------+------------------+--------+--------+--------|
- * |        | !      | £      | _             | -      | ~      |        |        |        | \      | {      | }                | /      | #      |        |
- * |--------+--------+--------+---------------+--------+--------+--------+--------+--------+--------+--------+------------------+--------+--------+--------|
- * |        | $      | %      | +             | =      |        |        |        |        | "      | (      | )                | '      | @      |        |
- * |--------+--------+--------+---------------+--------+--------+--------+--------+--------+--------+--------+------------------+--------+--------+--------|
- * |        | ^      | &      | *             | |      |        |        |        |        | <      | [      | ]                | >      | `      |        |
- * |--------+--------+--------+---------------+--------+--------+--------+--------+--------+--------+--------+------------------+--------+--------+--------|
- * |        |        |        |               |        |        |        |        |        |        |        |                  |        |        |        |
- * '-------------------------------------------------------------------------------------------------------------------------------------------------------'
+/* Symbols _SYL and _SYR - For some reason, combining this into the same layer causes problems.
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | !      | £      | _      | -      | ~      |        |        |        | \      | {      | }      | /      | #      |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | $      | %      | +      | =      |        |        |        |        | "      | (      | )      | '      | @      |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | ^      | &      | *      | |      |        |        |        |        | <      | [      | ]      | >      | `      |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
  */
  [_SYL] = {
-  { _______, _______, _______, _______,        _______, _______, _______, _______, _______, _______, _______, _______,           _______, _______, _______  },
-  { _______, KC_EXLM, UK_PND,  KC_UNDS,        KC_MINS, KC_TILD, _______, _______, _______, UK_BSLS, KC_LCBR, KC_RCBR,           KC_SLSH, UK_HASH, _______  },
-  { _______, KC_DLR,  KC_PERC, KC_PLUS,        KC_EQL,  _______, _______, _______, _______, UK_QUOT, KC_LPRN, KC_RPRN,           KC_QUOT, UK_AT,   _______  },
-  { _______, KC_CIRC, KC_AMPR, LT(_SYL, KC_C), UK_PIPE, _______, _______, _______, _______, KC_LABK, KC_LBRC, KC_RBRC,           KC_RABK, KC_GRV,  _______  },
-  { _______, _______, _______, _______,        _______, _______, _______, _______, _______, _______, _______, _______,           _______, _______, _______  },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
+  { _______, UK_EXLM, UK_PND,  UK_UNDS, UK_MINS, UK_TILD, _______, _______, _______, UK_BSLS, UK_LCBR, UK_RCBR, UK_SLSH, UK_HASH, _______ },
+  { _______, UK_DLR,  UK_PERC, UK_PLUS, UK_EQL,  _______, _______, _______, _______, UK_DQUO, UK_LPRN, UK_RPRN, UK_QUOT, UK_AT,   _______ },
+  { _______, UK_CIRC, UK_AMPR, _C_SY,   UK_PIPE, _______, _______, _______, _______, UK_LABK, UK_LBRC, UK_RBRC, UK_RABK, UK_GRV,  _______ },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
  },
  [_SYR] = {
-  { _______, _______, _______, _______,        _______, _______, _______, _______, _______, _______, _______, _______,           _______, _______, _______  },
-  { _______, KC_EXLM, UK_PND,  KC_UNDS,        KC_MINS, KC_TILD, _______, _______, _______, KC_BSLS, KC_LCBR, KC_RCBR,           KC_SLSH, UK_HASH, _______  },
-  { _______, KC_DLR,  KC_PERC, KC_PLUS,        KC_EQL,  _______, _______, _______, _______, UK_QUOT, KC_LPRN, KC_RPRN,           KC_QUOT, UK_AT,   _______  },
-  { _______, KC_CIRC, KC_AMPR, KC_ASTR,        UK_PIPE, _______, _______, _______, _______, KC_LABK, KC_LBRC, LT(_SYR, KC_COMM), KC_RABK, KC_GRV,  _______  },
-  { _______, _______, _______, _______,        _______, _______, _______, _______, _______, _______, _______, _______,           _______, _______, _______  },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
+  { _______, UK_EXLM, UK_PND,  UK_UNDS, UK_MINS, UK_TILD, _______, _______, _______, UK_BSLS, UK_LCBR, UK_RCBR, UK_SLSH, UK_HASH, _______ },
+  { _______, UK_DLR,  UK_PERC, UK_PLUS, UK_EQL,  _______, _______, _______, _______, UK_DQUO, UK_LPRN, UK_RPRN, UK_QUOT, UK_AT,   _______ },
+  { _______, UK_CIRC, UK_AMPR, UK_ASTR, UK_PIPE, _______, _______, _______, _______, UK_LABK, UK_LBRC, _COM_SY, UK_RABK, UK_GRV,  _______ },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
  },
 /*
  * Navigation
- * .------------------------------------------------------------------------------------------------------------------------------------------------------------------.
- * |        |          |              |        |              |               |        |        |        |               |        |        |        |        |        |
- * |--------+----------+--------------+--------+--------------+---------------+--------+--------+--------+---------------+--------+--------+--------+--------+--------|
- * |        | Esc      | Ctrl L       | Up     | Ctrl R       |               |        |        |        |               | PtSn   | ScLk   | Pause  |        |        |
- * |--------+----------+--------------+--------+--------------+---------------+--------+--------+--------+---------------+--------+--------+--------+--------+--------|
- * |        | Tab      | Left         | Down   | Right        |               |        |        |        |               | Insert | Home   | PgUp   |        |        |
- * |--------+----------+--------------+--------+--------------+---------------+--------+--------+--------+---------------+--------+--------+--------+--------+--------|
- * |        | ShTab    |              |        |              |               |        |        |        |               | ScLk   | End    | PgDn   |        |        |
- * |--------+----------+--------------+--------+--------------+---------------+--------+--------+--------+---------------+--------+--------+--------+--------+--------|
- * |        |          |              |        |              |               |        |        |        |               |        |        |        |        | RESET  |
- * '------------------------------------------------------------------------------------------------------------------------------------------------------------------'
+ * .--------------------------------------------------------------------------------------------------------------------------------------.
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | Esc    | Ctrl L | Up     | Ctrl R |        |        |        |        |        | PtSn   | ScLk   | Pause  |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | Tab    | Left   | Down   | Right  |        |        |        |        |        | Insert | Home   | PgUp   |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        | ShTab  | Alt L  |        | Alt R  |        |        |        |        |        | ScLk   | End    | PgDn   |        |        |
+ * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
+ * |        |        |        |        |        |        |        |        |        |        |        |        |        |        | RESET  |
+ * '--------------------------------------------------------------------------------------------------------------------------------------'
  */
  [_NAV] = {
-  { _______, _______,   _______,       _______, _______,       _______,        _______, _______, _______, _______,        _______, _______, _______, _______, _______  },
-  { _______, KC_ESC,    LCTL(KC_LEFT), KC_UP  , LCTL(KC_RGHT), _______,        _______, _______, _______, _______,        KC_PSCR, KC_SLCK, KC_PAUS, _______, _______  },
-  { _______, KC_TAB,    KC_LEFT,       KC_DOWN, KC_RGHT,       _______,        _______, _______, _______, _______,        KC_INS,  KC_HOME, KC_PGUP, _______, _______  },
-  { _______, S(KC_TAB), _______,       _______, _______,       LT(_NAV, KC_B), _______, _______, _______, LT(_NAV, KC_K), KC_SLCK, KC_END,  KC_PGDN, _______, _______  },
-  { _______, _______,   _______,       _______, _______,       _______,        _______, _______, _______, _______,        _______, _______, _______, _______, RESET    },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
+  { _______, UK_ESC,  _C_LEFT, UK_UP  , _C_RGHT, _______, _______, _______, _______, _______, UK_PSCR, UK_SLCK, UK_PAUS, _______, _______ },
+  { _______, UK_TAB,  UK_LEFT, UK_DOWN, UK_RGHT, _______, _______, _______, _______, _______, UK_INS,  UK_HOME, UK_PGUP, _______, _______ },
+  { _______, _S_TAB,  _A_LEFT, _______, _A_RGHT, _B_NAV,  _______, _______, _______, _K_NAV,  UK_SLCK, UK_END,  UK_PGDN, _______, _______ },
+  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET   },
  },
 };