Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

olligranlund keymap updates for DZ60 and Keebio/Iris #10760

Closed
wants to merge 6 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 77 additions & 6 deletions keyboards/dz60/keymaps/olligranlund_iso/keymap.c
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
/* Copyright 2020 Oliver Granlund
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include QMK_KEYBOARD_H

/* ISO 60 layout by olligranlund
Expand All @@ -19,20 +35,75 @@
* `-----------------------------------------------------------------------------------------'
*/

enum custom_keycodes {
EMOJI_DANCERS = SAFE_RANGE,
EMOJI_PERJANTAI,
EMOJI_THISISFINE,
EMOJI_KOVAAAJOA,
};

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case EMOJI_DANCERS:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">dancers>");
} else {} break;

case EMOJI_PERJANTAI:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">perjantaideploy>");
} else {} break;

case EMOJI_THISISFINE:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">this/is/fine>");
} else {} break;

case EMOJI_KOVAAAJOA:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">kovaaajoa>");
} else {} break;
}

return true;
};

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

// 0 Base
LAYOUT_60_iso_split_space_bs_rshift(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_PSCR,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL),
MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(1),
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(3), KC_APP, KC_RCTL),

// 1 Base with arrows
LAYOUT_60_iso_split_space_bs_rshift(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, KC_TRNS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT),

// 2 FN
LAYOUT_60_iso_split_space_bs_rshift(
KC_GRV, 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_DEL, KC_DEL,
KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_PGDOWN,KC_UP, KC_PGUP, KC_NO, KC_NO, KC_NO,
KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_NO, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_PGDN, KC_UP, KC_PGUP, KC_NO, KC_NO, KC_NO,
KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_NO, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, KC_RSFT, KC_CAPS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL),
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_NO, KC_APP, KC_RCTL),

// 3 FN with RGB and macros
LAYOUT_60_iso_split_space_bs_rshift(
KC_GRV, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_F10, KC_F11, KC_F12, KC_DEL, RESET,
KC_NO, KC_NO, EMOJI_DANCERS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, EMOJI_PERJANTAI, EMOJI_THISISFINE,EMOJI_KOVAAAJOA, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, KC_RSFT, KC_CAPS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_NO, KC_APP, KC_RCTL),

};
2 changes: 1 addition & 1 deletion keyboards/dz60/keymaps/olligranlund_iso/readme.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# DZ60 with splitted parts
# DZ60 with splitted parts with VIA support
### by Oliver Granlund

![Finished product](https://i.imgur.com/HlEo5Yg.jpg)
Expand Down
3 changes: 3 additions & 0 deletions keyboards/dz60/keymaps/olligranlund_iso/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
EXTRAKEY_ENABLE = yes
VIA_ENABLE = yes
LTO_ENABLE = yes
109 changes: 109 additions & 0 deletions keyboards/dz60/keymaps/olligranlund_iso_v2/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
/* Copyright 2020 Oliver Granlund
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include QMK_KEYBOARD_H
drashna marked this conversation as resolved.
Show resolved Hide resolved

/* ISO 60 layout by olligranlund
*
* This layout starts from a standard ISO 60% layout, and adds one function layer.
* If you wish to only have one wide spacebar, you can easily do that by dismissing the "side" spacebar switches.
*
* Default Layer
* ,-----------------------------------------------------------------------------------------.
* | Esc | 1 ! | 2 " | 3 § | 4 $ | 5 % | 6 & | 7 / | 8 ( | 9 ) | 0 = | ß ? | ´ ` | Del | BSPC|
* |-----------------------------------------------------------------------------------------|
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Ä | + * | Enter |
* |---------------------------------------------------------------------------------- |
* | FN | A | S | D | F | G | H | J | K | L | Ö | Ü | # ' | |
* |-----------------------------------------------------------------------------------------|
* | Shift | < > | Z | X | C | V | B | N | M | , ; | . : | - _ | Shift |Shift|
* |-----------------------------------------------------------------------------------------|
* | LCtl | LGUI | LAlt | Space | Space | Space | RAlt | FN | App | RCtl | |
* `-----------------------------------------------------------------------------------------'
*/

enum custom_keycodes {
EMOJI_DANCERS = SAFE_RANGE,
EMOJI_PERJANTAI,
EMOJI_THISISFINE,
EMOJI_KOVAAAJOA,
};

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case EMOJI_DANCERS:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">dancers>");
} else {} break;

