aboutsummaryrefslogtreecommitdiff
path: root/users/ishtob/ishtob.c
diff options
context:
space:
mode:
authorishtob <ishtob@gmail.com>2018-08-10 11:30:21 -0400
committerDrashna Jaelre <drashna@live.com>2018-08-10 08:30:21 -0700
commitfd0bd29a0a3f2de93a3e561007805fac67e7e0cd (patch)
treed7c9a379d6b04fb851854102631cdde5c3f9b607 /users/ishtob/ishtob.c
parentfeb5e4aaebb78842c090230f68ea9de80a5c17e6 (diff)
downloadqmk_firmware-fd0bd29a0a3f2de93a3e561007805fac67e7e0cd.tar.gz
qmk_firmware-fd0bd29a0a3f2de93a3e561007805fac67e7e0cd.zip
Keymap: adding my personal userspace to QMK master (#3605)
* Adding my personal planck keymap * Adding readme.md to my keymap * Create my userspace add users/ishtob/ * Moved macros off keymap macros now exsists in my userspace, moved them off keyboard specific keymaps * Create my userspace add users/ishtob/ * rebase from main QMK repo
Diffstat (limited to 'users/ishtob/ishtob.c')
-rw-r--r--users/ishtob/ishtob.c69
1 files changed, 69 insertions, 0 deletions
diff --git a/users/ishtob/ishtob.c b/users/ishtob/ishtob.c
new file mode 100644
index 000000000..1b847d630
--- /dev/null
+++ b/users/ishtob/ishtob.c
@@ -0,0 +1,69 @@
1/*
2Based on userspace written by @drashna 2017
3Copyright 2018 Hsian Chang <ishtob@gmail.com> @ishtob
4
5This program is free software: you can redistribute it and/or modify
6it under the terms of the GNU General Public License as published by
7the Free Software Foundation, either version 2 of the License, or
8(at your option) any later version.
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13You should have received a copy of the GNU General Public License
14along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/
16
17#include "ishtob.h"
18#include "action.h"
19#include "action_layer.h"
20// #include "dynamic_macro.h"
21#ifdef AUDIO_ENABLE
22 #include "audio.h"
23#endif
24
25
26// Add reconfigurable functions here, for keymap customization
27// This allows for a global, userspace functions, and continued
28// customization of the keymap. Use _keymap instead of _user
29// functions in the keymaps
30__attribute__ ((weak))
31void matrix_init_keymap(void) {}
32
33__attribute__ ((weak))
34void matrix_scan_keymap(void) {}
35
36__attribute__ ((weak))
37bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
38 return true;
39}
40
41__attribute__ ((weak))
42bool process_record_secrets(uint16_t keycode, keyrecord_t *record) {
43 return true;
44}
45
46// Call user matrix init, then call the keymap's init function
47void matrix_init_user(void) {
48 matrix_init_keymap();
49}
50
51// No global matrix scan code, so just run keymap's matix
52// scan function
53void matrix_scan_user(void) {
54 matrix_scan_keymap();
55}
56
57bool process_record_user(uint16_t keycode, keyrecord_t *record) {
58 switch (keycode) {
59 case DFU:
60 if (record->event.pressed) {
61 clear_keyboard();
62 reset_keyboard();
63 }
64 return false;
65 break;
66 }
67 return process_record_keymap(keycode, record) && process_record_secrets(keycode, record);
68}
69