Skip to content

Commit

Permalink
[Keymap] Added Deft layout (qmk#6153)
Browse files Browse the repository at this point in the history
* 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 <[email protected]>

* Fixed typo in keymap

Co-Authored-By: noroadsleft <[email protected]>

* Fixed typo in keymap

Co-Authored-By: noroadsleft <[email protected]>

* Fixed a spelling error in the readme

* Typos and formatting in readme

Co-Authored-By: noroadsleft <[email protected]>
Co-Authored-By: fauxpark <[email protected]>
  • Loading branch information
3 people authored and drashna committed Jun 20, 2019
1 parent 9639f44 commit db0c179
Show file tree
Hide file tree
Showing 5 changed files with 392 additions and 0 deletions.
39 changes: 39 additions & 0 deletions keyboards/planck/keymaps/deft/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#pragma once

#ifdef AUDIO_ENABLE
#define STARTUP_SONG SONG(PLANCK_SOUND)
// #define STARTUP_SONG SONG(NO_SOUND)

#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
SONG(COLEMAK_SOUND), \
SONG(DVORAK_SOUND) \
}
#endif

/*
* MIDI options
*/

/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* enable basic MIDI features:
- MIDI notes can be sent when in Music mode is on
*/

#define MIDI_BASIC

/* enable advanced MIDI features:
- MIDI notes can be added to the keymap
- Octave shift and transpose
- Virtual sustain, portamento, and modulation wheel
- etc.
*/
//#define MIDI_ADVANCED

/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

// Most tactile encoders have detents every 4 stages
#define ENCODER_RESOLUTION 4

141 changes: 141 additions & 0 deletions keyboards/planck/keymaps/deft/deft-plank.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
[
{
"backcolor": "#ffffff",
"name": "Deft Plank",
"author": "Michael Speiserß",
"switchMount": "cherry",
"switchBrand": "gateron",
"switchType": "KS-3-Tea",
"plate": true,
"pcb": true
},
[
{
"c": "#ba0000",
"sb": "gateron",
"st": "KS-3-Tea",
"a": 5
},
"\nDel\n\n\n\n\nEsc",
{
"c": "#cccccc",
"a": 4
},
"\n\n!\n\n\n\n\n\n1\nQ\nAlt 1",
"\n\n@\n\n\n\n\n\n2\nW\nAlt 2",
"\n\n#\n\n\n\n\n\n3\nE\nAlt 3",
"\n\n$\n\n\n\n\n\n4\nR\nAlt 4",
"\n\n%\n\n\n\n\n\n5\nT\n(",
"\n\n^\n\n\n\n\n\n6\nY\n)",
"\n\n&\n\n\n\n\n\n7\nU\nNum 7",
"\n\n*\n\n\n\n\n\n8\nI\nNum 8",
"\n\n(\n\n\n\n\n\n9\nO\nNum 9",
"\n\n)\n\n\n\n\n\n0\nP\nNum 0",
{
"c": "#ba0000",
"a": 7
},
"Bksp"
],
[
{
"c": "#365eff"
},
"Tab",
{
"c": "#cccccc",
"a": 4
},
"\n\n\n~\n\n\n\n\nF1\nA\n`",
"\n\n\n|\n\n\n\n\nF2\nS\n\\",
"\n\n\n+\n\n\n\n\nF3\nD\n=",
{
"n": true
},
"\n\n\n_\n\n\n\n\nF4\nF\n-",
{
"a": 5
},
"F5\n<\n\n\n\n\nG",
"F6\n>\n\n\n\n\nH",
{
"n": true
},
"F7\nNum 4\n\n\n\n\nJ",
"F8\nNum 5\n\n\n\n\nK",
"F9\nNum 6\n\n\n\n\nL",
{
"a": 4
},
"\n\n\n\n\n\n\n:\nF10\n;\nNum .",
"\n\n\n\n\n\n\n\"\n\n'\nNumLk"
],
[
{
"c": "#365eff",
"a": 7
},
"Shift",
{
"c": "#cccccc",
"a": 5
},
"F11\nNum /\n\n\n\n\nZ",
"F12\nNum *\n\n\n\n\nX",
"F13\nNum -\n\n\n\n\nC",
"F14\nNum +\n\n\n\n\nV",
"F15\n[\n\n\n\n\nB",
"F16\n]\n\n\n\n\nN",
"F17\nNum 1\n\n\n\n\nM",
{
"a": 4
},
"\n\n\n\n\n\n\n<\nF18\n,\nNum 2",
"\n\n\n\n\n\n\n>\nF19\n.\nNum 3",
{
"c": "#365eff",
"a": 5
},
"Vol+\nPgup\n\n\n\n\n&uarr;",
{
"c": "#cccccc",
"a": 4
},
"\n\n\n\n\n\n\n?\n\n/\nNum ="
],
[
{
"c": "#365eff",
"a": 7
},
"Ctrl",
{
"a": 5
},
"\nOption\n\n\n\n\nAlt",
"\n\n\n\n\n\nWin",
"Cut\nPaste\n\n\n\n\nCopy",
{
"c": "#3f8f00",
"a": 7
},
"Lower",
{
"c": "#cccccc",
"w": 2
},
"",
{
"c": "#3f8f00"
},
"Raise",
{
"c": "#365eff",
"a": 5
},
"\nNumE\n\n\n\n\nReturn",
"Play\nHome\n\n\n\n\n&larr;",
"Vol -\nPgdn\n\n\n\n\n&darr;",
"Next\nEnd\n\n\n\n\n&rarr;"
]
]
138 changes: 138 additions & 0 deletions keyboards/planck/keymaps/deft/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
/*
* The Deft layout for the Planck Keyboard
* Version 1.0
*
* A keyboard layout designed for efficiency in programming and transferability between ortholinear boards.
* Deft is currently supported on the following boards:
* Planck (12x4)
*
* The Deft keyboard layout was designed by Michael Speiser. You can find other Deft layouts at my Github:
* https://github.com/Speiserm
*
* For questions, issues, or feedback, feel free to email me at [email protected].
*
*
* Flashing:
*
* Rev 5 or earlier:
* make planck/revX:deft:dfu
*
* Rev 6:
* make planck/rev6:deft:dfu-util
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* Follow my cat:
* https://twitter.com/CatBucha
* https://www.instagram.com/buchathecat/
*
*/

