~ruther/qmk_firmware

3c683aa9f23288ddada760fb49abcc5fa7324f5e — Erez Zukerman 9 years ago 1b0d0c6
Fixes CM_SCLN and updates docs for Colemak
M README.md => README.md +2 -2
@@ 138,9 138,9 @@ Note: Using macros to have your keyboard send passwords for you is a bad idea.

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

M keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex => keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex +2 -2
@@ 25,8 25,8 @@
:100180002D0031003478E500C100000001000100BD
:1001900001000100010000003A001E0022002602BA
:1001A000010001003B001F002300270201000100A5
:1001B0003C00200024002F004E0101003D002100E2
:1001C000250030004B0101003E0001002600270001
:1001B0003C00200024002F004B0101003D002100E5
:1001C000250030004E0101003E00010026002700FE
:1001D000000001000100010000000100000001001A
:1001E0000100010000000100000001003F000100CB
:1001F0002402310200000100400001002D0026020F

M keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c => keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c +4 -3
@@ 1,3 1,4 @@
#include <keymap_extras/keymap_colemak.h>
#include "ergodox_ez.h"
#include "debug.h"
#include "action_layer.h"


@@ 84,14 85,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
       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_PGDN), LCTL(KC_PGUP),
       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. Sending KC_P instead of Semicolon because I use Colemak in software.
               // right hand
       KC_TRNS, KC_F6,   KC_F7,  KC_F8,   KC_F9,   KC_F10,  KC_F11,
       KC_TRNS, KC_TRNS, KC_TRNS,KC_EQL,  KC_TRNS, KC_TRNS, KC_F12,
                KC_AMPR, KC_MINS,KC_UNDS, KC_P,    KC_PLUS, KC_TRNS,
                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,

M quantum/keymap_extras/keymap_colemak.h => quantum/keymap_extras/keymap_colemak.h +31 -31
@@ 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