2 Copyright 2012 Jun Wako <wakojun@gmail.com>
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 2 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #include "keymap_common.h"
21 const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
23 * ,---. ,---------------. ,---------------. ,---------------. ,-----------. ,-----------.
24 * |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau| |Pwr|Slp|Wak|
25 * `---' `---------------' `---------------' `---------------' `-----------' `-----------'
26 * ,-----------------------------------------------------------. ,-----------. ,---------------.
27 * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa| |Ins|Hom|PgU| |NmL| /| *| -|
28 * |-----------------------------------------------------------| |-----------| |---------------|
29 * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|End|PgD| | 7| 8| 9| |
30 * |-----------------------------------------------------------| `-----------' |-----------| +|
31 * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Return | | 4| 5| 6| |
32 * |-----------------------------------------------------------| ,---. |---------------|
33 * |Shift | Z| X| C| V| B| N| M| ,| ,| /|Shift | |Up | | 1| 2| 3| |
34 * |-----------------------------------------------------------| ,-----------. |-----------|Ent|
35 * |Ctrl |Gui |Alt | Space |Alt |Gui |Menu|Ctrl| |Lef|Dow|Rig| | 0| .| |
36 * `-----------------------------------------------------------' `-----------' `---------------'
39 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS,
40 ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, HOME,PGUP, NLCK,PSLS,PAST,PMNS,
41 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, END, PGDN, P7, P8, P9,
42 CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, P4, P5, P6, PPLS,
43 LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, UP, P1, P2, P3,
44 LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, GRV, LEFT,DOWN,RGHT, P0, PDOT,PENT
47 /* 1: plain Qwerty without layer switching
48 * ,-----------------------------------------------------------.
49 * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa|
50 * |-----------------------------------------------------------|
51 * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \|
52 * |-----------------------------------------------------------|
53 * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Return |
54 * |-----------------------------------------------------------|
55 * |Shift | Z| X| C| V| B| N| M| ,| ,| /|Shift |
56 * |-----------------------------------------------------------|
57 * |Ctrl |Gui |Alt | Space |Alt |Gui |Menu|Ctrl|
58 * `-----------------------------------------------------------'
61 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS,
62 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, HOME,PGUP, NLCK,PSLS,PAST,PMNS,
63 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, END, PGDN, P7, P8, P9,
64 CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, P4, P5, P6, PPLS,
65 LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, UP, P1, P2, P3,
66 LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL, LEFT,DOWN,RGHT, P0, PDOT,PENT
69 /* 2: Colemak http://colemak.com
70 * ,-----------------------------------------------------------.
71 * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa|
72 * |-----------------------------------------------------------|
73 * |Tab | Q| W| F| P| G| J| L| U| Y| ;| [| ]| \|
74 * |-----------------------------------------------------------|
75 * |BackSp| A| R| S| T| D| H| N| E| I| O| '|Return |
76 * |-----------------------------------------------------------|
77 * |Shift | Z| X| C| V| B| K| M| ,| ,| /|Shift |
78 * |-----------------------------------------------------------|
79 * |Ctrl |Gui |Alt | Space |Alt |Gui |Menu|Ctrl|
80 * `----------------------------------------------------------'
83 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS,
84 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, HOME,PGUP, NLCK,PSLS,PAST,PMNS,
85 TAB, Q, W, F, P, G, J, L, U, Y, SCLN,LBRC,RBRC,BSLS, DEL, END, PGDN, P7, P8, P9,
86 BSPC,A, R, S, T, D, H, N, E, I, O, QUOT, ENT, P4, P5, P6, PPLS,
87 LSFT,Z, X, C, V, B, K, M, COMM,DOT, SLSH, RSFT, UP, P1, P2, P3,
88 LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL, LEFT,DOWN,RGHT, P0, PDOT,PENT
91 /* 3: Dvorak http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard
92 * ,-----------------------------------------------------------.
93 * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| [| ]|Backspa|
94 * |-----------------------------------------------------------|
95 * |Tab | '| ,| .| P| Y| F| G| C| R| L| /| =| \|
96 * |-----------------------------------------------------------|
97 * |BackSp| A| O| E| U| I| D| H| T| N| S| -|Return |
98 * |-----------------------------------------------------------|
99 * |Shift | ;| Q| J| K| X| B| M| Wl V| Z|Shift |
100 * |-----------------------------------------------------------|
101 * |Ctrl |Gui |Alt | Space |Alt |Gui |Menu|Ctrl|
102 * `-----------------------------------------------------------'
105 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS,
106 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, LBRC,RBRC,BSPC, INS, HOME,PGUP, NLCK,PSLS,PAST,PMNS,
107 TAB, QUOT,COMM,DOT, P, Y, F, G, C, R, L, SLSH,EQL, BSLS, DEL, END, PGDN, P7, P8, P9,
108 CAPS,A, O, E, U, I, D, H, T, N, S, MINS, ENT, P4, P5, P6, PPLS,
109 LSFT,SCLN,Q, J, K, X, B, M, W, V, Z, RSFT, UP, P1, P2, P3,
110 LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL, LEFT,DOWN,RGHT, P0, PDOT,PENT
113 /* 4: Workman http://viralintrospection.wordpress.com/2010/09/06/a-different-philosophy-in-designing-keyboard-layouts/
114 * ,-----------------------------------------------------------.
115 * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa|
116 * |-----------------------------------------------------------|
117 * |Tab | Q| D| R| W| B| J| F| U| P| ;| [| ]| \|
118 * |-----------------------------------------------------------|
119 * |CapsLo| A| S| H| T| G| Y| N| E| O| I| '|Return |
120 * |-----------------------------------------------------------|
121 * |Shift | Z| X| M| C| V| K| L| ,| ,| /|Shift |
122 * |-----------------------------------------------------------|
123 * |Ctrl |Gui |Alt | Space |Alt |Gui |Menu|Ctrl|
124 * `-----------------------------------------------------------'
127 ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS,
128 GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, HOME,PGUP, NLCK,PSLS,PAST,PMNS,
129 TAB, Q, D, R, W, B, J, F, U, P, SCLN,LBRC,RBRC,BSLS, DEL, END, PGDN, P7, P8, P9,
130 BSPC,A, S, H, T, G, Y, N, E, O, I, QUOT, ENT, P4, P5, P6, PPLS,
131 LSFT,Z, X, M, C, V, K, L, COMM,DOT, SLSH, RSFT, UP, P1, P2, P3,
132 LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL, LEFT,DOWN,RGHT, P0, PDOT,PENT
136 const uint16_t PROGMEM fn_actions[] = {