Kaynağa Gözat

Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware

Christopher Browne 9 yıl önce
ebeveyn
işleme
bbcc1046a6

+ 1 - 0
.gitignore

@@ -13,3 +13,4 @@ tags
 build/
 *.bak
 .vagrant/
+.DS_STORE

+ 1 - 1
QUICK_START.md

@@ -20,6 +20,6 @@ See [doc/keymap.md](tmk_core/doc/keymap.md).
 
 ## Flashing the firmware
 
-The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](keyboard/ergodox_ez/README.md) gives a great example.
+The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](keyboard/ergodox_ez/readme.md) gives a great example.
 
 If you want to program via the command line you can uncomment the ['modifyvm'] lines in the Vagrantfile to enable the USB passthrough into Linux and then program using the command line tools like dfu-util/dfu-programmer or you can install the Teensy CLI version.

+ 85 - 4
README.md

@@ -132,15 +132,75 @@ A macro can include the following commands:
 
 So above you can see the stroke interval changed to 255ms between each keystroke, then a bunch of keys being typed, waits a while, then the macro ends.
 
-Note: Using macros to have your keyboard send passwords for you is a bad idea.
+Note: Using macros to have your keyboard send passwords for you is possible, but a bad idea.
 
-### Additional keycode aliases for software-implemented layouts (Colemak, Dvorak, etc)
+### Advanced macro functions
+
+To get more control over the keys/actions your keyboard takes, the following functions are available to you in the `action_get_macro` function block:
+
+* `record->event.pressed`
+
+This is a boolean value that can be tested to see if the switch is being pressed or released. An example of this is
+
+```c
+if (record->event.pressed) {
+  // on keydown
+} else {
+  // on keyup
+}
+```
+
+* `register_code(<kc>);`
+
+This sends the `<kc>` keydown event to the computer. Some examples would be `KC_ESC`, `KC_C`, `KC_4`, and even modifiers such as `KC_LSFT` and `KC_LGUI`.
+
+* `unregister_code(<kc>);`
+
+Parallel to `register_code` function, this sends the `<kc>` keyup event to the computer. If you don't use this, the key will be held down until it's sent.
+
+* `layer_on(<n>);`
+
+This will turn on the layer `<n>` - the higher layer number will always take priority. Make sure you have `KC_TRNS` for the key you're pressing on the layer you're switching to, or you'll get stick there unless you have another plan.
+
+* `layer_off(<n>);`
+
+This will turn off the layer `<n>`.
+
+* `clear_keyboard();`
+
+This will clear all mods and keys currently pressed.
+
+* `clear_mods();`
+
+This will clear all mods currently pressed.
+
+* `clear_keyboard_but_mods();`
+
+This will clear all keys besides the mods currently pressed.
+
+#### Timer functionality
+
+It's possible to start timers and read values for time-specific events - here's an example:
+
+```c
+static uint16_t key_timer;
+key_timer = timer_read();
+if (timer_elapsed(key_timer) < 100) {
+  // do something if less than 100ms have passed
+} else {
+  // do something if 100ms or more have passed
+}
+```
+
+It's best to declare the `static uint16_t key_timer;` outside of the macro block (top of file, etc). 
+
+## Additional keycode aliases for software-implemented layouts (Colemak, Dvorak, etc)
 
 Everything is assuming you're in Qwerty (in software) by default, but there is built-in support for using a Colemak or Dvorak layout by including this at the top of your keymap:
 
-   #include "keymap_<layout>.h"
+   #include <keymap_extras/keymap_colemak.h>
 
-Where <layout> is "colemak" or "dvorak". After including this line, you will get access to:
+If you use Dvorak, use `keymap_dvorak.h` instead of `keymap_colemak.h` for this line. After including this line, you will get access to:
 
  * `CM_*` for all of the Colemak-equivalent characters
  * `DV_*` for all of the Dvorak-equivalent characters
