aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvxid <16440823+vxid@users.noreply.github.com>2019-07-08 20:15:59 +0200
committerDrashna Jaelre <drashna@live.com>2019-07-08 11:15:59 -0700
commit95b2364e5a58ffcece44e00095eaf209332cd55b (patch)
tree037104e48dcba8df28266a70cb87d19404ec5019
parent6e6d079dd21f766191f60db062fae8889623ded1 (diff)
downloadqmk_firmware-95b2364e5a58ffcece44e00095eaf209332cd55b.tar.gz
qmk_firmware-95b2364e5a58ffcece44e00095eaf209332cd55b.zip
[Keymap] Add crkbd/vxid keymap (#6281)
-rw-r--r--keyboards/crkbd/keymaps/vxid/README.md3
-rw-r--r--keyboards/crkbd/keymaps/vxid/config.h44
-rw-r--r--keyboards/crkbd/keymaps/vxid/keymap.c85
-rw-r--r--keyboards/crkbd/keymaps/vxid/rules.mk31
4 files changed, 163 insertions, 0 deletions
diff --git a/keyboards/crkbd/keymaps/vxid/README.md b/keyboards/crkbd/keymaps/vxid/README.md
new file mode 100644
index 000000000..7b0f9b8af
--- /dev/null
+++ b/keyboards/crkbd/keymaps/vxid/README.md
@@ -0,0 +1,3 @@
1# Vxid crkbd layout
2
3Inspired by sdothum's wide planck layout.
diff --git a/keyboards/crkbd/keymaps/vxid/config.h b/keyboards/crkbd/keymaps/vxid/config.h
new file mode 100644
index 000000000..bbf76d705
--- /dev/null
+++ b/keyboards/crkbd/keymaps/vxid/config.h
@@ -0,0 +1,44 @@
1/*
2This is the c configuration file for the keymap
3
4Copyright 2012 Jun Wako <wakojun@gmail.com>
5Copyright 2015 Jack Humbert
6
7This program is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation, either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#pragma once
22
23//#define USE_MATRIX_I2C
24
25/* Select hand configuration */
26
27// #define MASTER_LEFT
28#define MASTER_RIGHT
29// #define EE_HANDS
30
31#define SSD1306OLED
32
33#define USE_SERIAL_PD2
34
35#define TAPPING_FORCE_HOLD
36#define TAPPING_TERM 100
37
38#undef RGBLED_NUM
39#define RGBLIGHT_ANIMATIONS
40#define RGBLED_NUM 27
41#define RGBLIGHT_LIMIT_VAL 120
42#define RGBLIGHT_HUE_STEP 10
43#define RGBLIGHT_SAT_STEP 17
44#define RGBLIGHT_VAL_STEP 17
diff --git a/keyboards/crkbd/keymaps/vxid/keymap.c b/keyboards/crkbd/keymaps/vxid/keymap.c
new file mode 100644
index 000000000..e1c73caeb
--- /dev/null
+++ b/keyboards/crkbd/keymaps/vxid/keymap.c
@@ -0,0 +1,85 @@
1#include QMK_KEYBOARD_H
2#include "bootloader.h"
3#ifdef PROTOCOL_LUFA
4 #include "lufa.h"
5 #include "split_util.h"
6#endif
7
8extern keymap_config_t keymap_config;
9
10extern uint8_t is_master;
11
12#define _QWERTY 0
13#define _LOWER 1
14#define _RAISE 2
15
16enum custom_keycodes {
17 QWERTY = SAFE_RANGE,
18 LOWER,
19 RAISE
20};
21
22#define KC______ KC_TRNS
23#define KC_XXXXX KC_NO
24#define KC_LOWER LOWER
25#define KC_RAISE RAISE
26
27const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
28 [_QWERTY] = LAYOUT_kc( \
29 //,-----------------------------------------. ,-----------------------------------------.
30 Q, W, E, R, T, ESC, DEL, Y, U, I, O, P,\
31 //|------+------+------+------+------+------| |------+------+------+------+------+------|
32 A, S, D, F, G, SPC, BSPC, H, J, K, L, SCLN,\
33 //|------+------+------+------+------+------| |------+------+------+------+------+------|
34 Z, X, C, V, B, TAB, ENT, N, M, COMM, DOT, SLSH,\
35 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
36 LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
37 //`--------------------' `--------------------'
38 ),
39
40 [_LOWER] = LAYOUT_kc( \
41 //,-----------------------------------------. ,------------------------------------------.
42 1, 2, 3, 4, 5, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
43 //|------+------+------+------+------+------| |-------+------+------+------+------+------|
44 6, 7, 8, 9, 0, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
45 //|------+------+------+------+------+------| |-------+------+------+------+------+------|
46 EQL, PLUS, MINS, SLSH, ASTR, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
47 //|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
48 LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
49 //`--------------------' `--------------------'
50 ),
51
52 [_RAISE] = LAYOUT_kc( \
53 //,-----------------------------------------. ,------------------------------------------.
54 EXLM, AT, HASH, DLR, PERC, LPRN, RPRN, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
55 //|------+------+------+------+------+------| |-------+------+------+------+------+------|
56 CIRC, AMPR, ASTR, QUOT, DQUO, LCBR, RCBR, LEFT, DOWN, UP, RIGHT, XXXXX,\
57 //|------+------+------+------+------+------| |-------+------+------+------+------+------|
58 BSLS, TILD, GRV, UNDS, PIPE, LBRC, RBRC, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
59 //|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
60 LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
61 //`--------------------' `--------------------'
62 )
63};
64
65bool process_record_user(uint16_t keycode, keyrecord_t *record) {
66 switch (keycode) {
67 case LOWER:
68 if (record->event.pressed) {
69 layer_on(_LOWER);
70 } else {
71 layer_off(_LOWER);
72 }
73 return false;
74 break;
75 case RAISE:
76 if (record->event.pressed) {
77 layer_on(_RAISE);
78 } else {
79 layer_off(_RAISE);
80 }
81 return false;
82 break;
83 }
84 return true;
85}
diff --git a/keyboards/crkbd/keymaps/vxid/rules.mk b/keyboards/crkbd/keymaps/vxid/rules.mk
new file mode 100644
index 000000000..83e87ecf9
--- /dev/null
+++ b/keyboards/crkbd/keymaps/vxid/rules.mk
@@ -0,0 +1,31 @@
1
2# Build Options
3# change to "no" to disable the options, or define them in the Makefile in
4# the appropriate keymap folder that will get included automatically
5#
6BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
7MOUSEKEY_ENABLE = no # Mouse keys(+4700)
8EXTRAKEY_ENABLE = no # Audio control and System control(+450)
9CONSOLE_ENABLE = no # Console for debug(+400)
10COMMAND_ENABLE = no # Commands for debug and configuration
11NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13MIDI_ENABLE = no # MIDI controls
14AUDIO_ENABLE = no # Audio output on port C6
15UNICODE_ENABLE = no # Unicode
16BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
17RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
18SWAP_HANDS_ENABLE = no # Enable one-hand typing
19
20# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
21SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
22
23# If you want to change the display of OLED, you need to change here
24SRC += ./lib/glcdfont.c \
25 ./lib/rgb_state_reader.c \
26 ./lib/layer_state_reader.c \
27 ./lib/logo_reader.c \
28 ./lib/keylogger.c \
29 # ./lib/mode_icon_reader.c \
30 # ./lib/host_led_state_reader.c \
31 # ./lib/timelogger.c \