summaryrefslogtreecommitdiffstats
path: root/users/badger/badger.c
diff options
context:
space:
mode:
authorDan White <BlueTufa@users.noreply.github.com>2020-09-16 22:03:28 -0600
committerGitHub <noreply@github.com>2020-09-16 21:03:28 -0700
commitf650b03fb77530eb6aa7eab541f6a28c98e0ced6 (patch)
treeb5f034ed0d01ab27aaef9b5137dcdcbc548951b1 /users/badger/badger.c
parent410d09675a58f1890c24068066bb8eace21c2416 (diff)
[Keymap] Badger keymaps/userspace (#10239)
* Badger keymaps * bug fix - linter * code review feedback and ortholinear bugs * cleanup * backing out suspect bug after doing additional research * code review feedback * code review feedback * changing default badger keymap and small bugfix
Diffstat (limited to 'users/badger/badger.c')
-rw-r--r--users/badger/badger.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/users/badger/badger.c b/users/badger/badger.c
new file mode 100644
index 0000000000..4551840610
--- /dev/null
+++ b/users/badger/badger.c
@@ -0,0 +1,49 @@
+/*
+Copyright 2020 Dan White <opensource@bluetufa.com>
+
+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 "badger.h"
+
+bool _capsLockState;
+
+__attribute__ ((weak))
+void keyboard_post_init_user(void) {
+ _capsLockState = false;
+}
+
+__attribute__ ((weak))
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case CS_RIGHT:
+ if (record->event.pressed) {
+ SEND_STRING(SS_LALT(SS_TAP(X_B)SS_TAP(X_ENTER)));
+ return false;
+ }
+ break;
+ case CS_DOWN:
+ if (record->event.pressed) {
+ SEND_STRING(SS_LALT(SS_TAP(X_V)SS_TAP(X_ENTER)));
+ return false;
+ }
+ break;
+ case KC_CAPS:
+ if (record->event.pressed) {
+ _capsLockState = !_capsLockState;
+ return true;
+ }
+ break;
+ default:
+ return true;
+ }
+ return true;
+}