summaryrefslogtreecommitdiff
path: root/keyboards/planck/keymaps/prog_qgmlwb/src
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/planck/keymaps/prog_qgmlwb/src')
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/enums.h23
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c25
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h27
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/normal.h96
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h63
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/special.h43
6 files changed, 277 insertions, 0 deletions
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h b/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h
new file mode 100644
index 0000000000..0c03b5dd04
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h
@@ -0,0 +1,23 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#pragma once
+
+// Layouts enum
+enum keyboard_layouts {
+ QGMLWB_NO,
+ QGMLWB_EN,
+
+ QWERTY,
+ COLEMAK,
+ DVORAK,
+
+ NORMAL_LOWER,
+ NORMAL_RAISE,
+
+ QGMLWB_LOWER,
+ QGMLWB_RAISE,
+
+ ADJUST,
+ NUMPAD,
+};
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c
new file mode 100644
index 0000000000..54ff411d86
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c
@@ -0,0 +1,25 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#include "layouts.h"
+#ifdef LAYER_NO
+# include "sendstring_norwegian.h"
+#endif
+
+KEYMAP keymaps [][MATRIX_ROWS][MATRIX_COLS] = {
+ [QGMLWB_NO] = qgmlwb_no_map,
+ [QGMLWB_EN] = qgmlwb_en_map,
+
+ [QWERTY] = qwerty_map,
+ [COLEMAK] = colemak_map,
+ [DVORAK] = dvorak_map,
+
+ [NORMAL_LOWER] = normal_lower_map,
+ [NORMAL_RAISE] = normal_raise_map,
+
+ [QGMLWB_LOWER] = qgmlwb_lower_map,
+ [QGMLWB_RAISE] = qgmlwb_raise_map,
+
+ [ADJUST] = adjust_map,
+ [NUMPAD] = numpad_map,
+};
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h
new file mode 100644
index 0000000000..19cbefb9ab
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h
@@ -0,0 +1,27 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#pragma once
+
+#include QMK_KEYBOARD_H
+
+#include "davidkristoffersen.h"
+#include "enums.h"
+
+#include "normal.h"
+#include "qgmlwb.h"
+#include "special.h"
+
+#define KEYMAP const uint16_t PROGMEM
+
+// Layouts keycodes
+#define lower MO(NORMAL_LOWER)
+#define raise MO(NORMAL_RAISE)
+
+#define QLower MO(QGMLWB_LOWER)
+#define QRaise MO(QGMLWB_RAISE)
+
+#define adjust MO(ADJUST)
+#define numpad MO(NUMPAD)
+
+extern KEYMAP keymaps [][MATRIX_ROWS][MATRIX_COLS];
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h b/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h
new file mode 100644
index 0000000000..fa5c84d217
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h
@@ -0,0 +1,96 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#pragma once
+
+#include "layouts.h"
+
+/* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ;: |Return|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | ,< | .> | /? | Shift|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
+ * `-----------------------------------------------------------------------------------'
+*/
+#define qwerty_map LAYOUT_ortho_4x12(\
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,\
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,\
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT,\
+ KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT\
+)
+
+/* Colemak
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | R | S | T | D | H | N | E | I | O |Return|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | K | M | , | . | / | " |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
+ * `-----------------------------------------------------------------------------------'
+*/
+#define colemak_map LAYOUT_ortho_4x12(\
+ KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,\
+ KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT,\
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT,\
+ KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT\
+)
+
+/* Dvorak
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | O | E | U | I | D | H | T | N | S |Return|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| ; | Q | J | K | X | B | M | W | V | Z | \ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
+ * `-----------------------------------------------------------------------------------'
+*/
+#define dvorak_map LAYOUT_ortho_4x12(\
+ KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,\
+ KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_ENT,\
+ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_SLSH,\
+ KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT\
+)
+
+/* Lower - Normal
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | End | Home | XXXX | XXXX | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define normal_lower_map LAYOUT_ortho_4x12(\
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,\
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,\
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_END, KC_HOME, XXXXXXX, XXXXXXX, _______,\
+ _______, _______, _______, _______, _______, _______, _______, adjust, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY\
+)
+
+/* Raise - Normal
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | # | \ | PgDn | PgUp | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define normal_raise_map LAYOUT_ortho_4x12(\
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,\
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,\
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HASH, KC_BSLS, KC_PGDN, KC_PGUP, _______,\
+ _______, _______, _______, _______, adjust, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY\
+)
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h b/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h
new file mode 100644
index 0000000000..bad7a11615
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h
@@ -0,0 +1,63 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#pragma once
+
+#include "layouts.h"
+
+/* QGMLWB
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | G | M | L | W | B | Y | U | V | '" | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | D | S | T | N | R | I | A | E | O | H |Return|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | F | J | K | P | ,; | .: | -_ | \| |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Ctrl | Alt |NumPad| GUI | Lower|LSpace|RSpace| Raise| Left | Down | Up | Right|
+ * `-----------------------------------------------------------------------------------'
+*/
+// English Layout
+#define qgmlwb_en_map LAYOUT_ortho_4x12(\
+ KC_TAB, KC_Q, KC_G, KC_M, KC_L, KC_W, KC_B, KC_Y, KC_U, KC_V, KC_QUOT, KC_BSPC,\
+ KC_ESC, KC_D, KC_S, KC_T, KC_N, KC_R, KC_I, KC_A, KC_E, KC_O, KC_H, KC_ENT,\
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_F, KC_J, KC_K, KC_P, KC_COMM, KC_DOT, KC_MINS, KC_BSLS,\
+ KC_LCTL, KC_LALT, numpad, KC_LGUI, QLower, KC_LSPC, KC_RSPC, QRaise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT\
+)
+// Norwegian Layout
+#define qgmlwb_no_map qgmlwb_en_map
+
+/* Lower - QGMLWB
+ * ,-----------------------------------------------------------------------------------.
+ * | ! | % | [ | { | ( | < | > | ) | } | ] | & | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | Mute | XXXX | Refr | XXXX | XXXX | XXXX | = | + | * | / | ~ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | Sleep|ScrLck| Caps |NumLck|PrtScr| Ins | End | Home | Æ | Ø | Å |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | |Adjust| Bri- | Vol- | Vol+ | Bri+ |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define qgmlwb_lower_map LAYOUT_ortho_4x12(\
+ KC_EXLM, KC_PERC, KC_LBRC, KC_LCBR, KC_LPRN, KC_LT, KC_GT, KC_RPRN, KC_RCBR, KC_RBRC, KC_AMPR, _______,\
+ KC_DEL, KC_MUTE, XXXXXXX, KC_WREF, XXXXXXX, XXXXXXX, XXXXXXX, KC_EQL, KC_PLUS, KC_ASTR, KC_SLSH, KC_TILD,\
+ _______, KC_SLEP, KC_SLCK, KC_CAPS, KC_NLCK, KC_PSCR, KC_INS, KC_END, KC_HOME, KC_AE, KC_OE, KC_AA,\
+ _______, _______, _______, _______, _______, _______, _______, adjust, KC_BRID, KC_VOLD, KC_VOLU, KC_BRIU\
+)
+
+/* Raise - QGMLWB
+ * ,-----------------------------------------------------------------------------------.
+ * | ? | 9 | 7 | 5 | 3 | 1 | 0 | 2 | 4 | 6 | 8 | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del+ | F1 | F2 | F3 | F4 | F5 | F6 | # | @ | ^ | $ | ` |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * |RShift| F7 | F8 | F9 | F10 | F11 | F12 | PgDn | PgUp | XXXX | XXXX | XXXX |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | RCtrl| RAlt | | |Adjust| | | | Prev | Stop | Play | Next |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define qgmlwb_raise_map LAYOUT_ortho_4x12(\
+ KC_QUES, KC_9, KC_7, KC_5, KC_3, KC_1, KC_0, KC_2, KC_4, KC_6, KC_8, _______,\
+ S(KC_DEL), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_HASH, KC_AT, KC_CIRC, KC_DLR, KC_GRV,\
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX,\
+ _______, _______, _______, _______, adjust, _______, _______, _______, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT\
+)
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/special.h b/keyboards/planck/keymaps/prog_qgmlwb/src/special.h
new file mode 100644
index 0000000000..de05db2070
--- /dev/null
+++ b/keyboards/planck/keymaps/prog_qgmlwb/src/special.h
@@ -0,0 +1,43 @@
+// Copyright 2022 David Kristoffersen (@davidkristoffersen)
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#pragma once
+
+#include "layouts.h"
+
+/* Adjust
+ * v------------------------RGB CONTROL--------------------v
+ * ,-----------------------------------------------------------------------------------.
+ * | | Reset| Debug| RGB |RGBMod| Hue- | Hue+ | Sat- | Sat+ | Bri- | Bri+ | Del |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | XXXX |MusMod|AudOff| AudOn|AgNorm|AgSwap|Dvorak|Colmak|Qwerty|QgmlEN|QgmlNO|
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | |Voice-|Voice+|MusOff| MusOn|MIDIOf|MIDIOn|TermOf|TermOn| T0 | T1 | T2 |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | XXXX | XXXX | XXXX | XXXX |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define adjust_map LAYOUT_ortho_4x12(\
+ QK_RBT, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_DEL,\
+ QK_MAKE, XXXXXXX, MU_MOD, AU_OFF, AU_ON, AG_NORM, AG_SWAP, DF(DVORAK), DF(COLEMAK), DF(QWERTY), DF(QGMLWB_EN), DF(QGMLWB_NO),\
+ _______, MUV_IN, MUV_DE, MU_OFF, MU_ON, MI_OFF, MI_ON, TERM_OFF, TERM_ON, KC_T0, KC_T1, KC_T2,\
+ _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX\
+)
+
+/* Numpad
+ * ,-----------------------------------------------------------------------------------.
+ * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 7 | 8 | 9 | / | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 4 | 5 | 6 | * | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 1 | 2 | 3 | - | XXXX |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | XXXX | | | 0 | , | . | + | XXXX |
+ * `-----------------------------------------------------------------------------------'
+*/
+#define numpad_map LAYOUT_ortho_4x12(\
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_7, KC_8, KC_9, KC_KP_SLASH, _______,\
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_4, KC_5, KC_6, KC_KP_ASTERISK, _______,\
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_KP_MINUS, XXXXXXX,\
+ _______, _______, _______, _______, XXXXXXX, _______, _______, KC_0, KC_COMM, KC_DOT, KC_KP_PLUS, XXXXXXX\
+)