#include QMK_KEYBOARD_H

extern keymap_config_t keymap_config;

enum planck_layers {
_QWERTY,
_LOWER,
_RAISE,
_ADJUST
};

enum planck_keycodes {
QWERTY = SAFE_RANGE
};

#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

/* Qwerty
* ,-----------------------------------------------------------------------------------.
* | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | Tab | A | S | D | F | G | H | J | K | L | ; | ' |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* |Shift | Z | X | C | V | B | N | M | , | . | Up | / |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | Ctrl | Alt | GUI | Copy |Lower | Space |Raise |Enter | Left | Down |Right |
* `-----------------------------------------------------------------------------------'
*/
[_QWERTY] = LAYOUT_planck_grid(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH,
KC_LCTL, KC_LALT, KC_LGUI, C(KC_C), LOWER, KC_SPC, KC_SPC, RAISE, KC_ENT, KC_LEFT, KC_DOWN, KC_RGHT
),

/* Lower
* ,-----------------------------------------------------------------------------------.
* | Del | Alt1 | Alt2 | Alt3 | Alt4 | ( | ) | Num7 | Num8 | Num9 | Num0 | |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | ` | \ | = | - | < | > | Num4 | Num5 | Num6 | Num. | NumL |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | Num/ | Num* | Num- | Num+ | [ | ] | Num1 | Num2 | Num3 | Pgup | Num= |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | |Paste | | | | NumE | Home | Pgdn | End |
* `-----------------------------------------------------------------------------------'
*/
[_LOWER] = LAYOUT_planck_grid(
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, _______,
_______, KC_GRV,KC_BSLS,KC_EQL, KC_MINS,S(KC_COMM),S(KC_DOT), KC_P4, KC_P5, KC_P6, KC_PDOT, KC_NLCK,
_______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_LBRC, KC_RBRC, KC_P1, KC_P2, KC_P3, KC_PGUP, KC_PEQL,
_______, _______, _______, C(KC_V), _______, _______, _______, _______, KC_PENT, KC_HOME,KC_PGDOWN, KC_END
),

/* Raise
* ,-----------------------------------------------------------------------------------.
* | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | Vol+ | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | Cut | | | | | Play | Vol- | Next |
* `-----------------------------------------------------------------------------------'
*/
[_RAISE] = LAYOUT_planck_grid(
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
_______, 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, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_VOLU, _______,
_______, _______, _______, C(KC_X), _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_MNXT
),

/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
* |Reset | | | | | | | | | | | |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | | | | | | | | | | | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------'
*/
[_ADJUST] = LAYOUT_planck_grid(
RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)

};

uint32_t layer_state_set_user(uint32_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
73 changes: 73 additions & 0 deletions keyboards/planck/keymaps/deft/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# The Deft Planck Layout

![Deft layout for the Planck keyboard](https://i.imgur.com/VtUkAyh.png)

The 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.

The 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.

Follow my cat:

https://twitter.com/CatBucha

https://www.instagram.com/buchathecat/


## Flashing:
| Rev 5 or earlier: | Rev 6: |
|-|-|
| `make planck/revX:deft:dfu` | `make planck/rev6:deft:dfu-util` |

## Layout:

### QWERTY layer
```
,-----------------------------------------------------------------------------------.
| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|------+------+------+------+------+-------------+------+------+------+------+------|
| Tab | A | S | D | F | G | H | J | K | L | ; | ' |
|------+------+------+------+------+------|------+------+------+------+------+------|
|Shift | Z | X | C | V | B | N | M | , | . | Up | / |
|------+------+------+------+------+------+------+------+------+------+------+------|
| Ctrl | Alt | GUI | Copy |Lower | Space |Raise |Enter | Left | Down |Right |
`-----------------------------------------------------------------------------------'
```

### Lower layer
```
,-----------------------------------------------------------------------------------.
| Del | Alt1 | Alt2 | Alt3 | Alt4 | ( | ) | Num7 | Num8 | Num9 | Num0 | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | ` | \ | = | - | < | > | Num4 | Num5 | Num6 | Num. | NumL |
|------+------+------+------+------+------|------+------+------+------+------+------|
| | Num/ | Num* | Num- | Num+ | [ | ] | Num1 | Num2 | Num3 | Pgup | Num= |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | | |Paste | | | | NumE | Home | Pgdn | End |
`-----------------------------------------------------------------------------------'
```

### Raise layer
```
,-----------------------------------------------------------------------------------.
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | Vol+ | |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | | | Cut | | | | | Play | Vol- | Next |
`-----------------------------------------------------------------------------------'
```

### Adjust layer
```
,-----------------------------------------------------------------------------------.
|Reset | | | | | | | | | | | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | | | | | | | | | | | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| | | | | | | | | | | | |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | | | | | | | | | | |
`-----------------------------------------------------------------------------------'
```
1 change: 1 addition & 0 deletions keyboards/planck/keymaps/deft/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SRC += muse.c

0 comments on commit db0c179

Please sign in to comment.