case EMOJI_PERJANTAI:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">perjantaideploy>");
} else {} break;

case EMOJI_THISISFINE:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">this/is/fine>");
} else {} break;

case EMOJI_KOVAAAJOA:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING(">kovaaajoa>");
} else {} break;
}

return true;
};

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

// 0 Base
LAYOUT_60_iso_5x1u_split_bs_rshift_spc(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(1),
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(3), KC_APP, KC_PSCR, KC_RCTL),

// 1 Base with arrows
LAYOUT_60_iso_5x1u_split_bs_rshift_spc(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, KC_TRNS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(3), KC_LEFT, KC_DOWN, KC_RGHT),

// 2 FN
LAYOUT_60_iso_5x1u_split_bs_rshift_spc(
KC_GRV, 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_DEL, KC_DEL,
KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_PGDN, KC_UP, KC_PGUP, KC_NO, KC_NO, KC_NO,
KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_NO, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, KC_RSFT, KC_CAPS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_NO, KC_APP, KC_PSCR, KC_RCTL),

// 3 FN with RGB and macros
LAYOUT_60_iso_5x1u_split_bs_rshift_spc(
KC_GRV, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_F10, KC_F11, KC_F12, KC_DEL, RESET,
KC_NO, KC_NO, EMOJI_DANCERS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, EMOJI_PERJANTAI, EMOJI_THISISFINE,EMOJI_KOVAAAJOA, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, KC_RSFT, KC_CAPS,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_NO, KC_APP, KC_PSCR, KC_RCTL),

};
6 changes: 6 additions & 0 deletions keyboards/dz60/keymaps/olligranlund_iso_v2/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# DZ60 with splitted parts with VIA support
### by Oliver Granlund

![Finished product](https://i.imgur.com/AT1Lyrx.jpg)

This is still under progress, but currently works on Windows as a daily driver. Also added macros for Slack emojis
3 changes: 3 additions & 0 deletions keyboards/dz60/keymaps/olligranlund_iso_v2/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
EXTRAKEY_ENABLE = yes
VIA_ENABLE = yes
LTO_ENABLE = yes
47 changes: 47 additions & 0 deletions keyboards/handwired/neito/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
/* Copyright 2020 Oliver Granlund
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0x2602
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This vendor ID is already in use.
https://www.the-sz.com/products/usbid/index.php?v=0x2602&p=&n=

❯ echo -n "Oliver Granlund" | shasum | cut -c1-4 | tr '[:lower:]' '[:upper:]'   
B9F7
Suggested change
#define VENDOR_ID 0x2602
#define VENDOR_ID 0xB9F7

Or if you want to use ascii

Suggested change
#define VENDOR_ID 0x2602
#define VENDOR_ID 0x4F47 // "OG"

#define PRODUCT_ID 0x2603
#define DEVICE_VER 0x0001
#define MANUFACTURER Oliver Granlund
#define PRODUCT Neito
#define DESCRIPTION 60% Mechanical keyboard


#define MATRIX_ROWS 10
#define MATRIX_COLS 8
#define MATRIX_ROW_PINS { E6, F0, F5, F6, C7, C6, B4, D7, D6, D4 }
#define MATRIX_COL_PINS { F4, F1, F7, B2, D1, D2, B3, B1 }

#define DIODE_DIRECTION COL2ROW
#define ENCODERS_PAD_A { B7 }
#define ENCODERS_PAD_B { B0 }
#define ENCODER_RESOLUTION 4
#define UNUSED_PINS

/* RGB Light Configuration */

/*
#define RGB_DI_PIN D1
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 13
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
*/
Loading