Skip to content

Commit

Permalink
Add Nadiya's config
Browse files Browse the repository at this point in the history
  • Loading branch information
AgiosAndreas committed Apr 9, 2024
1 parent 2ab0d7f commit 66b0a48
Show file tree
Hide file tree
Showing 12 changed files with 723 additions and 0 deletions.
6 changes: 6 additions & 0 deletions keyboards/nadiya/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// Copyright 2023 zzeneg (@zzeneg)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once


79 changes: 79 additions & 0 deletions keyboards/nadiya/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"manufacturer": "HolySwitch",
"keyboard_name": "nadiya",
"maintainer": "Andrei Gaevskii",
"layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 5], "x": 1, "y": 0.675},
{"matrix": [0, 4], "x": 2, "y": 0.55},
{"matrix": [0, 3], "x": 3, "y": 0.25},
{"matrix": [0, 2], "x": 4, "y": 0},
{"matrix": [0, 1], "x": 5, "y": 0.25},
{"matrix": [0, 0], "x": 6, "y": 0.375},
{"matrix": [5, 0], "x": 12, "y": 0.375},
{"matrix": [5, 1], "x": 13, "y": 0.25},
{"matrix": [5, 2], "x": 14, "y": 0},
{"matrix": [5, 3], "x": 15, "y": 0.25},
{"matrix": [5, 4], "x": 16, "y": 0.55},
{"matrix": [5, 5], "x": 17, "y": 0.675},


{"matrix": [1, 5], "x": 1, "y": 1.675},
{"matrix": [1, 4], "x": 2, "y": 1.55},
{"matrix": [1, 3], "x": 3, "y": 1.25},
{"matrix": [1, 2], "x": 4, "y": 1},
{"matrix": [1, 1], "x": 5, "y": 1.25},
{"matrix": [1, 0], "x": 6, "y": 1.375},
{"matrix": [6, 0], "x": 12, "y": 1.375},
{"matrix": [6, 1], "x": 13, "y": 1.25},
{"matrix": [6, 2], "x": 14, "y": 1},
{"matrix": [6, 3], "x": 15, "y": 1.25},
{"matrix": [6, 4], "x": 16, "y": 1.55},
{"matrix": [6, 5], "x": 17, "y": 1.675},


{"matrix": [4, 5], "x": 0, "y": 2.44},
{"matrix": [2, 5], "x": 1, "y": 2.675},
{"matrix": [2, 4], "x": 2, "y": 2.55},
{"matrix": [2, 3], "x": 3, "y": 2.25},
{"matrix": [2, 2], "x": 4, "y": 2},
{"matrix": [2, 1], "x": 5, "y": 2.25},
{"matrix": [2, 0], "x": 6, "y": 2.375},
{"matrix": [7, 0], "x": 12, "y": 2.375},
{"matrix": [7, 1], "x": 13, "y": 2.25},
{"matrix": [7, 2], "x": 14, "y": 2},
{"matrix": [7, 3], "x": 15, "y": 2.25},
{"matrix": [7, 4], "x": 16, "y": 2.55},
{"matrix": [7, 5], "x": 17, "y": 2.675},
{"matrix": [9, 5], "x": 18, "y": 2.44},


{"matrix": [3, 5], "x": 1, "y": 3.675},
{"matrix": [3, 4], "x": 2, "y": 3.55},
{"matrix": [3, 3], "x": 3, "y": 3.25},
{"matrix": [3, 2], "x": 4, "y": 3},
{"matrix": [3, 1], "x": 5, "y": 3.25},
{"matrix": [3, 0], "x": 6, "y": 3.375},
{"matrix": [4, 0], "x": 6.9, "y": 3.6, "r":22.5, "rx":6.9, "ry":4.6},
{"matrix": [9, 0], "x": 11.17, "y": 3.99, "r":-22.5, "rx":11.15, "ry":4.99},
{"matrix": [8, 0], "x": 12, "y": 3.375},
{"matrix": [8, 1], "x": 13, "y": 3.25},
{"matrix": [8, 2], "x": 14, "y": 3},
{"matrix": [8, 3], "x": 15, "y": 3.25},
{"matrix": [8, 4], "x": 16, "y": 3.55},
{"matrix": [8, 5], "x": 17, "y": 3.675},


{"matrix": [4, 4], "x": 3.75, "y": 4.35, "r":-12, "rx":4.75, "ry":5.35},
{"matrix": [4, 3], "x": 4.75, "y": 4.35},
{"matrix": [4, 2], "x": 6, "y": 4.375, "r":15, "rx":6, "ry":4.375},
{"matrix": [4, 1], "x": 6.7, "y": 4.6, "r":30, "rx":6.7, "ry":5.6},
{"matrix": [9, 1], "x": 11.3, "y": 4.6, "r":-30, "rx":12.3, "ry":5.6},
{"matrix": [9, 2], "x": 12, "y": 4.375, "r":-15, "rx":13, "ry":4.375},
{"matrix": [9, 3], "x": 13.23, "y": 4.35},
{"matrix": [9, 4], "x": 14.23, "y": 4.35, "r":12, "rx":14.23, "ry":5.35}
]
}
}
}
11 changes: 11 additions & 0 deletions keyboards/nadiya/keymaps/vial/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
// Copyright 2023 Andrei Gaevskii (@AgiosAndreas)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#define VIAL_KEYBOARD_UID {0xAE, 0x5E, 0xC7, 0x5F, 0x6A, 0xAF, 0xB3, 0x50}

