mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-24 18:25:01 +06:00
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:
parent
09ee7da6de
commit
c6fd44cf26
108
keyboards/handwired/reddot/info.json
Normal file
108
keyboards/handwired/reddot/info.json
Normal 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
41
keyboards/handwired/reddot/keymaps/default/keymap.c
Executable file → Normal 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;
|
||||
};
|
||||
|
||||
|
@ -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).
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user