summaryrefslogtreecommitdiff
path: root/users/sigma/sigma.h
diff options
context:
space:
mode:
authorYann Hodique <yann.hodique@gmail.com>2018-10-15 10:49:51 -0700
committerDrashna Jaelre <drashna@live.com>2018-10-15 10:49:51 -0700
commit088b476343bf97c4bca6855a4ff2152f1bf0785e (patch)
tree43ca4ca8cc29a9a0df16be5db8991102fb297324 /users/sigma/sigma.h
parent4c9372a0819b3fa062105803668d3b277222dc1a (diff)
downloadqmk_firmware-088b476343bf97c4bca6855a4ff2152f1bf0785e.tar.gz
qmk_firmware-088b476343bf97c4bca6855a4ff2152f1bf0785e.zip
Keymap: add sun_usb keymap for sigma (#4138)
Also add users/sigma, which contains useful code for keymaps.
Diffstat (limited to 'users/sigma/sigma.h')
-rw-r--r--users/sigma/sigma.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/users/sigma/sigma.h b/users/sigma/sigma.h
new file mode 100644
index 0000000000..e47e889b8c
--- /dev/null
+++ b/users/sigma/sigma.h
@@ -0,0 +1,58 @@
+/*
+ Copyright 2018 Yann Hodique <yann.hodique@gmail.com> @sigma
+
+ 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/>.
+*/
+#pragma once
+
+#include "quantum.h"
+#include "version.h"
+#include "eeprom.h"
+
+// Define os types
+enum os_types
+ {
+ _OS_MACOS = 0,
+ _OS_LINUX,
+ _OS_WINDOWS,
+ };
+
+// Define layer names
+enum userspace_layers
+ {
+ _QWERTY = 0,
+ };
+
+typedef union {
+ uint32_t raw;
+ struct {
+ uint8_t os_target :2;
+ };
+} userspace_config_t;
+
+enum userspace_custom_keycodes
+ {
+ EPRM = SAFE_RANGE, // Resets EEPROM
+ VRSN, // Prints QMK Firmware and board info
+ KC_QWERTY, // Sets default layer to QWERTY
+ KC_MAKE, // Rebuild the current firmware
+ KC_OS_CUT,
+ KC_OS_COPY,
+ KC_OS_PASTE,
+ KC_OS_UNDO,
+ KC_OS_REDO,
+ KC_OS_LOCK,
+ KC_SCRT,
+ NEW_SAFE_RANGE //use NEW_SAFE_RANGE for keymap specific codes
+ };