#define DYNAMIC_KEYMAP_LAYER_COUNT 7

#define SPLIT_LAYER_STATE_ENABLE
#define SPLIT_OLED_ENABLE
101 changes: 101 additions & 0 deletions keyboards/nadiya/keymaps/vial/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
// Copyright 2022 zzeneg (@zzeneg)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum layer_number {
_QWERTY,
_LOWER,
_RAISE
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
* ,-----------------------------------------. ,-----------------------------------------.
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | ESC | Q | W | E | R | T | | Y | U | I | O | P | Bspc |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | Tab | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
* |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
* |LShift| Z | X | C | V | B |-------| |-------| N | M | , | . | / |RShift|
* `-----------------------------------------/ / \ \-----------------------------------------'
* | LGUI | LAlt | LCTR |LOWER | /Enter / \Space \ |RAISE | RCTR | RAlt | RGUI |
* | | | | |/ / \ \ | | | | |
* `----------------------------------' '------''---------------------------'
*/

[_QWERTY] = LAYOUT(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV,
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_1, 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_1,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LALT, KC_LCTL, MO(_LOWER), KC_ENT, KC_SPC, MO(_RAISE), KC_RCTL, KC_RALT
),
};

#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
[_QWERTY] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
// Encoder 1 Encoder 2
};
#endif

#ifdef OLED_ENABLE

static void render_at(uint8_t start_col, uint8_t start_line, uint8_t rows, uint8_t width, const char data[rows][width]) {
for (int i = 0; i < rows; i++)
{
oled_set_cursor(start_col, start_line + i);
oled_write_raw_P(data[i], sizeof(data[i]));
}
}

#ifdef LOGO_ENABLE
static void render_logo(void) {
static const char PROGMEM logo[6][32] =
{{0,0,0,0,192,224,240,240,112,112,120,120,120,120,120,120,120,120,120,120,120,120,112,112,240,240,224,192,0,0,0,0},{0,0,0,0,3,7,7,15,15,15,142,142,222,222,222,222,222,222,222,222,142,142,15,15,15,7,7,3,0,0,0,0},{0,128,192,240,248,252,254,126,63,31,15,15,15,7,7,7,7,7,7,15,15,15,31,63,126,254,252,248,240,192,0,0},{252,255,255,255,255,3,0,0,0,0,240,240,240,240,254,255,255,254,240,240,240,240,0,0,0,0,3,255,255,255,255,252},{3,31,127,255,255,252,240,224,192,128,0,0,0,0,15,31,31,15,0,0,0,0,128,192,224,240,252,255,255,127,31,3},{0,0,0,0,1,3,7,15,15,31,31,31,62,62,62,62,62,62,62,62,31,31,31,15,15,7,3,1,0,0,0,0}};
render_at(0, 5, 6, 32, logo);
}
#endif

static void render_layer_state(void) {
static const char PROGMEM off[2][20] = {{224,24,196,244,242,250,250,250,242,242,194,2,2,2,2,2,4,4,24,224},{3,12,17,23,39,47,47,47,39,39,33,32,32,32,32,32,16,16,12,3}};
static const char PROGMEM on[2][20] ={{224,248,252,252,254,254,254,254,254,62,14,14,6,6,6,14,12,60,248,224},{3,15,31,31,63,63,63,63,63,62,56,56,48,48,48,56,24,30,15,3}};

#define LAYER_STATE_BITS 4
const int current_layer = get_highest_layer(layer_state) > get_highest_layer(default_layer_state)
? get_highest_layer(layer_state)
: get_highest_layer(default_layer_state);
for (int i = 0; i < LAYER_STATE_BITS; i++)
{
int line = 12 - 1 - 2*(i + 1);
if (current_layer > i)
{
render_at(1, line, 2, 20, on);
} else {
render_at(1, line, 2, 20, off);
}
}
}

oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_270;
}

bool oled_task_user(void) {
#ifdef LOGO_ENABLE
if (is_keyboard_master()) {
render_layer_state();
} else {
render_logo();
}
#else
render_layer_state();
#endif

return false;
}

#endif
16 changes: 16 additions & 0 deletions keyboards/nadiya/keymaps/vial/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
VIA_ENABLE = yes
VIAL_ENABLE = yes
VIAL_INSECURE = yes

RGBLIGHT_ENABLE = yes

ENCODER_ENABLE = yes
VIAL_ENCODER_ENABLE = yes
ENCODER_MAP_ENABLE = yes

TAP_DANCE_ENABLE = yes
KEY_OVERRIDE_ENABLE = yes
COMBO_ENABLE = yes
CAPS_WORD_ENABLE = yes
AUTO_SHIFT_ENABLE = yes
QMK_SETTINGS = yes
Loading

0 comments on commit 66b0a48

Please sign in to comment.