handwired/reddot refactor, Configurator support and readme update (#4886)

* handwired/reddot: refactor

- reddot.h
  - updated to use #pragma once include guard
  - renamed layout macro KEYMAP to LAYOUT
  - refactored arguments to more closely resemble physical layout
  - aligned for readability
- keymaps/default/keymap.c
  - now uses #include QMK_KEYBOARD_H
  - updated include path for keymap_french.h
  - refactored to use short keycodes
  - aligned for readability

* handwired/reddot: Configurator support

* handwired/reddot: readme update

- update readme to current QMK template
- add KLE permalink to my best guess at the layout
This commit is contained in:
noroadsleft 2019-01-19 16:53:41 -08:00 committed by Drashna Jaelre
parent 09ee7da6de
commit c6fd44cf26
4 changed files with 145 additions and 57 deletions

View File

@ -0,0 +1,108 @@
{
"keyboard_name": "handwired/reddot",
"url": "",
"maintainer": "qmk",
"width": 20.5,
"height": 5,
"layouts": {
"LAYOUT": {
"layout": [
{"label":"k00 (Esc)", "x":0, "y":0},
{"label":"k01 (F1)", "x":1, "y":0},
{"label":"k02 (F2)", "x":2, "y":0},
{"label":"k03 (F3)", "x":3, "y":0},
{"label":"k04 (F4)", "x":4, "y":0},
{"label":"k05 (F5)", "x":5, "y":0},
{"label":"k06 (Tab)", "x":6, "y":0, "w":2},
{"label":"k07 (Caps Lock)", "x":8, "y":0},
{"label":"k08 (F6)", "x":9, "y":0},
{"label":"k09 (F7)", "x":10, "y":0},
{"label":"k0A (F8)", "x":11, "y":0},
{"label":"k0B (F9)", "x":12, "y":0},
{"label":"k0C (F10)", "x":13, "y":0},
{"label":"k0D (F11)", "x":14, "y":0},
{"label":"k0E (F12)", "x":15, "y":0},
{"label":"k10 (Function)", "x":16.5, "y":0},
{"label":"k11 (Keypad /)", "x":17.5, "y":0},
{"label":"k12 (Keypad *)", "x":18.5, "y":0},
{"label":"k13 (Keypad -)", "x":19.5, "y":0},
{"label":"k20 (Left Alt)", "x":0, "y":1},
{"label":"k21 (1 / FR Ampersand)", "x":1, "y":1},
{"label":"k22 (2 / FR É)", "x":2, "y":1},
{"label":"k23 (3 / FR Quote)", "x":3, "y":1},
{"label":"k24 (4 / FR Apostrophe)", "x":4, "y":1},
{"label":"k25 (5 / FR Left Parenthesis)", "x":5, "y":1},
{"label":"k26 (Backspace)", "x":6, "y":1, "w":2},
{"label":"k27 (Delete)", "x":8, "y":1},
{"label":"k28 (6 / FR Minus)", "x":9, "y":1},
{"label":"k29 (7 / FR È)", "x":10, "y":1},
{"label":"k2A (8 / FR Underscore)", "x":11, "y":1},
{"label":"k2B (9 / FR Ç)", "x":12, "y":1},
{"label":"k2C (0 / FR À)", "x":13, "y":1},
{"label":"k2D (Minus / FR Right Parenthesis)", "x":14, "y":1},
{"label":"k2E (Equals / FR Equals)", "x":15, "y":1},
{"label":"k30 (Insert)", "x":16.5, "y":1},
{"label":"k31 (Home)", "x":17.5, "y":1},
{"label":"k32 (Page Up)", "x":18.5, "y":1},
{"label":"k40 (GUI)", "x":0, "y":2},
{"label":"k41 (Q / FR A)", "x":1, "y":2},
{"label":"k42 (W / FR Z)", "x":2, "y":2},
{"label":"k43 (E)", "x":3, "y":2},
{"label":"k44 (R)", "x":4, "y":2},
{"label":"k45 (T)", "x":5, "y":2},
{"label":"k46 (Shift)", "x":6, "y":2, "h":2},
{"label":"k66 (Enter)", "x":7, "y":2, "h":2},
{"label":"k47 (Enter)", "x":8, "y":2, "h":2},
{"label":"k48 (Y)", "x":9, "y":2},
{"label":"k49 (U)", "x":10, "y":2},
{"label":"k4A (I)", "x":11, "y":2},
{"label":"k4B (O)", "x":12, "y":2},
{"label":"k4C (P)", "x":13, "y":2},
{"label":"k4D (Left Bracket / FR Circumflex)", "x":14, "y":2},
{"label":"k4E (Right Bracket / FR Dollar)", "x":15, "y":2},
{"label":"k50 (Delete)", "x":16.5, "y":2},
{"label":"k51 (End)", "x":17.5, "y":2},
{"label":"k52 (Page Down)", "x":18.5, "y":2},
{"label":"k53 (Keypad +)", "x":19.5, "y":1, "h":2},
{"label":"k60 (Ctrl)", "x":0, "y":3},
{"label":"k61 (A / FR Q)", "x":1, "y":3},
{"label":"k62 (S)", "x":2, "y":3},
{"label":"k63 (D)", "x":3, "y":3},
{"label":"k64 (F)", "x":4, "y":3},
{"label":"k65 (G)", "x":5, "y":3},
{"label":"k68 (H)", "x":9, "y":3},
{"label":"k69 (J)", "x":10, "y":3},
{"label":"k6A (K)", "x":11, "y":3},
{"label":"k6B (L)", "x":12, "y":3},
{"label":"k6C (Semicolon / FR M)", "x":13, "y":3},
{"label":"k6D (Quote / FR Ù)", "x":14, "y":3},
{"label":"k6E (ISO Hash / FR Asterisk)", "x":15, "y":3},
{"label":"k70 (Keypad 1)", "x":16.5, "y":3},
{"label":"k71 (Up)", "x":17.5, "y":3},
{"label":"k72 (Keypad 3)", "x":18.5, "y":3},
{"label":"k80 (ISO Backslash / FR Less Than)", "x":0, "y":4},
{"label":"k81 (Z / FR W)", "x":1, "y":4},
{"label":"k82 (X)", "x":2, "y":4},
{"label":"k83 (C)", "x":3, "y":4},
{"label":"k84 (V)", "x":4, "y":4},
{"label":"k85 (B)", "x":5, "y":4},
{"label":"k86 (Space)", "x":6, "y":4, "w":2},
{"label":"k88 (Space)", "x":8, "y":4, "w":2},
{"label":"k89 (N)", "x":10, "y":4},
{"label":"k8A (M / FR Comma)", "x":11, "y":4},
{"label":"k8B (Comma / FR Semicolon)", "x":12, "y":4},
{"label":"k8C (Period / Colon)", "x":13, "y":4},
{"label":"k8D (Slash / FR Exclaim)", "x":14, "y":4},
{"label":"k8E (Right Alt / FR AltGr)", "x":15, "y":4},
{"label":"k90 (Left)", "x":16.5, "y":4},
{"label":"k91 (Down)", "x":17.5, "y":4},
{"label":"k92 (Right)", "x":18.5, "y":4},
{"label":"k93 (Keypad Enter)", "x":19.5, "y":3, "h":2}
]
}
}
}

41
keyboards/handwired/reddot/keymaps/default/keymap.c Executable file → Normal file
View File

@ -1,29 +1,22 @@
#include "reddot.h"
#include "../../../../../quantum/keymap_extras/keymap_french.h"
#include QMK_KEYBOARD_H
#include "keymap_french.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_FN0, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS,\
KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPACE, KC_DELETE, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_INSERT, KC_HOME, KC_PGUP,\
KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_DELETE, KC_END, KC_PGDOWN, KC_KP_PLUS,\
KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_ENT, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_KP_1, KC_UP, KC_KP_3,\
FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER),
[0] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TG(1), KC_PSLS, KC_PAST, KC_PMNS, \
KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPC, KC_DEL, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_INS, KC_HOME, KC_PGUP, \
KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_DEL, KC_END, KC_PGDN, KC_PPLS, \
KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_P1, KC_UP, KC_P3, \
FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPC, KC_SPC, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RGHT, KC_PENT \
),
[1] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_PSLS, KC_PAST, KC_PMNS, \
KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPC, KC_DEL, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_7, KC_8, KC_9, \
KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_4, KC_5, KC_6, KC_PPLS, \
KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_1, KC_2, KC_3, \
FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPC, KC_SPC, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RGHT, KC_PENT \
),
[1] = KEYMAP(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_FN0, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS,\
KC_LALT, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_BSPACE, KC_DELETE, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_7, KC_8, KC_9,\
KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_4, KC_5, KC_6, KC_KP_PLUS,\
KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_ENT, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_1, KC_2, KC_3,\
FR_LESS, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPACE, KC_SPACE, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RIGHT, KC_KP_ENTER),
};
const uint16_t PROGMEM fn_actions[] = {
ACTION_LAYER_TOGGLE(1),
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
return MACRO_NONE;
};

