From 23df763a310d739859e070f67b16018652531615 Mon Sep 17 00:00:00 2001 From: mechanicalguy21 <63573424+mechanicalguy21@users.noreply.github.com> Date: Sat, 18 Apr 2020 19:58:58 -0500 Subject: [Keyboard] Adding Novem keyboard (macropad) and demo layout (#8781) * Adding Novem keyboard (macropad) and demo layout * Making changes suggested during pull request * Removing keyboards/novem/keymaps/default/config.h as suggested during the pull request * Moving keyboard to the handwired folder and changing the build line from readme in order to reflect this new location --- keyboards/handwired/novem/keymaps/default/keymap.c | 77 ++++++++++++++++++++++ .../handwired/novem/keymaps/default/readme.md | 1 + 2 files changed, 78 insertions(+) create mode 100644 keyboards/handwired/novem/keymaps/default/keymap.c create mode 100644 keyboards/handwired/novem/keymaps/default/readme.md (limited to 'keyboards/handwired/novem/keymaps') diff --git a/keyboards/handwired/novem/keymaps/default/keymap.c b/keyboards/handwired/novem/keymaps/default/keymap.c new file mode 100644 index 0000000000..ca6f318882 --- /dev/null +++ b/keyboards/handwired/novem/keymaps/default/keymap.c @@ -0,0 +1,77 @@ +/* Copyright 2020 Jose I. Martinez + * + * 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 + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +// Defines the keycodes used by our macros in process_record_user +enum custom_keycodes { + GITSTTS = SAFE_RANGE, + GITPULL, + GITPUSH, + GITCOM +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_ESCAPE, KC_HOME, KC_DEL, + MO(_FN) , KC_UP , KC_ENTER, + KC_LEFT , KC_DOWN, KC_RIGHT + ), + [_FN] = LAYOUT( + KC_TRNS, GITCOM, GITPUSH, + KC_TRNS, GITSTTS, GITPULL, + KC_TRNS, KC_TRNS, KC_TRNS + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case GITSTTS: + if (record->event.pressed) { + // when keycode GITSTTS is pressed + SEND_STRING("git status"); + } + break; + case GITPULL: + if (record->event.pressed) { + // when keycode GITPULL is pressed + SEND_STRING("git pull"); + } + break; + case GITPUSH: + if (record->event.pressed) { + // when keycode GITPUSH is pressed + SEND_STRING("git push"); + } + break; + case GITCOM: + if (record->event.pressed) { + // when keycode GITCOM is pressed + SEND_STRING("git commit -m "); + } + break; + default: + return true; + } + return true; +} + diff --git a/keyboards/handwired/novem/keymaps/default/readme.md b/keyboards/handwired/novem/keymaps/default/readme.md new file mode 100644 index 0000000000..0f833a09d3 --- /dev/null +++ b/keyboards/handwired/novem/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for novem -- cgit v1.2.3