aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Speiser <34740424+Speiserm@users.noreply.github.com>2019-06-20 01:19:54 -0400
committerDrashna Jaelre <drashna@live.com>2019-06-19 22:19:54 -0700
commitdb0c1795520eea60e0092ced7048c9da7b508d37 (patch)
treecd1a3cf61d15ce84b9c428a234b1b7392602fc11
parent9639f44f48a6073bf12094ad57688a1c79c3214a (diff)
downloadqmk_firmware-db0c1795520eea60e0092ced7048c9da7b508d37.tar.gz
qmk_firmware-db0c1795520eea60e0092ced7048c9da7b508d37.zip
[Keymap] Added Deft layout (#6153)
* Added Deft layout * Updated style and keymap * Updated readme, removed files * Updated readme and keymap * Updated readme * Fixed broken keymap * Fixed a typo in keymap and readme layer images * Fixed a typo in readme * Embedded layout image for readme * Embedded layout image for readme * Embedded layout image for readme * Fixed typos in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed typo in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed typo in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed a spelling error in the readme * Typos and formatting in readme Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> Co-Authored-By: fauxpark <fauxpark@gmail.com>
-rw-r--r--keyboards/planck/keymaps/deft/config.h39
-rw-r--r--keyboards/planck/keymaps/deft/deft-plank.json141
-rw-r--r--keyboards/planck/keymaps/deft/keymap.c138
-rw-r--r--keyboards/planck/keymaps/deft/readme.md73
-rw-r--r--keyboards/planck/keymaps/deft/rules.mk1
5 files changed, 392 insertions, 0 deletions
diff --git a/keyboards/planck/keymaps/deft/config.h b/keyboards/planck/keymaps/deft/config.h
new file mode 100644
index 000000000..6fa31cc8a
--- /dev/null
+++ b/keyboards/planck/keymaps/deft/config.h
@@ -0,0 +1,39 @@
1#pragma once
2
3#ifdef AUDIO_ENABLE
4 #define STARTUP_SONG SONG(PLANCK_SOUND)
5 // #define STARTUP_SONG SONG(NO_SOUND)
6
7 #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
8 SONG(COLEMAK_SOUND), \
9 SONG(DVORAK_SOUND) \
10 }
11#endif
12
13/*
14 * MIDI options
15 */
16
17/* Prevent use of disabled MIDI features in the keymap */
18//#define MIDI_ENABLE_STRICT 1
19
20/* enable basic MIDI features:
21 - MIDI notes can be sent when in Music mode is on
22*/
23
24#define MIDI_BASIC
25
26/* enable advanced MIDI features:
27 - MIDI notes can be added to the keymap
28 - Octave shift and transpose
29 - Virtual sustain, portamento, and modulation wheel
30 - etc.
31*/
32//#define MIDI_ADVANCED
33
34/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
35//#define MIDI_TONE_KEYCODE_OCTAVES 2
36
37// Most tactile encoders have detents every 4 stages
38#define ENCODER_RESOLUTION 4
39
diff --git a/keyboards/planck/keymaps/deft/deft-plank.json b/keyboards/planck/keymaps/deft/deft-plank.json
new file mode 100644
index 000000000..49dc57c3e
--- /dev/null
+++ b/keyboards/planck/keymaps/deft/deft-plank.json
@@ -0,0 +1,141 @@
1[
2 {
3 "backcolor": "#ffffff",
4 "name": "Deft Plank",
5 "author": "Michael Speiserß",
6 "switchMount": "cherry",
7 "switchBrand": "gateron",
8 "switchType": "KS-3-Tea",
9 "plate": true,
10 "pcb": true
11 },
12 [
13 {
14 "c": "#ba0000",
15 "sb": "gateron",
16 "st": "KS-3-Tea",
17 "a": 5
18 },
19 "\nDel\n\n\n\n\nEsc",
20 {
21 "c": "#cccccc",
22 "a": 4
23 },
24 "\n\n!\n\n\n\n\n\n1\nQ\nAlt 1",
25 "\n\n@\n\n\n\n\n\n2\nW\nAlt 2",
26 "\n\n#\n\n\n\n\n\n3\nE\nAlt 3",
27 "\n\n$\n\n\n\n\n\n4\nR\nAlt 4",
28 "\n\n%\n\n\n\n\n\n5\nT\n(",
29 "\n\n^\n\n\n\n\n\n6\nY\n)",
30 "\n\n&\n\n\n\n\n\n7\nU\nNum 7",
31 "\n\n*\n\n\n\n\n\n8\nI\nNum 8",
32 "\n\n(\n\n\n\n\n\n9\nO\nNum 9",
33 "\n\n)\n\n\n\n\n\n0\nP\nNum 0",
34 {
35 "c": "#ba0000",
36 "a": 7
37 },
38 "Bksp"
39 ],
40 [
41 {
42 "c": "#365eff"
43 },
44 "Tab",
45 {
46 "c": "#cccccc",
47 "a": 4
48 },
49 "\n\n\n~\n\n\n\n\nF1\nA\n`",
50 "\n\n\n|\n\n\n\n\nF2\nS\n\\",
51 "\n\n\n+\n\n\n\n\nF3\nD\n=",
52 {
53 "n": true
54 },
55 "\n\n\n_\n\n\n\n\nF4\nF\n-",
56 {
57 "a": 5
58 },
59 "F5\n<\n\n\n\n\nG",
60 "F6\n>\n\n\n\n\nH",
61 {
62 "n": true
63 },
64 "F7\nNum 4\n\n\n\n\nJ",
65 "F8\nNum 5\n\n\n\n\nK",
66 "F9\nNum 6\n\n\n\n\nL",
67 {
68 "a": 4
69 },
70 "\n\n\n\n\n\n\n:\nF10\n;\nNum .",
71 "\n\n\n\n\n\n\n\"\n\n'\nNumLk"
72 ],
73 [
74 {
75 "c": "#365eff",
76 "a": 7
77 },
78 "Shift",
79 {
80 "c": "#cccccc",
81 "a": 5
82 },
83 "F11\nNum /\n\n\n\n\nZ",
84 "F12\nNum *\n\n\n\n\nX",
85 "F13\nNum -\n\n\n\n\nC",
86 "F14\nNum +\n\n\n\n\nV",
87 "F15\n[\n\n\n\n\nB",
88 "F16\n]\n\n\n\n\nN",
89 "F17\nNum 1\n\n\n\n\nM",
90 {
91 "a": 4
92 },
93 "\n\n\n\n\n\n\n<\nF18\n,\nNum 2",
94 "\n\n\n\n\n\n\n>\nF19\n.\nNum 3",
95 {
96 "c": "#365eff",
97 "a": 5
98 },
99 "Vol+\nPgup\n\n\n\n\n&uarr;",
100 {
101 "c": "#cccccc",
102 "a": 4
103 },
104 "\n\n\n\n\n\n\n?\n\n/\nNum ="
105 ],
106 [
107 {
108 "c": "#365eff",
109 "a": 7
110 },
111 "Ctrl",
112 {
113 "a": 5
114 },
115 "\nOption\n\n\n\n\nAlt",
116 "\n⌘\n\n\n\n\nWin",
117 "Cut\nPaste\n\n\n\n\nCopy",
118 {
119 "c": "#3f8f00",
120 "a": 7
121 },
122 "Lower",
123 {
124 "c": "#cccccc",
125 "w": 2
126 },
127 "",
128 {
129 "c": "#3f8f00"
130 },
131 "Raise",
132 {
133 "c": "#365eff",
134 "a": 5
135 },
136 "\nNumE\n\n\n\n\nReturn",
137 "Play\nHome\n\n\n\n\n&larr;",
138 "Vol -\nPgdn\n\n\n\n\n&darr;",
139 "Next\nEnd\n\n\n\n\n&rarr;"
140 ]
141] \ No newline at end of file
diff --git a/keyboards/planck/keymaps/deft/keymap.c b/keyboards/planck/keymaps/deft/keymap.c
new file mode 100644
index 000000000..25a0a9f44
--- /dev/null
+++ b/keyboards/planck/keymaps/deft/keymap.c
@@ -0,0 +1,138 @@
1/*
2 * The Deft layout for the Planck Keyboard
3 * Version 1.0
4 *
5 * A keyboard layout designed for efficiency in programming and transferability between ortholinear boards.
6 * Deft is currently supported on the following boards:
7 * Planck (12x4)
8 *
9 * The Deft keyboard layout was designed by Michael Speiser. You can find other Deft layouts at my Github:
10 * https://github.com/Speiserm
11 *
12 * For questions, issues, or feedback, feel free to email me at Speiserm@pm.me.
13 *
14 *
15 * Flashing:
16 *
17 * Rev 5 or earlier:
18 * make planck/revX:deft:dfu
19 *
20 * Rev 6:
21 * make planck/rev6:deft:dfu-util
22 *
23 *
24 *
25 *
26 *
27 *
28 *
29 *
30 *
31 *
32 *
33 *
34 *
35 *
36 * Follow my cat:
37 * https://twitter.com/CatBucha
38 * https://www.instagram.com/buchathecat/
39 *
40 */
41
42#include QMK_KEYBOARD_H
43
44extern keymap_config_t keymap_config;
45
46enum planck_layers {
47 _QWERTY,
48 _LOWER,
49 _RAISE,
50 _ADJUST
51};
52
53enum planck_keycodes {
54 QWERTY = SAFE_RANGE
55};
56
57#define LOWER MO(_LOWER)
58#define RAISE MO(_RAISE)
59
60const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
61
62/* Qwerty
63 * ,-----------------------------------------------------------------------------------.
64 * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
65 * |------+------+------+------+------+-------------+------+------+------+------+------|
66 * | Tab | A | S | D | F | G | H | J | K | L | ; | ' |
67 * |------+------+------+------+------+------|------+------+------+------+------+------|
68 * |Shift | Z | X | C | V | B | N | M | , | . | Up | / |
69 * |------+------+------+------+------+------+------+------+------+------+------+------|
70 * | Ctrl | Alt | GUI | Copy |Lower | Space |Raise |Enter | Left | Down |Right |
71 * `-----------------------------------------------------------------------------------'
72 */
73[_QWERTY] = LAYOUT_planck_grid(
74 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
75 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
76 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH,
77 KC_LCTL, KC_LALT, KC_LGUI, C(KC_C), LOWER, KC_SPC, KC_SPC, RAISE, KC_ENT, KC_LEFT, KC_DOWN, KC_RGHT
78),
79
80/* Lower
81 * ,-----------------------------------------------------------------------------------.
82 * | Del | Alt1 | Alt2 | Alt3 | Alt4 | ( | ) | Num7 | Num8 | Num9 | Num0 | |
83 * |------+------+------+------+------+-------------+------+------+------+------+------|
84 * | | ` | \ | = | - | < | > | Num4 | Num5 | Num6 | Num. | NumL |
85 * |------+------+------+------+------+------|------+------+------+------+------+------|
86 * | | Num/ | Num* | Num- | Num+ | [ | ] | Num1 | Num2 | Num3 | Pgup | Num= |
87 * |------+------+------+------+------+------+------+------+------+------+------+------|
88 * | | | |Paste | | | | NumE | Home | Pgdn | End |
89 * `-----------------------------------------------------------------------------------'
90 */
91[_LOWER] = LAYOUT_planck_grid(
92 KC_DEL, A(KC_1), A(KC_2), A(KC_3), A(KC_4), S(KC_9), S(KC_0), KC_P7, KC_P8, KC_P9, KC_P0, _______,
93 _______, KC_GRV,KC_BSLS,KC_EQL, KC_MINS,S(KC_COMM),S(KC_DOT), KC_P4, KC_P5, KC_P6, KC_PDOT, KC_NLCK,
94 _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_LBRC, KC_RBRC, KC_P1, KC_P2, KC_P3, KC_PGUP, KC_PEQL,
95 _______, _______, _______, C(KC_V), _______, _______, _______, _______, KC_PENT, KC_HOME,KC_PGDOWN, KC_END
96),
97
98/* Raise
99 * ,-----------------------------------------------------------------------------------.
100 * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
101 * |------+------+------+------+------+-------------+------+------+------+------+------|
102 * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
103 * |------+------+------+------+------+------|------+------+------+------+------+------|
104 * | | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | Vol+ | |
105 * |------+------+------+------+------+------+------+------+------+------+------+------|
106 * | | | | Cut | | | | | Play | Vol- | Next |
107 * `-----------------------------------------------------------------------------------'
108 */
109[_RAISE] = LAYOUT_planck_grid(
110 _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
111 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
112 _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_VOLU, _______,
113 _______, _______, _______, C(KC_X), _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_MNXT
114),
115
116/* Adjust (Lower + Raise)
117 * ,-----------------------------------------------------------------------------------.
118 * |Reset | | | | | | | | | | | |
119 * |------+------+------+------+------+-------------+------+------+------+------+------|
120 * | | | | | | | | | | | | |
121 * |------+------+------+------+------+------|------+------+------+------+------+------|
122 * | | | | | | | | | | | | |
123 * |------+------+------+------+------+------+------+------+------+------+------+------|
124 * | | | | | | | | | | | |
125 * `-----------------------------------------------------------------------------------'
126 */
127[_ADJUST] = LAYOUT_planck_grid(
128 RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
129 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
130 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
131 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
132)
133
134};
135
136uint32_t layer_state_set_user(uint32_t state) {
137 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
138}
diff --git a/keyboards/planck/keymaps/deft/readme.md b/keyboards/planck/keymaps/deft/readme.md
new file mode 100644
index 000000000..715ab3796
--- /dev/null
+++ b/keyboards/planck/keymaps/deft/readme.md
@@ -0,0 +1,73 @@
1# The Deft Planck Layout
2
3![Deft layout for the Planck keyboard](https://i.imgur.com/VtUkAyh.png)
4
5The Deft Planck layout is designed for efficiency in programming and transferability between ortholinear boards. It features a fairly standard default layer with properly placed arrow keys, a lower layer with a usable numpad and symbols, and a raise layer for numbers, f-keys, and music controls. The code is also cut down to only what you need. The result is a very usable Planck that can easily replace fullsize layouts.
6
7The strangely placed Enter key is meant to be closer to your thumb and moving it allows for proper arrow key placement without disturbing our layout too much. I wanted to separate the enter key from the forward slash key anyway, as I was commonly pressing enter when I meant to type a question mark. You get used to it pretty fast.
8
9Follow my cat:
10
11https://twitter.com/CatBucha
12
13https://www.instagram.com/buchathecat/
14
15
16## Flashing:
17| Rev 5 or earlier: | Rev 6: |
18|-|-|
19| `make planck/revX:deft:dfu` | `make planck/rev6:deft:dfu-util` |
20
21## Layout:
22
23### QWERTY layer
24```
25,-----------------------------------------------------------------------------------.
26| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
27|------+------+------+------+------+-------------+------+------+------+------+------|
28| Tab | A | S | D | F | G | H | J | K | L | ; | ' |
29|------+------+------+------+------+------|------+------+------+------+------+------|
30|Shift | Z | X | C | V | B | N | M | , | . | Up | / |
31|------+------+------+------+------+------+------+------+------+------+------+------|
32| Ctrl | Alt | GUI | Copy |Lower | Space |Raise |Enter | Left | Down |Right |
33`-----------------------------------------------------------------------------------'
34```
35
36### Lower layer
37```
38,-----------------------------------------------------------------------------------.
39| Del | Alt1 | Alt2 | Alt3 | Alt4 | ( | ) | Num7 | Num8 | Num9 | Num0 | |
40|------+------+------+------+------+-------------+------+------+------+------+------|
41| | ` | \ | = | - | < | > | Num4 | Num5 | Num6 | Num. | NumL |
42|------+------+------+------+------+------|------+------+------+------+------+------|
43| | Num/ | Num* | Num- | Num+ | [ | ] | Num1 | Num2 | Num3 | Pgup | Num= |
44|------+------+------+------+------+------+------+------+------+------+------+------|
45| | | |Paste | | | | NumE | Home | Pgdn | End |
46`-----------------------------------------------------------------------------------'
47```
48
49### Raise layer
50```
51,-----------------------------------------------------------------------------------.
52| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
53|------+------+------+------+------+-------------+------+------+------+------+------|
54| | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
55|------+------+------+------+------+------|------+------+------+------+------+------|
56| | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | Vol+ | |
57|------+------+------+------+------+------+------+------+------+------+------+------|
58| | | | Cut | | | | | Play | Vol- | Next |
59`-----------------------------------------------------------------------------------'
60```
61
62### Adjust layer
63```
64,-----------------------------------------------------------------------------------.
65|Reset | | | | | | | | | | | |
66|------+------+------+------+------+-------------+------+------+------+------+------|
67| | | | | | | | | | | | |
68|------+------+------+------+------+------|------+------+------+------+------+------|
69| | | | | | | | | | | | |
70|------+------+------+------+------+------+------+------+------+------+------+------|
71| | | | | | | | | | | |
72`-----------------------------------------------------------------------------------'
73```
diff --git a/keyboards/planck/keymaps/deft/rules.mk b/keyboards/planck/keymaps/deft/rules.mk
new file mode 100644
index 000000000..dcf16bef3
--- /dev/null
+++ b/keyboards/planck/keymaps/deft/rules.mk
@@ -0,0 +1 @@
SRC += muse.c