From 7372ce1a8bf61c5ab401df2b9f800fbe28ec8612 Mon Sep 17 00:00:00 2001 From: Christoph Cullmann Date: Sat, 26 Oct 2024 22:50:41 +0200 Subject: [PATCH] add ferris keymap back --- README.md | 6 +++- common/keymap.h | 4 +++ .../keymaps/christoph-cullmann/config.h | 9 +++++ .../keymaps/christoph-cullmann/keymap.c | 33 +++++++++++++++++++ .../keymaps/christoph-cullmann/rules.mk | 3 ++ 5 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 keyboards/ferris/keymaps/christoph-cullmann/config.h create mode 100644 keyboards/ferris/keymaps/christoph-cullmann/keymap.c create mode 100644 keyboards/ferris/keymaps/christoph-cullmann/rules.mk diff --git a/README.md b/README.md index 3c5305f..dbd107b 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ This repository is a valid QMK external userspace as documented here: You need to have a locally setup QMK and use this repo as overlay: - qmk config user.overlay_dir="/home/cullmann/data/qmk/christoph-cullmann" + qmk config user.overlay_dir="/data/home/cullmann/data/qmk/christoph-cullmann" To use my keymaps, do for the Corne @@ -38,6 +38,10 @@ or for the Planck qmk flash -kb planck/rev6_drop -km christoph-cullmann +or for the Ferris + + qmk flash -kb ferris/sweep -km christoph-cullmann + # Foundation Based on ideas and code from: diff --git a/common/keymap.h b/common/keymap.h index ac1c5a1..2b49024 100644 --- a/common/keymap.h +++ b/common/keymap.h @@ -98,6 +98,8 @@ uint16_t achordion_streak_chord_timeout( } } +#ifndef NO_LED + void keyboard_post_init_user(void) { // always use the same effect rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING); @@ -138,6 +140,8 @@ layer_state_t layer_state_set_user(layer_state_t state) { return state; } +#endif + // Simplify unused magic config functions #ifndef MAGIC_ENABLE uint8_t mod_config(uint8_t mod) { return mod; } diff --git a/keyboards/ferris/keymaps/christoph-cullmann/config.h b/keyboards/ferris/keymaps/christoph-cullmann/config.h new file mode 100644 index 0000000..ae8e70b --- /dev/null +++ b/keyboards/ferris/keymaps/christoph-cullmann/config.h @@ -0,0 +1,9 @@ +/** + * SPDX-FileCopyrightText: 2024 Christoph Cullmann + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#pragma once + +// our shared config parts +#include "common/config.h" diff --git a/keyboards/ferris/keymaps/christoph-cullmann/keymap.c b/keyboards/ferris/keymaps/christoph-cullmann/keymap.c new file mode 100644 index 0000000..6adb918 --- /dev/null +++ b/keyboards/ferris/keymaps/christoph-cullmann/keymap.c @@ -0,0 +1,33 @@ +/** + * SPDX-FileCopyrightText: 2024 Christoph Cullmann + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include QMK_KEYBOARD_H + +// Returns true if `pos` on the left hand of the keyboard, false if right. +static bool on_left_hand(keypos_t pos) +{ + return pos.row < MATRIX_ROWS / 2; +} + +// layout helper macro, we just use 42 keys +#undef LAYOUT +#define LAYOUT(\ +K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\ +K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\ +K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\ + K30, K31, K32, K33\ +)\ +LAYOUT_split_3x5_2(\ +K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\ +K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\ +K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\ + K30, K31, K32, K33\ +) + +// no led +#define NO_LED + +// our shared 42 keys keymap +#include "common/keymap.h" diff --git a/keyboards/ferris/keymaps/christoph-cullmann/rules.mk b/keyboards/ferris/keymaps/christoph-cullmann/rules.mk new file mode 100644 index 0000000..9d1b049 --- /dev/null +++ b/keyboards/ferris/keymaps/christoph-cullmann/rules.mk @@ -0,0 +1,3 @@ +# include common settings +ROOT_DIR := $(dir $(realpath $(lastword $(MAKEFILE_LIST)))) +include ${ROOT_DIR}../../../../rules.mk