]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
added media keys; many bug fixes
authorStick <nstickney@gmail.com>
Fri, 23 Jun 2017 21:02:01 +0000 (16:02 -0500)
committerStick <nstickney@gmail.com>
Fri, 23 Jun 2017 21:02:01 +0000 (16:02 -0500)
keyboards/ergodox/keymaps/familiar/README.md
keyboards/ergodox/keymaps/familiar/keymap.c

index 7e3bce406159d646adad77e161f5ea86c1f37650..4438fccf0b530703c49739aba679f5978f39d6d5 100644 (file)
@@ -23,12 +23,12 @@ Key features of the familiar layout:
 1. QWERTY default layout.
 1. International symbols layer, mapped in the US-International layout default positions, through [UCIS](https://github.com/qmk/qmk_firmware/wiki/Unicode-and-additional-language-support#ucis_enable).
 1. Numpad layer on right hand.
-1. Thumb cluster holds spacebar, ALT, and access to secondary layers.
+1. Thumb cluster holds spacebar and access to secondary layers.
 1. Function-layer arrow keys in both the first-person-shooter (actually ESDF instead of WASD) and vim (HJKL) locations.
 
 ## Install
 
-If you are on Windows or Mac, choose the proper line in [`keymap.c`](keymap.c) for [unicode/international character support](https://github.com/qmk/qmk_firmware/wiki/Unicode-and-additional-language-support#ucis_enable) (starts at line 235).
+If you are on Windows or Mac, choose the proper line in [`keymap.c`](keymap.c) for [unicode/international character support](https://github.com/qmk/qmk_firmware/wiki/Unicode-and-additional-language-support#ucis_enable) (starts at line 253).
 ```c
 void matrix_init_user(void) {
     set_unicode_input_mode(UC_LNX); // Linux
@@ -45,13 +45,15 @@ $ make ergodox-ez-familiar-teensy
 
 ## Usage
 
+NOTE: The keymap below is out of date.
+
 [![Familiar Layout](https://i.imgur.com/jflmkBb.png)](http://www.keyboard-layout-editor.com/#/gists/13508a9f99cff381d58b7be6f7dcc644)
 
 ### Layers
 1. Base Layer: QWERTY, with arrow keys at bottom right.
-1. UCIS Layer: US-International symbols layer, plus —. Accessed by toggling the `INTL` layer using the UCIS key (bottom of left thumb cluster).
-1. UCIS-Shifted Layer: Making shift work for UCIS characters. An ugly workaround. Any ideas? Accessed by holding shift while the UCIS layer is active (toggles the `INSF` layer).
-1. Numpad Layer: Right hand number pad. Accessed by toggling the `NUMP` layer using the NPAD key (bottom of right thumb cluster).
+1. UCIS Layer: US-International symbols layer, plus —. Accessed by toggling the `SYMB` layer using the UCIS key (bottom of left thumb cluster).
+1. UCIS-Shifted Layer: Making shift work for UCIS characters. An ugly workaround. Any ideas? Accessed by holding shift while the `SYMB` layer is active (toggles the `CSYM` layer).
+1. Numpad Layer: Right hand number pad. Accessed by toggling the `NUMP` layer using the NUMP key (bottom of right thumb cluster).
 1. Function Layer: F1-F12, arrows on ESDF and HJKL, media player controls. Accessed by holding either FN key (center key of each thumb cluster), which toggles the `ARRW` layer. I know, I need to work on my naming conventions.
 
 ## Contribute
@@ -61,9 +63,9 @@ $ make ergodox-ez-familiar-teensy
 I'm terrible at this; I have no background in human-computer interaction, kinesiology, or keyboard-ology. Please send comments/issues/pull requests/angry tweets/etc. If you think there is a better way to take advantage of the ErgoDox/QMK comination without straying far from 84/101-key QWERTY, I want to know it.
 
 ### Issues
-1. The top two keys of the right thumb cluster are currently unused. I wanted them for screen brightness, but I haven't found a solution I like.
-1. The `'`, `"`, `[`, and `]` keys are terrible to access; I want to put them somewhere else but I haven't figured out where.
-1. The `INSF` layer is an ugly workaround. I should write a function for doing different things in the `INTL` layer depending on whether SHIFT is being held. Or something. Ideas?
+1. The `CSYM` layer is an ugly workaround. I should write a function for doing different things in the `SYMB` layer depending on whether SHIFT is being held. Or something. Ideas?
+1. Right now, the thumb cluster function keys double as slash and whack... this really isnt a great solution.
+1. `MENU` and `LEAD` are useless, at the moment.
 
 ## License
 QMK is licensed ([mostly](https://github.com/qmk/qmk_firmware/issues/1038)) under the [GPLv2](blob/master/license_GPLv2.md). Accordingly, to whatever extent applicable, this keymap is licensed under the [GPLv3](../../../../license_GPLv3.md).
index fb326b3ddff761a02078f6d7a75646b102bbf56d..e45751565135cd2a51961802938ddbddf00c6ed4 100644 (file)
@@ -3,9 +3,6 @@
 #include "action_layer.h"
 #include "version.h"
 
-// Leader Key Timeout
-//#define LEADER_TIMEOUT 300
-
 // Layers
 #define BASE 0 // default layer
 #define SYMB 1 // international symbols
@@ -56,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                                 ,------|------|------|       |------+------+------.
  *                                 |      |SLASH/| LOCKS|       | MUTE |WHACK/|      |
  *                                 |  SPC | MO(4)|------|       |------|MO(4) | SPC  |
- *                                 |      |      | TO(3)|       |TO(1) |      |      |
+ *                                 |      |      | TO(1)|       |TO(3) |      |      |
  *                                 `--------------------'       `--------------------'
  */
 [BASE] = KEYMAP(
@@ -74,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
             KC_PGUP,    KC_Y,       KC_U,       KC_I,       KC_O,       KC_P,       KC_DEL,
                         KC_H,       KC_J,       KC_K,       KC_L,       KC_SCLN,    KC_ENTER,
             KC_PGDN,    KC_N,       KC_M,       KC_COMM,    KC_DOT,     KC_UP,      KC_RSPC,
-                        MT(MOD_RALT, KC_LBRC),  KC_RBRC,    KC_LEFT,    KC_DOWN,    KC_RGHT,
+                        MT(MOD_RALT, KC_LBRC),  MT(MOD_RCTL, KC_RBRC),  KC_LEFT,    KC_DOWN,    KC_RGHT,
             KC_VOLD,    KC_VOLU,
             KC_MUTE,
             TG(NUMP),   LT(ARRW, KC_BSLS),   KC_SPC
@@ -83,13 +80,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 /* layer 1: International symbols, etc
  *
  * ,--------------------------------------------------.           ,--------------------------------------------------.
- * |     ¬  |   ¡  |   ²  |   ³  |   ¤  |   €  |   ¼  |           |  ½   |  ¾   |  ‘   |  ’   |  ¥   |  ×   |        |
+ * |        |   ¡  |   ²  |   ³  |   ¤  |   €  |   ¼  |           |  ½   |  ¾   |  ‘   |  ’   |  ¥   |  ×   |        |
  * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
  * |        |   ä  |   å  |   é  |   ®  |   þ  |      |           |      |  ü   |  ú   |  í   |  ó   |  ö   |        |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
  * |     ´  |   á  |   ß  |   ð  |      |      |------|           |------|      |      |      |  ø   |  ¶   |        |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * |MO(CSYM)|   æ  |   ¿  |   ©  |      |      |      |           |      |  ñ   |  µ   |  ç   |      |      |MO(CSYM)|
+ * |MO(CSYM)|   æ  |   ¿  |   ©  |   ¬  |      |      |           |      |  ñ   |  µ   |  ç   |      |      |MO(CSYM)|
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
  * |        |      |      |      |      |                                       |  «   |  »   |      |      |        |
  * `------------------------------------'                                       `------------------------------------'
@@ -103,10 +100,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  */
 [SYMB] = KEYMAP(
         // left hand
-        UC(0x00AC), UC(0x00A1), UC(0x00B2), UC(0x00B3), UC(0x00A4), UC(0x20AC), UC(0x00BC),
+        _______,    UC(0x00A1), UC(0x00B2), UC(0x00B3), UC(0x00A4), UC(0x20AC), UC(0x00BC),
         _______,    UC(0x00E4), UC(0x00E5), UC(0x00E9), UC(0x00AE), UC(0x00FE), _______,
         UC(0x00B4), UC(0x00E1), UC(0x00DF), UC(0x00F0), _______,    _______,
-        MO(CSYM),   UC(0x00E6), UC(0x00BF), UC(0x00A9), _______,    _______,    _______,
+        MO(CSYM),   UC(0x00E6), UC(0x00BF), _______,    UC(0x00AC), UC(0x00A9),    _______,
         _______,    _______,    _______,    _______,    _______,
                                             _______,    _______,
                                                         _______,
@@ -133,9 +130,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
  * |     ¨  |   Á  |   §  |   Ð  |      |      |------|           |------|      |      |      |  Ø   |  °   |        |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * |        |   Æ  |      |   ¢  |      |      |      |           |      |  Ñ   |      |  Ç   |      |      |        |
+ * |        |   Æ  |      |   ¢  |   ¦  |      |      |           |      |  Ñ   |      |  Ç   |      |      |        |
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
- * |        |      |      |   ¦  |      |                                       |      |      |      |      |        |
+ * |        |      |      |      |      |                                       |      |      |      |      |        |
  * `------------------------------------'                                       `------------------------------------'
  *                                        ,-------------.       ,-------------.
  *                                        |      |      |       |      |      |
@@ -150,8 +147,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
         _______,    UC(0x00B9), _______,    _______,    UC(0x00A3), _______,    _______,
         _______,    UC(0x00C4), UC(0x00C5), UC(0x00C9), S(KC_R),    UC(0x00DE), _______,
         UC(0x00A8), UC(0x00C1), UC(0x00A7), UC(0x00D0), S(KC_F),    S(KC_G),
-        _______,    UC(0x00C6), S(KC_X),    UC(0x00A2), S(KC_V),    S(KC_B),    _______,
-        _______,    _______,    _______,    UC(0x00A6), _______,
+        _______,    UC(0x00C6), UC(0x00A6), UC(0x00A2), S(KC_V),    S(KC_B),    _______,
+        _______,    _______,    _______,    _______,    _______,
                                                                     _______,    _______,
                                                                                 _______,
                                                     _______,        _______,    _______,
@@ -177,7 +174,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
  * |        |      |      |      |      |      |      |           |      |      |   1  |   2  |   3  |  =   |        |
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
- * |        |      |      |      |      |                                       |   0  |   .  |   ,  | ENTER|        |
+ * |        |      |      |      |      |                                       |0/RALT|./RCTL|   ,  | ENTER|        |
  * `------------------------------------'                                       `------------------------------------'
  *                                        ,-------------.       ,-------------.
  *                                        |      |      |       |      |      |
@@ -202,7 +199,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
             _______,    _______,    KC_KP_7,    KC_KP_8,    KC_KP_9,    KC_PMNS,    _______,
                         _______,    KC_KP_4,    KC_KP_5,    KC_KP_6,    KC_PPLS,    _______,
             _______,    _______,    KC_KP_1,    KC_KP_2,    KC_KP_3,    KC_PEQL,    _______,
-                                    KC_KP_0,    KC_KP_DOT,  KC_PCMM,    KC_PENT,    _______,
+                                    MT(MOD_RALT, KC_KP_0),  MT(MOD_RCTL, KC_KP_DOT),KC_PCMM,    KC_PENT,    _______,
             _______,    _______,
             _______,
             _______,    _______,    _______
@@ -223,7 +220,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * |        |      |      |      |      |                                       |      |      | HOME | PGDN |    END |
  * `------------------------------------'                                       `------------------------------------'
  *                                        ,-------------.       ,-------------.
- *                                        | PAUSE|SYSREQ|       |      |      |
+ *                                        | SYSRQ| PAUSE|       |      |      |
  *                                 ,------|------|------|       |------+------+------.
  *                                 |      |      |      |       |      |      |      |
  *                                 |      |      |------|       |------|      |      |
@@ -235,13 +232,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
         KC_ESC,     KC_F1,      KC_F2,      KC_F3,      KC_F4,      KC_F5,      KC_F6,
         _______,    _______,    _______,    KC_UP,      _______,    _______,    _______,
         _______,    _______,    KC_LEFT,    KC_DOWN,    KC_RGHT,    _______,
-        _______,    _______,    _______,    _______,    _______,    _______,    _______,
+        _______,    KC_MPRV,    KC_MSTP,    KC_MPLY,    KC_MNXT,    _______,    _______,
         _______,    _______,    _______,    _______,    _______,
-                                                                    KC_PAUSE,   _______,
+                                                                    KC_SYSREQ,  KC_PAUSE,
                                                                                 _______,
                                                     _______,        _______,    _______,
         // right hand
-            KC_F7,      KC_F8,      KC_F9,      KC_F10,     KC_F11,     KC_F12,     KC_SYSREQ,
+            KC_F7,      KC_F8,      KC_F9,      KC_F10,     KC_F11,     KC_F12,     _______,
             _______,    _______,    _______,    _______,    _______,    _______,    KC_INS,
                         KC_LEFT,    KC_DOWN,    KC_UP,      KC_RGHT,    _______,    _______,
             _______,    _______,    _______,    _______,    _______,    KC_PGUP,    _______,