From 480489f3054145b13b193abd7f6eed1fabdab598 Mon Sep 17 00:00:00 2001 From: Moon Date: Sat, 24 Sep 2022 06:12:02 -0400 Subject: [PATCH] initial commit --- config.h | 18 +++++++++++++++ keymap.c | 53 +++++++++++++++++++++++++++++++++++++++++++++ readme.md | 8 +++++++ rgb_matrix_user.inc | 41 +++++++++++++++++++++++++++++++++++ rules.mk | 2 ++ 5 files changed, 122 insertions(+) create mode 100644 config.h create mode 100644 keymap.c create mode 100644 readme.md create mode 100644 rgb_matrix_user.inc create mode 100644 rules.mk diff --git a/config.h b/config.h new file mode 100644 index 0000000..194cb5a --- /dev/null +++ b/config.h @@ -0,0 +1,18 @@ +/* Copyright 2022 s-ol + * + * 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 . + */ +#pragma once + +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CUSTOM_RGB_TESTING diff --git a/keymap.c b/keymap.c new file mode 100644 index 0000000..ec4fefb --- /dev/null +++ b/keymap.c @@ -0,0 +1,53 @@ +/* Copyright 2021 s-ol + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + QMK_TRIPLE_CLICK = SAFE_RANGE, + QMK_BANANA, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QMK_TRIPLE_CLICK: + if (record->event.pressed) { + // when keycode is pressed + SEND_STRING( SS_TAP(X_BTN1) SS_DELAY(250) SS_TAP(X_BTN1) SS_DELAY(250) SS_TAP(X_BTN1) SS_DELAY(250) SS_LCTL("x")); + } else { + // when keycode is released + } + break; + + case QMK_BANANA: + if (record->event.pressed) { + SEND_STRING("banana"); + } else { + } + break; + + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + RGB_RMOD, RGB_MOD, +// KC_CUT , KC_COPY, KC_PSTE, +LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), + KC_PGUP, KC_PGDN, KC_VOLU, KC_VOLD, + KC_1 , QMK_BANANA , QMK_TRIPLE_CLICK + ), +}; diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..09c3c51 --- /dev/null +++ b/readme.md @@ -0,0 +1,8 @@ +![0xC.pad Layout Image](https://i.imgur.com/pk4G33B.png) +​ +# Moon@shipoclu.com's 0xC.pad Layout +​ +Modified to use: +1. cut-copy-paste macros instead of dedicated keycodes. +2. cut block using triple-mouse-click and cut macro. +3. more stuff later. diff --git a/rgb_matrix_user.inc b/rgb_matrix_user.inc new file mode 100644 index 0000000..8acb493 --- /dev/null +++ b/rgb_matrix_user.inc @@ -0,0 +1,41 @@ +/* Copyright 2022 s-ol + * + * 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 . + */ +RGB_MATRIX_EFFECT(RGB_TESTING) +#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS + +static HSV RGB_TESTING_math(HSV hsv, uint8_t i, uint8_t time) { + hsv.v = 255; + hsv.s = 255; + + uint8_t t = (time + i * 6) % 256; + switch (t / (256 / 4)) { + case 0: + hsv.h = 0; + break; + case 1: + hsv.h = 85; + break; + case 2: + hsv.h = 170; + break; + default: + hsv.s = 0; + } + return hsv; +} + +static bool RGB_TESTING(effect_params_t* params) { return effect_runner_i(params, &RGB_TESTING_math); } +#endif diff --git a/rules.mk b/rules.mk new file mode 100644 index 0000000..ad0559f --- /dev/null +++ b/rules.mk @@ -0,0 +1,2 @@ +RGB_MATRIX_CUSTOM_USER = yes +MOUSEKEY_ENABLE = yes