View File

@ -1,24 +1,14 @@
## RedDot Specific Info ##
# RedDot
An ortholinear compact fullsize keyboard configured for French AZERTY layout.
## Quantum MK Firmware
- [Layout](http://www.keyboard-layout-editor.com/##@_plate:true%3B&@_sm=cherry&sb=cherry&st=MX1A-L1xx%3B&=Esc&=F1&=F2&=F3&=F4&=F5&_w:2%3B&=Tab&=Caps%20Lock&=F6&=F7&=F8&=F9&=F10&=F11&=F12&_x:0.5%3B&=Fn&=%2F%2F&=*&=-%3B&@=Alt&=1%0A%2F&&=2%0A%C3%A9%0A%0A~&=3%0A%22%0A%0A%23&=4%0A'%0A%0A%7B&=5%0A(%0A%0A%5B&_w:2%3B&=Back&=Del&=6%0A-%0A%0A%7C&=7%0A%C3%A8%0A%0A%60&=8%0A%2F_%0A%0A%5C&=9%0A%C3%A7%0A%0A%5E&=0%0A%C3%A0%0A%0A%2F@&=%C2%B0%0A)%0A%0A%5D&=+%0A%2F=%0A%0A%7D&_x:0.5%3B&=Insert&=Home&=Page%20Up&_h:2%3B&=+%3B&@=Win&=A&=Z&=E&=R&=T&_h:2%3B&=Shift&_h:2%3B&=Enter&_h:2%3B&=Enter&=Y&=U&=I&=O&=P&=%C2%A8%0A%5E&=%C2%A3%0A$&_x:0.5%3B&=Delete&=End&=Page%20Down%3B&@=Ctrl&=Q&=S&=D&=F&=G&_x:3%3B&=H&=J&=K&=L&=M&=%25%0A%C3%B9&=%C2%B5%0A*&_x:0.5%3B&=1%0AEnd&=Up&=3%0APgDn&_h:2%3B&=Enter%3B&@=%3E%0A%3C&=W&=X&=C&=V&=B&_w:2%3B&=Space&_w:2%3B&=Space&=N&=%3F%0A,&=.%0A%2F%3B&=%2F%2F%0A%2F:&=%C2%A7%0A!&=Alt%20Gr&_x:0.5%3B&=Left&=Down&=Right)
For the full Quantum feature list, see [the parent README.md](/readme.md).
Keyboard Maintainer: [The QMK Community](https://github.com/qmk)
Hardware Supported: RedDot handwired
## Building
Make example for this keyboard (after setting up your build environment):
Download or clone the whole firmware and navigate to the keyboard/reddot folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file.
make handwired/reddot:default
Depending on which keymap you would like to use, you will have to compile slightly differently.
### Default
To build with the default keymap, simply run `make`.
### Other Keymaps
Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `<name>.c` and see keymap document (you can find in top README.md) and existent keymap files.
To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like:
```
$ make KEYMAP=[default|jack|<name>]
```
Keymaps follow the format **__\<name\>.c__** and are stored in the `keymaps` folder.
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

View File

@ -1,20 +1,17 @@
#ifndef REDDOT_H
#define REDDOT_H
#pragma once
#include "quantum.h"
#define KEYMAP( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53, \
k60, k61, k62, k63, k64, k65, k66, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, \
k80, k81, k82, k83, k84, k85, k86, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93\
#define LAYOUT( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, \
k40, k41, k42, k43, k44, k45, k46, k66, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53, \
k60, k61, k62, k63, k64, k65, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, \
k80, k81, k82, k83, k84, k85, k86, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93 \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, KC_NO }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53 }, \
{ k60, k61, k62, k63, k64, k65, k66, KC_NO, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, KC_NO }, \
{ k80, k81, k82, k83, k84, k85, k86, KC_NO, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93 } \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, KC_NO }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53 }, \
{ k60, k61, k62, k63, k64, k65, k66, KC_NO, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, KC_NO }, \
{ k80, k81, k82, k83, k84, k85, k86, KC_NO, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93 } \
}
#endif