@@ -228,3 +288,24 @@ The firmware supports 5 different light effects, and the color (hue, saturation,
 ![WS2812 Wiring](https://raw.githubusercontent.com/yangliu/qmk_firmware/planck-rgb/keyboard/planck/keymaps/yang/WS2812-wiring.jpg)
 
 Please note the USB port can only supply a limited amount of power to the keyboard (500mA by standard, however, modern computer and most usb hubs can provide 700+mA.). According to the data of NeoPixel from Adafruit, 30 WS2812 LEDs require a 5V 1A power supply, LEDs used in this mod should not more than 20.
+
+## Safety Considerations
+
+You probably don't want to "brick" your keyboard, making it impossible
+to rewrite firmware onto it.  Here are some of the parameters to show
+what things are (and likely aren't) too risky.
+
+- If a keyboard map does not include RESET, then, to get into DFU
+  mode, you will need to press the reset button on the PCB, which
+  requires unscrewing some bits.
+- Messing with tmk_core / common files might make the keyboard
+  inoperable
+- Too large a .hex file is trouble; `make dfu` will erase the block,
+  test the size (oops, wrong order!), which errors out, failing to
+  flash the keyboard
+- DFU tools do /not/ allow you to write into the bootloader (unless
+  you throw in extra fruitsalad of options), so there is little risk
+  there.
+- EEPROM has around a 100000 write cycle.  You shouldn't rewrite the
+  firmware repeatedly and continually; that'll burn the EEPROM
+  eventually.

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1 - 157
keyboard/atomic/README.md


+ 1 - 1
keyboard/ergodox_ez/Makefile

@@ -93,7 +93,7 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512
 BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
 MOUSEKEY_ENABLE  = yes # Mouse keys(+4700)
 EXTRAKEY_ENABLE  = yes # Audio control and System control(+450)
-CONSOLE_ENABLE   = no # Console for debug(+400)
+# CONSOLE_ENABLE   = yes # Console for debug(+400)
 COMMAND_ENABLE   = yes # Commands for debug and configuration
 CUSTOM_MATRIX    = yes # Custom matrix file for the ErgoDox EZ
 SLEEP_LED_ENABLE = yes  # Breathing sleep LED during USB suspend

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1091 - 1441
keyboard/ergodox_ez/keymaps/default/default.hex


BIN
keyboard/ergodox_ez/keymaps/default/default.png


BIN
keyboard/ergodox_ez/keymaps/default/default_highres.png


+ 2 - 2
keyboard/ergodox_ez/keymaps/default/keymap.c

@@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
  * | Del    |   Q  |   W  |   E  |   R  |   T  |  L1  |           |  L1  |   Y  |   U  |   I  |   O  |   P  |   \    |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * | BkSp   |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |; / L2|   '    |
+ * | BkSp   |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |; / L2|' / Cmd |
  * |--------+------+------+------+------+------| Hyper|           | Meh  |------+------+------+------+------+--------|
  * | LShift |Z/Ctrl|   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |//Ctrl| RShift |
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
@@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
         // right hand
              KC_RGHT,     KC_6,   KC_7,   KC_8,   KC_9,   KC_0,             KC_MINS,
              TG(SYMB),    KC_Y,   KC_U,   KC_I,   KC_O,   KC_P,             KC_BSLS,
-                          KC_H,   KC_J,   KC_K,   KC_L,   LT(MDIA, KC_SCLN),KC_QUOT,
+                          KC_H,   KC_J,   KC_K,   KC_L,   LT(MDIA, KC_SCLN),GUI_T(KC_QUOT),
              MEH_T(KC_NO),KC_N,   KC_M,   KC_COMM,KC_DOT, CTL_T(KC_SLSH),   KC_RSFT,
                                   KC_UP,  KC_DOWN,KC_LBRC,KC_RBRC,          KC_FN1,
              KC_LALT,        CTL_T(KC_ESC),

+ 5 - 0
keyboard/ergodox_ez/keymaps/default/readme.md

@@ -1,5 +1,10 @@
 # ErgoDox EZ Default Configuration
 
+## Changelog
+
+* Feb 2, 2016 (V1.1): 
+  * Made the right-hand quote key double as Cmd/Win on hold. So you get ' when you tap it, " when you tap it with Shift, and Cmd or Win when you hold it. You can then use it as a modifier, or just press and hold it for a moment (and then let go) to send a single Cmd or Win keystroke (handy for opening the Start menu on Windows).
+
 This is what we ship with out of the factory. :) The image says it all:
 
 ![Default](default_highres.png)

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1101 - 1451
keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex


+ 27 - 26
keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c

@@ -1,3 +1,4 @@
+#include <keymap_extras/keymap_colemak.h>
 #include "ergodox_ez.h"
 #include "debug.h"
 #include "action_layer.h"
@@ -38,14 +39,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 // Otherwise, it needs KC_*
 [BASE] = KEYMAP(  // layer 0 : default
         // left hand
-        KC_EQL,         KC_1,         KC_2,   KC_3,   KC_4,   KC_5,   KC_LEFT,
-        KC_DELT,        KC_Q,         KC_W,   KC_E,   KC_R,   KC_T,   TG(SYMB),
-        KC_BSPC,        KC_A,         KC_S,   KC_D,   KC_F,   KC_G,
-        KC_LSFT,        CTL_T(KC_Z),  KC_X,   KC_C,   KC_V,   KC_B,   ALL_T(KC_NO),
-        LT(SYMB,KC_GRV),KC_QUOT,      LALT(KC_LSFT),  KC_LEFT,KC_RGHT,
-                                              ALT_T(KC_APP),  KC_LGUI,
-                                                              KC_HOME,
-                                               KC_SPC,KC_BSPC,KC_END,
+        KC_EQL,         KC_1,         KC_2,   KC_3,   KC_4,    KC_5,   KC_LEFT,
+        KC_DELT,        KC_Q,         KC_W,   KC_E,   KC_R,    KC_T,   TG(SYMB),
+        KC_BSPC,        KC_A,         KC_S,   KC_D,   KC_F,    KC_G,
+        KC_LSFT,        CTL_T(KC_Z),  KC_X,   KC_C,   KC_V,    KC_B,   ALL_T(KC_NO),
+        LT(SYMB,KC_GRV),KC_QUOT,      LALT(KC_LSFT),  KC_LEFT, KC_RGHT,
+                                              ALT_T(KC_APP),   KC_LGUI,
+                                                               KC_HOME,
+                                               KC_SPC,TG(SYMB),KC_END,
         // right hand
              KC_RGHT,     KC_6,KC_7,       KC_8,   KC_9,   KC_0,            KC_MINS,
              TG(SYMB),    KC_Y,KC_U,       KC_I,   KC_O,   KC_P,            KC_BSLS,
@@ -54,20 +55,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                KC_UP,      KC_DOWN,KC_LBRC,KC_RBRC,         KC_FN1,
              KC_LALT,        CTL_T(KC_ESC),
              KC_PGUP,
-             KC_PGDN,KC_TAB, KC_ENT
+             KC_PGDN,LT(SYMB, KC_TAB), KC_ENT
     ),
 /* Keymap 1: Symbol Layer
  *
  * ,--------------------------------------------------.           ,--------------------------------------------------.
  * |        |  F1  |  F2  |  F3  |  F4  |  F5  |      |           |      |  F6  |  F7  |  F8  |  F9  |  F10 |   F11  |
  * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
- * |        |   !  |   @  |   {  |   }  |   |  |      |           |      |   Up |   7  |   8  |   9  |   *  |   F12  |
+ * |        |   1  |   2  |   3  |   4  |      |      |           |      |      |      |   =  |      |      |   F12  |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * |        |   #  |   $  |   (  |   )  |   `  |------|           |------| Down |   4  |   5  |   6  |   +  |        |
+ * |        |   5  |   6  |   7  |   8  |   9  |------|           |------|   &  |   -  |   _  |   ;  |   +  |        |
  * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
- * |        |   %  |   ^  |   [  |   ]  |   ~  |      |           |      |   &  |   1  |   2  |   3  |   \  |        |
+ * |        |   (  |   )  |   [  |   ]  |   0  |      |           |      |   |  |   (  |   )  |      |      |        |
  * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
- *   |      |      |      |      |      |                                       |      |    . |   0  |   =  |      |
+ *   |      |      |      |      |      |                                       |      |      |      |      |      |
  *   `----------------------------------'                                       `----------------------------------'
  *                                        ,-------------.       ,-------------.
  *                                        |      |      |       |      |      |
@@ -80,20 +81,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 // SYMBOLS
 [SYMB] = KEYMAP(
        // left hand
-       KC_TRNS,KC_F1,  KC_F2,  KC_F3,  KC_F4,  KC_F5,  KC_TRNS,
-       KC_TRNS,KC_EXLM,KC_AT,  KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS,
-       KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV,
-       KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS,
-       KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
-                                       KC_TRNS,KC_TRNS,
-                                               KC_TRNS,
-                               KC_TRNS,KC_TRNS,KC_TRNS,
-       // right hand
+       KC_TRNS, KC_F1,  KC_F2,  KC_F3,         KC_F4,        KC_F5,   KC_TRNS,
+       KC_TRNS, KC_1,   KC_2,   KC_3,          KC_4,         KC_TRNS, KC_TRNS,
+       KC_TRNS, KC_5,   KC_6,   KC_7,          KC_8,         KC_9,
+       KC_TRNS, KC_LPRN,KC_RPRN,KC_LBRC,       KC_RBRC,      KC_0,    KC_TRNS,
+       KC_TRNS, KC_TRNS,KC_TRNS,LCTL(KC_PGUP), LCTL(KC_PGDN),
+                                                                              KC_TRNS,KC_TRNS,
+                                                                                      KC_TRNS,
+                                                                      KC_TRNS,KC_TRNS,KC_TRNS,
+               // right hand
        KC_TRNS, KC_F6,   KC_F7,  KC_F8,   KC_F9,   KC_F10,  KC_F11,
-       KC_TRNS, KC_UP,   KC_7,   KC_8,    KC_9,    KC_ASTR, KC_F12,
-                KC_DOWN, KC_4,   KC_5,    KC_6,    KC_PLUS, KC_TRNS,
-       KC_TRNS, KC_AMPR, KC_1,   KC_2,    KC_3,    KC_BSLS, KC_TRNS,
-                         KC_TRNS,KC_DOT,  KC_0,    KC_EQL,  KC_TRNS,
+       KC_TRNS, KC_TRNS, KC_TRNS,KC_EQL,  KC_TRNS, KC_TRNS, KC_F12,
+                KC_AMPR, KC_MINS,KC_UNDS, CM_SCLN, KC_PLUS, KC_TRNS,
+       KC_TRNS, KC_PIPE, KC_LPRN,KC_RPRN, KC_3,    KC_TRNS, KC_TRNS,
+                         KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
        KC_TRNS, KC_TRNS,
        KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS

+ 10 - 0
keyboard/ergodox_ez/keymaps/erez_experimental/readme.md

@@ -4,6 +4,16 @@ This is my personal layout which I use to test out ideas which may or may not ma
 
 Changelog:
 
+## Feb 5, 2016:
+
+* A whole new design for the symbol layer. Specifically:
+  * Put the minus, underscore, and semicolon right in the homerow for the right hand
+  * Parens are in better places for me
+  * The arrow keys now send Ctrl-PgUp and Ctrl-PgDn, for switching browser tabs with the arrows when in symbol layer
+  * Tab (right-hand outer thumb key) now does double duty to toggle symbol layer when held down
+  * Backspace (left-hand outer thumb key) now just toggles symbol layer (I wasn't using it as a backspace)
+  
+
 ## Jan 19, 2016:
 
 * Made J into dual-action key (Alt when held down), to make Alt-tab more ergonomic.

+ 34 - 0
keyboard/ergodox_ez/keymaps/jacobono/README.md

@@ -0,0 +1,34 @@
+# Default Layer #
+
+I'm using the colemak layer -- customized a bit to work a bit better when using spacemacs as my editor.
+
+![default-layer](img/colemak-default-layer.png)
+
+## Special Keys ##
+
+`SC1` => `LGUI + TAB`
+
+`SC2` => `LGUI + SPACE + TAB`
+
+`L1` => Switch to QWERTY Layout
+
+`T(L2)` => Toggle Symbol Layer
+
+`T(L3)` =>  Toggle Number and D-Pad Layer
+
+# QWERTY #
+
+Nothing special here -- just need this layer tucked away for the `WASD`.  Which is literally the only reason I use it.
+Just have the same button to toggle back to colemak.
+
+# Symbol Layer #
+
+![symbol-layer](img/symbol-layer.png)
+
+This is just putting matching closing symbols next to each other -- useful when editing lisp.
+
+# Number and D-Pad Layer #
+
+Just a basic number layer with a D-PAD on the other side.
+
+![number-dpad-layer](img/number-dpad-layer.png)

BIN
keyboard/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png


BIN
keyboard/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png


BIN
keyboard/ergodox_ez/keymaps/jacobono/img/symbol-layer.png


Dosya farkı çok büyük olduğundan ihmal edildi
+ 1142 - 0
keyboard/ergodox_ez/keymaps/jacobono/jacobono.hex


+ 273 - 0
keyboard/ergodox_ez/keymaps/jacobono/keymap.c

@@ -0,0 +1,273 @@
+#include "ergodox_ez.h"
+#include "debug.h"
+#include "action_layer.h"
+
+#define COLEMAK 0 // new colemak layout
+#define QWERTY 1 // default layer
+#define SYMB 2 // symbols
+#define NUMPAD 3 // number pad
+#define MDIA 4 // media keys
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+	/* Keymap 0: Basic COLEMAK layer
+	 *
+	 * ,--------------------------------------------------.           ,--------------------------------------------------.
+	 * |        |   1  |   2  |   3  |   4  |   5  | LEFT |           | RIGHT|   6  |   7  |   8  |   9  |   0  |        |
+	 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+	 * | Tab    |   Q  |   W  |   F  |   P  |   G  |      |           |      |   J  |   L  |   U  |   Y  |   ;  |  TAB   |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * | BkSp   |   A  |   R  |   S  |   T  |   D  |------|           |------|   H  |   N  |   E  |   I  |   O  |  DEL   |
+	 * |--------+------+------+------+------+------|      |          LGUI(TAB)------+------+------+------+------+--------|
+	 * | LShift |Z/Ctrl|   X  |   C  |   V  |   B  |      |           |      |   K  |   M  |   ,  |   .  |//Ctrl| RShift |
+	 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
+	 *   |  L1  |      |      | UP   |MO(L2)|                                       |MO(L2)| Down |      |  ALT | RGUI   |
+	 *   `----------------------------------'                                       `------------------------------------'
+	 *                                        ,-------------.       ,---------------.
+	 *                                        | LGUI | App  |       |Ctrl/Esc|  Alt |
+	 *                                 ,------|------|------|       |--------+--------+------.
+	 *                                 |      |      |QUKSL |       |  QUKSL |        |      |
+   *                                 |Space |ENTER |------|       |--------| ENTER  |Space |
+	 *                                 |      |      |MO(L3)|       | MO(L3) |        |      |
+	 *                                 `--------------------'       `------------------------'
+	 */
+
+	// If it accepts an argument (i.e, is a function), it doesn't need KC_.
+	// Otherwise, it needs KC_*
+	[COLEMAK] = KEYMAP(  // layer 0 : Colemak layout default layer
+	    // left hand
+            KC_TRNS,        KC_1,         KC_2,   KC_3,   KC_4,    KC_5,   KC_LEFT,
+            KC_TAB,         KC_Q,         KC_W,   KC_F,   KC_P,    KC_G,   KC_TRNS,
+            KC_BSPC,        KC_A,         KC_R,   KC_S,   KC_T,    KC_D,
+            KC_LSFT,        CTL_T(KC_Z),  KC_X,   KC_C,   KC_V,    KC_B,   KC_TRNS,
+            TG(QWERTY),     KC_TRNS,      KC_TRNS,KC_UP,  MO(SYMB),
+            KC_LGUI,        KC_APP,
+            LGUI(S(KC_SPC)),
+            KC_SPC,KC_ENT,MO(NUMPAD),
+	    // right hand
+            KC_RGHT,      KC_6,    KC_7,    KC_8,    KC_9,   KC_0,              KC_DELT,
+            KC_TRNS,      KC_J,    KC_L,    KC_U,    KC_Y,   KC_SCLN,           KC_TAB,
+            KC_H,         KC_N,    KC_E,    KC_I,    KC_O,   KC_DEL,
+            LGUI(KC_TAB), KC_K,    KC_M,    KC_COMM, KC_DOT, CTL_T(KC_SLSH),    KC_RSFT,
+            MO(SYMB),     KC_DOWN, KC_TRNS, KC_RALT, KC_RGUI,
+            CTL_T(KC_ESC), KC_LALT,
+            LGUI(S(KC_SPC)),
+            MO(NUMPAD), KC_ENT, KC_SPC),
+
+	/* Keymap 1: Basic QWERTY layer
+	 *
+	 * ,--------------------------------------------------.           ,--------------------------------------------------.
+	 * | BkSp   |   1  |   2  |   3  |   4  |   5  | LEFT |           | RIGHT|   6  |   7  |   8  |   9  |   0  |   DEL  |
+	 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+	 * | Tab    |   Q  |   W  |   E  |   R  |   T  |  L0  |           |  L0  |   Y  |   U  |   I  |   O  |   P  |   \    |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+   * | Ctrl   |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |; / L4|  CTRL  |
+   * |--------+------+------+------+------+------| Alt  |           | Alt  |------+------+------+------+------+--------|
+   * | LShift |Z/Ctrl|   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |//Ctrl| RShift |
+   * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
+   *   |Grv/L3|  '"  |AltShf| Left |MO(L2)|                                       |MO(L2)| Down |   [  |   ]  | ~L3  |
+   *   `----------------------------------'                                       `----------------------------------'
+   *                                        ,-------------.       ,---------------.
+   *                                        | Tab  | BkSp |       | Alt  |Ctrl/Esc|
+   *                                 ,------|------|------|       |------+--------+------.
+   *                                 |      |      | Home |       | PgUp |        |      |
+   *                                 | Space| LGUI |------|       |------|  RGUI  |Enter |
+   *                                 |      |      | End  |       | PgDn |        |      |
+   *                                `--------------------'       `----------------------'
+   */
+	// If it accepts an argument (i.e, is a function), it doesn't need KC_.
+	// Otherwise, it needs KC_*
+	[QWERTY] = KEYMAP(  // layer 1
+	    // left hand
+	    KC_BSPC,           KC_1,         KC_2,   KC_3,   KC_4,    KC_5,   KC_LEFT,
+	    KC_TAB,            KC_Q,         KC_W,   KC_E,   KC_R,    KC_T,   KC_TRNS,
+	    KC_LCTRL,          KC_A,         KC_S,   KC_D,   KC_F,    KC_G,
+	    KC_LSFT,           CTL_T(KC_Z),  KC_X,   KC_C,   KC_V,    KC_B,   KC_LALT,
+	    KC_TRNS, KC_QUOT,  LALT(KC_LSFT),  KC_LEFT, MO(SYMB),
+	    KC_TAB,  KC_DELT,
+	    KC_HOME,
+	    KC_SPC, KC_LGUI, KC_END,
+	    // right hand
+	    KC_RGHT,      KC_6,    KC_7,    KC_8,    KC_9,              KC_0,           KC_DELT,
+	    KC_TRNS,      KC_Y,    KC_U,    KC_I,    KC_O,              KC_P,           KC_BSLS,
+	    KC_H,         KC_J,    KC_K,    KC_L,    LT(MDIA, KC_SCLN), KC_RCTRL,
+	    KC_RALT,      KC_N,    KC_M,    KC_COMM, KC_DOT,            CTL_T(KC_SLSH), KC_RSFT,
+	    MO(SYMB),     KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1,
+	    KC_LALT, CTL_T(KC_ESC),
+	    KC_PGUP,
+	    KC_PGDN, KC_RGUI, KC_ENT),
+
+
+	/* Keymap 2: Symbol Layer
+	 *
+	 * ,--------------------------------------------------.           ,--------------------------------------------------.
+	 * |        |  F1  |  F2  |  F3  |  F4  |  F5  |      |           |      |  F6  |  F7  |  F8  |  F9  |  F10 |   F11  |
+	 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+	 * |        |      |   @  |   *  |   =  |   _  |      |           |      |   ~  |   {  |   }  |   #  |   :  |   F12  |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |   |  |   !  |   +  |   -  |   "  |------|           |------|   "  |   (  |   )  |   '  |   `  |        |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |      |   %  |   ^  |   $  |   &  |      |           |      |   ;  |   [  |   ]  |   \  |   /  |        |
+	 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
+	 *   |      |      |      |      |      |                                       |      |      |      |      |      |
+	 *   `----------------------------------'                                       `----------------------------------'
+	 *                                        ,-------------.       ,-------------.
+	 *                                        |      |      |       |      |      |
+	 *                                 ,------|------|------|       |------+------+------.
+	 *                                 |      |      |      |       |      |      |      |
+	 *                                 |      |      |------|       |------|      |      |
+	 *                                 |      |      |      |       |      |      |      |
+	 *                                 `--------------------'       `--------------------'
+	 */
+	// SYMBOL
+	[SYMB] = KEYMAP(
+	    // left hand
+	    KC_TRNS, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_AT,   KC_ASTR, KC_EQL,  KC_UNDS, KC_TRNS,
+	    KC_TRNS, KC_PIPE, KC_EXLM, KC_PLUS, KC_MINS, S(KC_QUOTE),
+	    KC_TRNS, KC_TRNS, KC_PERC, KC_CIRC, KC_DLR,  KC_AMPR, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS,
+
+	    // right hand
+	    KC_TRNS, KC_F6,      KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,
+	    KC_TRNS, KC_TILD,    KC_LCBR, KC_RCBR, KC_HASH, S(KC_SCLN), KC_F12,
+	    S(KC_QUOTE),KC_LPRN, KC_RPRN, KC_QUOTE, KC_GRV, KC_TRNS,
+	    KC_TRNS, KC_SCLN,    KC_LBRC, KC_RBRC, KC_BSLS, KC_SLSH, KC_TRNS,
+	    KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS),
+
+	/* Keymap 3: Numpad Layer
+	 *
+	 * ,--------------------------------------------------.           ,--------------------------------------------------.
+	 * |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        |
+	 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+	 * |        |      |      |  UP  |      |      |      |           |      |   $  |   7  |   8  |   9  |   +  |        |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |      | LEFT | DOWN | RIGHT|      |------|           |------|   =  |   4  |   5  |   6  |   -  |        |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |      |      |      |      |      |      |           |      |      |   1  |   2  |   3  |   *  |        |
+	 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
+	 *   |      |      |      |      |      |                                       |   ,  |   0  |   .  |   /  |      |
+	 *   `----------------------------------'                                       `----------------------------------'
+	 *                                        ,-------------.       ,-------------.
+	 *                                        |      |      |       |      |      |
+	 *                                 ,------|------|------|       |------+------+------.
+	 *                                 |      |      |      |       |      |      |      |
+	 *                                 |      |      |------|       |------|      |      |
+	 *                                 |      |      |      |       |      |      |      |
+	 *                                 `--------------------'       `--------------------'
+	 */
+	// Numpad
+	[NUMPAD] = KEYMAP(
+	    // left hand
+	    KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
+	    KC_TRNS,KC_TRNS,KC_TRNS,KC_UP,KC_TRNS,KC_TRNS,KC_TRNS,
+	    KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RIGHT,KC_TRNS,
+	    KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
+	    KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
+	    KC_TRNS,KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS,KC_TRNS,KC_TRNS,
+	    // right hand
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
+	    KC_TRNS, KC_DLR,  KC_7,    KC_8,    KC_9,    KC_PLUS,  KC_TRNS,
+	             KC_EQL,  KC_4,    KC_5,    KC_6,    KC_MINS,  KC_TRNS,
+	    KC_TRNS, KC_AMPR, KC_1,    KC_2,    KC_3,    KC_ASTR,  KC_TRNS,
+	                      KC_COMMA,KC_0,    KC_DOT,  KC_SLSH,  KC_TRNS,
+	    KC_TRNS, KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS),
+
+	/* Keymap 4: Media and mouse keys
+	 *
+	 * ,--------------------------------------------------.           ,--------------------------------------------------.
+	 * |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        |
+	 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+	 * |        |      |      | MsUp |      |      |      |           |      |      |      |      |      |      |        |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |      |MsLeft|MsDown|MsRght|      |------|           |------|      |      |      |      |      |  Play  |
+	 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+	 * |        |      |      |      |      |      |      |           |      |      |      | Prev | Next |      |        |
+	 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
+	 *   |      |      |      | Lclk | Rclk |                                       |VolUp |VolDn | Mute |      |      |
+	 *   `----------------------------------'                                       `----------------------------------'
+	 *                                        ,-------------.       ,-------------.
+	 *                                        |      |      |       |      |      |
+	 *                                 ,------|------|------|       |------+------+------.
+	 *                                 |      |      |      |       |      |      |Brwser|
+	 *                                 |      |      |------|       |------|      |Back  |
+	 *                                 |      |      |      |       |      |      |      |
+	 *                                 `--------------------'       `--------------------'
+	 */
+	// MEDIA AND MOUSE
+	KEYMAP(
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2,
+	    KC_TRNS, KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS,
+	    // right hand
+	    KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
+	    KC_TRNS,  KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS,
+	    KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS,
+	    KC_TRNS, KC_TRNS,
+	    KC_TRNS,
+	    KC_TRNS, KC_TRNS, KC_WBAK),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+	[1] = ACTION_LAYER_TAP_TOGGLE(SYMB)                // FN1 - Momentary Layer 1 (Symbols)
+};
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+	// MACRODOWN only works in this function
+	switch(id) {
+		case 0:
+			if (record->event.pressed) {
+				register_code(KC_RSFT);
+			} else {
+				unregister_code(KC_RSFT);
+			}
+			break;
+	}
+	return MACRO_NONE;
+};
+
+// Runs just one time when the keyboard initializes.
+void * matrix_init_user(void) {
+
+};
+
+// Runs constantly in the background, in a loop.
+void * matrix_scan_user(void) {
+
+	uint8_t layer = biton32(layer_state);
+
+	ergodox_board_led_off();
+	ergodox_right_led_1_off();
+	ergodox_right_led_2_off();
+	ergodox_right_led_3_off();
+	switch (layer) {
+		// TODO: Make this relevant to the ErgoDox EZ.
+		case 1:
+			ergodox_right_led_1_on();
+			break;
+		case 2:
+			ergodox_right_led_2_on();
+			break;
+		default:
+			// none
+			break;
+	}
+
+};

