aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Aloysius <krusli@users.noreply.github.com>2018-04-20 02:28:55 +1000
committerDrashna Jaelre <drashna@live.com>2018-04-19 09:28:55 -0700
commitd3c6da7afff15fa493d7a6c8b00ec6e4ac7274f3 (patch)
treeb06c185b24898f601e55cfe214cb1e494708e7f7
parent47f55f417b9ecd2199b0b253e6dfb6881f9a8746 (diff)
downloadqmk_firmware-d3c6da7afff15fa493d7a6c8b00ec6e4ac7274f3.tar.gz
qmk_firmware-d3c6da7afff15fa493d7a6c8b00ec6e4ac7274f3.zip
Updated personal keymaps, fixed Let's Split default keymap, updated JJ40 README (#2704)
* Add M6-A keymap * Update XD60 keymap * Update XD60 keymap readme * Update JJ40 and Let's Split keymaps * Add readme for M6-A * Fix typo, update JJ40 README * Update jj40 readme * Cleanup jj40 keymap * Revert Let's Split QWERTY layer to default before #2010 * Update numpad layers * Fix: Let's Split keymap getting stuck mods due to having keycodes assigned on the Raise layer * Keep ASCII art consistent with keymap
-rw-r--r--keyboards/converter/ibm_terminal/matrix.c2
-rw-r--r--keyboards/four_banger/keymaps/default/keymap.c6
-rw-r--r--keyboards/jj40/README.md15
-rw-r--r--keyboards/jj40/keymaps/krusli/config.h2
-rw-r--r--keyboards/jj40/keymaps/krusli/keymap.c135
-rw-r--r--keyboards/jj40/keymaps/krusli/readme.md4
-rw-r--r--keyboards/jj40/keymaps/krusli/rules.mk2
-rw-r--r--keyboards/lets_split/keymaps/default/keymap.c6
-rw-r--r--keyboards/lets_split/keymaps/krusli/keymap.c239
-rw-r--r--keyboards/lets_split/keymaps/krusli/readme.md2
-rwxr-xr-xkeyboards/ps2avrGB/program2
-rw-r--r--keyboards/rama/m6_a/keymaps/krusli/README.md26
-rw-r--r--keyboards/rama/m6_a/keymaps/krusli/keymap.c72
-rw-r--r--keyboards/sweet16/keymaps/default/keymap.c2
-rw-r--r--keyboards/xd60/keymaps/krusli/HHKB-like.txt0
-rw-r--r--keyboards/xd60/keymaps/krusli/keymap.c50
-rw-r--r--keyboards/xd60/keymaps/krusli/readme.md2
-rwxr-xr-xutil/atmega32a_program.py2
18 files changed, 463 insertions, 106 deletions
diff --git a/keyboards/converter/ibm_terminal/matrix.c b/keyboards/converter/ibm_terminal/matrix.c
index 9d717b61f..caa0a3805 100644
--- a/keyboards/converter/ibm_terminal/matrix.c
+++ b/keyboards/converter/ibm_terminal/matrix.c
@@ -108,7 +108,7 @@ uint8_t matrix_scan(void)
108 state = RESET; 108 state = RESET;
109 } 109 }
110 break; 110 break;
111 // after reset receive keyboad ID(2 bytes) 111 // after reset receive keyboard ID(2 bytes)
112 case KBD_ID0: 112 case KBD_ID0:
113 if (code) { 113 if (code) {
114 state = KBD_ID1; 114 state = KBD_ID1;
diff --git a/keyboards/four_banger/keymaps/default/keymap.c b/keyboards/four_banger/keymaps/default/keymap.c
index 245155381..6c5f7c8a5 100644
--- a/keyboards/four_banger/keymaps/default/keymap.c
+++ b/keyboards/four_banger/keymaps/default/keymap.c
@@ -6,7 +6,7 @@ enum custom_keycodes {
6 6
7const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 7const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
8 LAYOUT_ortho_2x2( 8 LAYOUT_ortho_2x2(
9 KC_1, KC_U, 9 KC_1, KC_U,
10 KC_P, UP_URL 10 KC_P, UP_URL
11 ), 11 ),
12}; 12};
@@ -15,10 +15,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
15 switch (keycode) { 15 switch (keycode) {
16 case UP_URL: 16 case UP_URL:
17 if (record->event.pressed) { 17 if (record->event.pressed) {
18 SEND_STRING("http://1upkeyboads.com"); 18 SEND_STRING("http://1upkeyboards.com");
19 } 19 }
20 return false; 20 return false;
21 break; 21 break;
22 } 22 }
23 return true; 23 return true;
24} \ No newline at end of file 24}
diff --git a/keyboards/jj40/README.md b/keyboards/jj40/README.md
index 563f5788e..1b47ab816 100644
--- a/keyboards/jj40/README.md
+++ b/keyboards/jj40/README.md
@@ -18,13 +18,24 @@ Note that this is a complete replacement for the firmware, so you won't be
18using Bootmapper Client to change any keyboard settings, since not all the 18using Bootmapper Client to change any keyboard settings, since not all the
19USB report options are supported. 19USB report options are supported.
20 20
21In addition you may need the AVR toolchain and `bootloadHID` for flashing: 21In addition you may need the AVR toolchain and `bootloadHID` ([GitHub repo](https://github.com/whiteneon/bootloadHID)) for flashing:
22 22
23For macOS:
23``` 24```
24$ brew cask install crosspack-avr 25$ brew cask install crosspack-avr
25$ brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb 26$ brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
26``` 27```
27 28
29For Linux:
30```
31$ sudo apt install libusb-dev
32$ wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz
33$ tar -xzf bootloadHID.2012-12-08.tar.gz
34$ cd bootloadHID.2012-12-08/commandline
35$ make
36$ sudo cp bootloadHID /usr/bin
37```
38
28In order to use the `./program` script, which can reboot the board into 39In order to use the `./program` script, which can reboot the board into
29the bootloader, you'll need Python 2 with PyUSB installed: 40the bootloader, you'll need Python 2 with PyUSB installed:
30 41
@@ -32,7 +43,7 @@ the bootloader, you'll need Python 2 with PyUSB installed:
32$ pip install pyusb 43$ pip install pyusb
33``` 44```
34 45
35If you prefer, you can just build it and flash the firmware directly with 46If you prefer (or are having issues with a `program` flash), you can just build it (`make jj40:<keymap-name>` and flash the firmware (`.hex` file) directly with
36`bootloadHID` if you boot the board while holding down `Backspace` (`Top Right Key`) to keep it 47`bootloadHID` if you boot the board while holding down `Backspace` (`Top Right Key`) to keep it
37in the bootloader: 48in the bootloader:
38 49
diff --git a/keyboards/jj40/keymaps/krusli/config.h b/keyboards/jj40/keymaps/krusli/config.h
index 52aaa8f24..6d98a37a6 100644
--- a/keyboards/jj40/keymaps/krusli/config.h
+++ b/keyboards/jj40/keymaps/krusli/config.h
@@ -4,6 +4,6 @@
4#include "../../config.h" 4#include "../../config.h"
5 5
6#define PREVENT_STUCK_MODIFIERS 6#define PREVENT_STUCK_MODIFIERS
7#define TAPPING_TERM 300 7// #define TAPPING_TERM 300
8 8
9#endif 9#endif
diff --git a/keyboards/jj40/keymaps/krusli/keymap.c b/keyboards/jj40/keymaps/krusli/keymap.c
index df692cc48..2e6e9a76e 100644
--- a/keyboards/jj40/keymaps/krusli/keymap.c
+++ b/keyboards/jj40/keymaps/krusli/keymap.c
@@ -4,6 +4,7 @@
4#define _QWERTY 0 4#define _QWERTY 0
5#define _LOWER 1 5#define _LOWER 1
6#define _RAISE 2 6#define _RAISE 2
7#define _NUMPAD 3
7 8
8enum custom_keycodes { 9enum custom_keycodes {
9 QWERTY = SAFE_RANGE, 10 QWERTY = SAFE_RANGE,
@@ -15,66 +16,84 @@ void matrix_scan_user(void) {
15 // runs at every matrix scan. 16 // runs at every matrix scan.
16} 17}
17 18
18enum { 19// enum {
19 TD_H_E = 0 20// TD_H_E = 0
20}; 21// };
21 22//
22qk_tap_dance_action_t tap_dance_actions[] = { 23// qk_tap_dance_action_t tap_dance_actions[] = {
23 [TD_H_E] = ACTION_TAP_DANCE_DOUBLE(KC_HOME, KC_END) 24// [TD_H_E] = ACTION_TAP_DANCE_DOUBLE(KC_HOME, KC_END)
24}; 25// };
25 26
26const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 27const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27/* Qwerty 28 /* Qwerty
28 * ,-----------------------------------------------------------------------------------. 29 * ,-----------------------------------------------------------------------------------.
29 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | 30 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
30 * |------+------+------+------+------+-------------+------+------+------+------+------| 31 * |------+------+------+------+------+-------------+------+------+------+------+------|
31 * | Esc | A | S | D | F | G | H | J | K | L | ; | " | 32 * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
32 * |------+------+------+------+------+------|------+------+------+------+------+------| 33 * |------+------+------+------+------+------|------+------+------+------+------+------|
33 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | 34 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
34 * |------+------+------+------+------+------+------+------+------+------+------+------| 35 * |------+------+------+------+------+------+------+------+------+------+------+------|
35 * | | Ctrl | GUI | Alt |Lower | Space |Raise | Left | Down | Up |Right | 36 * | | Ctrl | GUI | Alt |Lower | Space |Raise | Left | Down | Up |Right |
36 * `-----------------------------------------------------------------------------------' 37 * `-----------------------------------------------------------------------------------'
37 */ 38 */
38[_QWERTY] = KEYMAP( \ 39 [_QWERTY] = KEYMAP( \
39 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ 40 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
40 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ 41 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
41 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \ 42 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \
42 TD(TD_H_E), KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ 43 TO(_NUMPAD),KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
43), 44 ),
45
46 /* Lower
47 * ,-----------------------------------------------------------------------------------.
48 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
49 * |------+------+------+------+------+-------------+------+------+------+------+------|
50 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | |
51 * |------+------+------+------+------+------|------+------+------+------+------+------|
52 * | | F7 | F8 | F9 | F10 | F11 | F12 | RGB | RGB | RGB | RGB |Enter |
53 * |------+------+------+------+------+------+------+------+------+------+------+------|
54 * | | RGB | RGB | RGB | | | Next | Vol- | Vol+ | Play | |
55 * `-----------------------------------------------------------------------------------'
56 */
57 [_LOWER] = KEYMAP( \
58 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \
59 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
60 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, _______, \
61 _______, RGB_SAD, RGB_SAI, RGB_HUI, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
62 ),
44 63
45/* Lower 64 /* Raise
46 * ,-----------------------------------------------------------------------------------. 65 * ,-----------------------------------------------------------------------------------.
47 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | 66 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
48 * |------+------+------+------+------+-------------+------+------+------+------+------| 67 * |------+------+------+------+------+-------------+------+------+------+------+------|
49 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | 68 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
50 * |------+------+------+------+------+------|------+------+------+------+------+------| 69 * |------+------+------+------+------+------|------+------+------+------+------+------|
51 * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | |Enter | 70 * | | F7 | F8 | F9 | F10 | F11 | F12 | Home | End | PgUp | PgDn |Enter |
52 * |------+------+------+------+------+------+------+------+------+------+------+------| 71 * |------+------+------+------+------+------+------+------+------+------+------+------|
53 * | | | | | | | | Next | Vol- | Vol+ | Play | 72 * | | Prev | Play | Next | | | | Next | Vol- | Vol+ | Play |
54 * `-----------------------------------------------------------------------------------' 73 * `-----------------------------------------------------------------------------------'
55 */ 74 */
56[_LOWER] = KEYMAP( \ 75 [_RAISE] = KEYMAP( \
57 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \ 76 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
58 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ 77 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
59 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,_______, _______, _______, \ 78 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_END, KC_PGUP, KC_PGDN, _______, \
60 BL_TOGG, BL_STEP, BL_BRTG, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ 79 _______, KC_MRWD, KC_MPLY, KC_MNXT, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
61), 80 ),
62 81
63/* Raise 82 /* Numpad
64 * ,-----------------------------------------------------------------------------------. 83 * ,-----------------------------------------------------------------------------------.
65 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | 84 * | Esc | 7 | 8 | 9 | * | / | | | | | | |
66 * |------+------+------+------+------+-------------+------+------+------+------+------| 85 * |------+------+------+------+------+-------------+------+------+------+------+------|
67 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | 86 * | <-- | 4 | 5 | 6 | + | - | | | | | | |
68 * |------+------+------+------+------+------|------+------+------+------+------+------| 87 * |------+------+------+------+------+------|------+------+------+------+------+------|
69 * | | F7 | F8 | F9 | F10 | F11 | F12 | RGB | RGB | RGB | RGB |Enter | 88 * | | 1 | 2 | 3 |Enter |Enter | | | | | | |
70 * |------+------+------+------+------+------+------+------+------+------+------+------| 89 * |------+------+------+------+------+------+------+------+------+------+------+------|
71 * | RGB | RGB | RGB | RGB | | | | Next | Vol- | Vol+ | Play | 90 * |Qwerty| 0 | . | . |Enter |Enter | | | | | |
72 * `-----------------------------------------------------------------------------------' 91 * `-----------------------------------------------------------------------------------'
73 */ 92 */
74[_RAISE] = KEYMAP( \ 93 [_NUMPAD] = KEYMAP( \
75 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ 94 KC_ESC, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, _______, _______, _______, _______, _______, _______, \
76 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ 95 KC_BSPC, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_PMNS, _______, _______, _______, _______, _______, _______, \
77 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, _______, \ 96 _______, KC_P1, KC_P2, KC_P3, KC_PENT, KC_PENT, _______, _______, _______, _______, _______, _______, \
78 RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ 97 TO(_QWERTY),KC_P0, KC_PDOT, KC_PDOT, KC_PENT, _______, _______, _______, _______, _______, _______ \
79) 98 )
80}; 99};
diff --git a/keyboards/jj40/keymaps/krusli/readme.md b/keyboards/jj40/keymaps/krusli/readme.md
index 75a84d0e6..ed760e8a6 100644
--- a/keyboards/jj40/keymaps/krusli/readme.md
+++ b/keyboards/jj40/keymaps/krusli/readme.md
@@ -1,2 +1,4 @@
1# krusli 1# krusli
2Default JJ40 keymap, adapted with RGB underglow support. GUI and LAlt is also swapped. 2JJ40 keymap based off the default Planck layout with a numpad layer and with RGB underglow controls.
3
4GUI and LAlt is also swapped to their standard positions.
diff --git a/keyboards/jj40/keymaps/krusli/rules.mk b/keyboards/jj40/keymaps/krusli/rules.mk
index e5ddcae8d..5c6bb684e 100644
--- a/keyboards/jj40/keymaps/krusli/rules.mk
+++ b/keyboards/jj40/keymaps/krusli/rules.mk
@@ -1 +1 @@
TAP_DANCE_ENABLE = yes # TAP_DANCE_ENABLE = yes
diff --git a/keyboards/lets_split/keymaps/default/keymap.c b/keyboards/lets_split/keymaps/default/keymap.c
index 0de3a1390..7cc9e53c0 100644
--- a/keyboards/lets_split/keymaps/default/keymap.c
+++ b/keyboards/lets_split/keymaps/default/keymap.c
@@ -29,18 +29,18 @@ enum custom_keycodes {
29#define XXXXXXX KC_NO 29#define XXXXXXX KC_NO
30 30
31const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 31const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
32
33/* Qwerty 32/* Qwerty
34 * ,-----------------------------------------------------------------------------------. 33 * ,-----------------------------------------------------------------------------------.
35 * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | 34 * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
36 * |------+------+------+------+------+-------------+------+------+------+------+------| 35 * |------+------+------+------+------+-------------+------+------+------+------+------|
37 * | Tab | A | S | D | F | G | H | J | K | L | ; | ' | 36 * | Tab | A | S | D | F | G | H | J | K | L | ; | " |
38 * |------+------+------+------+------+------|------+------+------+------+------+------| 37 * |------+------+------+------+------+------|------+------+------+------+------+------|
39 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | 38 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
40 * |------+------+------+------+------+------+------+------+------+------+------+------| 39 * |------+------+------+------+------+------+------+------+------+------+------+------|
41 * | Ctrl | GUI | Alt |Adjust|Lower |Space |Space |Raise | Left | Down | Up |Right | 40 * |Adjust| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
42 * `-----------------------------------------------------------------------------------' 41 * `-----------------------------------------------------------------------------------'
43 */ 42 */
43
44[_QWERTY] = LAYOUT( \ 44[_QWERTY] = LAYOUT( \
45 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \ 45 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
46 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \ 46 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
diff --git a/keyboards/lets_split/keymaps/krusli/keymap.c b/keyboards/lets_split/keymaps/krusli/keymap.c
new file mode 100644
index 000000000..177aa7168
--- /dev/null
+++ b/keyboards/lets_split/keymaps/krusli/keymap.c
@@ -0,0 +1,239 @@
1#include "lets_split.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7// Each layer gets a name for readability, which is then used in the keymap matrix below.
8// The underscores don't mean anything - you can have a layer called STUFF or any other name.
9// Layer names don't all need to be of the same length, obviously, and you can also skip them
10// entirely and just use numbers.
11#define _QWERTY 0
12#define _COLEMAK 1
13#define _DVORAK 2
14#define _LOWER 3
15#define _RAISE 4
16#define _NUMPAD 5
17#define _ADJUST 16
18
19enum custom_keycodes {
20 QWERTY = SAFE_RANGE,
21 COLEMAK,
22 DVORAK,
23 LOWER,
24 RAISE,
25 ADJUST,
26 NUMPAD
27};
28
29// Fillers to make layering more clear
30#define _______ KC_TRNS
31#define XXXXXXX KC_NO
32
33const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
34
35/* Qwerty
36 * ,-----------------------------------------------------------------------------------.
37 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
38 * |------+------+------+------+------+-------------+------+------+------+------+------|
39 * | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
40 * |------+------+------+------+------+------|------+------+------+------+------+------|
41 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
42 * |------+------+------+------+------+------+------+------+------+------+------+------|
43 * |Numpad| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
44 * `-----------------------------------------------------------------------------------'
45 */
46[_QWERTY] = KEYMAP( \
47 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
48 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
49 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \
50 NUMPAD, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
51),
52
53/* Colemak
54 * ,-----------------------------------------------------------------------------------.
55 * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
56 * |------+------+------+------+------+-------------+------+------+------+------+------|
57 * | Esc | A | R | S | T | D | H | N | E | I | O | ' |
58 * |------+------+------+------+------+------|------+------+------+------+------+------|
59 * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
60 * |------+------+------+------+------+------+------+------+------+------+------+------|
61 * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
62 * `-----------------------------------------------------------------------------------'
63 */
64[_COLEMAK] = KEYMAP( \
65 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, \
66 KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, \
67 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \
68 ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
69),
70
71/* Dvorak
72 * ,-----------------------------------------------------------------------------------.
73 * | Tab | ' | , | . | P | Y | F | G | C | R | L | Bksp |
74 * |------+------+------+------+------+-------------+------+------+------+------+------|
75 * | Esc | A | O | E | U | I | D | H | T | N | S | / |
76 * |------+------+------+------+------+------|------+------+------+------+------+------|
77 * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
78 * |------+------+------+------+------+------+------+------+------+------+------+------|
79 * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
80 * `-----------------------------------------------------------------------------------'
81 */
82[_DVORAK] = KEYMAP( \
83 KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, \
84 KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \
85 KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \
86 ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
87),
88
89/* Lower
90 * ,-----------------------------------------------------------------------------------.
91 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
92 * |------+------+------+------+------+-------------+------+------+------+------+------|
93 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
94 * |------+------+------+------+------+------|------+------+------+------+------+------|
95 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
96 * |------+------+------+------+------+------+------+------+------+------+------+------|
97 * | | | | | | | | Next | Vol- | Vol+ | Play |
98 * `-----------------------------------------------------------------------------------'
99 */
100[_LOWER] = KEYMAP( \
101 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, \
102 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
103 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, \
104 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
105),
106
107/* Raise
108 * ,-----------------------------------------------------------------------------------.
109 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
110 * |------+------+------+------+------+-------------+------+------+------+------+------|
111 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
112 * |------+------+------+------+------+------|------+------+------+------+------+------|
113 * | | F7 | F8 | F9 | F10 | F11 | F12 | Home | End | PgUp | PgDn |Enter |
114 * |------+------+------+------+------+------+------+------+------+------+------+------|
115 * | | | | | | | | Next | Vol- | Vol+ | Play |
116 * `-----------------------------------------------------------------------------------'
117 */
118[_RAISE] = KEYMAP( \
119 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
120 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
121 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_END, KC_PGUP, KC_PGDN, _______, \
122 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
123),
124
125/* Numpad
126 * ,-----------------------------------------------------------------------------------.
127 * | Esc | 7 | 8 | 9 | * | / | | | | | | |
128 * |------+------+------+------+------+-------------+------+------+------+------+------|
129 * | <-- | 4 | 5 | 6 | + | - | | | | | | |
130 * |------+------+------+------+------+------|------+------+------+------+------+------|
131 * | | 1 | 2 | 3 |Enter |Enter | | | | | | |
132 * |------+------+------+------+------+------+------+------+------+------+------+------|
133 * |Qwerty| 0 | . | . |Enter |Enter | | | | | |
134 * `-----------------------------------------------------------------------------------'
135 */
136[_NUMPAD] = KEYMAP( \
137 KC_ESC, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, _______, _______, _______, _______, _______, _______, \
138 KC_BSPC, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_PMNS, _______, _______, _______, _______, _______, _______, \
139 _______, KC_P1, KC_P2, KC_P3, KC_PENT, KC_PENT, _______, _______, _______, _______, _______, _______, \
140 QWERTY, KC_P0, KC_PDOT, KC_PDOT, KC_PENT, KC_PENT, _______, _______, _______, _______, _______, _______ \
141),
142
143/* Adjust (Lower + Raise)
144 * ,-----------------------------------------------------------------------------------.
145 * | | Reset| | | | | | | | | | Del |
146 * |------+------+------+------+------+-------------+------+------+------+------+------|
147 * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
148 * |------+------+------+------+------+------|------+------+------+------+------+------|
149 * | | | | | | | | | | | | |
150 * |------+------+------+------+------+------+------+------+------+------+------+------|
151 * | | | | | | | | | | | |
152 * `-----------------------------------------------------------------------------------'
153 */
154[_ADJUST] = KEYMAP( \
155 _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \
156 _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \
157 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
158 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
159)
160
161
162};
163
164#ifdef AUDIO_ENABLE
165float tone_qwerty[][2] = SONG(QWERTY_SOUND);
166float tone_dvorak[][2] = SONG(DVORAK_SOUND);
167float tone_colemak[][2] = SONG(COLEMAK_SOUND);
168#endif
169
170void persistent_default_layer_set(uint16_t default_layer) {
171 eeconfig_update_default_layer(default_layer);
172 default_layer_set(default_layer);
173}
174
175bool process_record_user(uint16_t keycode, keyrecord_t *record) {
176 switch (keycode) {
177 case QWERTY:
178 if (record->event.pressed) {
179 #ifdef AUDIO_ENABLE
180 PLAY_SONG(tone_qwerty);
181 #endif
182 persistent_default_layer_set(1UL<<_QWERTY);
183 }
184 return false;
185 break;
186 case NUMPAD:
187 if (record->event.pressed)
188 persistent_default_layer_set(1UL<<_NUMPAD);
189 return false;
190 break;
191 case COLEMAK:
192 if (record->event.pressed) {
193 #ifdef AUDIO_ENABLE
194 PLAY_SONG(tone_colemak);
195 #endif
196 persistent_default_layer_set(1UL<<_COLEMAK);
197 }
198 return false;
199 break;
200 case DVORAK:
201 if (record->event.pressed) {
202 #ifdef AUDIO_ENABLE
203 PLAY_SONG(tone_dvorak);
204 #endif
205 persistent_default_layer_set(1UL<<_DVORAK);
206 }
207 return false;
208 break;
209 case LOWER:
210 if (record->event.pressed) {
211 layer_on(_LOWER);
212 update_tri_layer(_LOWER, _RAISE, _ADJUST);
213 } else {
214 layer_off(_LOWER);
215 update_tri_layer(_LOWER, _RAISE, _ADJUST);
216 }
217 return false;
218 break;
219 case RAISE:
220 if (record->event.pressed) {
221 layer_on(_RAISE);
222 update_tri_layer(_LOWER, _RAISE, _ADJUST);
223 } else {
224 layer_off(_RAISE);
225 update_tri_layer(_LOWER, _RAISE, _ADJUST);
226 }
227 return false;
228 break;
229 case ADJUST:
230 if (record->event.pressed) {
231 layer_on(_ADJUST);
232 } else {
233 layer_off(_ADJUST);
234 }
235 return false;
236 break;
237 }
238 return true;
239}
diff --git a/keyboards/lets_split/keymaps/krusli/readme.md b/keyboards/lets_split/keymaps/krusli/readme.md
new file mode 100644
index 000000000..175ef3c11
--- /dev/null
+++ b/keyboards/lets_split/keymaps/krusli/readme.md
@@ -0,0 +1,2 @@
1# krusli
2Let's Split keymap based off the default Planck layout with a numpad layer.
diff --git a/keyboards/ps2avrGB/program b/keyboards/ps2avrGB/program
index 298e64547..b777b9110 100755
--- a/keyboards/ps2avrGB/program
+++ b/keyboards/ps2avrGB/program
@@ -73,7 +73,7 @@ if len(sys.argv) < 2:
73kb = checkForKeyboardInNormalMode() 73kb = checkForKeyboardInNormalMode()
74 74
75if kb is not None: 75if kb is not None:
76 print('Found a keyboad in normal mode. Attempting to send it to bootloader mode ...', end='') 76 print('Found a keyboard in normal mode. Attempting to send it to bootloader mode ...', end='')
77 sendDeviceToBootloaderMode(kb) 77 sendDeviceToBootloaderMode(kb)
78 print(' done.') 78 print(' done.')
79 print("Hint: If your keyboard can't be set to bootloader mode automatically, plug it in while pressing the bootloader key to do so manually.") 79 print("Hint: If your keyboard can't be set to bootloader mode automatically, plug it in while pressing the bootloader key to do so manually.")
diff --git a/keyboards/rama/m6_a/keymaps/krusli/README.md b/keyboards/rama/m6_a/keymaps/krusli/README.md
new file mode 100644
index 000000000..771b47a47
--- /dev/null
+++ b/keyboards/rama/m6_a/keymaps/krusli/README.md
@@ -0,0 +1,26 @@
1# krusli's RAMA M6-A Layout
2
3Personal keymap for the RAMA M6-A.
4
5Keymap was from my own port for the M6-A before official support was added, thus the backlighting code is not ported yet from the official default keymap.
6
7Top-right button acts as a "toggle between layers" button. Layer 0 -> Layer 1 -> Layer 2 -> Layer 0 -> ...
8
9- Layer 0: Git and Discord shortcuts
10- Layer 1: Media playback and volume controls
11- Layer 2: Osu! gamepad layer
12
13## Helpful alternative keymaps (WIP)
14### Arrow cluster
15Use [karabiner-elements](https://github.com/tekezo/Karabiner-Elements) on macOS so that the state of the modifiers (shift, caps lock) are synchronised between keyboards (for shift + arrow key text selection, for example). It's also a handy tool for customising keyboard behaviour on a Mac.
16
17On Windows/Linux modifier state should be shared between all keyboards by default.
18
19Installation: install [homebrew](https://brew.sh) and run `brew install Caskroom/cask/karabiner-elements`.
20
21```C
22KEYMAP(
23 KC_ESC, KC_UP, TO(_LAYER0),
24 KC_LEFT, KC_DOWN, KC_RIGHT
25)
26```
diff --git a/keyboards/rama/m6_a/keymaps/krusli/keymap.c b/keyboards/rama/m6_a/keymaps/krusli/keymap.c
new file mode 100644
index 000000000..679d0bc43
--- /dev/null
+++ b/keyboards/rama/m6_a/keymaps/krusli/keymap.c
@@ -0,0 +1,72 @@
1#include "../../m6_a.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7// Each layer gets a name for readability, which is then used in the keymap matrix below.
8// The underscores don't mean anything - you can have a layer called STUFF or any other name.
9// Layer names don't all need to be of the same length, obviously, and you can also skip them
10// entirely and just use numbers.
11
12enum layers {
13 _LAYER0,
14 _LAYER1,
15 _LAYER2
16};
17
18enum custom_keycodes {
19 GIT_ADD = SAFE_RANGE,
20 GIT_COMMIT,
21 GIT_PUSH,
22 MUTE,
23 DEAFEN
24};
25
26bool process_record_user(uint16_t keycode, keyrecord_t *record) {
27 if (record->event.pressed) {
28 switch(keycode) {
29 case GIT_ADD:
30 SEND_STRING("git add ."SS_TAP(X_ENTER));
31 break;
32 case GIT_COMMIT:
33 SEND_STRING("git commit -m "SS_DOWN(X_LSHIFT)SS_TAP(X_QUOTE)SS_UP(X_LSHIFT));
34 break;
35 case GIT_PUSH:
36 SEND_STRING("git push"SS_TAP(X_ENTER));
37 break;
38 case MUTE:
39 SEND_STRING(SS_LGUI(SS_LSFT("M")));
40 break;
41 case DEAFEN:
42 SEND_STRING(SS_LGUI(SS_LSFT("D")));
43 break;
44 return false;
45 }
46 }
47 return true;
48};
49
50#define _______ KC_TRNS
51#define XXXXXXX KC_NO
52
53const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
54 [_LAYER0] = KEYMAP(
55 MUTE, DEAFEN, TO(_LAYER1),
56 GIT_ADD, GIT_COMMIT, GIT_PUSH
57 ),
58 [_LAYER1] = KEYMAP(
59 KC_VOLD, KC_VOLU, TO(_LAYER2),
60 KC_MRWD, KC_MPLY, KC_MNXT
61 ),
62 [_LAYER2] = KEYMAP(
63 KC_ESC, KC_UP, TO(_LAYER0),
64 KC_Z, KC_X, KC_SPACE
65 )
66};
67
68void matrix_init_user(void) {
69 #ifdef BACKLIGHT_ENABLE
70 backlight_level(0);
71 #endif
72}
diff --git a/keyboards/sweet16/keymaps/default/keymap.c b/keyboards/sweet16/keymaps/default/keymap.c
index 7fa861543..2ddf8acb4 100644
--- a/keyboards/sweet16/keymaps/default/keymap.c
+++ b/keyboards/sweet16/keymaps/default/keymap.c
@@ -17,7 +17,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
17 switch (keycode) { 17 switch (keycode) {
18 case UP_URL: 18 case UP_URL:
19 if (record->event.pressed) { 19 if (record->event.pressed) {
20 SEND_STRING("http://1upkeyboads.com"); 20 SEND_STRING("http://1upkeyboards.com");
21 } 21 }
22 return false; 22 return false;
23 break; 23 break;
diff --git a/keyboards/xd60/keymaps/krusli/HHKB-like.txt b/keyboards/xd60/keymaps/krusli/HHKB-like.txt
deleted file mode 100644
index e69de29bb..000000000
--- a/keyboards/xd60/keymaps/krusli/HHKB-like.txt
+++ /dev/null
diff --git a/keyboards/xd60/keymaps/krusli/keymap.c b/keyboards/xd60/keymaps/krusli/keymap.c
index 95a3e3fad..cf3edff40 100644
--- a/keyboards/xd60/keymaps/krusli/keymap.c
+++ b/keyboards/xd60/keymaps/krusli/keymap.c
@@ -1,40 +1,26 @@
1#include "xd60.h" 1#include "xd60.h"
2#include "action_layer.h" 2#include "action_layer.h"
3 3
4/* HHKB-like layout for standard 60% layout with split RShift and split backspace */ 4#define _______ KC_TRNS
5 5
6const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 6#define _BASE 0
7#define _FN 1
7 8
8 // 0: Base Layer 9/* HHKB-like layout for standard 60% layout with split RShift */
9 LAYOUT_ALL( 10const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
10 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \ 11 [_BASE] = KEYMAP(
11 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \ 12 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, _______, \
12 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ 13 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
13 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, F(0), \ 14 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
14 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, F(0), KC_RCTL, KC_RCTL), 15 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, F(0), \
15 16 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, _______, KC_APP, KC_RCTL),
16 // 1: Function Layer 17
17 /* Layer HHKB: HHKB mode (HHKB Fn) 18 [_FN] = KEYMAP(
18 |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| 19 KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______, \
19 | Pwr | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del | 20 RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAD, RGB_VAI, RGB_SAD, RGB_SAI, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, KC_INS, \
20 |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| 21 _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_NO, _______ \
21 | Caps | | | | | | | | Psc | Slk | Pus | Up | | Backs | | 22 _______, KC_NO, _______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, \
22 |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----| 23 _______, _______, _______, _______, _______, _______, _______, _______, _______),
23 | | VoD | VoU | Mut | | | * | / | Hom | PgU | Lef | Rig | Enter | | |
24 |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
25 | | | | | | | + | - | End | PgD | Dow | | | | |
26 |------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
27
28 |------+------+----------------------+------+------+
29 | **** | **** | ******************** | **** | **** |
30 |------+------+----------------------+------+------+
31 */
32 LAYOUT_ALL(
33 RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, \
34 KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_BSPC, \
35 KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_NO, KC_ENT, \
36 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, \
37 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, F(0), KC_TRNS, KC_TRNS),
38}; 24};
39 25
40// Custom Actions 26// Custom Actions
diff --git a/keyboards/xd60/keymaps/krusli/readme.md b/keyboards/xd60/keymaps/krusli/readme.md
index aefb23cca..34f46e026 100644
--- a/keyboards/xd60/keymaps/krusli/readme.md
+++ b/keyboards/xd60/keymaps/krusli/readme.md
@@ -1,7 +1,7 @@
1# krusli's Keymap for XIUDI's 60% XD60 PCB 1# krusli's Keymap for XIUDI's 60% XD60 PCB
2 2
3## Additional Notes 3## Additional Notes
4Keymap for the XD60 with 2.25u left shift and split backspace. HHKB-like function layer. 4Keymap for the XD60 (ANSI) with 2.25u left shift, split right shift. HHKB-like function layer.
5 5
6## Build 6## Build
7To build this keymap, simply run `make xd60:krusli` on the top-level directory for QMK. 7To build this keymap, simply run `make xd60:krusli` on the top-level directory for QMK.
diff --git a/util/atmega32a_program.py b/util/atmega32a_program.py
index 298e64547..b777b9110 100755
--- a/util/atmega32a_program.py
+++ b/util/atmega32a_program.py
@@ -73,7 +73,7 @@ if len(sys.argv) < 2:
73kb = checkForKeyboardInNormalMode() 73kb = checkForKeyboardInNormalMode()
74 74
75if kb is not None: 75if kb is not None:
76 print('Found a keyboad in normal mode. Attempting to send it to bootloader mode ...', end='') 76 print('Found a keyboard in normal mode. Attempting to send it to bootloader mode ...', end='')
77 sendDeviceToBootloaderMode(kb) 77 sendDeviceToBootloaderMode(kb)
78 print(' done.') 78 print(' done.')
79 print("Hint: If your keyboard can't be set to bootloader mode automatically, plug it in while pressing the bootloader key to do so manually.") 79 print("Hint: If your keyboard can't be set to bootloader mode automatically, plug it in while pressing the bootloader key to do so manually.")