]> git.donarmstrong.com Git - qmk_firmware.git/blob - layouts/community/ergodox/qwerty_code_friendly/readme.md
52677310c072b78270fece2f23accf48db1c0f8c
[qmk_firmware.git] / layouts / community / ergodox / qwerty_code_friendly / readme.md
1 # ErgoDox EZ Code Friendly Qwerty Layout
2
3 - This layout aims to balance muscle memory from a typical QWERTY layout
4   with having keys used for software development easily accessible.
5
6 - Arrow keys follow VIM convention (the media layer even uses arrow keys for HJKL).
7
8 - On the top row only symbols are used (not numbers),
9   it's expected the symbol layer's number-pad layout will be used for numbers.
10
11 - Symbols match regular QWERTY.
12   except for '()' which are grouped with other brackets.
13   In their place -/= keys are placed, which almost matches a regular layout.
14
15 - Brackets are placed symmetrically along the center edges,
16   if using keys from both sides is inconvenient - the symbol layer has macros
17   at the same key locations to type matching pairs.
18
19 - The extra space-bar on the lower-left looks like it's in an obscure location,
20   however using the larger thumb cluster ended up being more of a reach while typing.
21
22 - L3 is currently only used if `CFQ_USE_EXPEREMENTAL_LAYER` is defined,
23   this is a layer to place extra functionality and test new keys.
24
25 ## Configuration
26
27 Some optional behavior is configurable without editing the code
28 using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
29
30 - `CFQ_USER_KEY1` (1..4) are used for custom-keys
31 - `CFQ_USE_MOMENTARY_LAYER_KEYS` is used to prevent layer keys from toggling when tapped.
32 - `CFQ_USE_SWAP_RIGHT_SPACE_ENTER` swap Enter and Space on the right hand thumb cluster.
33   While asymmetric, it makes Enter more easily accessible.
34 - `CFQ_USE_EXPEREMENTAL_LAYER` defines an extra layer for misc extra keys/macros.
35   Currently it's mostly empty.
36
37
38
39 ## Keymap 0: Basic layer
40
41 When undefined:
42
43 - `USR1` defaults to `KC_SPC`, otherwise use `CFQ_USER_KEY1`.
44 - `USR2` defaults to `KC_ENT`, otherwise use `CFQ_USER_KEY2`.
45 - `USR3` defaults to `KC_FN3`, otherwise use `CFQ_USER_KEY3`.
46 - `USR4` defaults to `APP`, otherwise use `CFQ_USER_KEY4`.
47
48 ```
49 ,--------------------------------------------------.           ,--------------------------------------------------.
50 | Grave  |   !  |   @  |   #  |   $  |   %  |   {  |           |  }   |   ^  |   &  |   *  |   -  |   =  | BSpace |
51 |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
52 | Tab    |   Q  |   W  |   E  |   R  |   T  |   (  |           |  )   |   Y  |   U  |   I  |   O  |   P  |   \    |
53 |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
54 | Esc    |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |   ;  |   '    |
55 |--------+------+------+------+------+------|   [  |           |  ]   |------+------+------+------+------+--------|
56 | LShift |   Z  |   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |   /  | RShift |
57 `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
58   | LCtl |Super | Alt  | USR4 |Space |                                       | Left | Down | Up   |Right | Del  |
59   `----------------------------------'                                       `----------------------------------'
60                                        ,-------------.       ,-------------.
61                                        | Ins  | USR3 |       | Home | End  |
62                                 ,------|------|------|       |------+------+------.
63                                 |      |      | ~L2  |       | PgUp |      |      |
64                                 | USR1 | USR2 |------|       |------|Enter |Space |
65                                 |      |      | ~L1  |       | PgDn |      |      |
66                                 `--------------------'       `--------------------'
67 ```
68
69 ## Keymap 1: Symbol layer
70
71 Notes:
72
73 - The double bracket keys on this layer press left to position the cursor between them.
74 - The left thumb cluster is used for macro record/replay.
75
76 ```
77 ,--------------------------------------------------.           ,--------------------------------------------------.
78 |        |  F1  |  F2  |  F3  |  F4  |  F5  |  {}  |           |  }{  |  F6  |  F7  |  F8  |  F9  |  F10 |        |
79 |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
80 |        |      |      |      |      |  =>  |  ()  |           |  )(  |  <=  |   7  |   8  |   9  |   \  |   F11  |
81 |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
82 |        |      |      |      |      |  ->  |------|           |------|  <-  |   4  |   5  |   6  |   *  |   F12  |
83 |--------+------+------+------+------+------|  []  |           |  ][  |------+------+------+------+------+--------|
84 |        |      |      |      |      |  <>  |      |           |      |  ><  |   1  |   2  |   3  |   -  |        |
85 `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
86   |      |      |      |      |      |                                       |   0  |      |   .  |   +  |      |
87   `----------------------------------'                                       `----------------------------------'
88                                        ,-------------.       ,---------------.
89                                        |Start1|Start2|       |      |        |
90                                 ,------|------|------|       |------+--------+------.
91                                 |      |      | Stop |       |      |        |      |
92                                 |Play1 |Play2 |------|       |------|        |      |
93                                 |      |      |      |       |      |        |      |
94                                 `--------------------'       `----------------------'
95 ```
96
97 ## Keymap 2: Media and mouse keys
98
99 ```
100 ,--------------------------------------------------.           ,--------------------------------------------------.
101 |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        |
102 |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
103 |        |      |      | MsUp |      |      |      |           |      |      |      |      |      |      |        |
104 |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
105 |        |      |MsLeft|MsDown|MsRght|      |------|           |------| Left | Down | Up   |Right |      |        |
106 |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
107 |        |      | Rclk | Mclk | Lclk |      |      |           |      |      |      |      |      |      |        |
108 `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
109   |      |      |      |      |      |                                       |      |      |      |      |      |
110   `----------------------------------'                                       `----------------------------------'
111                                        ,-------------.       ,-------------.
112                                        | MRwd | MFwd |       | MPrv | MNxt |
113                                 ,------|------|------|       |------+------+------.
114                                 |      |      |      |       |VolUp |      |      |
115                                 |      |      |------|       |------| Mute | Play |
116                                 |      |      |      |       |VolDn |      |      |
117                                 `--------------------'       `--------------------'
118 ```
119
120 ## Changelog
121
122 - 2017/10/28
123   Make more keys user defined on the left thumb cluster.
124   Add macro record/replay keys.
125
126 - 2017/10/4
127   Move Insert key to the left thumb cluster (away from the modifier keys).
128   Replace with `USR2` which defaults to `APP`.