+ 1 - 0
keyboard/planck/PCB_GUIDE.md

@@ -14,6 +14,7 @@ If you're using homebrew, you can use the following commands:
 
     brew tap osx-cross/avr
     brew install avr-libc
+    brew install dfu-programmer
 
 Otherwise, these instructions will work:
 

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1 - 178
keyboard/planck/README.md


+ 1 - 1
quantum/keymap_common.c

@@ -64,7 +64,7 @@ action_t action_for_key(uint8_t layer, keypos_t key)
     	action.code = ACTION_MACRO(keycode & 0xFF);
     	return action;
 #ifdef BACKLIGHT_ENABLE
-	} else if (keycode >= BL_0 & keycode <= BL_15) {
+	} else if (keycode >= BL_0 && keycode <= BL_15) {
         action_t action;
         action.code = ACTION_BACKLIGHT_LEVEL(keycode & 0x000F);
         return action;

+ 31 - 31
quantum/keymap_extras/keymap_colemak.h

@@ -24,7 +24,7 @@
 #define CM_E    KC_K
 #define CM_I    KC_L
 #define CM_O    KC_SCLN
-#define CM_SCLN LSFT(CM_SCLN)
+#define CM_COLN LSFT(CM_SCLN)
 
 #define CM_Z    KC_Z
 #define CM_X    KC_X
@@ -39,37 +39,37 @@
 
 // Make it easy to support these in macros
 // TODO: change macro implementation so these aren't needed
-#define KC_CM_Q    CM_Q    
-#define KC_CM_W    CM_W    
-#define KC_CM_F    CM_F    
-#define KC_CM_P    CM_P    
-#define KC_CM_G    CM_G    
-#define KC_CM_J    CM_J    
-#define KC_CM_L    CM_L    
-#define KC_CM_U    CM_U    
-#define KC_CM_Y    CM_Y    
-#define KC_CM_SCLN CM_SCLN 
+#define KC_CM_Q    CM_Q
+#define KC_CM_W    CM_W
+#define KC_CM_F    CM_F
+#define KC_CM_P    CM_P
+#define KC_CM_G    CM_G
+#define KC_CM_J    CM_J
+#define KC_CM_L    CM_L
+#define KC_CM_U    CM_U
+#define KC_CM_Y    CM_Y
+#define KC_CM_SCLN CM_SCLN
 
-#define KC_CM_A    CM_A    
-#define KC_CM_R    CM_R    
-#define KC_CM_S    CM_S    
-#define KC_CM_T    CM_T    
-#define KC_CM_D    CM_D    
-#define KC_CM_H    CM_H    
-#define KC_CM_N    CM_N    
-#define KC_CM_E    CM_E    
-#define KC_CM_I    CM_I    
-#define KC_CM_O    CM_O    
+#define KC_CM_A    CM_A
+#define KC_CM_R    CM_R
+#define KC_CM_S    CM_S
+#define KC_CM_T    CM_T
+#define KC_CM_D    CM_D
+#define KC_CM_H    CM_H
+#define KC_CM_N    CM_N
+#define KC_CM_E    CM_E
+#define KC_CM_I    CM_I
+#define KC_CM_O    CM_O
 
-#define KC_CM_Z    CM_Z    
-#define KC_CM_X    CM_X    
-#define KC_CM_C    CM_C    
-#define KC_CM_V    CM_V    
-#define KC_CM_B    CM_B    
-#define KC_CM_K    CM_K    
-#define KC_CM_M    CM_M    
-#define KC_CM_COMM CM_COMM 
-#define KC_CM_DOT  CM_DOT  
-#define KC_CM_SLSH CM_SLSH 
+#define KC_CM_Z    CM_Z
+#define KC_CM_X    CM_X
+#define KC_CM_C    CM_C
+#define KC_CM_V    CM_V
+#define KC_CM_B    CM_B
+#define KC_CM_K    CM_K
+#define KC_CM_M    CM_M
+#define KC_CM_COMM CM_COMM
+#define KC_CM_DOT  CM_DOT
+#define KC_CM_SLSH CM_SLSH
 
 #endif

+ 3 - 3
quantum/keymap_extras/keymap_nordic.h

@@ -48,12 +48,12 @@
 #define NO_LBRC ALGR(KC_8)
 #define NO_RBRC ALGR(KC_9)
 #define NO_RCBR	ALGR(KC_0)
-#define NO_PIPE ALGR(NO_ACUT)
+#define NO_PIPE ALGR(KC_NUBS)
 
 #define NO_EURO ALGR(KC_E)
 #define NO_TILD ALGR(NO_QUOT)
 
-#define NO_BSLS ALGR(NO_LESS)
+#define NO_BSLS ALGR(KC_MINS)
 #define NO_MU 	ALGR(KC_M)
 
-#endif
+#endif

Dosya farkı çok büyük olduğundan ihmal edildi
+ 2 - 158
quantum/template/README.md


+ 1 - 1
tmk_core/doc/build.md

@@ -6,7 +6,7 @@ Download and Install
 --------------------
 ### 1. Install Tools
 
-1. **Toolchain** On Windows install [MHV AVR Tools][mhv] for AVR GCC compiler and [Cygwin][cygwin](or [MinGW][mingw]) for shell terminal. On Mac you can use [CrossPack][crosspack]. On Linux you can install AVR GCC (and avr-libc) with your favorite package manager.
+1. **Toolchain** On Windows install [MHV AVR Tools][mhv] for AVR GCC compiler and [Cygwin][cygwin](or [MinGW][mingw]) for shell terminal. On Mac you can use [CrossPack][crosspack]. On Linux you can install AVR GCC (and avr-libc) with your favorite package manager or run the avr_setup.sh script in the root of this repository.
 
 2. **Programmer** On Windows install [Atmel FLIP][flip]. On Mac and Linux install [dfu-programmer][dfu-prog].