Compare commits
47 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
33fdd1d255 | ||
|
d1c3419d2a | ||
|
9a7347e357 | ||
|
e36d6bbbe3 | ||
|
14b2a35571 | ||
|
1bb77c0875 | ||
|
4e4101efdf | ||
|
46d12d90df | ||
|
c604cd6fd7 | ||
|
2a63e21279 | ||
|
503335be25 | ||
|
0912c42f04 | ||
|
3ea8bcb8ae | ||
|
0ce2cc8915 | ||
|
ded9390944 | ||
|
3cab04dfa3 | ||
|
1de6458921 | ||
|
3bb647910a | ||
|
5ec3bd9e40 | ||
|
d3c6da7aff | ||
|
47f55f417b | ||
|
eaa0b24335 | ||
|
75360ebdae | ||
|
8ec2269519 | ||
|
5226e4c79b | ||
|
7dda7158fb | ||
|
8b0b17a369 | ||
|
23b45710ac | ||
|
b4bdebab9a | ||
|
3d3c093173 | ||
|
a7fca47686 | ||
|
9ab786d1d8 | ||
|
ec9058f227 | ||
|
5aada76f12 | ||
|
e9d32b60b7 | ||
|
e2fb3079c7 | ||
|
13cdfb465d | ||
|
1b711453ca | ||
|
5d36118eaa | ||
|
b7d095fdc3 | ||
|
ed62c6e146 | ||
|
32fd5e4f61 | ||
|
fe8b9d0d0f | ||
|
412af0f4e7 | ||
|
d55ee204db | ||
|
cdb967f22b | ||
|
28307be72f |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -43,6 +43,7 @@ doxygen/
|
||||
.project
|
||||
.settings/
|
||||
.idea
|
||||
*.iml
|
||||
.browse.VC.db*
|
||||
*.stackdump
|
||||
util/Win_Check_Output.txt
|
||||
|
@@ -34,6 +34,7 @@ ifeq ($(strip $(AUDIO_ENABLE)), yes)
|
||||
OPT_DEFS += -DAUDIO_ENABLE
|
||||
MUSIC_ENABLE := 1
|
||||
SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c
|
||||
SRC += $(QUANTUM_DIR)/process_keycode/process_clicky.c
|
||||
ifeq ($(PLATFORM),AVR)
|
||||
SRC += $(QUANTUM_DIR)/audio/audio.c
|
||||
else
|
||||
|
@@ -116,7 +116,7 @@ If you define these options you will enable the associated feature, which may in
|
||||
* `#define FORCE_NKRO`
|
||||
* NKRO by default requires to be turned on, this forces it on during keyboard startup regardless of EEPROM setting. NKRO can still be turned off but will be turned on again if the keyboard reboots.
|
||||
* `#define PREVENT_STUCK_MODIFIERS`
|
||||
* when switching layers, this will release all mods
|
||||
* stores the layer a key press came from so the same layer is used when the key is released, regardless of which layers are enabled
|
||||
|
||||
## Behaviors That Can Be Configured
|
||||
|
||||
|
@@ -19,14 +19,15 @@ Currently, the keycodes able to used with these functions are limited to the [Ba
|
||||
|
||||
# Switching and Toggling Layers
|
||||
|
||||
These functions allow you to activate layers in various ways.
|
||||
These functions allow you to activate layers in various ways. Note that layers are not generally independent layouts -- multiple layers can be activated at once, and it's typical for layers to use `KC_TRNS` to allow keypresses to pass through to lower layers. For a detailed explanation of layers, see [Keymap Overview](keymap.md#keymap-and-layers)
|
||||
|
||||
* `MO(layer)` - momentary switch to *layer*. As soon as you let go of the key, the layer is deactivated and you pop back out to the previous layer.
|
||||
* `LT(layer, kc)` - momentary switch to *layer* when held, and *kc* when tapped.
|
||||
* `TG(layer)` - toggles a layer on or off.
|
||||
* `TO(layer)` - Goes to a layer. This code is special, because it lets you go either up or down the stack -- just goes directly to the layer you want. So while other codes only let you go _up_ the stack (from layer 0 to layer 3, for example), `TO(2)` is going to get you to layer 2, no matter where you activate it from -- even if you're currently on layer 5. This gets activated on keydown (as soon as the key is pressed).
|
||||
* `TT(layer)` - Layer Tap-Toggle. If you hold the key down, the layer becomes active, and then deactivates when you let go. And if you repeatedly tap it, the layer simply becomes active (toggles on). It needs 5 taps by default, but you can set it by defining `TAPPING_TOGGLE`, for example, `#define TAPPING_TOGGLE 2` for just two taps.
|
||||
* `LM(layer, mod)` - Momentary switch to *layer* (like MO), but with modifier(s) *mod* active. Only supports layers 0-15 and the left modifiers.
|
||||
* `DF(layer)` - switches the default layer. The default layer is the always-active base layer that other layers stack on top of. See below for more about the default layer. This might be used to switch from QWERTY to Dvorak layout. (Note that this is a temporary switch that only persists until the keyboard loses power. To modify the default layer in a persistent way requires deeper customization, such as calling the `set_single_persistent_default_layer` function inside of [process_record_user](custom_quantum_functions.md#programming-the-behavior-of-any-keycode).)
|
||||
* `MO(layer)` - momentarily activates *layer*. As soon as you let go of the key, the layer is deactivated.
|
||||
* `LM(layer, mod)` - Momentarily activates *layer* (like `MO`), but with modifier(s) *mod* active. Only supports layers 0-15 and the left modifiers.
|
||||
* `LT(layer, kc)` - momentarily activates *layer* when held, and sends *kc* when tapped.
|
||||
* `TG(layer)` - toggles *layer*, activating it if it's inactive and vice versa
|
||||
* `TO(layer)` - activates *layer* and de-activates all other layers (except your default layer). This function is special, because instead of just adding/removing one layer to your active layer stack, it will completely replace your current active layers, uniquely allowing you to replace higher layers with a lower one. This is activated on keydown (as soon as the key is pressed).
|
||||
* `TT(layer)` - Layer Tap-Toggle. If you hold the key down, *layer* is activated, and then is de-activated when you let go (like `MO`). If you repeatedly tap it, the layer will be toggled on or off (like `TG`). It needs 5 taps by default, but you can change this by defining `TAPPING_TOGGLE` -- for example, `#define TAPPING_TOGGLE 2` to toggle on just two taps.
|
||||
|
||||
# Working with Layers
|
||||
|
||||
@@ -36,9 +37,9 @@ Care must be taken when switching layers, it's possible to lock yourself into a
|
||||
|
||||
If you are just getting started with QMK you will want to keep everything simple. Follow these guidelines when setting up your layers:
|
||||
|
||||
* Setup layer 0 as your "base" layer. This is your normal typing layer, and could be whatever layout you want (qwerty, dvorak, colemak, etc.)
|
||||
* Setup layer 0 as your default, "base" layer. This is your normal typing layer, and could be whatever layout you want (qwerty, dvorak, colemak, etc.). It's important to set this as the lowest layer since it will typically have most or all of the keyboard's keys defined, so would block other layers from having any effect if it were above them (i.e., had a higher layer number).
|
||||
* Arrange your layers in a "tree" layout, with layer 0 as the root. Do not try to enter the same layer from more than one other layer.
|
||||
* Never try to stack a higher numbered layer on top of a lower numbered layer. Doing so is tricky and error prone.
|
||||
* In a layer's keymap, only reference higher-numbered layers. Because layers are processed from the highest-numbered (topmost) active layer down, modifying the state of lower layers can be tricky and error-prone.
|
||||
|
||||
### Intermediate Users
|
||||
|
||||
|
@@ -97,6 +97,36 @@ You can completely disable Music Mode as well. This is useful, if you're pressed
|
||||
|
||||
#define NO_MUSIC_MODE
|
||||
|
||||
## Faux Click
|
||||
|
||||
This adds a click sound each time you hit a button, to simulate click sounds from the keyboard. And the sounds are slightly different for each keypress, so it doesn't sound like a single long note, if you type rapidly.
|
||||
|
||||
* `CK_TOGG` - Toggles the status (will play sound if enabled)
|
||||
* `CK_RST` - Resets the frequency to the default state
|
||||
* `CK_UP` - Increases the frequency of the clicks
|
||||
* `CK_DOWN` - Decreases the frequency of the clicks
|
||||
|
||||
The feature is disabled by default, to save space. To enable it, add this to your `config.h`:
|
||||
|
||||
#define AUDIO_CLICKY
|
||||
|
||||
Additionally, even when enabled, the feature is not enabled by default, so you would need to turn it on first. And since we don't use EEPROM to store the setting (yet), you can default this to on by adding this to your `config.h`:
|
||||
|
||||
#define AUDIO_CLICKY_ON
|
||||
|
||||
You can configure the default, min and max frequencies, the stepping and built in randomness by defining these values:
|
||||
|
||||
| Option | Default Value | Description |
|
||||
|--------|---------------|-------------|
|
||||
| `AUDIO_CLICKY_FREQ_DEFAULT` | 440.0f | Sets the default/starting audio frequency for the clicky sounds. |
|
||||
| `AUDIO_CLICKY_FREQ_MIN` | 65.0f | Sets the lowest frequency (under 60f are a bit buggy). |
|
||||
| `AUDIO_CLICKY_FREQ_MAX` | 1500.0f | Sets the the highest frequency. Too high may result in coworkers attacking you. |
|
||||
| `AUDIO_CLICKY_FREQ_FACTOR` | 1.18921f| Sets the stepping of UP/DOWN key codes. |
|
||||
| `AUDIO_CLICKY_FREQ_RANDOMNESS` | 0.05f | Sets a factor of randomness for the clicks, Setting this to `0f` will make each click identical. |
|
||||
|
||||
|
||||
|
||||
|
||||
## MIDI Functionality
|
||||
|
||||
This is still a WIP, but check out `quantum/keymap_midi.c` to see what's happening. Enable from the Makefile.
|
||||
|
@@ -6,7 +6,7 @@ Bootmagic is a system for configuring your keyboard while it initializes. To tri
|
||||
|
||||
Bootmagic Keycodes allow you to access the Bootmagic functionality after your keyboard has initialized. To use Bootmagic Keycodes you assign keycodes starting with `MAGIC_`, much in the same way you define any other key.
|
||||
|
||||
Command is a feature that allows you to control different aspects of your keyboard. Command used to be called Magic. Command is typically accessed by holding Left and Right Shift at the same time, although that can be customized. While it shares some functionality with Bootmagic it also allows you to access functionality that Bootmagic does not. For more information see the (Command)[feature_command.md) documentation page.
|
||||
Command is a feature that allows you to control different aspects of your keyboard. Command used to be called Magic. Command is typically accessed by holding Left and Right Shift at the same time, although that can be customized. While it shares some functionality with Bootmagic it also allows you to access functionality that Bootmagic does not. For more information see the [Command](feature_command.md) documentation page.
|
||||
|
||||
## Enabling Bootmagic
|
||||
|
||||
|
@@ -22,7 +22,7 @@ This array specifies what actions shall be taken when a tap-dance key is in acti
|
||||
* `ACTION_TAP_DANCE_FN(fn)`: Calls the specified function - defined in the user keymap - with the final tap count of the tap dance action.
|
||||
* `ACTION_TAP_DANCE_FN_ADVANCED(on_each_tap_fn, on_dance_finished_fn, on_dance_reset_fn)`: Calls the first specified function - defined in the user keymap - on every tap, the second function on when the dance action finishes (like the previous option), and the last function when the tap dance action resets.
|
||||
|
||||
The first option is enough for a lot of cases, that just want dual roles. For example, `ACTION_TAP_DANCE(KC_SPC, KC_ENT)` will result in `Space` being sent on single-tap, `Enter` otherwise.
|
||||
The first option is enough for a lot of cases, that just want dual roles. For example, `ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT)` will result in `Space` being sent on single-tap, `Enter` otherwise.
|
||||
|
||||
And that's the bulk of it!
|
||||
|
||||
|
@@ -20,7 +20,7 @@ Compatible flashers:
|
||||
|
||||
* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (recommended GUI)
|
||||
* [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` in QMK (recommended command line)
|
||||
* [Atmel's Flip](http://www.atmel.com/tools/flip.aspx) (not recommended)
|
||||
* [Atmel's Flip](http://www.microchip.com/developmenttools/productdetails.aspx?partno=flip) (not recommended)
|
||||
|
||||
Flashing sequence:
|
||||
|
||||
|
1
keyboards/alf_x2/alf_x2.c
Normal file
1
keyboards/alf_x2/alf_x2.c
Normal file
@@ -0,0 +1 @@
|
||||
#include "alf_x2.h"
|
22
keyboards/alf_x2/alf_x2.h
Normal file
22
keyboards/alf_x2/alf_x2.h
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef ALF_X2_H
|
||||
#define ALF_X2_H
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
// K404 and K408 are the microswitches at the top of the PCB
|
||||
|
||||
#define LAYOUT( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
|
||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
|
||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
|
||||
K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
|
||||
{ K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
|
||||
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
|
||||
{ K400, K401, KC_NO, K403, K404, KC_NO, K406, KC_NO, K408, KC_NO, K410, K411, K412, K413, K414 } \
|
||||
}
|
||||
|
||||
#endif
|
58
keyboards/alf_x2/config.h
Normal file
58
keyboards/alf_x2/config.h
Normal file
@@ -0,0 +1,58 @@
|
||||
#ifndef CONFIG_H
|
||||
#define CONFIG_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0xFEED
|
||||
#define PRODUCT_ID 0x6060
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER ALF
|
||||
#define PRODUCT X2
|
||||
#define DESCRIPTION ALF X2 60
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 5
|
||||
#define MATRIX_COLS 15
|
||||
|
||||
/* key matrix pins */
|
||||
#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }
|
||||
#define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B7, D4, B1, B0, B5, B4, D7, D6, B3, F4 }
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/* number of backlight levels */
|
||||
#define BACKLIGHT_PIN B6
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_LEVELS 3
|
||||
#endif
|
||||
|
||||
/* Set 0 if debouncing isn't needed */
|
||||
#define DEBOUNCING_DELAY 5
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
#define LOCKING_SUPPORT_ENABLE
|
||||
|
||||
/* Locking resynchronize hack */
|
||||
#define LOCKING_RESYNC_ENABLE
|
||||
|
||||
/* key combination for command */
|
||||
#define IS_COMMAND() ( \
|
||||
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
|
||||
)
|
||||
|
||||
/* prevent stuck modifiers */
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
|
||||
#define RGB_DI_PIN E2
|
||||
#ifdef RGB_DI_PIN
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 4
|
||||
#define RGBLIGHT_HUE_STEP 8
|
||||
#define RGBLIGHT_SAT_STEP 8
|
||||
#define RGBLIGHT_VAL_STEP 8
|
||||
#endif
|
||||
|
||||
#endif
|
40
keyboards/alf_x2/keymaps/default/keymap.c
Normal file
40
keyboards/alf_x2/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,40 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT, KC_NO,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_VOLU, KC_SPC, KC_VOLD, KC_RALT, MO(1), KC_NO, KC_APP, KC_RCTL),
|
||||
|
||||
LAYOUT(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, RESET,
|
||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_DOWN, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||
};
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
return MACRO_NONE;
|
||||
}
|
||||
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
||||
} else {
|
||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
||||
}
|
||||
}
|
40
keyboards/alf_x2/keymaps/hhkb_60/keymap.c
Normal file
40
keyboards/alf_x2/keymaps/hhkb_60/keymap.c
Normal file
@@ -0,0 +1,40 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_VOLU, KC_SPC, KC_VOLD, KC_RALT, KC_RGUI, KC_NO, KC_APP, KC_RCTL),
|
||||
|
||||
LAYOUT(
|
||||
KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
||||
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, RESET,
|
||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_DOWN, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_TRNS, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||
};
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
return MACRO_NONE;
|
||||
}
|
||||
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
||||
} else {
|
||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
||||
}
|
||||
}
|
15
keyboards/alf_x2/readme.md
Normal file
15
keyboards/alf_x2/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# ALF X2
|
||||
|
||||

|
||||
|
||||
A customizable 60% keyboard.
|
||||
|
||||
Keyboard Maintainer: QMK Community
|
||||
Hardware Supported: ALF X2 60%
|
||||
Hardware Availability: [zfrontier](https://en.zfrontier.com/products/group-buy-alf-x2-60)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make alf_x2:default
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information.
|
56
keyboards/alf_x2/rules.mk
Normal file
56
keyboards/alf_x2/rules.mk
Normal file
@@ -0,0 +1,56 @@
|
||||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Boot Section Size in *bytes*
|
||||
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
|
||||
|
||||
# Build Options
|
||||
# comment out to disable the options.
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no
|
||||
RGBLIGHT_ENABLE = yes
|
1
keyboards/alpha/alpha.c
Executable file
1
keyboards/alpha/alpha.c
Executable file
@@ -0,0 +1 @@
|
||||
#include "alpha.h"
|
16
keyboards/alpha/alpha.h
Executable file
16
keyboards/alpha/alpha.h
Executable file
@@ -0,0 +1,16 @@
|
||||
#ifndef KB_H
|
||||
#define KB_H
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#define LAYOUT( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, \
|
||||
K200, K201, K202, K203, K205, K207, K208, K209 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109 }, \
|
||||
{ K200, K201, K202, K203, KC_NO, K205, KC_NO, K207, K208, K209 } \
|
||||
}
|
||||
|
||||
#endif
|
58
keyboards/alpha/config.h
Executable file
58
keyboards/alpha/config.h
Executable file
@@ -0,0 +1,58 @@
|
||||
#ifndef CONFIG_H
|
||||
#define CONFIG_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0xFEED
|
||||
#define PRODUCT_ID 0x6060
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER PyroL
|
||||
#define PRODUCT alpha
|
||||
#define DESCRIPTION 28-key keyboard by PyroL
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 3
|
||||
#define MATRIX_COLS 10
|
||||
|
||||
/* key matrix pins */
|
||||
#define MATRIX_ROW_PINS { D4, B4, B5 }
|
||||
#define MATRIX_COL_PINS { D7, E6, C6, B6, B2, B3, B1, F7, F6, F5 }
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/* number of backlight levels */
|
||||
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_LEVELS 3
|
||||
#endif
|
||||
|
||||
/* Set 0 if debouncing isn't needed */
|
||||
#define DEBOUNCING_DELAY 5
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
#define LOCKING_SUPPORT_ENABLE
|
||||
|
||||
/* Locking resynchronize hack */
|
||||
#define LOCKING_RESYNC_ENABLE
|
||||
|
||||
/* key combination for command */
|
||||
#define IS_COMMAND() ( \
|
||||
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
|
||||
)
|
||||
|
||||
/* prevent stuck modifiers */
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
|
||||
#define RGB_DI_PIN F4
|
||||
#ifdef RGB_DI_PIN
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 5
|
||||
#define RGBLIGHT_HUE_STEP 8
|
||||
#define RGBLIGHT_SAT_STEP 8
|
||||
#define RGBLIGHT_VAL_STEP 8
|
||||
#endif
|
||||
|
||||
#endif
|
76
keyboards/alpha/keymaps/default/keymap.c
Executable file
76
keyboards/alpha/keymaps/default/keymap.c
Executable file
@@ -0,0 +1,76 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT(
|
||||
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
|
||||
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TO(1),
|
||||
KC_Z, KC_X, KC_C, KC_V, MT(MOD_LSFT, KC_SPC), KC_B, KC_N, KC_M),
|
||||
|
||||
LAYOUT(
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
|
||||
KC_BSPC, KC_ESC, KC_TAB, KC_SCLN, KC_QUOT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, TO(2),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, TO(0), MT(MOD_LSFT, KC_ENT), KC_COMM, KC_DOT, KC_SLSH),
|
||||
|
||||
LAYOUT(
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_LSFT, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, TO(3),
|
||||
RGB_VAI, RGB_VAD, RGB_HUI, TO(0), RGB_MOD, KC_MPLY, KC_VOLD, KC_VOLU),
|
||||
|
||||
LAYOUT(
|
||||
RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO, M(0), KC_NO, KC_NO, KC_NO),
|
||||
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
switch (keycode) {
|
||||
case 0:
|
||||
SEND_STRING("I'm so sorry... -PyroL");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_KANA)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
}
|
14
keyboards/alpha/readme.md
Normal file
14
keyboards/alpha/readme.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Alpha
|
||||
|
||||

|
||||
|
||||
A 28-key, semi-ortho keyboard designed by PyroL!
|
||||
Keyboard Maintainer: [PyroL](https://www.github.com/PyrooL)
|
||||
Hardware Supported: Alpha PCB, Pro Micro
|
||||
Hardware Availability: on a group-buy basis for now. Pro Micros can be found on Ali or from the official Sparkfun website.
|
||||
|
||||
Make example for Alpha (after setting up your build environment):
|
||||
|
||||
make alpha:default
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/install-build-tools) then the [make instructions](https://docs.qmk.fm/faq/build-compile-qmk) for more information.
|
56
keyboards/alpha/rules.mk
Executable file
56
keyboards/alpha/rules.mk
Executable file
@@ -0,0 +1,56 @@
|
||||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Boot Section Size in *bytes*
|
||||
BOOTLOADER = caterina
|
||||
|
||||
|
||||
# Build Options
|
||||
# comment out to disable the options.
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no
|
||||
RGBLIGHT_ENABLE = yes
|
@@ -21,7 +21,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/* Alps64 keymap definition macro */
|
||||
|
||||
#define KEYMAP( \
|
||||
#define LAYOUT_all( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K26, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
@@ -38,7 +38,75 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
{ K70, K71, K72, K73, K74, K75, K76, K77 } \
|
||||
}
|
||||
|
||||
#define KC_KEYMAP( \
|
||||
#define LAYOUT_iso( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
K31, K41, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, \
|
||||
K30, K40, K50, K60, K70, K00, K20 \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
|
||||
{ KC_NO, K11, K12, K13, K14, K15, K16, K17 }, \
|
||||
{ K20, K21, KC_NO, K23, K24, K25, KC_NO, K27 }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
|
||||
{ K40, K41, K42, K43, K44, K45, K46, K47 }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
|
||||
{ K70, K71, K72, K73, K74, K75, K76, K77 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_standard_60( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
K31, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, \
|
||||
K30, K40, K50, K60, K70, K00, K10, K20 \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
|
||||
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
|
||||
{ K20, K21, KC_NO, K23, K24, K25, KC_NO, K27 }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
|
||||
{ K40, KC_NO, K42, K43, K44, K45, K46, K47 }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
|
||||
{ K70, K71, K72, K73, K74, K75, K76, K77 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_infinity( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K26, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
K31, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, K22, \
|
||||
K30, K40, K50, K60, K70, K00, K10, K20 \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
|
||||
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
|
||||
{ K20, K21, K22, K23, K24, K25, K26, K27 }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
|
||||
{ K40, KC_NO, K42, K43, K44, K45, K46, K47 }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
|
||||
{ K70, K71, K72, K73, K74, K75, K76, K77 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_aek_103( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
K31, K42, K51, K61, K62, K71, K72, K01, K02, K11, K12, K21, \
|
||||
K30, K40, K50, K60, K70, K00, K20 \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
|
||||
{ KC_NO, K11, K12, K13, K14, K15, K16, K17 }, \
|
||||
{ K20, K21, KC_NO, K23, K24, K25, KC_NO, K27 }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
|
||||
{ K40, KC_NO, K42, K43, K44, K45, K46, K47 }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
|
||||
{ K70, K71, K72, K73, K74, K75, K76, K77 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_kc( \
|
||||
K36, K37, K46, K47, K56, K57, K66, K67, K76, K77, K06, K07, K17, K26, K27, \
|
||||
K34, K35, K44, K45, K54, K55, K64, K65, K75, K05, K15, K16, K25, K24, \
|
||||
K32, K33, K43, K52, K53, K63, K73, K74, K03, K04, K13, K14, K23, \
|
||||
|
28
keyboards/alps64/info.json
Normal file
28
keyboards/alps64/info.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"keyboard_name": "alps64",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 15,
|
||||
"height": 5,
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
||||
},
|
||||
|
||||
"LAYOUT_standard_60": {
|
||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
||||
},
|
||||
|
||||
"LAYOUT_infinity": {
|
||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
||||
},
|
||||
|
||||
"LAYOUT_aek_103": {
|
||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4, "w":1.25}, {"label":"Alt", "x":2.75, "y":4, "w":1.5}, {"x":4.25, "y":4, "w":6.5}, {"label":"Alt", "x":10.75, "y":4, "w":1.5}, {"label":"Menu", "x":12.25, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
||||
},
|
||||
|
||||
"LAYOUT_iso": {
|
||||
"layout": [{"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"@", "x":11.75, "y":2}, {"label":"~", "x":12.75, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"AltGr", "x":11, "y":4, "w":1.5}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
||||
}
|
||||
}
|
||||
}
|
@@ -2,7 +2,7 @@
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* 0: qwerty */
|
||||
KC_KEYMAP( \
|
||||
LAYOUT_kc( \
|
||||
GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, NUHS, BSPC, \
|
||||
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \
|
||||
CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, \
|
||||
|
43
keyboards/amj40/keymaps/jetpacktuxedo/keymap.c
Executable file
43
keyboards/amj40/keymaps/jetpacktuxedo/keymap.c
Executable file
@@ -0,0 +1,43 @@
|
||||
#include "amj40.h"
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
// Default Layer
|
||||
[0] = KEYMAP( \
|
||||
KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,\
|
||||
LT(2, KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(2, KC_ENT),\
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, MT(MOD_RSFT, KC_SLSH),\
|
||||
KC_LCTL, KC_LGUI, KC_LALT, LT(1, KC_SPC), LT(1, KC_SPC), KC_RALT, MO(3), KC_RCTL \
|
||||
),
|
||||
|
||||
// Number Layer
|
||||
[1] = KEYMAP( \
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, \
|
||||
KC_TRNS, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, MT(MOD_RSFT, KC_BSLS), \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS\
|
||||
),
|
||||
|
||||
// Shifted Layer
|
||||
[2] = KEYMAP( \
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,\
|
||||
KC_TRNS, KC_UNDS, KC_PLUS, KC_COLN, KC_DQUO, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_PIPE, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS\
|
||||
),
|
||||
|
||||
// Fkey Layer
|
||||
[3] = KEYMAP( \
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, RESET,\
|
||||
KC_TRNS, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, TG(4), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS\
|
||||
),
|
||||
|
||||
// Gaming Layer
|
||||
[4] = KEYMAP( \
|
||||
KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_U, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS,\
|
||||
KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,\
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS\
|
||||
),
|
||||
};
|
55
keyboards/amj40/keymaps/jetpacktuxedo/readme.md
Executable file
55
keyboards/amj40/keymaps/jetpacktuxedo/readme.md
Executable file
@@ -0,0 +1,55 @@
|
||||
Jetpacktuxedo's AMJ40 layout
|
||||
=====================
|
||||
|
||||
This is based heavily on my minivan layout, with most difference stemming from the different widths between the minivan and the AMJ40. 
|
||||
|
||||
## Base Layer (0)
|
||||
|
||||
The base layer is pretty simple, straight qwerty layout where available. Both spacebars go to layer 1 when held. `tab` is `tab` when pressed and `fn2` when held, `enter` is the same. `GESC` is `esc` when used alone, but `~` when shifted. `/` is `/` when tapped but `rshift` when held.
|
||||
```
|
||||
|GESC| Q | W | E | R | T | Y | U | I | O | P |BSPC|
|
||||
| TAB | A | S | D | F | G | H | J | K | L | ENTER |
|
||||
|LSHIFT | Z | X | C | V | B | N | M | , | . | / |
|
||||
|LCTRL|LWIN|LALT | SPACE | SPACE |RALT |FN 3|RCTRL |
|
||||
```
|
||||
|
||||
## Number Layer (1)
|
||||
|
||||
Numbers are set up just like on my minivan layout, but symbols are a bit different because the AMJ40 is one key narrower than the minivan and also lacks dedicated arrows. Decided to go with `hjkl` arrows, which takes some getting used to. `;` is on a layer now because of the narrowness I mentioned before, and it (along with `-`, `=`, and `'`) moves to the right hand to leave room for the `hjkl` arrows. `delete` on `backspace`, `[` and `]` on `<` and `>`, and `\` on `/` are all stolen straight from my minivan layout.
|
||||
```
|
||||
| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |DEL |
|
||||
| | - | = | ; | ' | | ← | ↓ | ↑ | → | |
|
||||
| | | | | | | | | [ | ] | \ |
|
||||
| | | | | | | | |
|
||||
```
|
||||
|
||||
## Shifted Layer (2)
|
||||
|
||||
I don't want to be using two key combos constantly, so I also added this symbol layer that is basically shift+numeric layer. Also has nav keys on top of where arrows sit on the previous layer
|
||||
```
|
||||
| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) |DEL |
|
||||
| | _ | + | : | " | |HOME|PGDN|PGUP|END | |
|
||||
| | | | | | | | | { | } | | |
|
||||
| | | | | | | | |
|
||||
```
|
||||
|
||||
## Fkey Layer (3)
|
||||
|
||||
Honestly, I use this more for jumping to my gaming layer and for reset than I use it for Fkeys. Lol. Hitting the left windows key while in this layer locks the gaming layer listed below
|
||||
```
|
||||
| | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 |F10 |RSET|
|
||||
| |F11 |F12 | | | | | | | | |
|
||||
| | | | | | | | | | | |
|
||||
| |FN 4| | | | | | |
|
||||
```
|
||||
|
||||
## "Gaming" Layer (4)
|
||||
|
||||
Based on the "gaming" layer on my minivan that I mostly just use for mouse keys. To toggle this back off you hit the right windows key (to go to layer 3) and then the left windows key again.
|
||||
```
|
||||
|ESC | | | | | |MWUP|MLCK|M UP|MRCK| | |
|
||||
| TAB | | | | | |MWDN|M L |M DN|M R | |
|
||||
| | | | | | | | | | | |
|
||||
| | | | SPACE | | | | |
|
||||
```
|
||||
|
27
keyboards/amj40/keymaps/jetpacktuxedo/rules.mk
Normal file
27
keyboards/amj40/keymaps/jetpacktuxedo/rules.mk
Normal file
@@ -0,0 +1,27 @@
|
||||
# Build Options
|
||||
# change to "no" to disable the options, or define them in the Makefile in
|
||||
# the appropriate keymap folder that will get included automatically
|
||||
#
|
||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||
MIDI_ENABLE = no # MIDI controls
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
UNICODE_ENABLE = no # Unicode
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
|
||||
|
||||
# Do not enable SLEEP_LED_ENABLE. It uses the same timer as BACKLIGHT_ENABLE
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
|
||||
#define ws2812_PORTREG PORTD
|
||||
#define ws2812_DDRREG DDRD
|
||||
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
@@ -11,36 +11,60 @@
|
||||
|
||||
#define _______ KC_TRNS
|
||||
|
||||
enum custom_keycodes {
|
||||
CTRLZ = SAFE_RANGE,
|
||||
CTRLX,
|
||||
CTRLC,
|
||||
CTRLV
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_MA] = KEYMAP_ANSI(
|
||||
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, \
|
||||
KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, \
|
||||
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
|
||||
KC_LCTL, KC_LGUI, KC_LALT, MO(_LO), KC_SPC, KC_SPC, MO(_RA), KC_RALT, KC_APP, KC_RCTRL), \
|
||||
|
||||
[_LO] = KEYMAP_ANSI(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, \
|
||||
_______, CTRLZ, CTRLX, CTRLC, CTRLV, _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), \
|
||||
|
||||
[_RA] = KEYMAP_ANSI(
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, _______, \
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MPLY, KC_PSCR, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \
|
||||
|
||||
[_LO] = KEYMAP_ANSI(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, \
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), \
|
||||
|
||||
};
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
|
||||
// Turn capslock on
|
||||
PORTE &= ~(1 << 6);
|
||||
|
||||
|
||||
PORTE &= ~(1 << 6);
|
||||
} else {
|
||||
// Turn capslock off
|
||||
PORTE |= (1 << 6);
|
||||
}
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
switch(keycode) {
|
||||
case CTRLZ:
|
||||
SEND_STRING(SS_LCTRL("z"));
|
||||
return false;
|
||||
case CTRLX:
|
||||
SEND_STRING(SS_LCTRL("x"));
|
||||
return false;
|
||||
case CTRLC:
|
||||
SEND_STRING(SS_LCTRL("c"));
|
||||
return false;
|
||||
case CTRLV:
|
||||
SEND_STRING(SS_LCTRL("v"));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
26
keyboards/bigseries/bigseries.c
Executable file
26
keyboards/bigseries/bigseries.c
Executable file
@@ -0,0 +1,26 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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 "bigseries.h"
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// Looping keyboard code goes here
|
||||
// This runs every cycle (a lot)
|
||||
matrix_scan_user();
|
||||
#ifdef BACKLIGHT_ENABLE
|
||||
backlight_task();
|
||||
#endif
|
||||
};
|
28
keyboards/bigseries/bigseries.h
Executable file
28
keyboards/bigseries/bigseries.h
Executable file
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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/>.
|
||||
*/
|
||||
#ifndef BIGSWITCH_H
|
||||
#define BIGSWITCH_H
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#define KEYMAP( \
|
||||
K00 \
|
||||
) { \
|
||||
{ K00 } \
|
||||
}
|
||||
|
||||
#endif
|
59
keyboards/bigseries/config.h
Executable file
59
keyboards/bigseries/config.h
Executable file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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/>.
|
||||
*/
|
||||
#ifndef CONFIG_H
|
||||
#define CONFIG_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0xFEED
|
||||
#define PRODUCT_ID 0x6071
|
||||
#define DEVICE_VER 0x0002
|
||||
#define MANUFACTURER WoodKeys.click
|
||||
#define PRODUCT BigSeries Single Keyboard
|
||||
#define DESCRIPTION Single key board for Novelkeys Big Series Switch
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 1
|
||||
#define MATRIX_COLS 1
|
||||
|
||||
/* key matrix pins */
|
||||
#define MATRIX_ROW_PINS { B0 }
|
||||
#define MATRIX_COL_PINS { B4 }
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION ROW2COL
|
||||
|
||||
/* Set 0 if debouncing isn't needed */
|
||||
#define DEBOUNCING_DELAY 50
|
||||
|
||||
/* key combination for command */
|
||||
#define IS_COMMAND() ( \
|
||||
false \
|
||||
)
|
||||
|
||||
/* prevent stuck modifiers */
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
#define RGB_DI_PIN D3
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 5
|
||||
#endif
|
||||
|
||||
#endif
|
144
keyboards/bigseries/keymaps/8ball/keymap.c
Executable file
144
keyboards/bigseries/keymaps/8ball/keymap.c
Executable file
@@ -0,0 +1,144 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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 "../../bigseries.h"
|
||||
|
||||
static const char * const ANSWERS[] = {
|
||||
// "Yes" answers
|
||||
"It is certain\n",
|
||||
"It is decidedly so\n",
|
||||
"Without a doubt\n",
|
||||
"Yes definitely\n",
|
||||
"You may rely on it\n",
|
||||
"As I see it, yes\n",
|
||||
"Most likely\n",
|
||||
"Outlook good\n",
|
||||
"Yes\n",
|
||||
"Signs point to yes\n",
|
||||
// Uncertain answers, index 10
|
||||
"Reply hazy try again\n",
|
||||
"Ask again later\n",
|
||||
"Better not tell you now\n",
|
||||
"Cannot predict now\n",
|
||||
"Concentrate and ask again\n",
|
||||
// "No" answers, index 15
|
||||
"Don't count on it\n",
|
||||
"My reply is no\n",
|
||||
"My sources say no\n",
|
||||
"Outlook not so good\n",
|
||||
"Very doubtful\n"
|
||||
};
|
||||
|
||||
#define UNCERTAIN_BREAK 10
|
||||
#define NO_BREAK 15
|
||||
#define NUM_ANSWERS 20
|
||||
// Timeout of answer color in ms
|
||||
#define ANSWER_TIMEOUT 3000
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
KEYMAP(
|
||||
KC_A),
|
||||
};
|
||||
|
||||
|
||||
void reset_rgb(void);
|
||||
|
||||
bool initialized = 0;
|
||||
uint32_t lastTime = 0;
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
return MACRO_NONE ;
|
||||
}
|
||||
|
||||
void matrix_init_user(void) {
|
||||
if (!initialized){
|
||||
dprintf("Initializing in matrix_scan_user");
|
||||
rgblight_enable();
|
||||
reset_rgb();
|
||||
initialized = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
if (lastTime > 0 && timer_elapsed32(lastTime) > ANSWER_TIMEOUT) {
|
||||
lastTime = 0;
|
||||
reset_rgb();
|
||||
}
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case KC_A:
|
||||
if (record->event.pressed) {
|
||||
uint8_t num = rand() / (RAND_MAX / NUM_ANSWERS + 1);
|
||||
rgblight_mode(1);
|
||||
if (num < UNCERTAIN_BREAK) {
|
||||
rgblight_setrgb_green();
|
||||
} else if (num < NO_BREAK) {
|
||||
rgblight_setrgb_yellow();
|
||||
} else {
|
||||
rgblight_setrgb_red();
|
||||
}
|
||||
send_string(ANSWERS[num]);
|
||||
lastTime = timer_read32();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_KANA)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void reset_rgb(void) {
|
||||
// This gets called on init and after the timeout for the answer color
|
||||
// If you want to change the default color/mode, do it here
|
||||
rgblight_sethsv_blue();
|
||||
rgblight_mode(7);
|
||||
}
|
93
keyboards/bigseries/keymaps/default/keymap.c
Executable file
93
keyboards/bigseries/keymaps/default/keymap.c
Executable file
@@ -0,0 +1,93 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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 "../../bigseries.h"
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
KEYMAP(
|
||||
KC_A),
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
bool initialized = 0;
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
return MACRO_NONE ;
|
||||
}
|
||||
|
||||
void matrix_init_user(void) {
|
||||
if (!initialized){
|
||||
dprintf("Initializing in matrix_scan_user");
|
||||
rgblight_enable();
|
||||
rgblight_mode(7);
|
||||
rgblight_sethsv(0,255,255);
|
||||
rgblight_setrgb(0x00, 0x00, 0xFF);
|
||||
initialized = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case KC_A:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("Howdy!!\n");
|
||||
rgblight_step();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_KANA)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
}
|
23
keyboards/bigseries/keymaps/leddance/config.h
Normal file
23
keyboards/bigseries/keymaps/leddance/config.h
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#define TAPPING_TERM 400
|
||||
|
||||
#endif
|
127
keyboards/bigseries/keymaps/leddance/keymap.c
Executable file
127
keyboards/bigseries/keymaps/leddance/keymap.c
Executable file
@@ -0,0 +1,127 @@
|
||||
/*
|
||||
Copyright 2018 Cole Markham
|
||||
|
||||
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 "../../bigseries.h"
|
||||
#include "print.h"
|
||||
|
||||
extern rgblight_config_t rgblight_config;
|
||||
|
||||
enum custom_keycodes {
|
||||
BL = SAFE_RANGE
|
||||
};
|
||||
|
||||
enum custom_layers {
|
||||
BASE = 0,
|
||||
LED
|
||||
};
|
||||
|
||||
//Tap Dance Declarations
|
||||
enum {
|
||||
TD_TOGGLE = 0
|
||||
};
|
||||
|
||||
void dance_toggle (qk_tap_dance_state_t *state, void *user_data) {
|
||||
if (state->count >= 2) {
|
||||
println("Double tapped, switching layers");
|
||||
if (layer_state_is(LED)) {
|
||||
layer_off(LED);
|
||||
} else {
|
||||
layer_on(LED);
|
||||
}
|
||||
} else {
|
||||
print("Single tapped: ");
|
||||
if (layer_state_is(LED)) {
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
if (!rgblight_config.enable) {
|
||||
rgblight_enable();
|
||||
}
|
||||
rgblight_step();
|
||||
#endif
|
||||
} else {
|
||||
println("Base layer, sending string");
|
||||
SEND_STRING("This thing is BIG!!\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Tap Dance Definitions
|
||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
[TD_TOGGLE] = ACTION_TAP_DANCE_FN(dance_toggle)
|
||||
// Other declarations would go here, separated by commas, if you have them
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[BASE] = KEYMAP(
|
||||
TD(TD_TOGGLE)),
|
||||
[LED] = KEYMAP(
|
||||
TD(TD_TOGGLE)
|
||||
)
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
return MACRO_NONE ;
|
||||
}
|
||||
|
||||
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
// Nothing here, see dance_toggle
|
||||
return true;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
if (usb_led & (1 << USB_LED_KANA)) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
|
||||
}
|
1
keyboards/bigseries/keymaps/leddance/rules.mk
Normal file
1
keyboards/bigseries/keymaps/leddance/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
TAP_DANCE_ENABLE = yes
|
15
keyboards/bigseries/readme.md
Normal file
15
keyboards/bigseries/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# Big Series Keyboard
|
||||
|
||||

|
||||
|
||||
A PCB for the Big Series Switch by [NovelKeys](https://novelkeys.xyz). Available in 1, 2, 3, and 4 switch versions from [Woodkeys.click](https://woodkeys.click/product-category/big-series/).
|
||||
|
||||
Keyboard Maintainer: [Cole Markham](https://github.com/colemarkham) / [Woodkeys.click](https://woodkeys.click)
|
||||
Hardware Supported: Big Series PCBs
|
||||
Hardware Availability: [Woodkeys.click](https://woodkeys.click), [NovelKeys](https://novelkeys.xyz)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make bigseries:default
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information.
|
59
keyboards/bigseries/rules.mk
Executable file
59
keyboards/bigseries/rules.mk
Executable file
@@ -0,0 +1,59 @@
|
||||
#SRC += rgb_backlight.c
|
||||
|
||||
# MCU name
|
||||
MCU = atmega32u2
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Boot Section Size in *bytes*
|
||||
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
|
||||
|
||||
# Build Options
|
||||
# comment out to disable the options.
|
||||
#
|
||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = yes # Console for debug(+400)
|
||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
NKRO_ENABLE = no # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = no # Custom backlighting code is used, so this should not be enabled
|
||||
AUDIO_ENABLE = no # This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
|
||||
RGBLIGHT_ENABLE = yes # This can be enabled if a ws2812 strip is connected to the expansion port.
|
||||
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -146,7 +146,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -108,7 +108,7 @@ uint8_t matrix_scan(void)
|
||||
state = RESET;
|
||||
}
|
||||
break;
|
||||
// after reset receive keyboad ID(2 bytes)
|
||||
// after reset receive keyboard ID(2 bytes)
|
||||
case KBD_ID0:
|
||||
if (code) {
|
||||
state = KBD_ID1;
|
||||
|
10
keyboards/dilly/keymaps/delmo/config.h
Normal file
10
keyboards/dilly/keymaps/delmo/config.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
#define TAPPING_TERM 200
|
||||
#define RETRO_TAPPING
|
||||
#define PERMISSIVE_HOLD
|
||||
|
||||
#endif
|
107
keyboards/dilly/keymaps/delmo/keymap.c
Normal file
107
keyboards/dilly/keymaps/delmo/keymap.c
Normal file
@@ -0,0 +1,107 @@
|
||||
#include "dilly.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
#define _BASE 0
|
||||
#define _FN1 1
|
||||
#define _FN2 2
|
||||
#define _FN3 3
|
||||
#define _FN4 4
|
||||
#define _FN5 5
|
||||
|
||||
#define KC_ KC_TRNS
|
||||
#define _______ KC_TRNS
|
||||
|
||||
// Tap-Hold keys
|
||||
//#define KC_ASFT MT(MOD_LSFT, KC_A)
|
||||
#define KC_F_L3 LT(_FN3, KC_F)
|
||||
#define KC_ZCTL MT(MOD_LCTL, KC_Z)
|
||||
#define KC_XALT MT(MOD_LALT, KC_X)
|
||||
//#define KC_CGUI MT(MOD_LGUI, KC_C)
|
||||
#define KC_V_L4 LT(_FN4, KC_V)
|
||||
#define KC_SPL2 LT(_FN2, KC_SPC)
|
||||
#define KC_B_L1 LT(_FN1, KC_B)
|
||||
#define KC_N_L5 LT(_FN5, KC_N)
|
||||
//#define KC_MALT MT(MOD_RALT, KC_M)
|
||||
//#define KC_BSCT MT(MOD_RCTL, KC_BSPC)
|
||||
#define KC_ENTS MT(MOD_RSFT, KC_ENT)
|
||||
#define KC_BSCS MT(MOD_RSFT, KC_BSPC)
|
||||
|
||||
#define KC_GUIC LGUI(KC_C)
|
||||
|
||||
#define KC_RST RESET
|
||||
#define KC_BL_S BL_STEP
|
||||
#define KC_DBUG DEBUG
|
||||
#define KC_RTOG RGB_TOG
|
||||
#define KC_RMOD RGB_MOD
|
||||
#define KC_RHUI RGB_HUI
|
||||
#define KC_RHUD RGB_HUD
|
||||
#define KC_RSAI RGB_SAI
|
||||
#define KC_RSAD RGB_SAD
|
||||
#define KC_RVAI RGB_VAI
|
||||
#define KC_RVAD RGB_VAD
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_BASE] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
Q , W , E , R , T , Y , U , I , O , P ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
A , S , D ,F_L3, G , H , J , K , L ,BSCS,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
ZCTL,XALT,C ,V_L4,B_L1,SPL2,N_L5,M ,DOT ,ENTS
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
),
|
||||
|
||||
[_FN1] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
, , , , ,BSPC, , , ,CAPS
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
),
|
||||
|
||||
[_FN2] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
F11 ,F12 , , , , , , , ,GRV ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
, , , ,DEL , , , , ,
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
),
|
||||
|
||||
[_FN3] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
ESC , , , , ,MINS,EQL ,LBRC,RBRC,BSLS,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
TAB , , , , ,COMM,DOT ,SLSH,SCLN,QUOT,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
, , , ,BSPC, ,LEFT,DOWN, UP ,RGHT
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
),
|
||||
|
||||
[_FN4] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
, , , , ,UNDS,PLUS,LCBR,RCBR,PIPE,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
TAB , , , , , LT , GT ,QUES,COLN,DQUO,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
, ,GUIC, ,BSPC, ,HOME,PGDN,PGUP,END
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
),
|
||||
|
||||
[_FN5] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----+----+----+----+----.
|
||||
RTOG,RMOD, ,RST ,RHUI,RSAI,RVAI, , , ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
, ,DBUG, ,RHUD,RSAD,RVAD, , , ,
|
||||
//|----+----+----+----+----+----+----+----+----+----|
|
||||
BL_S, ,GUIC, , , , , , ,
|
||||
//`----+----+----+----+----+----+----+----+----+----'
|
||||
)
|
||||
|
||||
};
|
1
keyboards/dilly/keymaps/delmo/rules.mk
Normal file
1
keyboards/dilly/keymaps/delmo/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
RGBLIGHT_ENABLE = yes
|
@@ -24,7 +24,7 @@ inline void do60_bl_led_off(void) { DDRF &= ~(1<<4); PORTF &= ~(1<<4); }
|
||||
|
||||
|
||||
/* Do60 Keymap Definition Macro */
|
||||
#define LAYOUT( \
|
||||
#define LAYOUT_all( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
|
||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
|
||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
|
||||
@@ -38,4 +38,18 @@ inline void do60_bl_led_off(void) { DDRF &= ~(1<<4); PORTF &= ~(1<<4); }
|
||||
{ K40, K41, K42, KC_NO,KC_NO,K45, K46, K47, KC_NO,KC_NO,K4A, K4B, K4C, K4D, K4E } \
|
||||
}
|
||||
|
||||
#define LAYOUT_chiwi60_default( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
|
||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
|
||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
|
||||
K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K42, K45, K47, K4A, K4B, K4C, K4D, K4E \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
|
||||
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
|
||||
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, KC_NO, K2E }, \
|
||||
{ K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E }, \
|
||||
{ K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, K47, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E } \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
16
keyboards/do60/info.json
Normal file
16
keyboards/do60/info.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"keyboard_name": "do60",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 15,
|
||||
"height": 5,
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"~", "x":13, "y":0}, {"label":"\u2190", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"label":"Shift", "x":0, "y":3}, {"x":1, "y":3}, {"label":"Z", "x":2, "y":3}, {"label":"X", "x":3, "y":3}, {"label":"C", "x":4, "y":3}, {"label":"V", "x":5, "y":3}, {"label":"B", "x":6, "y":3}, {"label":"N", "x":7, "y":3}, {"label":"M", "x":8, "y":3}, {"label":"<", "x":9, "y":3}, {"label":">", "x":10, "y":3}, {"label":"?", "x":11, "y":3}, {"x":12, "y":3}, {"label":"\u2191", "x":13, "y":3}, {"label":"Del", "x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"label":"3u(Space)", "x":3.75, "y":4, "w":2.75}, {"x":6.5, "y":4}, {"label":"3u(Space)", "x":7.5, "y":4, "w":2.25}, {"label":"Alt", "x":9.75, "y":4, "w":1.25}, {"label":"win", "x":11, "y":4}, {"label":"\u2190", "x":12, "y":4}, {"label":"\u2193", "x":13, "y":4}, {"label":"\u2192", "x":14, "y":4}]
|
||||
},
|
||||
|
||||
"LAYOUT_chiwi60_default": {
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"~", "x":13, "y":0}, {"label":"\u2190", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3, "w":1.75}, {"label":"\u2191", "x":13, "y":3}, {"label":"Del", "x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"label":"3u(Space)", "x":3.75, "y":4, "w":3}, {"label":"3u(Space)", "x":6.75, "y":4, "w":3}, {"label":"Alt", "x":9.75, "y":4, "w":1.25}, {"label":"win", "x":11, "y":4}, {"label":"\u2190", "x":12, "y":4}, {"label":"\u2193", "x":13, "y":4}, {"label":"\u2192", "x":14, "y":4}]
|
||||
}
|
||||
}
|
||||
}
|
@@ -4,7 +4,7 @@
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
// 0: Base Layer
|
||||
[0] = LAYOUT(
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
|
||||
@@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_BSPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT),
|
||||
|
||||
// 1: Function Layer
|
||||
[1] = LAYOUT(
|
||||
[1] = LAYOUT_all(
|
||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, \
|
||||
KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
|
||||
KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SMOD, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
|
||||
|
@@ -4,7 +4,7 @@
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
// 0: Base Layer
|
||||
[0] = LAYOUT(
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC, \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
|
||||
@@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT),
|
||||
|
||||
// 1: Function Layer
|
||||
[1] = LAYOUT(
|
||||
[1] = LAYOUT_all(
|
||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, \
|
||||
KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
|
||||
KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SMOD, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
|
||||
|
128
keyboards/dz60/keymaps/256k_HHKB/README.md
Normal file
128
keyboards/dz60/keymaps/256k_HHKB/README.md
Normal file
@@ -0,0 +1,128 @@
|
||||
256k HHKB Layout:
|
||||
===
|
||||
|
||||
this is my personal layer that i use on my Tina-C HHKB layout board with a DZ60 PCB.
|
||||
---
|
||||
UPDATE (4-20-2018):
|
||||
===
|
||||
after a week of using this layout i reazlied that having the ALT button on the right side and the ALTFN layer trigger on the left isn't ideal...i still wanted to change the default HHKB style CROSS arrow cluster into a reversed T cluster since im more used to that so i swapped the ALTFN layer to the right side and the normal ALT layer is back on the left side. so now i can use the arrow cluster (which i shifted one key over to the right) with 1 hand.
|
||||
|
||||
it feels more nataural to me this way.
|
||||
|
||||
also i decided to change the mouse scroll keys on the mouse layer to mouse movement keys... the scrolling wasn't working out as well as i'd hoped. again, this is merely an experimental layer just to play around with mouse control.
|
||||
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
Walkthrough:
|
||||
---
|
||||
|
||||
there is 1 base layer and 4 modifyer layers:
|
||||
|
||||
BASE:
|
||||
---
|
||||
|
||||
```
|
||||
/* BASE LAYER
|
||||
*
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \| | ~ ` |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Win | Alt | Space | ALTFN | LIGHTS |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
```
|
||||
|
||||
LAYER 1 (ALTFN):
|
||||
---
|
||||
|
||||
this layer is my main function layer, i changed the default HHKB function layer to suit my need and also changed the placement of the modifyer key to the left alt since i want to control the layer activation with one hand and have the other hand control the keys on that layer freely. perhaps this is due to me being left handed but it feels more natural to me this way.
|
||||
|
||||
```
|
||||
/* ALTFN LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------
|
||||
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | INSERT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CAPS | _ | _ | _ | _ | _ | _ | _ | _ | _ | UP | V_DEC | V_INC | DEL |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | _ | _ | _ | _ | _ | _ | HOME | END | LEFT | DOWN | RIGHT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | PREV | NEXT | PLAY | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `---------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
```
|
||||
|
||||
|
||||
MOUSE LAYER (MOUSEFN):
|
||||
---
|
||||
|
||||
*To access this layer you need to enter the ALTFN layer first then hit ESC button which will switch to the MOUSEFN layer*
|
||||
|
||||
this is the second *hidden* layer that controls the mouse scroll wheel directions. i find it's useful to have these controls on the keyboard for certain applications that require scrolling in all 4 directions (Simple example: expanding an image preview to full size that overflows outside of the default monitor size and using the scroll wheel to mouve the image around.)
|
||||
|
||||
also another benefit is that a lot of mice do not have horizontal control buttons for the scrolling
|
||||
|
||||
(This layer is still experimental so i might change it later or modify it but so far i enjoy it)
|
||||
|
||||
```
|
||||
/* MOUSEFN LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------
|
||||
* | | ACC_1 | ACC_2 | ACC_3 | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CAPS | _ | _ | _ | _ | _ | _ | _ | _ | _ | WHEEL_UP | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | _ | _ | _ | _ | _ | _ | _ | _ | WH_LEFT | WH_DOWN | WH_RIGHT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `---------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
```
|
||||
|
||||
|
||||
STANDARD HHKB FN LAYER (FN):
|
||||
---
|
||||
|
||||
this is the default HHKB function layer (mostly)... I have left it there on the same button and everything for 2 reasons: 1. for backup incase i forget where something was or if it contains a button that i did not include in my ALTFN layer. 2. as a reference for anyone else.
|
||||
|
||||
*this layer will probably get removed once i get comfortable with my ALTFN layer.*
|
||||
|
||||
|
||||
|
||||
LIGHTS LAYER:
|
||||
---
|
||||
|
||||
this is the basic lights layer used to control the RBG backlight on the DZ60... i have removed the 3 backlight controls since i do not use any key LED Backlight.
|
||||
|
||||
|
||||
```
|
||||
/* LIGHTS LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------+
|
||||
* | RGB_TOGGLE | STATIC | BREATHE | RAINBOW | SWIRL | SNAKE | KNIGHTRIDER | XMAS | STATIC_GRAD | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | RBG_MOD | HUE_INC | SATURATION_INC | BRIGHT_INC | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | HUE_DEC | SATURATION_DEC | BRIGHT_DEC | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `----------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
```
|
||||
|
||||
|
250
keyboards/dz60/keymaps/256k_HHKB/keymap.c
Normal file
250
keyboards/dz60/keymaps/256k_HHKB/keymap.c
Normal file
@@ -0,0 +1,250 @@
|
||||
#include "dz60.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
// My layout is practically the default HHKB layout.
|
||||
#define _DEFAULT 0
|
||||
#define _ALTFN 1
|
||||
#define _MOUSEFN 2
|
||||
#define _FN 3
|
||||
#define _LIGHTS 4
|
||||
|
||||
|
||||
#define ______ KC_TRNS
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
|
||||
/* BASE LAYER
|
||||
*
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \| | ~ ` |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Win | Alt | Space | Alt | LIGHTS |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
[_DEFAULT] = LAYOUT_hhkb(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN),
|
||||
KC_LGUI, KC_LALT, KC_SPC, MO(_ALTFN), MO(_LIGHTS)),
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* ALTFN LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------
|
||||
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | INSERT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CAPS | _ | _ | _ | _ | _ | _ | _ | _ | _ | UP | V_DEC | V_INC | DEL |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | _ | _ | _ | _ | _ | _ | HOME | END | LEFT | DOWN | RIGHT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | PREV | NEXT | PLAY | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `---------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
[_ALTFN] = LAYOUT_hhkb(
|
||||
|
||||
MO(_MOUSEFN), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ______, KC_PSCR,
|
||||
KC_CAPS, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_UP, KC_VOLD, KC_VOLU, KC_DEL,
|
||||
______, ______, ______, ______, ______, ______, ______, KC_HOME, KC_END, KC_LEFT, KC_DOWN, KC_RIGHT, ______,
|
||||
______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MPRV, KC_MNXT, KC_MPLY, ______, ______,
|
||||
______, ______, ______, ______, ______),
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* MOUSEFN LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------
|
||||
* | | ACC_1 | ACC_2 | ACC_3 | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CAPS | _ | _ | _ | _ | _ | _ | _ | _ | _ | WHEEL_UP | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | _ | _ | _ | _ | _ | _ | _ | _ | WH_LEFT | WH_DOWN | WH_RIGHT | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |---------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `---------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
[_MOUSEFN] = LAYOUT_hhkb(
|
||||
|
||||
______, KC_ACL0, KC_ACL1, KC_ACL2, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MS_UP, ______, ______, ______,
|
||||
______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, ______,
|
||||
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||
______, ______, ______, ______, ______),
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* FN LAYER
|
||||
*
|
||||
* ,------------------------------------------------------------------------------------------------------
|
||||
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |INSERT | _ |
|
||||
* |------------------------------------------------------------------------------------------------------+
|
||||
* | CAPS | _ | _ | _ | _ | _ | _ | _ | PRSC | SLOCK | PAUSE | UP | _ | DEL |
|
||||
* |------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | _ | VOLDOWN | VOLUP | VOLMUTE | _ | _ | _ | HOME | PGUP | LEFT | IGHT | _ |
|
||||
* |------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | END | PGDN | DOWN | _ | _ |
|
||||
* |------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
|
||||
[_FN] = LAYOUT_hhkb(
|
||||
______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, ______,
|
||||
KC_CAPS, ______, ______, ______, ______, ______, ______, ______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, ______, KC_DEL,
|
||||
______, KC_VOLD, KC_VOLU, KC_MUTE, ______, ______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, ______,
|
||||
______, ______, KC_MPRV, KC_MPLY, KC_MNXT, ______, ______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, ______, ______,
|
||||
______, ______, ______, ______, ______),
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* LIGHTS LAYER
|
||||
*
|
||||
* ,---------------------------------------------------------------------------------------------------------------------+
|
||||
* | RGB_TOGGLE | STATIC | BREATHE | RAINBOW | SWIRL | SNAKE | KNIGHTRIDER | XMAS | STATIC_GRAD | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | RBG_MOD | HUE_INC | SATURATION_INC | BRIGHT_INC | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | CTRL | HUE_DEC | SATURATION_DEC | BRIGHT_DEC | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | Shift | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ | _ |
|
||||
* |----------------------------------------------------------------------------------------------------------------------+
|
||||
* | _ | _ | _ | _ | _ |
|
||||
* `----------------------------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
|
||||
[_LIGHTS] = LAYOUT_hhkb(
|
||||
RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, ______, ______, ______, ______, ______, ______,
|
||||
RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||
______, RGB_HUD, RGB_SAD, RGB_VAD, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||
______, ______, ______, ______, ______),
|
||||
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
|
||||
RGB controls
|
||||
|
||||
Key -> Description
|
||||
=========================
|
||||
|
||||
RGB_TOG -> Toggle RGB lighting on or off
|
||||
|
||||
RGB_MOD -> Cycle through modes, reverse direction when Shift is held
|
||||
|
||||
RGB_RMOD -> Cycle through modes in reverse, forward direction when Shift is held
|
||||
|
||||
RGB_HUI -> Increase hue
|
||||
|
||||
RGB_HUD -> Decrease hue
|
||||
|
||||
RGB_SAI -> Increase saturation
|
||||
|
||||
RGB_SAD -> Decrease saturation
|
||||
|
||||
RGB_VAI -> Increase value (brightness)
|
||||
|
||||
RGB_VAD -> Decrease value (brightness)
|
||||
|
||||
RGB_M_P -> Static (no animation) mode
|
||||
|
||||
RGB_M_B -> Breathing animation mode
|
||||
|
||||
RGB_M_R -> Rainbow animation mode
|
||||
|
||||
RGB_M_SW -> Swirl animation mode
|
||||
|
||||
RGB_M_SN -> Snake animation mode
|
||||
|
||||
RGB_M_K -> "Knight Rider" animation mode
|
||||
|
||||
RGB_M_X -> Christmas animation mode
|
||||
|
||||
RGB_M_G -> Static gradient animation mode
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
Mouse controls:
|
||||
|
||||
Key -> Aliases -> Description
|
||||
==================================================
|
||||
|
||||
KC_MS_UP -> KC_MS_U -> Mouse Cursor Up
|
||||
|
||||
KC_MS_DOWN -> KC_MS_D -> Mouse Cursor Down
|
||||
|
||||
KC_MS_LEFT -> KC_MS_L -> Mouse Cursor Left
|
||||
|
||||
KC_MS_RIGHT -> KC_MS_R -> Mouse Cursor Right
|
||||
|
||||
KC_MS_BTN1 -> KC_BTN1 -> Mouse Button 1
|
||||
|
||||
KC_MS_BTN2 -> KC_BTN2 -> Mouse Button 2
|
||||
|
||||
KC_MS_BTN3 -> KC_BTN3 -> Mouse Button 3
|
||||
|
||||
KC_MS_BTN4 -> KC_BTN4 -> Mouse Button 4
|
||||
|
||||
KC_MS_BTN5 -> KC_BTN5 -> Mouse Button 5
|
||||
|
||||
KC_MS_WH_UP -> KC_WH_U -> Mouse Wheel Up
|
||||
|
||||
KC_MS_WH_DOWN -> KC_WH_D -> Mouse Wheel Down
|
||||
|
||||
KC_MS_WH_LEFT -> KC_WH_L -> Mouse Wheel Left
|
||||
|
||||
KC_MS_WH_RIGHT -> KC_WH_R -> Mouse Wheel Right
|
||||
|
||||
KC_MS_ACCEL0 -> KC_ACL0 -> Set mouse acceleration to 0
|
||||
|
||||
KC_MS_ACCEL1 -> KC_ACL1 -> Set mouse acceleration to 1
|
||||
|
||||
KC_MS_ACCEL2 -> KC_ACL2 -> Set mouse acceleration to 2
|
||||
|
||||
*/
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
|
||||
|
||||
switch (id) {
|
||||
|
||||
}
|
||||
return MACRO_NONE;
|
||||
}
|
85
keyboards/dz60/keymaps/eric/keymap.c
Normal file
85
keyboards/dz60/keymaps/eric/keymap.c
Normal file
@@ -0,0 +1,85 @@
|
||||
#include "dz60.h"
|
||||
|
||||
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Layer 0
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ~ |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bkspc |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Caps | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Fn |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Ctrl | GUI | Alt | Space | Alt | GUI | Ctrl |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
KEYMAP_2_SHIFTS(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(2)),
|
||||
|
||||
|
||||
|
||||
/* Layer 1
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | INS | Del |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | PGUP | UP | PGDN | HOME | & | | | | | Prnt | UP | Del | Bkspc |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | LEFT | DWN | RGHT | END | * | | | PGUP | HOME | LEFT | RGHT | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | _ | + | ( | ) | | | ~ | | PGDN | END | DWN | | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
KEYMAP_2_SHIFTS(
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
||||
KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_HOME, KC_AMPR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, KC_DEL, KC_BSPC,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_ASTR, KC_TRNS, KC_TRNS, KC_PGUP, KC_HOME, KC_LEFT, KC_RGHT, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_LPRN, KC_RPRN, KC_PIPE, KC_TILD, KC_TRNS, KC_PGDN, KC_END, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||
};
|
||||
|
||||
enum function_id {
|
||||
SHIFT_ESC,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM fn_actions[] = {
|
||||
[0] = ACTION_FUNCTION(SHIFT_ESC),
|
||||
};
|
||||
|
||||
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
static uint8_t shift_esc_shift_mask;
|
||||
switch (id) {
|
||||
case SHIFT_ESC:
|
||||
shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
|
||||
if (record->event.pressed) {
|
||||
if (shift_esc_shift_mask) {
|
||||
add_key(KC_GRV);
|
||||
send_keyboard_report();
|
||||
} else {
|
||||
add_key(KC_ESC);
|
||||
send_keyboard_report();
|
||||
}
|
||||
} else {
|
||||
if (shift_esc_shift_mask) {
|
||||
del_key(KC_GRV);
|
||||
send_keyboard_report();
|
||||
} else {
|
||||
del_key(KC_ESC);
|
||||
send_keyboard_report();
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
61
keyboards/dz60/keymaps/weeheavy/README.md
Normal file
61
keyboards/dz60/keymaps/weeheavy/README.md
Normal file
@@ -0,0 +1,61 @@
|
||||

|
||||
|
||||
# weeheavy's DZ60 split spacebar layout
|
||||
|
||||
* 2u left shift
|
||||
* arrow cluster
|
||||
* split spacebar with a center key
|
||||
|
||||
## Layouts
|
||||
|
||||
The base layout is ANSI QWERTY.
|
||||
|
||||
Key sizes (ASCII keyboards below match this scale):
|
||||
|
||||
1u = 4 chars = | |
|
||||
1.25u = 5 chars = | |
|
||||
1.5u = 6 chars = | |
|
||||
1.75u = 7 chars = | |
|
||||
2u = 8 chars = | |
|
||||
2.25u = 9 chars = | |
|
||||
2.75u = 11 chars = | |
|
||||
6.25u = 25 chars = | |
|
||||
|
||||
### Layer 0: Base layout
|
||||
|
||||
Specialities:
|
||||
|
||||
* Arrow cluster
|
||||
* FN1: access to layer 1
|
||||
* F2: access to layer 2
|
||||
|
||||
```
|
||||
,----------------------------------------------------------.
|
||||
|Es||1 ||2 ||3 ||4 ||5 ||6 ||7 ||8 ||9 ||0 ||- ||= || Bksp |
|
||||
|----------------------------------------------------------+
|
||||
|Tab ||Q ||W ||E ||R ||T ||Y ||U ||I ||O ||P ||[ ||] || \ |
|
||||
|----------------------------------------------------------+
|
||||
|Caps ||A ||S ||D ||F ||G ||H ||J ||K ||L ||; ||' || Enter |
|
||||
|----------------------------------------------------------+
|
||||
|Shift ||Z ||X ||C ||V ||B ||N ||M ||, ||. ||/ ||Sf||↑ ||Dl|
|
||||
|----------------------------------------------------------+
|
||||
|Ctl||Win||Alt|| Space ||FN1|| Space ||Al||F2||← ||↓ ||→ |
|
||||
`----------------------------------------------------------'
|
||||
```
|
||||
|
||||
### Layer 1: Utility
|
||||
|
||||
Specialities:
|
||||
|
||||
* F1-F12 keys when holding FN1
|
||||
* Movement cluster on the right hand side
|
||||
* Multimedia cluster on the bottom right
|
||||
* RGB config on the left hand side
|
||||
|
||||
### Layer 2: Config and setup
|
||||
|
||||
Specialities:
|
||||
|
||||
* Reset key on ESC and backslash location
|
||||
* Additional "B" key (a learning from my mistakes)
|
||||
|
39
keyboards/dz60/keymaps/weeheavy/keymap.c
Normal file
39
keyboards/dz60/keymaps/weeheavy/keymap.c
Normal file
@@ -0,0 +1,39 @@
|
||||
#include "dz60.h"
|
||||
|
||||
// Make special keycodes more visible
|
||||
#define ____ KC_TRNS
|
||||
#define XXXX KC_NO
|
||||
|
||||
// Layer definition
|
||||
#define L0 0
|
||||
#define L1 1
|
||||
#define L2 2
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
// Base layer - ANSI QWERTY
|
||||
[L0] = LAYOUT_2_shifts(
|
||||
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXX, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, XXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(L1), KC_SPC, KC_RALT, MO(L2), KC_LEFT, KC_DOWN, KC_RIGHT),
|
||||
|
||||
// Utility layer - RGB and multimedia control
|
||||
[L1] = LAYOUT_2_shifts(
|
||||
____, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ____, ____,
|
||||
____, RGB_TOG, RGB_MOD, RGB_M_K, RGB_M_R, ____, ____, KC_PSCR, ____, KC_PAUS, ____, ____, ____, ____,
|
||||
____, RGB_HUI, RGB_HUD, ____, ____, ____, ____, KC_INS, KC_HOME, KC_PGUP, ____, ____, ____,
|
||||
____, ____, RGB_SAI, RGB_SAD, ____, ____, ____, ____, ____, KC_END, KC_PGDN, ____, KC_MPLY, KC_VOLU, KC_MUTE,
|
||||
____, RGB_VAI, RGB_VAD, ____, ____, ____, ____, ____, KC_MPRV, KC_VOLD, KC_MNXT),
|
||||
|
||||
// Setup layer - Reset an additional "b" button
|
||||
[L2] = LAYOUT_2_shifts(
|
||||
RESET, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
|
||||
KC_B, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, RESET,
|
||||
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
|
||||
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
|
||||
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____),
|
||||
|
||||
};
|
||||
|
37
keyboards/ergo42/keymaps/default-illustrator/config.h
Normal file
37
keyboards/ergo42/keymaps/default-illustrator/config.h
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
/* Use I2C or Serial, not both */
|
||||
|
||||
#define USE_SERIAL
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
|
||||
#define MASTER_LEFT
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
|
||||
#endif
|
119
keyboards/ergo42/keymaps/default-illustrator/keymap.c
Normal file
119
keyboards/ergo42/keymaps/default-illustrator/keymap.c
Normal file
@@ -0,0 +1,119 @@
|
||||
#include "ergo42.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
#define BASE 0
|
||||
#define META 1
|
||||
#define SYMB 2
|
||||
#define GAME 3
|
||||
#define ILLUST 4
|
||||
|
||||
// Fillers to make layering more clear
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* BASE
|
||||
* ,------------------------------------------------. ,------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | @ |
|
||||
* |------+------+------+------+------+------+------| |-------------+------+------+------+------+------|
|
||||
* | Alt | A | S | D | F | G | ( | | ) | H | J | K | L | ; | : |
|
||||
* |------+------+------+------+------+------+------| |------|------+------+------+------+------+------|
|
||||
* | Sft | Z | X | C | V | B | { | | } | N | M | , | . | / |\/Sft |
|
||||
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
* | Ctrl | GUI | App |=>ILST|ESC/ |Space/|Tab/ | |Back |Enter/| Del |PrtSc |=>GAME|=>ILST| \ |
|
||||
* | | | | |~SYMB |RCtrl |Shift | |Space |~META | | | | | |
|
||||
* `------------------------------------------------' `------------------------------------------------'
|
||||
*/
|
||||
|
||||
[BASE] = KEYMAP( \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_RBRC, KC_BSLS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, \
|
||||
KC_LALT, KC_A, KC_S, KC_D, KC_F, KC_G, S(KC_8), S(KC_9), KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, S(KC_RBRC), S(KC_BSLS), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RO), \
|
||||
KC_LCTRL, KC_LGUI, KC_APP, TG(ILLUST), LT(SYMB, KC_ESC), RCTL_T(KC_SPC), SFT_T(KC_TAB), KC_BSPC, LT(META, KC_ENT), KC_DELT, KC_PSCR, TG(GAME), TG(ILLUST), KC_JYEN \
|
||||
),
|
||||
|
||||
/* META
|
||||
* ,------------------------------------------------. ,------------------------------------------------.
|
||||
* | 1 | 2 | 3 | 4 | 5 | 6 | [ | | ] | 7 | 8 | 9 | 0 | - | ^ |
|
||||
* |------+------+------+------+------+------+------| |-------------+------+------+------+------+------|
|
||||
* | Alt | F1 | |Muhen | Henk | | ( | | ) | Left | Down | Up |Right | | |
|
||||
* |------+------+------+------+------+------+------| |------|------+------+------+------+------+------|
|
||||
* | Sft | F2 | F3 | F4 | F5 | F6 | { | | } | F7 | F8 | F9 | F10 | F11 |\/Sft |
|
||||
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
* | Ctrl | GUI | App | |ESC/ |Space/|Tab/ | |Back |Enter/| Del |Reset | | | \ |
|
||||
* | | | | |~SYMB |RCtrl |Shift | |Space |~META | | | | | |
|
||||
* `------------------------------------------------' `------------------------------------------------'
|
||||
*/
|
||||
|
||||
[META] = KEYMAP( \
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, _______, _______, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, \
|
||||
_______, KC_F1, XXXXXXX, KC_MHEN, KC_HENK, XXXXXXX, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, \
|
||||
_______, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, SFT_T(KC_RO), \
|
||||
_______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, XXXXXXX, _______ \
|
||||
),
|
||||
|
||||
/* SYMB
|
||||
* ,------------------------------------------------. ,------------------------------------------------.
|
||||
* | ! | " | # | $ | % | & | [ | | ] | ' | ( | ) | ~ | = | ~ |
|
||||
* |------+------+------+------+------+------+------| |-------------+------+------+------+------+------|
|
||||
* | Alt | | | | | | ( | | ) | | | | | + | * |
|
||||
* |------+------+------+------+------+------+------| |------|------+------+------+------+------+------|
|
||||
* | Sft | | | | | | { | | } | | | < | > | ? | \ |
|
||||
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
* | Ctrl | GUI | App | |ESC/ |Space/|Tab/ | |Back |Enter/| Del |PrtSc | | | \ |
|
||||
* | | | | |~SYMB |RCtrl |Shift | |Space |~META | | | | | |
|
||||
* `------------------------------------------------' `------------------------------------------------'
|
||||
*/
|
||||
|
||||
[SYMB] = KEYMAP( \
|
||||
S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), _______, _______, S(KC_7), S(KC_8), S(KC_9), S(KC_0), S(KC_MINS), S(KC_EQL), \
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, S(KC_SCLN), S(KC_QUOT), \
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, S(KC_COMM), S(KC_DOT), S(KC_SLSH), S(KC_RO), \
|
||||
_______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, _______ \
|
||||
),
|
||||
|
||||
/* GAME
|
||||
* ,------------------------------------------------. ,------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | @ |
|
||||
* |------+------+------+------+------+------+------| |-------------+------+------+------+------+------|
|
||||
* | Alt | A | S | D | F | G | ( | | ) | H | J | K | L | ; | : |
|
||||
* |------+------+------+------+------+------+------| |------|------+------+------+------+------+------|
|
||||
* | Sft | Z | X | C | V | B | { | | } | N | M | , | . | / |\/Sft |
|
||||
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
* | Ctrl | GUI | App | | ESC |Space |Tab | |Back |Enter | Del |PrtSc |=>GAME| | \ |
|
||||
* | | | | | | | | |Space | | | | | | |
|
||||
* `------------------------------------------------' `------------------------------------------------'
|
||||
*/
|
||||
[GAME] = KEYMAP( \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_RBRC, KC_BSLS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, \
|
||||
KC_LALT, KC_A, KC_S, KC_D, KC_F, KC_G, S(KC_8), S(KC_9), KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, S(KC_RBRC), S(KC_BSLS), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_RO), \
|
||||
KC_LCTRL, KC_LGUI, KC_APP, XXXXXXX, KC_ESC, KC_SPC, KC_TAB, KC_BSPC, KC_ENT, KC_DELT, KC_PSCR, _______, XXXXXXX, KC_JYEN \
|
||||
),
|
||||
|
||||
/* ILLUST
|
||||
* ,------------------------------------------------. ,------------------------------------------------.
|
||||
* | Tab | H | G | I | P | C+J | C+] | | ] | Y | U | I | O | P | @ |
|
||||
* |------+------+------+------+------+------+------| |-------------+------+------+------+------+------|
|
||||
* | Alt | R | S | A | V |Sft+W | C+[ | | ) | H | J | K | L | ; | : |
|
||||
* |------+------+------+------+------+------+------| |------|------+------+------+------+------+------|
|
||||
* | Sft | Z | X | C | V | B | F | | } | N | M | , | . | / |\/Sft |
|
||||
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
|
||||
* | Ctrl | GUI | App |=>ILST| ESC | Ctrl | Del | |Back |Enter/| Del |PrtSc |=>GAME|=>ILST| \ |
|
||||
* | | | | | | | | |Space |~META | | | | | |
|
||||
* `------------------------------------------------' `------------------------------------------------'
|
||||
*/
|
||||
|
||||
[ILLUST] = KEYMAP( \
|
||||
KC_TAB, KC_H, KC_G, KC_I, KC_P, LCTL(KC_J), LCTL(KC_BSLS), _______, _______, _______, _______, _______, _______, _______, \
|
||||
KC_LALT, KC_R, KC_S, KC_A, KC_V, S(KC_W), LCTL(KC_RBRC), _______, _______, _______, _______, _______, _______, _______, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_F, _______, _______, _______, _______, _______, _______, _______, \
|
||||
KC_LCTRL, KC_LGUI, KC_APP, _______, KC_ESC, KC_RCTL, KC_DELT, _______, _______, _______, _______, XXXXXXX, _______, _______ \
|
||||
)
|
||||
|
||||
};
|
||||
|
3
keyboards/ergo42/keymaps/default-illustrator/rules.mk
Normal file
3
keyboards/ergo42/keymaps/default-illustrator/rules.mk
Normal file
@@ -0,0 +1,3 @@
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
23
keyboards/ergodox_infinity/keymaps/input_club/README.md
Normal file
23
keyboards/ergodox_infinity/keymaps/input_club/README.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# Input Club ErgoDox Infinity Layout
|
||||
|
||||
A basic ErgoDox layout that duplicates the default Input Club layout
|
||||
|
||||
## Features
|
||||
|
||||
Base Layers
|
||||
|
||||
- QWERTY
|
||||
- Function Keys
|
||||
- Numpad
|
||||
|
||||
## Building and flashing
|
||||
|
||||
1. Put your board in DFU mode with either the button on the bottom, or with a software key in your current firmware
|
||||
2. Flash left half:
|
||||
```bash
|
||||
make ergodox_infinity:input_club:dfu-util
|
||||
```
|
||||
3. Flash right half:
|
||||
```bash
|
||||
make ergodox_infinity:input_club:dfu-util MASTER=right
|
||||
```
|
267
keyboards/ergodox_infinity/keymaps/input_club/keymap.c
Normal file
267
keyboards/ergodox_infinity/keymaps/input_club/keymap.c
Normal file
@@ -0,0 +1,267 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "debug.h"
|
||||
#include "action_layer.h"
|
||||
#include "version.h"
|
||||
|
||||
#define L0 0 // default layer
|
||||
#define L1 1
|
||||
#define L2 2
|
||||
|
||||
enum custom_keycodes {
|
||||
PLACEHOLDER = SAFE_RANGE, // can always be here
|
||||
EPRM,
|
||||
VRSN,
|
||||
RGB_SLD
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[L0] = LAYOUT_ergodox( // layer 0 : default
|
||||
/*
|
||||
* left hand
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | = | 0 | 2 | 3 | 4 | 5 | ESC |
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | \ | Q | W | E | R | T |LCK-1|
|
||||
* +-------+-----+-----+-----+-----+-----+ |
|
||||
* | TAB | A | S | D | F | G +-----+
|
||||
* +-------+-----+-----+-----+-----+-----+ f1 |
|
||||
* | LSHIFT| Z | X | C | V | B | |
|
||||
* +-+-----+-----+-----+-----+-----+-----+-----+
|
||||
* |LGUI | ` | \ |LEFT |RIGHT|
|
||||
* +-----+-----+-----+-----+-----+ +-----+-----+
|
||||
* |LCTRL| LALT|
|
||||
* +-----+-----+-----+
|
||||
* | | | HOME|
|
||||
* |BKSPC| DEL +-----+
|
||||
* | | | END |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
|
||||
KC_BSLS, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(L1),
|
||||
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(L1),
|
||||
KC_LGUI, KC_GRV, KC_BSLS, KC_LEFT, KC_RGHT,
|
||||
KC_LCTL, KC_LALT,
|
||||
KC_HOME,
|
||||
KC_BSPC, KC_DELT, KC_END,
|
||||
/* right hand
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* |LCK-2| 6 | 7 | 8 | 9 | 0 | - |
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* | [ | Y | U | I | O | P | ] |
|
||||
* | +-----+-----+-----+-----+-----+-------+
|
||||
* +-----+ H | J | K | L | ; | ' |
|
||||
* | f1 +-----+-----+-----+-----+-----+-------+
|
||||
* | | N | M | , | . | / | RSHIFT|
|
||||
* +-----+-----+-----+-----+-----+-----+-----+-+
|
||||
* |LEFT |DOWN | UP |RIGHT| RGUI|
|
||||
* +-----+-----+ +-----+-----+-----+-----+-----+
|
||||
* | RALT|RCTRL|
|
||||
* +-----+-----+-----+
|
||||
* | PGUP| | |
|
||||
* +-----+ ENT | SPC |
|
||||
* | PGDN| | |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
TG(L2), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
|
||||
KC_LBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC,
|
||||
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
MO(L1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_RGUI,
|
||||
KC_RALT, KC_RCTL,
|
||||
KC_PGUP,
|
||||
KC_PGDN, KC_ENT, KC_SPC
|
||||
),
|
||||
|
||||
[L1] = LAYOUT_ergodox( // layer 1 : function layers
|
||||
/* left hand
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | | f1 | f2 | f3 | f4 | f5 | f11 |
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | | | | | | | |
|
||||
* +-------+-----+-----+-----+-----+-----+ |
|
||||
* | | | | | | +-----+
|
||||
* +-------+-----+-----+-----+-----+-----+ |
|
||||
* | | | | | | | |
|
||||
* +-+-----+-----+-----+-----+-----+-----+-----+
|
||||
* | | | | | |
|
||||
* +-----+-----+-----+-----+-----+ +-----+-----+
|
||||
* | | |
|
||||
* +-----+-----+-----+
|
||||
* | | | |
|
||||
* | | +-----+
|
||||
* | | | |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS,
|
||||
KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
/* right hand
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* | f12 | f6 | f7 | f8 | f9 | f10 | |
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* | | | | | | | |
|
||||
* | +-----+-----+-----+-----+-----+-------+
|
||||
* +-----+ | | | | | |
|
||||
* | +-----+-----+-----+-----+-----+-------+
|
||||
* | | | | | | | |
|
||||
* +-----+-----+-----+-----+-----+-----+-----+-+
|
||||
* | | | | | |
|
||||
* +-----+-----+ +-----+-----+-----+-----+-----+
|
||||
* | | |
|
||||
* +-----+-----+-----+
|
||||
* | | | |
|
||||
* +-----+ | |
|
||||
* | | | |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS,
|
||||
KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[L2] = LAYOUT_ergodox(
|
||||
/* Left hand
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | FLASH | | | | | | |
|
||||
* +-------+-----+-----+-----+-----+-----+-----+
|
||||
* | | | | | | | |
|
||||
* +-------+-----+-----+-----+-----+-----+ |
|
||||
* | | | | | | +-----+
|
||||
* +-------+-----+-----+-----+-----+-----+ |
|
||||
* | | | | | | | |
|
||||
* +-+-----+-----+-----+-----+-----+-----+-----+
|
||||
* | | | | | |
|
||||
* +-----+-----+-----+-----+-----+ +-----+-----+
|
||||
* | | |
|
||||
* +-----+-----+-----+
|
||||
* | | | |
|
||||
* | | +-----+
|
||||
* | | | |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS,
|
||||
KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
/* right hand
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* | | |NMLCK| P/ | P* | P- | |
|
||||
* +-----+-----+-----+-----+-----+-----+-------+
|
||||
* | | | P7 | P8 | P9 | P+ | |
|
||||
* | +-----+-----+-----+-----+-----+-------+
|
||||
* +-----+ | P4 | P5 | P6 | P+ | |
|
||||
* | +-----+-----+-----+-----+-----+-------+
|
||||
* | | | P1 | P2 | P3 |PENT | |
|
||||
* +-----+-----+-----+-----+-----+-----+-----+-+
|
||||
* | | | P. |PENT | |
|
||||
* +-----+-----+ +-----+-----+-----+-----+-----+
|
||||
* | | |
|
||||
* +-----+-----+-----+
|
||||
* | | | |
|
||||
* +-----+ | P0 |
|
||||
* | | | |
|
||||
* +-----+-----+-----+
|
||||
*/
|
||||
KC_TRNS, KC_TRNS, KC_NUMLOCK, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_TRNS,
|
||||
KC_TRNS, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_ENTER, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_KP_DOT, KC_KP_ENTER, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS,
|
||||
KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_KP_0
|
||||
),
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM fn_actions[] = {
|
||||
[1] = ACTION_LAYER_TAP_TOGGLE(L1) // FN1 - Momentary Layer 1 (Function)
|
||||
};
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||
{
|
||||
// MACRODOWN only works in this function
|
||||
switch(id) {
|
||||
case 0:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (record->event.pressed) { // For resetting EEPROM
|
||||
eeconfig_init();
|
||||
}
|
||||
break;
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
// dynamically generate these.
|
||||
case EPRM:
|
||||
if (record->event.pressed) {
|
||||
eeconfig_init();
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case VRSN:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case RGB_SLD:
|
||||
if (record->event.pressed) {
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
rgblight_mode(1);
|
||||
#endif
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Runs just one time when the keyboard initializes.
|
||||
void matrix_init_user(void) {
|
||||
|
||||
};
|
||||
|
||||
|
||||
// Runs constantly in the background, in a loop.
|
||||
void matrix_scan_user(void) {
|
||||
|
||||
uint8_t layer = biton32(layer_state);
|
||||
|
||||
ergodox_board_led_off();
|
||||
ergodox_right_led_1_off();
|
||||
ergodox_right_led_2_off();
|
||||
ergodox_right_led_3_off();
|
||||
switch (layer) {
|
||||
// TODO: Make this relevant to the ErgoDox EZ.
|
||||
case 1:
|
||||
ergodox_right_led_1_on();
|
||||
break;
|
||||
case 2:
|
||||
ergodox_right_led_2_on();
|
||||
break;
|
||||
default:
|
||||
// none
|
||||
break;
|
||||
}
|
||||
|
||||
};
|
@@ -6,7 +6,7 @@ enum custom_keycodes {
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
LAYOUT_ortho_2x2(
|
||||
KC_1, KC_U,
|
||||
KC_1, KC_U,
|
||||
KC_P, UP_URL
|
||||
),
|
||||
};
|
||||
@@ -15,10 +15,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case UP_URL:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("http://1upkeyboads.com");
|
||||
SEND_STRING("http://1upkeyboards.com");
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
31
keyboards/fourier/keymaps/valgrahf/config.h
Normal file
31
keyboards/fourier/keymaps/valgrahf/config.h
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* Use I2C or Serial, not both */
|
||||
|
||||
#define USE_SERIAL
|
||||
// #define USE_I2C
|
||||
|
||||
#endif
|
73
keyboards/fourier/keymaps/valgrahf/keymap.c
Normal file
73
keyboards/fourier/keymaps/valgrahf/keymap.c
Normal file
@@ -0,0 +1,73 @@
|
||||
#include "fourier.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
|
||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
|
||||
// Layer names don't all need to be of the same length, obviously, and you can also skip them
|
||||
// entirely and just use numbers.
|
||||
#define _BASE 0
|
||||
#define _FN1 1
|
||||
#define _FN2 2
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
};
|
||||
|
||||
#define KC_ KC_TRNS
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
#define KC_FN1 LT(_FN1, KC_NO)
|
||||
#define KC_FN2 LT(_FN2, KC_NO)
|
||||
#define KC_SPFN LT(_FN1, KC_SPACE)
|
||||
#define KC_RST RESET
|
||||
#define KC_DBUG DEBUG
|
||||
#define KC_RTOG RGB_TOG
|
||||
#define KC_RMOD RGB_MOD
|
||||
#define KC_RHUI RGB_HUI
|
||||
#define KC_RHUD RGB_HUD
|
||||
#define KC_RSAI RGB_SAI
|
||||
#define KC_RSAD RGB_SAD
|
||||
#define KC_RVAI RGB_VAI
|
||||
#define KC_RVAD RGB_VAD
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----|----+----+----+----+----+----+----.
|
||||
TAB , Q , W , E , R , T , Y , U , I , O , P , DEL,BSPC,
|
||||
//|----`----`----`----`----`----|----`----`----`----`----`----`----|
|
||||
ESC , A , S , D , F , G , H , J , K , L ,QUOT, SCLN ,
|
||||
//|-----`----`----`----`----`----|----`----`----`----`----`--------|
|
||||
LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, PGUP ,
|
||||
//|-------`----`----`----`----`----|----`----`----`----`----`------|
|
||||
LCTL ,LALT, FN1, ,ENTER , SPACE , FN2 , HOME, END , PGDN
|
||||
//`-----+----+-----+-------------|--------+-----+-----+-----+------'
|
||||
),
|
||||
|
||||
[_FN1] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----|----+----+----+----+----+----+----.
|
||||
GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , , ,
|
||||
//|----`----`----`----`----`----|----`----`----`----`----`----`----|
|
||||
DEL , F1 ,F2 , F3 , F4 , F5 , F6 ,MINS, EQL,LBRC,RBRC, BSLS ,
|
||||
//|-----`----`----`----`----`----|----`----`----`----`----`--------|
|
||||
, F7 , F8 , F9 , F10, F11, F12, , , , UP , ,
|
||||
//|-------`----`----`----`----`----|----`----`----`----`----`------|
|
||||
, , , , , ,RGUI,LEFT ,DOWN ,RIGHT
|
||||
//`-----+----+-----+-------------|--------+-----+-----+-----+------'
|
||||
),
|
||||
|
||||
[_FN2] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----|----+----+----+----+----+----+----.
|
||||
TILD,EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN, , ,
|
||||
//|----`----`----`----`----`----|----`----`----`----`----`----`----|
|
||||
DEL ,RHUI,RSAI,RVAI, , , ,UNDS,PLUS,LCBR,RCBR, PIPE ,
|
||||
//|-----`----`----`----`----`----|----`----`----`----`----`--------|
|
||||
,RHUD,RSAD,RVAD, , ,VOLU,VOLD, , , UP , ,
|
||||
//|-------`----`----`----`----`----|----`----`----`----`----`------|
|
||||
,RTOG,RMOD , , , , , LEFT, DOWN, RIGHT
|
||||
//`-----+----+-----+-------------|--------+-----+-----+-----+------'
|
||||
)
|
||||
|
||||
};
|
3
keyboards/fourier/keymaps/valgrahf/rules.mk
Normal file
3
keyboards/fourier/keymaps/valgrahf/rules.mk
Normal file
@@ -0,0 +1,3 @@
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
96
keyboards/gh60/keymaps/chaser/README.md
Normal file
96
keyboards/gh60/keymaps/chaser/README.md
Normal file
@@ -0,0 +1,96 @@
|
||||
# [dragonchasers](https://github.com/dragonchaser) GH60 layout
|
||||
|
||||
Layout derived from the default GH60 keymap.
|
||||
|
||||

|
||||
|
||||
## Layers
|
||||
|
||||
### Base Layer
|
||||
```
|
||||
,-----------------------------------------------------------.
|
||||
|Esc~| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
|
||||
|-----------------------------------------------------------|
|
||||
|Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
|
||||
|-----------------------------------------------------------|
|
||||
|FN | A| S| D| F| G| H| J| K| L| ;| '|Return |
|
||||
|-----------------------------------------------------------|
|
||||
|Shift | Z| X| C| V| B| N| M| ,| .| /| Up |FN |
|
||||
|-----------------------------------------------------------|
|
||||
|Ctrl|Gui |Alt | Space |Alt |Left |Down|Right|
|
||||
`-----------------------------------------------------------'
|
||||
|
||||
Note: right FN triggers function layer,
|
||||
left FN(CAPS) is a one-shot button for the macro layer
|
||||
```
|
||||
|
||||
### Function Layer
|
||||
```
|
||||
,-----------------------------------------------------------.
|
||||
|GRV|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12| DEL |
|
||||
|-----------------------------------------------------------|
|
||||
| MB3|MB2|MUP|MB1|MWU| | | |INS| |RST| | |Print|
|
||||
|-----------------------------------------------------------|
|
||||
| | ML|MDN|MR |MWD| | | | | | | |
|
||||
|-----------------------------------------------------------|
|
||||
|CAPS | | | | | | | | | | |PGUP| |
|
||||
|-----------------------------------------------------------|
|
||||
| | | | |Ctrl|HOME|PGD |END |
|
||||
`-----------------------------------------------------------'
|
||||
```
|
||||
|
||||
### Macro Layer
|
||||
```
|
||||
,-----------------------------------------------------------.
|
||||
|DEF| |DUE| | | | | | | | | |GAM| ARR|
|
||||
|-----------------------------------------------------------|
|
||||
| |MAG|CLO|DUT|RBS|TIG| | | |COU|PSH| | | |
|
||||
|-----------------------------------------------------------|
|
||||
| |ADD|STS|DFF|FTC|PLL| | |LOG| | | |
|
||||
|-----------------------------------------------------------|
|
||||
| | | |COM| |BRN| | | | |MUT|VOL+|PLPA|
|
||||
|-----------------------------------------------------------|
|
||||
| | | | |APP |PREV|VOL-|NEXT|
|
||||
`-----------------------------------------------------------'
|
||||
|
||||
Abbreviations:
|
||||
--------------
|
||||
DEF - return to default layer
|
||||
DUE - enable git duet mode
|
||||
GAM - backlight WASD
|
||||
ARR - backlight arrows
|
||||
-
|
||||
MAG - git submodule sync --recursive \
|
||||
&& git submodule update --init --recursive \
|
||||
&& git submodule foreach --recursive "git co . \
|
||||
&& git reset --hard && git clean -dffx"
|
||||
CLO - git clone
|
||||
DUT - git duet (when in duet mode)
|
||||
RBS - git rebase
|
||||
TIG - tig
|
||||
COU - git checkout
|
||||
PSH - git push
|
||||
-
|
||||
ADD - git add
|
||||
STS - git status
|
||||
DFF - git diff
|
||||
FTC - git fetch
|
||||
PLL - git pull
|
||||
LOG - git log
|
||||
-
|
||||
COM - git commit (or git duet commit if in duet mode)
|
||||
BRN - git branch
|
||||
MUT - audio mute
|
||||
VOL+ - increase volume
|
||||
PLPA - play/pause
|
||||
-
|
||||
APP - application (windows menu key)
|
||||
PREV - previous song
|
||||
VOL- - decrease volume
|
||||
NEXT - next song
|
||||
|
||||
Note: git commands are SEND_STRING macros sent to the
|
||||
currently focused window Make sure it is your terminal :)
|
||||
```
|
||||
|
||||
**NOTE:** an outdated version of this keymap is also present for the Satan keyboard, which is no longer maintained since I could not get my hands on a properly working PCB.
|
331
keyboards/gh60/keymaps/chaser/keymap.c
Normal file
331
keyboards/gh60/keymaps/chaser/keymap.c
Normal file
@@ -0,0 +1,331 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
#include <util/delay.h>
|
||||
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
|
||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
|
||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
|
||||
// Layer names don't all need to be of the same length, obviously, and you can also skip them
|
||||
// entirely and just use numbers.
|
||||
#define _QW 0
|
||||
#define _FL 1
|
||||
#define _MC 2
|
||||
|
||||
// Fillers to make layering more clear
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
|
||||
bool git_duet = false;
|
||||
bool backlight_arrows = false;
|
||||
bool backlight_gaming = false;
|
||||
enum custom_keycodes {
|
||||
/* GIT related keycodes */
|
||||
G_ADD = SAFE_RANGE, G_BRN, G_COM, G_COU, G_CLO,
|
||||
G_DFF, G_DUE, G_DUT, G_FTC, G_LOG, G_MAG, G_MRG,
|
||||
G_MRT, G_PSH, G_PLL, G_RBS, G_STH, G_STS, G_TIG,
|
||||
|
||||
/* Multi-media related keycodes */
|
||||
A_MUTE, A_NEXT, A_PLPA, A_PREV, A_VOUP, A_VDWN,
|
||||
|
||||
/* System related shortcuts */
|
||||
F_BTN, M_WAPP, K_ARR, K_WASD,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------------------------.
|
||||
* |Esc~| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
|
||||
* |-----------------------------------------------------------|
|
||||
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
|
||||
* |-----------------------------------------------------------|
|
||||
* |FN | A| S| D| F| G| H| J| K| L| ;| '|Return |
|
||||
* |-----------------------------------------------------------|
|
||||
* |Shift | Z| X| C| V| B| N| M| ,| .| /| Up |FN |
|
||||
* |-----------------------------------------------------------|
|
||||
* |Ctrl|Gui |Alt | Space |Alt |Left |Down|Right|
|
||||
* `-----------------------------------------------------------'
|
||||
*
|
||||
* Note: right FN triggers function layer,
|
||||
* left FN is a one-shot button for the macro layer
|
||||
*/
|
||||
[_QW] = { /* Layer 0: Qwerty */
|
||||
{KC_ESC , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC},
|
||||
{KC_TAB , KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS},
|
||||
{OSL(_MC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, XXXXXXX, KC_ENT },
|
||||
{KC_LSFT , XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, F_BTN, KC_UP},
|
||||
{KC_LCTL , KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, KC_SPC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT}
|
||||
},\
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------------------------.
|
||||
* |GRV|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12| DEL |
|
||||
* |-----------------------------------------------------------|
|
||||
* | MB3|MB2|MUP|MB1|MWU| | | |INS| |RST| | |Print|
|
||||
* |-----------------------------------------------------------|
|
||||
* | | ML|MDN|MR |MWD| | | | | | | |
|
||||
* |-----------------------------------------------------------|
|
||||
* |CAPS | | | | | | | | | | |PGUP| |
|
||||
* |-----------------------------------------------------------|
|
||||
* | | | | |Ctrl|HOME|PGD |END |
|
||||
* `-----------------------------------------------------------'
|
||||
*/
|
||||
[_FL] = { /* Layer 1: Functions */
|
||||
{KC_GRV , KC_F1 ,KC_F2 ,KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11, KC_F12 , KC_DEL },
|
||||
{KC_MS_BTN3 , KC_MS_BTN2 ,KC_MS_UP ,KC_MS_BTN1 , KC_MS_WH_UP , _______, _______, _______, KC_INS , _______, RESET , _______, _______ , KC_PSCREEN},
|
||||
{KC_CAPS , KC_MS_LEFT ,KC_MS_DOWN ,KC_MS_RIGHT, KC_MS_WH_DOWN, _______, _______, _______, _______, _______, _______ , XXXXXXX, KC_TILDE},
|
||||
{_______ , XXXXXXX , _______ , _______ , _______ , _______, _______, _______, _______, _______, _______ , _______, _______ , KC_PGUP},
|
||||
{_______ , _______ , _______ , XXXXXXX , XXXXXXX , _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RCTRL, KC_HOME, KC_PGDOWN, KC_END}
|
||||
},
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------------------------.
|
||||
* |DEF| |DUE| | | | | | | | | |GAM| ARR|
|
||||
* |-----------------------------------------------------------|
|
||||
* | |MAG|CLO|DUT|RBS|TIG|MRT| | |COU|PSH| | | |
|
||||
* |-----------------------------------------------------------|
|
||||
* | |ADD|STS|DFF|FTC|PLL|MRG| |STH|LOG| | | F_OFF|
|
||||
* |-----------------------------------------------------------|
|
||||
* | | | |COM| |BRN| | | | |MUT|VOL+|PLPA|
|
||||
* |-----------------------------------------------------------|
|
||||
* | | | | |APP |PREV|VOL-|NEXT|
|
||||
* `-----------------------------------------------------------'
|
||||
*
|
||||
* Abbreviations:
|
||||
* --------------
|
||||
* DEF - return to default layer
|
||||
* DUE - enable git duet mode
|
||||
* CLO - git clone
|
||||
* DUT - git duet (when in duet mode)
|
||||
* RBS - git rebase
|
||||
* MAG - git submodule sync --recursive && git submodule update --init --recursive && git submodule foreach --recursive "git co . && git reset --hard && git clean -dffx"
|
||||
* TIG - tig
|
||||
* MRG - git merge
|
||||
* MRT - git mergetool
|
||||
* COU - git checkout
|
||||
* PSH - git push
|
||||
* ADD - git add
|
||||
* STS - git status
|
||||
* DFF - git diff
|
||||
* FTC - git fetch
|
||||
* PLL - git pull
|
||||
* STH - git stash
|
||||
* LOG - git log
|
||||
* COM - git commit (or git duet commit if in duet mode)
|
||||
* BRN - git branch
|
||||
* APP - application (windows menu key)
|
||||
* MUT - audio mute
|
||||
* VOL+ - increase volume
|
||||
* VOL- - decrease volume
|
||||
* PLPA - play/pause
|
||||
* PREV - previous song
|
||||
* NEXT - next song
|
||||
* ARR - backlight arrow keys
|
||||
* GAM - backlight WASD
|
||||
*
|
||||
* Note: git commands are SEND_STRING macros sent to the
|
||||
* currently focused window Make sure it is your terminal :)
|
||||
*/
|
||||
[_MC] = { /* Layer 2: Macros (Git & Multimedia) */
|
||||
{TO(_QW), XXXXXXX,G_DUE , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX, K_WASD , K_ARR },
|
||||
{XXXXXXX, G_MAG ,G_CLO , G_DUT , G_RBS , G_TIG , G_MRT , XXXXXXX, XXXXXXX, G_COU , G_PSH , XXXXXXX, XXXXXXX, XXXXXXX},
|
||||
{XXXXXXX, G_ADD ,G_STS , G_DFF , G_FTC , G_PLL , G_MRG , XXXXXXX, G_STH , G_LOG , XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX},
|
||||
{XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, G_COM , XXXXXXX, G_BRN , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX , A_MUTE, A_PLPA, A_VOUP},
|
||||
{XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_WAPP , A_PREV, A_VDWN, A_NEXT}
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
switch(keycode) {
|
||||
/*
|
||||
* Begin git layer
|
||||
*/
|
||||
case G_ADD:
|
||||
SEND_STRING("git add ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_BRN:
|
||||
SEND_STRING("git branch\n");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_CLO:
|
||||
SEND_STRING("git clone ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_COM:
|
||||
if(git_duet) {
|
||||
SEND_STRING("git duet-commit ");
|
||||
} else {
|
||||
SEND_STRING("git commit ");
|
||||
}
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_COU:
|
||||
SEND_STRING("git checkout ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_DFF:
|
||||
SEND_STRING("git diff\n");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_DUE:
|
||||
git_duet = !git_duet;
|
||||
if(git_duet) {
|
||||
gh60_esc_led_on();
|
||||
} else {
|
||||
gh60_esc_led_off();
|
||||
}
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_DUT:
|
||||
if(git_duet) {
|
||||
SEND_STRING("git duet ");
|
||||
}
|
||||
layer_off(_MC);
|
||||
return false; break;
|
||||
case G_FTC:
|
||||
SEND_STRING("git fetch ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_LOG:
|
||||
SEND_STRING("git log --graph\n");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_MAG:
|
||||
// This is some git-magic to resync recursive submodule structures inside git projects (thx to https://github.com/jimmykarily)
|
||||
SEND_STRING("git submodule sync --recursive && git submodule update --init --recursive && git submodule foreach --recursive \" git co . && git reset --hard && git clean -dffx \" \n");
|
||||
layer_off(_MC);
|
||||
return false; break;
|
||||
case G_MRG:
|
||||
SEND_STRING("git merge ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_MRT:
|
||||
SEND_STRING("git mergetool ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_PLL:
|
||||
SEND_STRING("git pull ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_PSH:
|
||||
SEND_STRING("git push ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_RBS:
|
||||
SEND_STRING("git rebase ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_STH:
|
||||
SEND_STRING("git stash ");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_STS:
|
||||
SEND_STRING("git status\n");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case G_TIG:
|
||||
SEND_STRING("tig\n");
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
/*
|
||||
* End git layer
|
||||
*/
|
||||
|
||||
/*
|
||||
* Begin multimedia keys
|
||||
*/
|
||||
case A_MUTE:
|
||||
register_code(KC_AUDIO_MUTE);
|
||||
unregister_code(KC_AUDIO_MUTE);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case A_PLPA:
|
||||
register_code(KC_MEDIA_PLAY_PAUSE);
|
||||
unregister_code(KC_MEDIA_PLAY_PAUSE);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case A_VOUP:
|
||||
register_code(KC_AUDIO_VOL_UP);
|
||||
return false;break;
|
||||
case A_VDWN:
|
||||
register_code(KC_AUDIO_VOL_DOWN);
|
||||
return false;break;
|
||||
case A_PREV:
|
||||
register_code(KC_MEDIA_PREV_TRACK);
|
||||
unregister_code(KC_MEDIA_PREV_TRACK);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case A_NEXT:
|
||||
register_code(KC_MEDIA_NEXT_TRACK);
|
||||
unregister_code(KC_MEDIA_NEXT_TRACK);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
/*
|
||||
* End multimedia keys
|
||||
*/
|
||||
|
||||
// Tap dance to get the app button mapped
|
||||
case M_WAPP:
|
||||
register_code(KC_APP);
|
||||
unregister_code(KC_APP);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
|
||||
/*
|
||||
* Begin multimedia keys
|
||||
*/
|
||||
case K_ARR:
|
||||
backlight_arrows = !backlight_arrows;
|
||||
if(backlight_arrows) {
|
||||
gh60_poker_leds_on();
|
||||
} else {
|
||||
gh60_poker_leds_off();
|
||||
}
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case K_WASD:
|
||||
backlight_gaming = !backlight_gaming;
|
||||
if(backlight_gaming) {
|
||||
gh60_wasd_leds_on();
|
||||
} else {
|
||||
gh60_wasd_leds_off();
|
||||
}
|
||||
layer_off(_MC);
|
||||
return false; break;
|
||||
case F_BTN:
|
||||
gh60_fn_led_on();
|
||||
layer_on(_FL);
|
||||
return false;break;
|
||||
}
|
||||
/*
|
||||
* End multimedia keys
|
||||
*/
|
||||
|
||||
} else {
|
||||
switch(keycode) {
|
||||
/*
|
||||
* Oneshots that will switch back to the default layer on KEY_UP
|
||||
*/
|
||||
case A_VOUP:
|
||||
unregister_code(KC_AUDIO_VOL_UP);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case A_VDWN:
|
||||
unregister_code(KC_AUDIO_VOL_DOWN);
|
||||
layer_off(_MC);
|
||||
return false;break;
|
||||
case F_BTN:
|
||||
layer_off(_FL);
|
||||
gh60_fn_led_off();
|
||||
return false;break;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
47
keyboards/gh60/keymaps/maartenwut/keymap.c
Executable file
47
keyboards/gh60/keymaps/maartenwut/keymap.c
Executable file
@@ -0,0 +1,47 @@
|
||||
#include "gh60.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
#define _MA 0
|
||||
#define _GA 1
|
||||
#define _FL 2
|
||||
#define _AR 3
|
||||
|
||||
#define TRNS KC_TRNS
|
||||
#define trigger_time 400
|
||||
|
||||
#define LSHIFT OSM(MOD_LSFT)
|
||||
#define SPACE LT(_AR, KC_SPC)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
// Main Layer
|
||||
[_MA] = KEYMAP_HHKB(
|
||||
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_DEL,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, SPACE, KC_NO, KC_RALT, MO(_FL), KC_RCTRL),
|
||||
|
||||
//Function Layer
|
||||
[_FL] = KEYMAP_HHKB(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RESET, KC_NO,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, KC_PSCR,
|
||||
TRNS, KC_MS_L, KC_MS_D, KC_MS_R, TRNS, TG(_GA), TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, KC_VOLD, KC_VOLU, KC_MUTE, TRNS, KC_MPLY,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),
|
||||
|
||||
//Arrow keys layer (space bar)
|
||||
[_AR] = KEYMAP_HHKB(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TRNS, KC_NO,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, KC_PGUP, KC_UP, KC_PGDN, TRNS, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, KC_LEFT, KC_DOWN, KC_RGHT, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),
|
||||
//Game layer (fn + g)
|
||||
[_GA] = KEYMAP_HHKB(
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, KC_NO,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
|
||||
KC_LSFT, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
|
||||
TRNS, TRNS, TRNS, KC_SPC, TRNS, TRNS, MO(_FL), TRNS),
|
||||
|
||||
};
|
@@ -4,15 +4,17 @@ This keymap is only for 5 rows Helix keyboard.
|
||||
|
||||
## Layout
|
||||
|
||||

|
||||

|
||||
|
||||
## Layer
|
||||
|
||||
|Priority|Number|Name|Discription|
|
||||
| ---- | ---- | --- | --- |
|
||||
|high|16|Adjust| keyboard local functions|
|
||||
||4|Extra char| some charactors |
|
||||
||3|Function| function keys |
|
||||
|high|9|Adjust| keyboard local functions (violet)|
|
||||
||8|KFunction| TenkeyPad function keys (bule)|
|
||||
||7|Extra char| some charactors (red)|
|
||||
||6|Function| function keys (blue)|
|
||||
||2|Keypad|TenkeyPad|
|
||||
||2|Dvorak|Dvorak|
|
||||
||1|Colemak|Colemak|
|
||||
|low|0|Qwerty|QWERTY (base)|
|
||||
@@ -23,7 +25,9 @@ Adjust Layer has keyboard local function keys.
|
||||
|
||||
* LED control.
|
||||
* Mac/Win mode change.
|
||||
* Qwerty/Colemak/Dvorak change.
|
||||
* Qwerty/Colemak/Dvorak/TenkeyPad change.
|
||||
|
||||

|
||||
|
||||
### Mac mode and Win mode
|
||||
|
||||
@@ -32,42 +36,49 @@ Mac mode swap Alt/Win(GUI) key.
|
||||
|mode|key|code|
|
||||
| ---- | ---- | --- |
|
||||
|Mac mode|Adjust + g(Qwerty)|AG_NORM|
|
||||
|Win mode|Adjust + h(Qwerty)|AG_SWAP|
|
||||
| |Adjust + t(Qwerty)| |
|
||||
| |Adjust + h(Qwerty)| |
|
||||
|Win mode|Adjust + t(Qwerty)|AG_SWAP|
|
||||
| |Adjust + y(Qwerty)| |
|
||||
|
||||
### LED control
|
||||
|
||||
|command|key|code|
|
||||
| ---- | ---- | --- |
|
||||
|on/off|Adjust + ,(Qwerty)|RGB_TOG|
|
||||
| |Adjust + v(Qwerty)| |
|
||||
|change mode|Adjust + Right option |RGB_SMOD|
|
||||
| |Adjust + c(Qwerty)| |
|
||||
|HUE +|Adjust + .(Qwerty) |RGB_HUI|
|
||||
| |Adjust + Left Control| |
|
||||
|HUE -|Adjust + menu |RGB_HUD|
|
||||
| |Adjust + Left Shift | |
|
||||
|SAT +|Adjust + /(Qwerty) |RGB_SAI|
|
||||
|on/off|Adjust + e(Qwerty)|RGB_TOG|
|
||||
| |Adjust + i(Qwerty)| |
|
||||
|change mode|Adjust + d(Qwerty) |RGB_SMOD|
|
||||
| |Adjust + k(Qwerty)| |
|
||||
|HUE +|Adjust + Left Control|RGB_HUI|
|
||||
| |Adjust + Right Control| |
|
||||
|HUE -|Adjust + Left Shift |RGB_HUD|
|
||||
| |Adjust + Right Shift | |
|
||||
|SAT +|Adjust + ;(Qwerty) |RGB_SAI|
|
||||
| |Adjust + a(Qwerty) | |
|
||||
|SAT -|Adjust + right hand left side Fn|RGB_SAD|
|
||||
| |Adjust + z(Qwerty) | |
|
||||
|Bright +|Adjust + Right Shift |RGB_VAI|
|
||||
| |Adjust + s(Qwerty)| |
|
||||
|Bright -|Adjust + right hand right side Fn|RGB_VAD|
|
||||
| |Adjust + x(Qwerty) | |
|
||||
|reset|Adjust + w(Qwerty)|RGBRST|
|
||||
|SAT -|Adjust + z(Qwerty) |RGB_SAD|
|
||||
| |Adjust + /(Qwerty) | |
|
||||
|Bright +|Adjust + s(Qwerty) |RGB_VAI|
|
||||
| |Adjust + l(Qwerty) | |
|
||||
|Bright -|Adjust + x(Qwerty) |RGB_VAD|
|
||||
| |Adjust + >(Qwerty) | |
|
||||
|reset|Adjust + w|RGBRST|
|
||||
|
||||
### Qwerty, Colemak, Dvorak selection
|
||||
### Qwerty, Colemak, Dvorak, TenkeyPad selection
|
||||
|
||||
|char layout|key|
|
||||
| ---- | ---- |
|
||||
|Qwerty | Adjust + j(Qwerty) |
|
||||
| | Adjust + 5|
|
||||
|Calemak| Adjust + k(Qwerty) |
|
||||
| | Adjust + 4|
|
||||
|Dvorak | Adjust + l(Qwerty) |
|
||||
| | Adjust + 3|
|
||||
|Qwerty | Adjust + 5 |
|
||||
| | Adjust + 6 |
|
||||
|Calemak| Adjust + 4 |
|
||||
| | Adjust + 7 |
|
||||
|Dvorak | Adjust + 3 |
|
||||
| | Adjust + 8 |
|
||||
|Keypad | Adjust + 2 |
|
||||
| | Adjust + 9 |
|
||||
|
||||
## TenkeyPad layout
|
||||
|
||||

|
||||
|
||||
## Note
|
||||
|
||||

|
||||

|
||||
|
@@ -7,33 +7,38 @@
|
||||
## キー配置
|
||||
以下に、Qwerty配列時の、文字配列の図を示します。
|
||||
|
||||

|
||||

|
||||
|
||||
## レイヤー
|
||||
|
||||
|優先順位|番号|名称|内容|
|
||||
| ---- | ---- | --- | --- |
|
||||
|高い|16|Adjust|機能キー(紫)|
|
||||
||4|Extra char|記号類(赤)|
|
||||
||3|Function|ファンクションキー類(青)|
|
||||
|高い|9|Adjust|機能キー(紫)|
|
||||
||8|KFunction|テンキーパッド用ファンクションキー類(青)|
|
||||
||7|Extra char|記号類(赤)|
|
||||
||6|Function|ファンクションキー類(青)|
|
||||
||3|Keypad|テンキーパッド配列|
|
||||
||2|Dvorak|Dvorak配列|
|
||||
||1|Colemak|Colemak配列|
|
||||
|低い|0|Qwerty|QWERTY配列(ベース)|
|
||||
|
||||
Qwerty/Colemak/Dvorak の各レイヤーは、後述する、Ajuest キーによる選択で、いずれか一つだけが有効になり、標準のキーマップとなります。
|
||||
Qwerty/Colemak/Dvorak/Keypad の各レイヤーは、後述する、Ajuestレイヤーの キーによる選択で、いずれか一つだけが有効になり、標準のキーマップとなります。
|
||||
|
||||
Adjust レイヤーは、Adjust キーを押している間だけ有効になり、標準のキーマップの上にかぶさるように一部のキーが置き換わります。
|
||||
Function レイヤーは、下段両端の4つのFnキーのどれかひとつを押している間だけ有効になり、矢印キー等のナビゲーションキーや F1, F2, ...F12キーなどが配置されています。
|
||||
上の図の青色の刻印のキーのあるレイヤーです。
|
||||
|
||||
Function レイヤーは、Fn キーを押している間だけ有効になり、標準のキーマップの上にかぶさるように一部のキーが置き換わります。
|
||||
Extra レイヤーは、下段中央部の Enter キーか BS キーを一定時間(0.2秒)以上押していると押している間だけ有効になり、'+=-_[]{}' の 8つの記号と「英数」キー、「かな」キーが配置されています。
|
||||
このため、Enter/BS キーで Enter/BS を入力するには、Enter/BSキーを押して短時間ですぐ離してください。
|
||||
上の図の赤色の刻印のキーのあるレイヤーです。
|
||||
|
||||
Extra レイヤーは、Enter キーを一定時間(0.1秒)以上押していると押している間だけ有効になり、標準のキーマップの上にかぶさるように一部のキーが置き換わります。
|
||||
このため、Enterキーで Enter を入力するには、Enterキーを押して短時間ですぐ離してください。
|
||||
Adjust レイヤーは、Adjust キーを押している間有効になります。
|
||||
Adjust キーは Function レイヤーに有り、下段両端の4つのFnキーのどれか一つを押しながら、下段中央部の Enter キーか BS キーを押すことで Adjust レイヤーが有効になります。
|
||||
Adjust キー (Enter/BS)を押した後は、Fnキーは離して構いません。
|
||||
|
||||
### Adjust レイヤー
|
||||
Ajust レイヤーは、Helix の標準キーマップ "default" から F1,F2..F12 を除き、右側にあった機能キーを
|
||||
左側にも追加したものとなっています。
|
||||
Ajust レイヤーは、LEDのコントロール、Mac/Win モードの切り替え、Qwerty配列, Colemak配列, Dvorak配列, TenkeyPad配列の切り替えが行えます。
|
||||
|
||||
LEDコントロール、Mac/Win モードの切り替え、Qwerty配列, Colemak配列, Dvorak配列の切り替えが行えます。
|
||||

|
||||
|
||||
### MacモードとWinモード
|
||||
キーボードには、Mac モードと、Win モードの二つのモードがあります。
|
||||
@@ -44,12 +49,13 @@ LEDコントロール、Mac/Win モードの切り替え、Qwerty配列, Colemak
|
||||
|コマンド|指定キー|コード|
|
||||
| ---- | ---- | --- |
|
||||
|Macモード|Adjust + g(Qwerty)|AG_NORM|
|
||||
|Winモード|Adjust + h(Qwerty)|AG_SWAP|
|
||||
| |Adjust + t(Qwerty)| |
|
||||
| |Adjust + h(Qwerty)| |
|
||||
|Winモード|Adjust + t(Qwerty)|AG_SWAP|
|
||||
| |Adjust + y(Qwerty)| |
|
||||
|
||||
Mac モードと Win モードでは、AltキーとWin(GUI)キーが入れ替わります。
|
||||
|
||||
Mac モードでは、上の配列図の「英数キー」と「かなキー」で英語モードと日本語モードの切り替えができます。。
|
||||
Mac モードでは、Extra レイヤー の「英数」キーと「かな」キーで英語モードと日本語モードの切り替えができます。
|
||||
|
||||
Winモードでは、該当のキーはどちらも共に Alt + `(日本語IMEの切り替え)として入力されます。
|
||||
|
||||
@@ -60,35 +66,48 @@ Winモードでは、該当のキーはどちらも共に Alt + `(日本語IME
|
||||
|
||||
|コマンド|指定キー|コード|
|
||||
| ---- | ---- | --- |
|
||||
|オン/オフ|Adjust + ,(Qwerty)|RGB_TOG|
|
||||
| |Adjust + v(Qwerty)| |
|
||||
|モード切り替え|Adjust + Right option |RGB_SMOD|
|
||||
| |Adjust + c(Qwerty)| |
|
||||
|色相 +|Adjust + .(Qwerty)|RGB_HUI|
|
||||
| |Adjust + Left Control| |
|
||||
|色相 -|Adjust + menu|RGB_HUD|
|
||||
| |Adjust + Left Shift | |
|
||||
|彩度 +|Adjust + /(Qwerty) |RGB_SAI|
|
||||
|オン/オフ|Adjust + e(Qwerty)|RGB_TOG|
|
||||
| |Adjust + i(Qwerty)| |
|
||||
|モード切り替え|Adjust + d(Qwerty) |RGB_SMOD|
|
||||
| |Adjust + k(Qwerty)| |
|
||||
|色相 +|Adjust + Left Control|RGB_HUI|
|
||||
| |Adjust + Right Control| |
|
||||
|色相 -|Adjust + Left Shift |RGB_HUD|
|
||||
| |Adjust + Right Shift | |
|
||||
|彩度 +|Adjust + ;(Qwerty) |RGB_SAI|
|
||||
| |Adjust + a(Qwerty) | |
|
||||
|彩度 -|Adjust + 右手Fnの左側|RGB_SAD|
|
||||
| |Adjust + z(Qwerty) | |
|
||||
|明度 +|Adjust + Right Shift|RGB_VAI|
|
||||
| |Adjust + s(Qwerty) | |
|
||||
|明度 -|Adjust + 右手Fnの右側|RGB_VAD|
|
||||
| |Adjust + x(Qwerty) | |
|
||||
|彩度 -|Adjust + z(Qwerty) |RGB_SAD|
|
||||
| |Adjust + /(Qwerty) | |
|
||||
|明度 +|Adjust + s(Qwerty) |RGB_VAI|
|
||||
| |Adjust + l(Qwerty) | |
|
||||
|明度 -|Adjust + x(Qwerty) |RGB_VAD|
|
||||
| |Adjust + >(Qwerty) | |
|
||||
|リセット|Adjust + w|RGBRST|
|
||||
|
||||
### 文字配列選択
|
||||
Qwerty, Colemak, Dvorak それぞれの文字配列の選択は以下のキーを使います。
|
||||
Qwerty, Colemak, Dvorak, Keypad それぞれの文字配列の選択は以下のキーを使います。
|
||||
|
||||
|選択配列|指定キー|
|
||||
| ---- | ---- |
|
||||
|Qwerty | Adjust + j(Qwerty) |
|
||||
| | Adjust + 5|
|
||||
|Calemak| Adjust + k(Qwerty) |
|
||||
| | Adjust + 4|
|
||||
|Dvorak | Adjust + l(Qwerty) |
|
||||
| | Adjust + 3|
|
||||
|Qwerty | Adjust + 5 |
|
||||
| | Adjust + 6 |
|
||||
|Calemak| Adjust + 4 |
|
||||
| | Adjust + 7 |
|
||||
|Dvorak | Adjust + 3 |
|
||||
| | Adjust + 8 |
|
||||
|Keypad | Adjust + 2 |
|
||||
| | Adjust + 9 |
|
||||
|
||||
## テンキーパッドのキー配置
|
||||
以下に、テンキーパッド配列時の、文字配列の図を示します。
|
||||
|
||||

|
||||
|
||||
図でわかるように、テンキーと F1,F2..F12 のキー入力ができる配列です。
|
||||
F12キーは一定時間(0.2秒)以上押していると KFunc キーとして働き、押している間は、青色の刻印のキー入力を行えます。
|
||||
F12 そのものを入力するときは押して短時間ですぐ離してください。
|
||||
F12キーを押しているときは、F11キー は Adjust キーとなり、Adjust レイヤーが有効になります。
|
||||
これによって、Qwerty 配列などに戻すことが可能になります。
|
||||
|
||||
## 備考
|
||||
本キーマップは、通常のキーボードの主要部分のホームポジション周辺をなるべくそのまま踏襲する方針で作成しました。
|
||||
@@ -99,4 +118,4 @@ Qwerty, Colemak, Dvorak それぞれの文字配列の選択は以下のキー
|
||||
* Control キーを左右共にホームポジションの行に移動。
|
||||
* 左手親指に BackSpace キーを割り当てる。
|
||||
|
||||

|
||||

|
||||
|
@@ -78,30 +78,45 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#define RGBLED_NUM 6
|
||||
#endif
|
||||
|
||||
#if RGBLED_NUM <= 6
|
||||
#define RGBLIGHT_LIMIT_VAL 255
|
||||
#else
|
||||
#if HELIX_ROWS == 5
|
||||
#define RGBLIGHT_LIMIT_VAL 120
|
||||
#ifndef IOS_DEVICE_ENABLE
|
||||
#if RGBLED_NUM <= 6
|
||||
#define RGBLIGHT_LIMIT_VAL 255
|
||||
#else
|
||||
#define RGBLIGHT_LIMIT_VAL 130
|
||||
#if HELIX_ROWS == 5
|
||||
#define RGBLIGHT_LIMIT_VAL 120
|
||||
#else
|
||||
#define RGBLIGHT_LIMIT_VAL 130
|
||||
#endif
|
||||
#endif
|
||||
#define RGBLIGHT_VAL_STEP 17
|
||||
#else
|
||||
#if RGBLED_NUM <= 6
|
||||
#define RGBLIGHT_LIMIT_VAL 90
|
||||
#else
|
||||
#if HELIX_ROWS == 5
|
||||
#define RGBLIGHT_LIMIT_VAL 35
|
||||
#else
|
||||
#define RGBLIGHT_LIMIT_VAL 45
|
||||
#endif
|
||||
#endif
|
||||
#define RGBLIGHT_VAL_STEP 4
|
||||
#endif
|
||||
#define RGBLIGHT_HUE_STEP 10
|
||||
#define RGBLIGHT_SAT_STEP 17
|
||||
#define RGBLIGHT_VAL_STEP 17
|
||||
#endif
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
|
||||
#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE)
|
||||
// USB_MAX_POWER_CONSUMPTION value for Helix keyboard
|
||||
// 120 RGBoff, OLEDoff
|
||||
// 120 OLED
|
||||
// 330 RGB 6
|
||||
// 300 RGB 32
|
||||
// 310 OLED & RGB 32
|
||||
#define USB_MAX_POWER_CONSUMPTION 330
|
||||
#define USB_MAX_POWER_CONSUMPTION 400
|
||||
#else
|
||||
// fix iPhone and iPad power adapter issue
|
||||
// iOS device need lessthan 100
|
||||
#define USB_MAX_POWER_CONSUMPTION 100
|
||||
#endif
|
||||
|
||||
#endif /* CONFIG_USER_H */
|
||||
|
@@ -27,23 +27,27 @@ extern uint8_t is_master;
|
||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
|
||||
// Layer names don't all need to be of the same length, obviously, and you can also skip them
|
||||
// entirely and just use numbers.
|
||||
#define _QWERTY 0
|
||||
#define _COLEMAK 1
|
||||
#define _DVORAK 2
|
||||
#define _LOWER 3
|
||||
#define _RAISE 4
|
||||
#define _ADJUST 16
|
||||
enum layer_number {
|
||||
_QWERTY = 0,
|
||||
_COLEMAK,
|
||||
_DVORAK,
|
||||
_KEYPAD,
|
||||
_AUX,
|
||||
_KAUX,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_PADFUNC,
|
||||
_ADJUST,
|
||||
};
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
COLEMAK,
|
||||
DVORAK,
|
||||
LOWER,
|
||||
RAISE,
|
||||
ADJUST,
|
||||
BACKLIT,
|
||||
KEYPAD,
|
||||
EISU,
|
||||
KANA,
|
||||
ZERO2,
|
||||
RGBRST
|
||||
};
|
||||
|
||||
@@ -63,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
|
||||
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
@@ -71,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | ` | ' | N | M | , | . | / | Shift|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Adjust| Lower| Caps | GUI | Alt | Del | Enter| Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_QWERTY] = KEYMAP( \
|
||||
@@ -79,8 +83,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, \
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_RCTL, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_QUOT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
|
||||
ADJUST, LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_BSPC, LT(_RAISE,KC_ENT), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP, LOWER, LOWER \
|
||||
MO(_LOWER),MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \
|
||||
),
|
||||
|
||||
/* Colemak
|
||||
@@ -93,7 +97,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | ` | ' | K | M | , | . | / | Shift|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Adjust| Lower| Caps | GUI | Alt | Del | Enter| Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_COLEMAK] = KEYMAP( \
|
||||
@@ -101,8 +105,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, \
|
||||
KC_LCTL, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_RCTL, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_QUOT, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
|
||||
ADJUST, LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_DEL, LT(_RAISE,KC_ENT), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP, LOWER, LOWER \
|
||||
MO(_LOWER),MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \
|
||||
),
|
||||
|
||||
/* Dvorak
|
||||
@@ -115,7 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Shift| ; | Q | J | K | X | ` | / | B | M | W | V | Z | Shift|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Adjust| Lower| Caps | GUI | Alt | Del | Enter| Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_DVORAK] = KEYMAP( \
|
||||
@@ -123,10 +127,75 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, \
|
||||
KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_RCTL, \
|
||||
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_GRV, KC_SLSH, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, \
|
||||
ADJUST, LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_DEL, LT(_RAISE,KC_ENT), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP, LOWER, LOWER \
|
||||
MO(_LOWER),MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC), \
|
||||
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \
|
||||
),
|
||||
|
||||
/* Keypad
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | 7 | 8 | 9 | BS | F2 | F7 | | F2 | F7 | BS | 7 | 8 | 9 |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | 4 | 5 | 6 | - | F3 | F8 | | F3 | F8 | - | 4 | 5 | 6 |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | 1 | 2 | 3 | + | F4 | F9 | F11 | F11 | F4 | F9 | + | 1 | 2 | 3 |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | 0 | , | . | Enter| F5 | F10 | F12 | F12 | F5 | F10 | Enter| 0 | , | . |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_KEYPAD] = KEYMAP( \
|
||||
KC_TAB, KC_PSLS, KC_PAST, KC_DEL, KC_F1, KC_F6, KC_F1, KC_F6, KC_DEL, KC_TAB, KC_PSLS, KC_PAST, \
|
||||
KC_KP_7, KC_KP_8, KC_KP_9, KC_BSPC, KC_F2, KC_F7, KC_F2, KC_F7, KC_BSPC, KC_KP_7, KC_KP_8, KC_KP_9, \
|
||||
KC_KP_4, KC_KP_5, KC_KP_6, KC_PMNS, KC_F3, KC_F8, KC_F3, KC_F8, KC_PMNS, KC_KP_4, KC_KP_5, KC_KP_6, \
|
||||
KC_KP_1, KC_KP_2, KC_KP_3, KC_PPLS, KC_F4, KC_F9, KC_F11, KC_F11, KC_F4, KC_F9, KC_PPLS, KC_KP_1, KC_KP_2, KC_KP_3, \
|
||||
KC_KP_0, KC_COMM, KC_PDOT, KC_PENT, KC_F5, KC_F10, LT(_PADFUNC,KC_F12),
|
||||
LT(_PADFUNC,KC_F12),KC_F5, KC_F10, KC_PENT, KC_KP_0, KC_COMM, KC_PDOT \
|
||||
),
|
||||
|
||||
/* AUX modifier key layer
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | 00 | | | | | | | | | | | 00 | |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_KAUX] = KEYMAP( \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, ZERO2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ZERO2, _______ \
|
||||
),
|
||||
|
||||
/* Keypad function layer
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | | | Pause| ScrLk| PtrSc| | PtrSc| ScrLk| Pause| | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | | | Home | Up | PgUp | | PgUp | Up | Home | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | |Delete|Insert| Left | Down | Right| | Left | Down | Right|Insert|Delete| |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | End | | PgDn |Adjust|Adjust| PgDn | | End | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | | |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_PADFUNC] = KEYMAP( \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, KC_PAUS, KC_SLCK, KC_PSCR, KC_PSCR, KC_SLCK, KC_PAUS, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_PGUP, KC_PGUP, KC_UP, KC_HOME, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
XXXXXXX, KC_DEL, KC_INS, KC_LEFT, KC_DOWN, KC_RGHT, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL, XXXXXXX, \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, KC_END, XXXXXXX, KC_PGDN,MO(_ADJUST),
|
||||
MO(_ADJUST), KC_PGDN, XXXXXXX, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
|
||||
),
|
||||
|
||||
/* Lower
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|
||||
@@ -135,7 +204,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | PgUp | | Up |Delete| Home | | Home |Delete| Up | | PgUp | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | PgDn | Left | Down | Right| End | | | End | Left | Down | Right| PgDn | |
|
||||
* | | PgDn | Left | Down | Right| End |Adjust|Adjust| End | Left | Down | Right| PgDn | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | PrtSc| | | | | | | | | PrtSc| | |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
@@ -143,9 +212,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LOWER] = KEYMAP( \
|
||||
XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, \
|
||||
XXXXXXX, XXXXXXX, KC_PAUS, KC_SLCK, KC_INS, XXXXXXX, XXXXXXX, KC_INS, KC_SLCK, KC_PAUS, XXXXXXX, KC_F12, \
|
||||
_______, KC_PGUP, XXXXXXX, KC_UP, KC_DEL, KC_HOME, KC_HOME, KC_DEL, KC_UP, XXXXXXX, KC_PGUP, _______, \
|
||||
_______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, XXXXXXX, XXXXXXX, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, \
|
||||
XXXXXXX, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______ \
|
||||
_______, KC_HOME, XXXXXXX, KC_UP, KC_DEL, KC_PGUP, KC_PGUP, KC_DEL, KC_UP, XXXXXXX, KC_HOME, _______, \
|
||||
_______, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, XXXXXXX,KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, \
|
||||
_______, _______, KC_PSCR, _______, _______, _______, MO(_ADJUST),
|
||||
MO(_ADJUST), _______, _______, _______, KC_PSCR, _______, _______ \
|
||||
),
|
||||
|
||||
/* Raise
|
||||
@@ -166,28 +236,51 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LSFT(KC_MINS), KC_MINS, KC_EQL, LSFT(KC_EQL), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, LSFT(KC_LBRC), KC_LBRC, KC_RBRC, LSFT(KC_RBRC), XXXXXXX, XXXXXXX, XXXXXXX, _______, \
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, EISU, EISU, KANA, KANA, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, \
|
||||
_______, _______, XXXXXXX, _______, _______, XXXXXXX, _______, _______, XXXXXXX, _______, _______, XXXXXXX, _______, _______ \
|
||||
MO(_ADJUST),MO(_ADJUST),XXXXXXX, _______, _______, XXXXXXX, _______,
|
||||
_______, XXXXXXX, _______, _______, XXXXXXX,MO(_ADJUST),MO(_ADJUST) \
|
||||
),
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | | |Dvorak|Colemk|Qwerty| | | | | | | |
|
||||
* | | |Keypad|Dvorak|Colemk|Qwerty| |Qwerty|Colemk|Dvorak|Keypad| | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | Reset|RGBRST| | | Win | | | | | | | |
|
||||
* | | Reset|RGBRST|RGB ON|Aud on| Win | | Win |Aud on|RGB ON|RGBRST| | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | HUE+ | SAT+ | VAL+ |Aud on|Audoff| Mac | | Win |Qwerty|Colemk|Dvorak| | |
|
||||
* | HUE+ | SAT+ | VAL+ |RGB md|Audoff| Mac | | Mac |Audoff|RGB md| VAL+ | SAT+ | HUE+ |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | HUE- | SAT- | VAL- |RGB md|RGB ON| | | | | |RGB ON| HUE+ | SAT+ | VAL+ |
|
||||
* | HUE- | SAT- | VAL- | | | | | | | | | VAL- | SAT- | HUE- |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | MODE | HUE- | SAT- | VAL- |
|
||||
* | | | | | | | | | | | | | | |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = KEYMAP( \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, DVORAK, COLEMAK, QWERTY, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
XXXXXXX, RESET, RGBRST, XXXXXXX, XXXXXXX, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
RGB_HUI, RGB_SAI, RGB_VAI, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, XXXXXXX, XXXXXXX, \
|
||||
RGB_HUD, RGB_SAD, RGB_VAD,RGB_SMOD, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, \
|
||||
_______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, RGB_SMOD,RGB_HUD, RGB_SAD, RGB_VAD \
|
||||
XXXXXXX, XXXXXXX, KEYPAD, DVORAK, COLEMAK, QWERTY, QWERTY, COLEMAK, DVORAK, KEYPAD, XXXXXXX, XXXXXXX, \
|
||||
XXXXXXX, RESET, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, AU_ON, RGB_TOG, RGBRST, XXXXXXX, XXXXXXX, \
|
||||
RGB_HUI, RGB_SAI, RGB_VAI,RGB_SMOD, AU_OFF, AG_NORM, AG_NORM, AU_OFF,RGB_SMOD, RGB_VAI, RGB_SAI, RGB_HUI, \
|
||||
RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, \
|
||||
_______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______ \
|
||||
),
|
||||
|
||||
/* AUX modifier key layer
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | BS | Enter| | | | | | | |
|
||||
* `-------------------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_AUX] = KEYMAP( \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, _______, _______, _______, _______, KC_BSPC, LT(_RAISE,KC_ENT), \
|
||||
_______, _______, _______, _______, _______, _______, _______ \
|
||||
)
|
||||
};
|
||||
|
||||
@@ -206,31 +299,32 @@ float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
|
||||
float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
|
||||
#endif
|
||||
|
||||
// define variables for reactive RGB
|
||||
bool TOG_STATUS = false;
|
||||
int RGB_current_mode;
|
||||
static uint32_t current_default_layer_state;
|
||||
static int current_default_layer;
|
||||
|
||||
uint32_t default_layer_state_set_kb(uint32_t state) {
|
||||
current_default_layer_state = state;
|
||||
// 1<<_QWERTY - 1 == 1 - 1 == _QWERTY (=0)
|
||||
// 1<<_COLEMAK - 1 == 2 - 1 == _COLEMAK (=1)
|
||||
current_default_layer = state - 1;
|
||||
// 1<<_DVORAK - 2 == 4 - 2 == _DVORAK (=2)
|
||||
if ( current_default_layer == 3 ) current_default_layer -= 1;
|
||||
// 1<<_KEYPAD - 5 == 8 - 5 == _KEYPAD (=3)
|
||||
if ( current_default_layer == 7 ) current_default_layer -= 4;
|
||||
return state;
|
||||
}
|
||||
|
||||
void persistent_default_layer_set(uint16_t default_layer) {
|
||||
eeconfig_update_default_layer(default_layer);
|
||||
default_layer_set(default_layer);
|
||||
}
|
||||
|
||||
// Setting ADJUST layer RGB back to default
|
||||
void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
|
||||
if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
//rgblight_mode(RGB_current_mode);
|
||||
#endif
|
||||
layer_on(layer3);
|
||||
} else {
|
||||
layer_off(layer3);
|
||||
}
|
||||
void update_base_layer(int base)
|
||||
{
|
||||
if( current_default_layer != base ) {
|
||||
eeconfig_update_default_layer(1UL<<base);
|
||||
default_layer_set(1UL<<base);
|
||||
layer_off(_AUX);
|
||||
layer_off(_KAUX);
|
||||
} else {
|
||||
if( base < _KEYPAD )
|
||||
layer_invert(_AUX);
|
||||
else
|
||||
layer_invert(_KAUX);
|
||||
}
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
@@ -240,7 +334,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_QWERTY);
|
||||
update_base_layer(_QWERTY);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
@@ -249,7 +343,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(tone_colemak);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_COLEMAK);
|
||||
update_base_layer(_COLEMAK);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
@@ -258,75 +352,25 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(tone_dvorak);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_DVORAK);
|
||||
update_base_layer(_DVORAK);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case LOWER:
|
||||
case KEYPAD:
|
||||
if (record->event.pressed) {
|
||||
//not sure how to have keyboard check mode and set it to a variable, so my work around
|
||||
//uses another variable that would be set to true after the first time a reactive key is pressed.
|
||||
if (TOG_STATUS) { //TOG_STATUS checks is another reactive key currently pressed, only changes RGB mode if returns false
|
||||
} else {
|
||||
TOG_STATUS = !TOG_STATUS;
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
//rgblight_mode(16);
|
||||
#endif
|
||||
}
|
||||
layer_on(_LOWER);
|
||||
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
|
||||
} else {
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
//rgblight_mode(RGB_current_mode); // revert RGB to initial mode prior to RGB mode change
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(tone_dvorak);
|
||||
#endif
|
||||
TOG_STATUS = false;
|
||||
layer_off(_LOWER);
|
||||
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
|
||||
update_base_layer(_KEYPAD);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case RAISE:
|
||||
case ZERO2:
|
||||
if (record->event.pressed) {
|
||||
//not sure how to have keyboard check mode and set it to a variable, so my work around
|
||||
//uses another variable that would be set to true after the first time a reactive key is pressed.
|
||||
if (TOG_STATUS) { //TOG_STATUS checks is another reactive key currently pressed, only changes RGB mode if returns false
|
||||
} else {
|
||||
TOG_STATUS = !TOG_STATUS;
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
//rgblight_mode(15);
|
||||
#endif
|
||||
}
|
||||
layer_on(_RAISE);
|
||||
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
|
||||
} else {
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
//rgblight_mode(RGB_current_mode); // revert RGB to initial mode prior to RGB mode change
|
||||
#endif
|
||||
layer_off(_RAISE);
|
||||
TOG_STATUS = false;
|
||||
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
|
||||
SEND_STRING("00");
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case ADJUST:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_ADJUST);
|
||||
} else {
|
||||
layer_off(_ADJUST);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
//led operations - RGB mode change now updates the RGB_current_mode to allow the right RGB mode to be set after reactive keys are released
|
||||
case RGB_MOD:
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
if (record->event.pressed) {
|
||||
rgblight_mode(RGB_current_mode);
|
||||
rgblight_step();
|
||||
RGB_current_mode = rgblight_config.mode;
|
||||
}
|
||||
#endif
|
||||
return false;
|
||||
break;
|
||||
case EISU:
|
||||
if (record->event.pressed) {
|
||||
if(keymap_config.swap_lalt_lgui==false){
|
||||
@@ -356,7 +400,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
eeconfig_update_rgblight_default();
|
||||
rgblight_enable();
|
||||
RGB_current_mode = rgblight_config.mode;
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
@@ -368,9 +411,6 @@ void matrix_init_user(void) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
startup_user();
|
||||
#endif
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
RGB_current_mode = rgblight_config.mode;
|
||||
#endif
|
||||
//SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
|
||||
#ifdef SSD1306OLED
|
||||
TWI_Init(TWI_BIT_PRESCALE_1, TWI_BITLENGTH_FROM_FREQ(1, 800000));
|
||||
@@ -428,36 +468,45 @@ static void render_logo(struct CharacterMatrix *matrix) {
|
||||
0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,
|
||||
0};
|
||||
matrix_write(matrix, logo);
|
||||
#if defined(RGBLIGHT_ENABLE) && defined(RGBLIGHT_ANIMATIONS)
|
||||
char buf[30];
|
||||
if(rgblight_config.enable) {
|
||||
snprintf(buf, sizeof(buf), " LED %2d: %d,%d,%d ",
|
||||
rgblight_config.mode,
|
||||
rgblight_config.hue/RGBLIGHT_HUE_STEP,
|
||||
rgblight_config.sat/RGBLIGHT_SAT_STEP,
|
||||
rgblight_config.val/RGBLIGHT_VAL_STEP);
|
||||
matrix_write(matrix, buf);
|
||||
}
|
||||
#endif
|
||||
//matrix_write_P(&matrix, PSTR(" Split keyboard kit"));
|
||||
}
|
||||
|
||||
// #define DEBUG_OLED_LAYER_DISPLAY
|
||||
|
||||
static const char Qwerty_name[] PROGMEM = " Qwerty";
|
||||
static const char Colemak_name[] PROGMEM = " Colemak";
|
||||
static const char Dvorak_name[] PROGMEM = " Dvorak";
|
||||
static const char Keypad_name[] PROGMEM = " Keypad";
|
||||
|
||||
static const char Raise_name[] PROGMEM = ":Extra";
|
||||
static const char AUX_name[] PROGMEM = ":AUX";
|
||||
static const char KAUX_name[] PROGMEM = ":00";
|
||||
static const char Padfunc_name[] PROGMEM = ":PadFunc";
|
||||
static const char Lower_name[] PROGMEM = ":Func";
|
||||
static const char Raise_name[] PROGMEM = ":Extra";
|
||||
static const char Adjust_name[] PROGMEM = ":Adjust";
|
||||
|
||||
static const char *layer_names[] = {
|
||||
[_QWERTY] = Qwerty_name,
|
||||
[_COLEMAK] = Colemak_name,
|
||||
[_DVORAK] = Dvorak_name,
|
||||
[_RAISE] = Raise_name,
|
||||
[_LOWER] = Lower_name,
|
||||
[_KEYPAD] = Keypad_name,
|
||||
[_AUX] = AUX_name,
|
||||
[_KAUX] = KAUX_name,
|
||||
[_LOWER] = Lower_name,
|
||||
[_RAISE] = Raise_name,
|
||||
[_PADFUNC]= Padfunc_name,
|
||||
[_ADJUST] = Adjust_name
|
||||
};
|
||||
|
||||
static int search_bit_form_lsb(uint32_t data)
|
||||
{
|
||||
int i;
|
||||
for( i = 0; i < 32 && (data & 1)==0 ; data >>= 1, i++ )
|
||||
{}
|
||||
return i;
|
||||
}
|
||||
|
||||
void render_status(struct CharacterMatrix *matrix) {
|
||||
|
||||
// Render to mode icon
|
||||
@@ -473,21 +522,9 @@ void render_status(struct CharacterMatrix *matrix) {
|
||||
}
|
||||
|
||||
// Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below
|
||||
#ifdef DEBUG_OLED_LAYER_DISPLAY
|
||||
char buf[40];
|
||||
#endif
|
||||
int name_num;
|
||||
uint32_t lstate;
|
||||
|
||||
name_num = search_bit_form_lsb(current_default_layer_state);
|
||||
if( name_num < sizeof(layer_names)/sizeof(char *) ) {
|
||||
matrix_write_P(matrix, layer_names[name_num]);
|
||||
#ifdef DEBUG_OLED_LAYER_DISPLAY
|
||||
} else {
|
||||
snprintf(buf, sizeof(buf), "base=%d? ", name_num);
|
||||
matrix_write(matrix, buf);
|
||||
#endif
|
||||
}
|
||||
matrix_write_P(matrix, layer_names[current_default_layer]);
|
||||
matrix_write_P(matrix, PSTR("\n"));
|
||||
for( lstate = layer_state, name_num = 0;
|
||||
lstate && name_num < sizeof(layer_names)/sizeof(char *);
|
||||
@@ -495,11 +532,6 @@ void render_status(struct CharacterMatrix *matrix) {
|
||||
if( (lstate & 1) != 0 ) {
|
||||
if( layer_names[name_num] ) {
|
||||
matrix_write_P(matrix, layer_names[name_num]);
|
||||
#ifdef DEBUG_OLED_LAYER_DISPLAY
|
||||
} else {
|
||||
snprintf(buf, sizeof(buf), ":L=%d?", name_num);
|
||||
matrix_write(matrix, buf);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -23,19 +23,50 @@ define HELIX_CUSTOMISE_MSG
|
||||
$(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE))
|
||||
$(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
|
||||
$(info - LED_ANIMATION=$(LED_ANIMATIONS))
|
||||
$(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
|
||||
endef
|
||||
|
||||
# Helix keyboard customize
|
||||
# you can edit follows 4 Variables
|
||||
# jp: 以下の4つの変数を必要に応じて編集します。
|
||||
# you can edit follows 5 Variables
|
||||
# jp: 以下の5つの変数を必要に応じて編集します。
|
||||
OLED_ENABLE = no # OLED_ENABLE
|
||||
LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
|
||||
LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
|
||||
LED_ANIMATIONS = yes # LED animations
|
||||
IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
|
||||
|
||||
#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
|
||||
#### Do not enable these with audio at the same time.
|
||||
|
||||
### Helix keyboard 'five_rows' keymap: convenient command line option
|
||||
## make HELIX=<options> helix:five_rows
|
||||
## option= oled | back | under | na | ios
|
||||
## ex.
|
||||
## make HELIX=oled helix:five_rows
|
||||
## make HELIX=oled,back helix:five_rows
|
||||
## make HELIX=oled,under helix:five_rows
|
||||
## make HELIX=oled,back,na helix:five_rows
|
||||
## make HELIX=oled,back,ios helix:five_rows
|
||||
##
|
||||
ifneq ($(strip $(HELIX)),)
|
||||
ifeq ($(findstring oled,$(HELIX)), oled)
|
||||
OLED_ENABLE = yes
|
||||
endif
|
||||
ifeq ($(findstring back,$(HELIX)), back)
|
||||
LED_BACK_ENABLE = yes
|
||||
else ifeq ($(findstring under,$(HELIX)), under)
|
||||
LED_UNDERGLOW_ENABLE = yes
|
||||
endif
|
||||
ifeq ($(findstring na,$(HELIX)), na)
|
||||
LED_ANIMATIONS = no
|
||||
endif
|
||||
ifeq ($(findstring ios,$(HELIX)), ios)
|
||||
IOS_DEVICE_ENABLE = yes
|
||||
endif
|
||||
$(eval $(call HELIX_CUSTOMISE_MSG))
|
||||
$(info )
|
||||
endif
|
||||
|
||||
# Uncomment these for checking
|
||||
# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
|
||||
# $(eval $(call HELIX_CUSTOMISE_MSG))
|
||||
@@ -54,6 +85,10 @@ else
|
||||
RGBLIGHT_ENABLE = no
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
|
||||
OPT_DEFS += -DIOS_DEVICE_ENABLE
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(LED_ANIMATIONS)), yes)
|
||||
OPT_DEFS += -DRGBLIGHT_ANIMATIONS
|
||||
endif
|
||||
|
78
keyboards/hhkb/keymaps/eric/keymap.c
Normal file
78
keyboards/hhkb/keymaps/eric/keymap.c
Normal file
@@ -0,0 +1,78 @@
|
||||
/* -*- eval: (turn-on-orgtbl); -*-
|
||||
* default HHKB Layout
|
||||
*/
|
||||
#include "hhkb.h"
|
||||
|
||||
#define BASE 0
|
||||
#define HHKB 1
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* BASE Level: Default Layer
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Backs | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Cont | A | S | D | F | G | H | J | K | L | ; | ' | Ent | | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Fn0 | | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
|
||||
|------+------+-----------------------+------+------|
|
||||
| LAlt | LGUI | ******* Space ******* | RGUI | RAlt |
|
||||
|------+------+-----------------------+------+------|
|
||||
*/
|
||||
|
||||
[BASE] = KEYMAP( // default layer
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(HHKB), \
|
||||
KC_LGUI, KC_LALT, /* */ KC_SPC, KC_RALT, KC_RGUI),
|
||||
|
||||
|
||||
|
||||
/* Layer HHKB: HHKB mode (HHKB Fn)
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| Caps | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| | PgU | Up | PgD | Hm | & | | | | | Psc | Up | Del | Backs | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| | Lef | Dow | Rig | En | * | | | PgU | Hom | Lef | Rig | Enter | | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| | _ | + | ( | ) | | | ~ | | PgD | End | Dow | | | | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
|
||||
|------+------+----------------------+------+------+
|
||||
| **** | **** | ******************** | **** | **** |
|
||||
|------+------+----------------------+------+------+
|
||||
|
||||
*/
|
||||
|
||||
[HHKB] = KEYMAP(
|
||||
KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, \
|
||||
KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_HOME, KC_AMPR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, KC_DEL, KC_BSPC, \
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_ASTR, KC_TRNS, KC_TRNS, KC_PGUP, KC_HOME, KC_LEFT, KC_RGHT, KC_TRNS, \
|
||||
KC_TRNS, KC_UNDS, KC_PLUS, KC_LPRN, KC_RPRN, KC_PIPE, KC_TILD, KC_TRNS, KC_PGDN, KC_END, KC_DOWN, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)};
|
||||
|
||||
|
||||
const uint16_t PROGMEM fn_actions[] = {
|
||||
|
||||
};
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||
{
|
||||
// MACRODOWN only works in this function
|
||||
switch(id) {
|
||||
case 0:
|
||||
if (record->event.pressed) {
|
||||
register_code(KC_RSFT);
|
||||
} else {
|
||||
unregister_code(KC_RSFT);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
1
keyboards/hhkb/keymaps/krusli/config.h
Normal file
1
keyboards/hhkb/keymaps/krusli/config.h
Normal file
@@ -0,0 +1 @@
|
||||
#define USB_MAX_POWER_CONSUMPTION 100
|
78
keyboards/hhkb/keymaps/krusli/keymap.c
Normal file
78
keyboards/hhkb/keymaps/krusli/keymap.c
Normal file
@@ -0,0 +1,78 @@
|
||||
/* -*- eval: (turn-on-orgtbl); -*-
|
||||
* default HHKB Layout
|
||||
*/
|
||||
#include "hhkb.h"
|
||||
|
||||
#define BASE 0
|
||||
#define HHKB 1
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* BASE Level: Default Layer
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Backs | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Cont | A | S | D | F | G | H | J | K | L | ; | ' | Ent | | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
| Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Fn0 | | |
|
||||
|-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---|
|
||||
|
||||
|------+------+-----------------------+------+------|
|
||||
| LAlt | LGUI | ******* Space ******* | RGUI | RAlt |
|
||||
|------+------+-----------------------+------+------|
|
||||
*/
|
||||
|
||||
[BASE] = KEYMAP( // default layer
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(HHKB), \
|
||||
KC_LALT, KC_LGUI, /* */ KC_SPC, KC_RGUI, KC_RALT),
|
||||
|
||||
|
||||
|
||||
/* Layer HHKB: HHKB mode (HHKB Fn)
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| Pwr | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| Caps | | | | | | | | Psc | Slk | Pus | Up | | Backs | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| | VoD | VoU | Mut | | | * | / | Hom | PgU | Lef | Rig | Enter | | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
| | | | | | | + | - | End | PgD | Dow | | | | |
|
||||
|------+-----+-----+-----+----+----+----+----+-----+-----+-----+-----+-------+-------+-----|
|
||||
|
||||
|------+------+----------------------+------+------+
|
||||
| **** | **** | ******************** | **** | **** |
|
||||
|------+------+----------------------+------+------+
|
||||
|
||||
*/
|
||||
|
||||
[HHKB] = KEYMAP(
|
||||
KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, \
|
||||
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_BSPC, \
|
||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)};
|
||||
|
||||
|
||||
const uint16_t PROGMEM fn_actions[] = {
|
||||
|
||||
};
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||
{
|
||||
// MACRODOWN only works in this function
|
||||
switch(id) {
|
||||
case 0:
|
||||
if (record->event.pressed) {
|
||||
register_code(KC_RSFT);
|
||||
} else {
|
||||
unregister_code(KC_RSFT);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
45
keyboards/iris/keymaps/davidrambo/config.h
Normal file
45
keyboards/iris/keymaps/davidrambo/config.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@keeb.io>
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* Use I2C or Serial, not both */
|
||||
|
||||
#define USE_SERIAL
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define PERMISSIVE_HOLD
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
#define MASTER_LEFT
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
/*
|
||||
#undef RGBLED_NUM
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 12
|
||||
#define RGBLIGHT_HUE_STEP 8
|
||||
#define RGBLIGHT_SAT_STEP 8
|
||||
#define RGBLIGHT_VAL_STEP 8
|
||||
*/
|
||||
#define TAPPING_TERM 200
|
||||
#include "../../config.h"
|
||||
|
||||
#endif
|
158
keyboards/iris/keymaps/davidrambo/keymap.c
Normal file
158
keyboards/iris/keymaps/davidrambo/keymap.c
Normal file
@@ -0,0 +1,158 @@
|
||||
#include "iris.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
//keycode shorthands
|
||||
#define KC____ KC_TRNS
|
||||
#define KC_SYM MO(3)
|
||||
#define KC_MAC TO(0)
|
||||
#define KC_PC TO(1)
|
||||
#define KC_GM TO(2)
|
||||
#define KC_NAV LT(4, KC_TAB)
|
||||
#define KC_NAVPC LT(5, KC_TAB)
|
||||
|
||||
//text editor shortcuts for NAV and NAVPC
|
||||
#define KC_AL LALT(KC_LEFT)
|
||||
#define KC_AR LALT(KC_RGHT)
|
||||
#define KC_CL LCTL(KC_LEFT)
|
||||
#define KC_CR LCTL(KC_RGHT)
|
||||
#define KC_A_BS LALT(KC_BSPC)
|
||||
#define KC_C_BS LALT(KC_BSPC)
|
||||
|
||||
//internet browser tab shortcuts and window swapping for Mac and Windows
|
||||
#define KC_GSL LGUI(S(KC_LEFT))
|
||||
#define KC_GSR LGUI(S(KC_RGHT))
|
||||
#define KC_CPGD LCTL(KC_PGDN)
|
||||
#define KC_CPGU LCTL(KC_PGUP)
|
||||
|
||||
#define KC_CMBS GUI_T(KC_BSPC)
|
||||
#define KC_CTBS CTL_T(KC_BSPC)
|
||||
#define KC_C_TAB LCTL(KC_TAB)
|
||||
#define KC_G_TAB LGUI(KC_TAB)
|
||||
#define KC_A_TAB LALT(KC_TAB)
|
||||
|
||||
//layer shorthands
|
||||
#define _COLEMAK 0
|
||||
#define _PC 1
|
||||
#define _GAME 2
|
||||
#define _SYMBOL 3
|
||||
#define _NAV 4
|
||||
#define _NAVPC 5
|
||||
|
||||
enum {
|
||||
// SFT_LCK //tapdance declarations
|
||||
COLEMAK = 0,
|
||||
PC,
|
||||
GAME,
|
||||
SYMBOL,
|
||||
NAV, //Navigation layer for Mac Colemak
|
||||
NAVPC, //Navigation layer for PC Colemak
|
||||
SFT_LCK //tapdance declaration
|
||||
};
|
||||
|
||||
#define KC_SFLK TD(SFT_LCK) // alias for tapdance
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_COLEMAK] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
GRV , Q , W , F , P , G , J , L , U , Y ,SCLN,BSPC,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
NAV , A , R , S , T , D , H , N , E , I , O ,QUOT,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
SFLK, Z , X , C , V , B , PC , ENT , K , M ,COMM, DOT,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LCTL,LGUI,CMBS, SPC, SYM, LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_PC] = KC_KEYMAP(
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
NAVPC,___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , GM, ___, ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LGUI , LCTL , CTBS , ___ , ___ , ___
|
||||
),
|
||||
|
||||
[_GAME] = KC_KEYMAP(
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , T , Q , W , E , R , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
TAB , LSFT, A , S , D , F , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
I , LCTL, Z , X , C , V , M, P , ___, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LALT , LALT , SPC, BSPC, MAC, ___
|
||||
),
|
||||
|
||||
[_SYMBOL] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LBRC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , RBRC,
|
||||
|
||||
BSLS, EXLM, AT , HASH, DLR , PERC, CIRC, AMPR, ASTR, LPRN, RPRN, EQL ,
|
||||
|
||||
___ , HOME, END , VOLD, VOLU, MPLY,___, ___,___, MINS, ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , A_BS, ___, ___ , ___
|
||||
),
|
||||
|
||||
[_NAV] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , C_TAB, AL , UP , AR , DEL , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , GSL , LEFT, DOWN, RGHT, GSR , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ ,___, ___,G_TAB, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___
|
||||
),
|
||||
|
||||
[_NAVPC] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , C_TAB, CL , UP , CR , DEL , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , CPGU, LEFT, DOWN, RGHT, CPGD, ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ ,___, ___,A_TAB, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___
|
||||
),
|
||||
|
||||
};
|
||||
|
||||
// Shift vs. capslock function. From bbaserdem's Planck keymap.
|
||||
void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
|
||||
if (state->count == 1) {
|
||||
register_code (KC_LSFT);
|
||||
} else if (state->count == 2) {
|
||||
unregister_code (KC_LSFT);
|
||||
register_code (KC_CAPS);
|
||||
}
|
||||
}
|
||||
void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
|
||||
if (state->count == 1) {
|
||||
unregister_code (KC_LSFT);
|
||||
} else {
|
||||
unregister_code (KC_CAPS);
|
||||
}
|
||||
}
|
||||
|
||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
//Tap once for Shift, twice for Caps Lock
|
||||
[SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end)
|
||||
};
|
3
keyboards/iris/keymaps/davidrambo/readme.md
Normal file
3
keyboards/iris/keymaps/davidrambo/readme.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Colemak layout for Iris rev2.1 with Mac and Windows layers and a Gaming Layer.
|
||||
# Symbol layer is based on my Planck layout, so it provides numbers, symbols, and volume controls.
|
||||
# Two Navigation layers, for Mac and Windows Colemak layers respectively.
|
7
keyboards/iris/keymaps/davidrambo/rules.mk
Normal file
7
keyboards/iris/keymaps/davidrambo/rules.mk
Normal file
@@ -0,0 +1,7 @@
|
||||
RGBLIGHT_ENABLE = no
|
||||
BACKLIGHT_ENABLE = no
|
||||
TAP_DANCE_ENABLE = yes
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
45
keyboards/iris/keymaps/dnrambo/config.h
Normal file
45
keyboards/iris/keymaps/dnrambo/config.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@keeb.io>
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* Use I2C or Serial, not both */
|
||||
|
||||
#define USE_SERIAL
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define PERMISSIVE_HOLD
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
#define MASTER_LEFT
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
/*
|
||||
#undef RGBLED_NUM
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 12
|
||||
#define RGBLIGHT_HUE_STEP 8
|
||||
#define RGBLIGHT_SAT_STEP 8
|
||||
#define RGBLIGHT_VAL_STEP 8
|
||||
*/
|
||||
#define TAPPING_TERM 200
|
||||
#include "../../config.h"
|
||||
|
||||
#endif
|
158
keyboards/iris/keymaps/dnrambo/keymap.c
Normal file
158
keyboards/iris/keymaps/dnrambo/keymap.c
Normal file
@@ -0,0 +1,158 @@
|
||||
#include "iris.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
//keycode shorthands
|
||||
#define KC____ KC_TRNS
|
||||
#define KC_SYM MO(3)
|
||||
#define KC_MAC TO(0)
|
||||
#define KC_PC TO(1)
|
||||
#define KC_GM TO(2)
|
||||
#define KC_NAV LT(4, KC_TAB)
|
||||
#define KC_NAVPC LT(5, KC_TAB)
|
||||
|
||||
//text editor shortcuts for NAV and NAVPC
|
||||
#define KC_AL LALT(KC_LEFT)
|
||||
#define KC_AR LALT(KC_RGHT)
|
||||
#define KC_CL LCTL(KC_LEFT)
|
||||
#define KC_CR LCTL(KC_RGHT)
|
||||
#define KC_A_BS LALT(KC_BSPC)
|
||||
#define KC_C_BS LALT(KC_BSPC)
|
||||
|
||||
//internet browser tab shortcuts and window swapping for Mac and Windows
|
||||
#define KC_GSL LGUI(S(KC_LEFT))
|
||||
#define KC_GSR LGUI(S(KC_RGHT))
|
||||
#define KC_CPGD LCTL(KC_PGDN)
|
||||
#define KC_CPGU LCTL(KC_PGUP)
|
||||
|
||||
#define KC_CMBS GUI_T(KC_BSPC)
|
||||
#define KC_CTBS CTL_T(KC_BSPC)
|
||||
#define KC_C_TAB LCTL(KC_TAB)
|
||||
#define KC_G_TAB LGUI(KC_TAB)
|
||||
#define KC_A_TAB LALT(KC_TAB)
|
||||
|
||||
//layer shorthands
|
||||
#define _COLEMAK 0
|
||||
#define _PC 1
|
||||
#define _GAME 2
|
||||
#define _SYMBOL 3
|
||||
#define _NAV 4
|
||||
#define _NAVPC 5
|
||||
|
||||
enum {
|
||||
// SFT_LCK //tapdance declarations
|
||||
COLEMAK = 0,
|
||||
PC,
|
||||
GAME,
|
||||
SYMBOL,
|
||||
NAV, //Navigation layer for Mac Colemak
|
||||
NAVPC, //Navigation layer for PC Colemak
|
||||
SFT_LCK //tapdance declaration
|
||||
};
|
||||
|
||||
#define KC_SFLK TD(SFT_LCK) // alias for tapdance
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_COLEMAK] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
GRV , Q , W , F , P , G , J , L , U , Y ,SCLN,BSPC,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
NAV , A , R , S , T , D , H , N , E , I , O ,QUOT,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
SFLK, Z , X , C , V , B , PC , ENT , K , M ,COMM, DOT,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LCTL,LGUI,CMBS, SPC, SYM, LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_PC] = KC_KEYMAP(
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
NAVPC,___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , GM, ___, ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LGUI , LCTL , CTBS , ___ , ___ , ___
|
||||
),
|
||||
|
||||
[_GAME] = KC_KEYMAP(
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , T , Q , W , E , R , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
TAB , LSFT, A , S , D , F , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
I , LCTL, Z , X , C , V , M, P , ___, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LALT , LALT , SPC, BSPC, MAC, ___
|
||||
),
|
||||
|
||||
[_SYMBOL] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
LBRC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , RBRC,
|
||||
|
||||
BSLS, EXLM, AT , HASH, DLR , PERC, CIRC, AMPR, ASTR, LPRN, RPRN, EQL ,
|
||||
|
||||
___ , HOME, END , VOLD, VOLU, MPLY,___, ___,___, MINS, ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , A_BS, ___, ___ , ___
|
||||
),
|
||||
|
||||
[_NAV] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , C_TAB, AL , UP , AR , DEL , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , GSL , LEFT, DOWN, RGHT, GSR , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ ,___, ___,G_TAB, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___
|
||||
),
|
||||
|
||||
[_NAVPC] = KC_KEYMAP(
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , C_TAB, CL , UP , CR , DEL , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ , CPGU, LEFT, DOWN, RGHT, CPGD, ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___ ,___, ___,A_TAB, ___ , ___ , ___ , ___ , ___ ,
|
||||
|
||||
___ , ___ , ___ , ___ , ___ , ___
|
||||
),
|
||||
|
||||
};
|
||||
|
||||
// Shift vs. capslock function. From bbaserdem's Planck keymap.
|
||||
void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
|
||||
if (state->count == 1) {
|
||||
register_code (KC_LSFT);
|
||||
} else if (state->count == 2) {
|
||||
unregister_code (KC_LSFT);
|
||||
register_code (KC_CAPS);
|
||||
}
|
||||
}
|
||||
void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
|
||||
if (state->count == 1) {
|
||||
unregister_code (KC_LSFT);
|
||||
} else {
|
||||
unregister_code (KC_CAPS);
|
||||
}
|
||||
}
|
||||
|
||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
//Tap once for Shift, twice for Caps Lock
|
||||
[SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end)
|
||||
};
|
3
keyboards/iris/keymaps/dnrambo/readme.md
Normal file
3
keyboards/iris/keymaps/dnrambo/readme.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Colemak layout for Iris rev2.1 with Mac and Windows layers and a Gaming Layer.
|
||||
# Symbol layer is based on my Planck layout, so it provides numbers, symbols, and volume controls.
|
||||
# Two Navigation layers, for Mac and Windows Colemak layers respectively.
|
7
keyboards/iris/keymaps/dnrambo/rules.mk
Normal file
7
keyboards/iris/keymaps/dnrambo/rules.mk
Normal file
@@ -0,0 +1,7 @@
|
||||
RGBLIGHT_ENABLE = no
|
||||
BACKLIGHT_ENABLE = no
|
||||
TAP_DANCE_ENABLE = yes
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
119
keyboards/iris/keymaps/impstyle/keymap.c
Normal file
119
keyboards/iris/keymaps/impstyle/keymap.c
Normal file
@@ -0,0 +1,119 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
#define _QWERTY 0
|
||||
#define _LOWER 1
|
||||
#define _RAISE 2
|
||||
#define _ADJUST 16
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
LOWER,
|
||||
RAISE,
|
||||
ADJUST,
|
||||
};
|
||||
|
||||
#define KC_ KC_TRNS
|
||||
#define _______ KC_TRNS
|
||||
|
||||
#define KC_LOWR LOWER
|
||||
#define KC_RASE RAISE
|
||||
#define KC_RST RESET
|
||||
#define KC_BL_S BL_STEP
|
||||
#define KC_TGLW TG(_LOWER)
|
||||
#define KC_TGRS TG(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = LAYOUT(
|
||||
KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_BSPC,
|
||||
KC_TAB , KC_Q , KC_W ,KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_MINS ,
|
||||
KC_LSFT, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
|
||||
KC_LCTL, KC_Z , KC_X , KC_C , KC_V , KC_B ,KC_TGRS, KC_TGLW , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_BSLASH,
|
||||
KC_LGUI,KC_RASE,KC_SPC , KC_ENT ,KC_LOWR,KC_LALT
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT(
|
||||
KC_TILD,KC_EXLM, KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_BSPC,
|
||||
_______,_______,KC_PGUP,_______,_______,KC_LBRC, KC_RBRC, KC_P7 , KC_P8 , KC_P9 ,KC_PLUS,_______,
|
||||
_______ ,KC_HOME,KC_PGDN,KC_END,_______,KC_LPRN, KC_RPRN, KC_P4 , KC_P5 , KC_P6 ,KC_MINS,KC_PIPE,
|
||||
_______,_______,_______,_______,_______,_______,_______, _______ ,_______, KC_P1 , KC_P2 , KC_P3 ,KC_EQL ,KC_UNDS ,
|
||||
_______ ,_______,KC_DEL , KC_BSPC ,_______, KC_P0
|
||||
|
||||
),
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_F12 , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 ,
|
||||
_______ ,_______, KC_UP ,_______,_______,KC_LBRC, KC_RBRC,_______,KC_NLCK,KC_INS ,KC_SLCK,KC_MUTE,
|
||||
_______ ,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_LPRN, KC_RPRN,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_VOLU,
|
||||
_______,_______,_______,_______,_______,_______,_______, KC_PLUS,_______,_______,_______,_______,_______,KC_VOLD,
|
||||
_______ ,_______,_______, KC_EQL,_______,_______
|
||||
),
|
||||
|
||||
[_ADJUST] = LAYOUT(
|
||||
//,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------.
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______,
|
||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||
RESET , DEBUG , RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______,
|
||||
//|--------+--------+--------+--------+--------+--------+--------. ,--------|--------+--------+--------+--------+--------+--------|
|
||||
BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
//`--------+--------+--------+----+---+--------+--------+--------/ \--------+--------+--------+---+----+--------+--------+--------'
|
||||
_______, _______, _______, _______, _______, _______
|
||||
// `--------+--------+--------' `--------+--------+--------'
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
|
||||
#endif
|
||||
|
||||
void persistent_default_layer_set(uint16_t default_layer) {
|
||||
eeconfig_update_default_layer(default_layer);
|
||||
default_layer_set(default_layer);
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case QWERTY:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_QWERTY);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case LOWER:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_LOWER);
|
||||
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||
} else {
|
||||
layer_off(_LOWER);
|
||||
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case RAISE:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_RAISE);
|
||||
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||
} else {
|
||||
layer_off(_RAISE);
|
||||
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case ADJUST:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_ADJUST);
|
||||
} else {
|
||||
layer_off(_ADJUST);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
@@ -18,13 +18,24 @@ Note that this is a complete replacement for the firmware, so you won't be
|
||||
using Bootmapper Client to change any keyboard settings, since not all the
|
||||
USB report options are supported.
|
||||
|
||||
In addition you may need the AVR toolchain and `bootloadHID` for flashing:
|
||||
In addition you may need the AVR toolchain and `bootloadHID` ([GitHub repo](https://github.com/whiteneon/bootloadHID)) for flashing:
|
||||
|
||||
For macOS:
|
||||
```
|
||||
$ brew cask install crosspack-avr
|
||||
$ brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
|
||||
```
|
||||
|
||||
For Linux:
|
||||
```
|
||||
$ sudo apt install libusb-dev
|
||||
$ wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz
|
||||
$ tar -xzf bootloadHID.2012-12-08.tar.gz
|
||||
$ cd bootloadHID.2012-12-08/commandline
|
||||
$ make
|
||||
$ sudo cp bootloadHID /usr/bin
|
||||
```
|
||||
|
||||
In order to use the `./program` script, which can reboot the board into
|
||||
the bootloader, you'll need Python 2 with PyUSB installed:
|
||||
|
||||
@@ -32,7 +43,7 @@ the bootloader, you'll need Python 2 with PyUSB installed:
|
||||
$ pip install pyusb
|
||||
```
|
||||
|
||||
If you prefer, you can just build it and flash the firmware directly with
|
||||
If you prefer (or are having issues with a `program` flash), you can just build it (`make jj40:<keymap-name>` and flash the firmware (`.hex` file) directly with
|
||||
`bootloadHID` if you boot the board while holding down `Backspace` (`Top Right Key`) to keep it
|
||||
in the bootloader:
|
||||
|
||||
|
@@ -15,7 +15,7 @@ enum jj40_layers {
|
||||
_FUNC,
|
||||
_MFNC,
|
||||
_ADJUST,
|
||||
_DYN
|
||||
_MOUSE
|
||||
};
|
||||
|
||||
enum jj40_keycodes {
|
||||
@@ -27,6 +27,7 @@ enum jj40_keycodes {
|
||||
MLWR,
|
||||
RAISE,
|
||||
MRSE,
|
||||
MOUSE,
|
||||
DYNAMIC_MACRO_RANGE
|
||||
};
|
||||
|
||||
@@ -64,14 +65,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | MENU | Alt | Ctrl | Fn |
|
||||
* | Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_FUNC] = KEYMAP(\
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 ,\
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, UK_TILD, KC_INSERT ,\
|
||||
KC_LSHIFT, KC_NONUS_BSLASH, KC_GRAVE, KC_NONUS_HASH, KC_PAST, KC_MINS, KC_EQL, KC_BSLASH, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,\
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 ,\
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, UK_TILD, KC_INSERT ,\
|
||||
KC_LSHIFT, KC_NONUS_BSLASH, KC_GRAVE, KC_NONUS_HASH, KC_PAST, KC_MINS, KC_EQL, KC_BSLASH, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,\
|
||||
_______, _______, _______, _______, _______, _______, _______, MO(_MOUSE), _______, _______, _______, _______ \
|
||||
),
|
||||
|
||||
/* Lower
|
||||
@@ -100,51 +101,50 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | { | } | | |< | LEFT | DOWN |RIGHT | >| |ZOOM -|
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | Alt | Enter|Raise | | | | |
|
||||
* | Mouse| | | | | Alt | Enter|Raise | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_RAISE] = KEYMAP(\
|
||||
KC_GRV, XXXXXXX, M(1), KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, KC_PGUP, KC_HOME, KC_PGDOWN, XXXXXXX, KC_PSCREEN ,\
|
||||
KC_GRV, XXXXXXX, XXXXXXX, LSFT(KC_9), LSFT(KC_0), XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_END, XXXXXXX, LCTL(LSFT(KC_EQL)) ,\
|
||||
_______, XXXXXXX, XXXXXXX, LSFT(KC_LBRC), LSFT(KC_RBRC), XXXXXXX, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), LCTL(KC_MINS) ,\
|
||||
_______, _______, _______, _______, _______, KC_LALT, KC_ENT, _______, XXXXXXX, _______, _______, _______ \
|
||||
KC_GRV, XXXXXXX, M(1), KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, KC_PGUP, KC_HOME, KC_PGDOWN, XXXXXXX, KC_PSCREEN ,\
|
||||
KC_GRV, XXXXXXX, XXXXXXX, LSFT(KC_9), LSFT(KC_0), XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_END, XXXXXXX, LCTL(LSFT(KC_EQL)) ,\
|
||||
_______, XXXXXXX, XXXXXXX, LSFT(KC_LBRC), LSFT(KC_RBRC), XXXXXXX, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), LCTL(KC_MINS) ,\
|
||||
MO(_MOUSE), _______, _______, _______, _______, KC_LALT, KC_ENT, _______, XXXXXXX, _______, _______, _______ \
|
||||
),
|
||||
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ???? | Reset|Qwerty| | | | | | | | | Del |
|
||||
* | ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | CAPS | | | | | | | Mute | Vol+ | Play | | |
|
||||
* | CAPS | | | | | PLAY1| PLAY2| Mute | Vol+ | Play | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | | | Prev | Vol- | Next | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | DYN | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = KEYMAP(\
|
||||
M(0), RESET, QWERTY, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL ,\
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE, _______, _______ ,\
|
||||
TG(_MAC), _______, _______, _______, _______, _______, _______, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK, _______, _______ ,\
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, MO(_DYN), _______, _______, _______ \
|
||||
),
|
||||
|
||||
/* DYN: Macro Recording and Playback
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | | | | | REC1 | REC2 | | | | | |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | | | | | PLAY1| PLAY2| | | | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | STOP | STOP | | | | | |
|
||||
* | | | | | | STOP | STOP | Prev | Vol- | Next | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_DYN]= KEYMAP(\
|
||||
_______, _______, _______, _______, _______, DYN_REC_START1, DYN_REC_START2, _______, _______, _______, _______, _______,\
|
||||
_______, _______, _______, _______, _______, DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, _______, _______, _______, _______, _______,\
|
||||
_______, _______, _______, _______, _______, DYN_REC_STOP, DYN_REC_STOP, _______, _______, _______, _______, _______,\
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______\
|
||||
[_ADJUST] = KEYMAP(\
|
||||
M(0), RESET, QWERTY, _______, _______, DYN_REC_START1, DYN_REC_START2, _______, _______, _______, _______, KC_DEL ,\
|
||||
KC_CAPS, _______, _______, _______, _______, DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE, _______, _______ ,\
|
||||
TG(_MAC), _______, _______, _______, _______, DYN_REC_STOP, DYN_REC_STOP, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK, _______, _______ ,\
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
|
||||
),
|
||||
|
||||
/* Mouse
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ESC | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN |RIGHT | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_MOUSE] = KEYMAP(\
|
||||
KC_ESC , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,\
|
||||
KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______, _______,\
|
||||
KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______, _______,\
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______\
|
||||
),
|
||||
|
||||
[_MAC]= KEYMAP(\
|
||||
@@ -247,32 +247,22 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t keycode, uint8_t opt) {
|
||||
// These would trigger when you hit a key mapped as M(0)
|
||||
if (record->event.pressed) {
|
||||
switch(keycode) {
|
||||
case 0: // Some custom string here
|
||||
SEND_STRING("");
|
||||
return false;
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||
switch(id) {
|
||||
// These would trigger when you hit a key mapped as M(0)
|
||||
case 0:
|
||||
if (record->event.pressed) {
|
||||
return MACRO(
|
||||
// SENSITIVE
|
||||
END
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 1: // Word Select
|
||||
if (record->event.pressed) {
|
||||
return MACRO(
|
||||
DOWN(KC_LCTL), DOWN(KC_RIGHT), UP(KC_RIGHT), DOWN(KC_LSFT), DOWN(KC_LEFT), UP(KC_LEFT), UP(KC_LSFT), UP(KC_LCTL),
|
||||
END
|
||||
);
|
||||
}
|
||||
case 2: // Word Select - MAC
|
||||
if (record->event.pressed) {
|
||||
return MACRO(
|
||||
DOWN(KC_LALT), DOWN(KC_RIGHT), UP(KC_RIGHT), DOWN(KC_LSFT), DOWN(KC_LEFT), UP(KC_LEFT), UP(KC_LSFT), UP(KC_LALT),
|
||||
END
|
||||
);
|
||||
}
|
||||
case 1: // Word Select
|
||||
SEND_STRING(SS_DOWN(X_LCTRL) SS_TAP(X_RIGHT) SS_DOWN(X_LSHIFT) SS_TAP(X_LEFT) SS_UP(X_LSHIFT) SS_UP(X_LCTRL));
|
||||
return false;
|
||||
|
||||
case 2: // Word Select Mac
|
||||
SEND_STRING(SS_DOWN(X_LALT) SS_TAP(X_RIGHT) SS_DOWN(X_LSHIFT) SS_TAP(X_LEFT) SS_UP(X_LSHIFT) SS_UP(X_LALT));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
||||
|
@@ -27,7 +27,7 @@ Activated when `fn` held in the above `qwerty` layer.
|
||||
| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
|
||||
| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
|
||||
| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | MENU | Alt | Ctrl | Fn |
|
||||
| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn |
|
||||
|
||||
##### Lower Layer
|
||||
Activated when `Lower` is held in the above `qwerty` layer.
|
||||
@@ -56,38 +56,37 @@ Activated when `Lower` is held in the above `qwerty` layer.
|
||||
| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
|
||||
| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
|
||||
| | | | { | } | ||<| LEFT | DOWN |RIGHT |>||ZOOM -|
|
||||
| | | | | | Alt | Enter |Raise | | | | |
|
||||
| Mouse | | | | | Alt | Enter |Raise | | | | |
|
||||
|
||||
##### Lower + Raise
|
||||
Activated when `Lower` and `Raise` are held together the above `qwerty` layer.
|
||||
Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
|
||||
|
||||
* Audio controls in the same position as cursor keys from the `Raise` layer.
|
||||
* ????: Runs a macro for outputting a text string. Do not use this store passwords.
|
||||
* Reset: Enter bootloader for flashing firmware to the keyboard.
|
||||
* CAPS: Toggle caps lock.
|
||||
* DYN: Enter `DYN` layer.
|
||||
* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
|
||||
MRSE with RAISE and MFNC with FUNC respectively.
|
||||
* REC1, REC2: Start recording macro.
|
||||
* PLAY1, PLAY2: Playback macro.
|
||||
* STOP1, STOP2: Stop recording macro.
|
||||
|
||||
| | | | | | | | | | | | |
|
||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
||||
| ???? | Reset|Qwerty| | | | | | | | | Del |
|
||||
| CAPS | | | | | | | Mute | Vol+ | Play | | |
|
||||
| MAC | | | | | | | Prev | Vol- | Next | | |
|
||||
| | | | | | | | | DYN | | | |
|
||||
|
||||
##### DYN
|
||||
Activated when `DYN` held along with `Lower` and `Raise`
|
||||
Allows recording of macros. To start recording the macro, press either REC1 or REC2.
|
||||
To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
|
||||
|
||||
| | | | | | | | | | | | |
|
||||
| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
||||
| | | | | | REC1 | REC2 | | | | | |
|
||||
| | | | | | PLAY1| PLAY2| | | | | |
|
||||
| | | | | | STOP | STOP | | | | | |
|
||||
| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
|
||||
| CAPS | | | | | PLAY1| PLAY | Mute | Vol+ | Play | | |
|
||||
| MAC | | | | | STOP | STOP | Prev | Vol- | Next | | |
|
||||
| | | | | | | | | | | | |
|
||||
|
||||
##### Mouse
|
||||
Activated when `fn` and `Raise` are held together.
|
||||
|
||||
| | | | | | | | | | | | |
|
||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
|
||||
| | | | | | | | | | | | |
|
||||
| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
|
||||
| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN |RIGHT | | |
|
||||
| | | | | | | | | | | | |
|
||||
|
||||
####Manual Flashing of hex file
|
||||
`bootloadHID -r .build/jj40_ajp10304.hex`
|
||||
|
@@ -2,4 +2,5 @@ ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
||||
|
||||
AUDIO_ENABLE = no
|
||||
AUDIO_ENABLE = no
|
||||
MOUSEKEY_ENABLE = yes
|
||||
|
@@ -4,6 +4,6 @@
|
||||
#include "../../config.h"
|
||||
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
#define TAPPING_TERM 300
|
||||
// #define TAPPING_TERM 300
|
||||
|
||||
#endif
|
||||
|
@@ -4,6 +4,7 @@
|
||||
#define _QWERTY 0
|
||||
#define _LOWER 1
|
||||
#define _RAISE 2
|
||||
#define _NUMPAD 3
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
@@ -15,66 +16,84 @@ void matrix_scan_user(void) {
|
||||
// runs at every matrix scan.
|
||||
}
|
||||
|
||||
enum {
|
||||
TD_H_E = 0
|
||||
};
|
||||
|
||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
[TD_H_E] = ACTION_TAP_DANCE_DOUBLE(KC_HOME, KC_END)
|
||||
};
|
||||
// enum {
|
||||
// TD_H_E = 0
|
||||
// };
|
||||
//
|
||||
// qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
// [TD_H_E] = ACTION_TAP_DANCE_DOUBLE(KC_HOME, KC_END)
|
||||
// };
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | S | D | F | G | H | J | K | L | ; | " |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Ctrl | GUI | Alt |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_QWERTY] = KEYMAP( \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \
|
||||
TD(TD_H_E), KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
|
||||
),
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | S | D | F | G | H | J | K | L | ; | " |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Ctrl | GUI | Alt |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_QWERTY] = KEYMAP( \
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , \
|
||||
TO(_NUMPAD),KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
|
||||
),
|
||||
|
||||
/* Lower
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 | | | | |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_LOWER] = KEYMAP( \
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,_______, _______, _______, \
|
||||
BL_TOGG, BL_STEP, BL_BRTG, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
|
||||
),
|
||||
/* Lower
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 | RGB | RGB | RGB | RGB |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | RGB | RGB | RGB | | | Next | Vol- | Vol+ | Play | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_LOWER] = KEYMAP( \
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, _______, \
|
||||
_______, RGB_SAD, RGB_SAI, RGB_HUI, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
|
||||
),
|
||||
|
||||
/* Raise
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 | RGB | RGB | RGB | RGB |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | RGB | RGB | RGB | RGB | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_RAISE] = KEYMAP( \
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, _______, \
|
||||
RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
|
||||
)
|
||||
/* Raise
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 | Home | End | PgUp | PgDn |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Prev | Play | Next | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_RAISE] = KEYMAP( \
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_END, KC_PGUP, KC_PGDN, _______, \
|
||||
_______, KC_MRWD, KC_MPLY, KC_MNXT, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
|
||||
),
|
||||
|
||||
/* Numpad
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | Esc | 7 | 8 | 9 | * | / | | | | | | |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | <-- | 4 | 5 | 6 | + | - | | | | | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | 1 | 2 | 3 |Enter |Enter | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Qwerty| 0 | . | . |Enter |Enter | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_NUMPAD] = KEYMAP( \
|
||||
KC_ESC, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, _______, _______, _______, _______, _______, _______, \
|
||||
KC_BSPC, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_PMNS, _______, _______, _______, _______, _______, _______, \
|
||||
_______, KC_P1, KC_P2, KC_P3, KC_PENT, KC_PENT, _______, _______, _______, _______, _______, _______, \
|
||||
TO(_QWERTY),KC_P0, KC_PDOT, KC_PDOT, KC_PENT, _______, _______, _______, _______, _______, _______ \
|
||||
)
|
||||
};
|
||||
|
@@ -1,2 +1,4 @@
|
||||
# krusli
|
||||
Default JJ40 keymap, adapted with RGB underglow support. GUI and LAlt is also swapped.
|
||||
JJ40 keymap based off the default Planck layout with a numpad layer and with RGB underglow controls.
|
||||
|
||||
GUI and LAlt is also swapped to their standard positions.
|
||||
|
@@ -1 +1 @@
|
||||
TAP_DANCE_ENABLE = yes
|
||||
# TAP_DANCE_ENABLE = yes
|
||||
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -139,7 +139,7 @@
|
||||
* @brief Enables the SERIAL over USB subsystem.
|
||||
*/
|
||||
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||||
#define HAL_USE_SERIAL_USB TRUE
|
||||
#define HAL_USE_SERIAL_USB FALSE
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -23,7 +23,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0xFEED
|
||||
#define MANUFACTURER You
|
||||
#define PRODUCT kinesis-advantage
|
||||
#define PRODUCT Kinesis Advantage/Contoured
|
||||
#define DESCRIPTION A custom keyboard
|
||||
|
||||
// Mouse
|
||||
|
@@ -1,10 +1,8 @@
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
// place overrides here
|
||||
#define TAPPING_TERM 200
|
||||
|
||||
#endif
|
203
keyboards/kinesis/keymaps/carpalx/keymap.c
Normal file
203
keyboards/kinesis/keymaps/carpalx/keymap.c
Normal file
@@ -0,0 +1,203 @@
|
||||
#include "kinesis.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
#define _CX 0 // Carpalx layer
|
||||
#define _QW 1 // Qwerty layer
|
||||
#define _KP 2 // Keypad + Media Layer
|
||||
|
||||
// Macro name shortcuts
|
||||
#define DVORAK M(_DV)
|
||||
#define QWERTY M(_QW)
|
||||
#define COLEMAK M(_CM)
|
||||
|
||||
// Fillers to make layering more clear
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
|
||||
/*
|
||||
|
||||
Function Keys on All Layers (Keypad toggles):
|
||||
,---------------------------------------------------------------.
|
||||
| L0 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 |
|
||||
`---------------------------------------------------------------'
|
||||
,---------------------------------------------------------------.
|
||||
| F9 | F10 | F11 | F12 | PSCR | L1 | L2 | L2 | RESET |
|
||||
`---------------------------------------------------------------'
|
||||
|
||||
L0 Carpalx layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| Del | 1 | 3 | 5 | 7 | 9 || 0 | 8 | 6 | 4 | 2 | - |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| Tab | Q | G | M | L | W || B | Y | U | V | ; | = |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| ESC | D | S | T | N | R || I | A | E | O | H | ' |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| LShift | Z | X | C | F | J || K | P | , | . | / | RShift |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| ` | [ | Left | Rght | | Dn | Up | ] | \ |
|
||||
`---------------------------' `---------------------------'
|
||||
,----------------.,----------------.
|
||||
| LCtl | LAlt || LAlt | RCtl |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | RGUI || RGUI | | |
|
||||
| BkSp | ESC |--------||--------| Enter | Space |
|
||||
| | | MO(L2) || MO(L2) | | |
|
||||
`-----------------------'`------------------------'
|
||||
|
||||
L1 QWERTY layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| Del | 1 | 3 | 5 | 7 | 9 || 0 | 8 | 6 | 4 | 2 | - |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| Tab | Q | W | E | R | T || Y | U | I | O | P | = |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| ESC | A | S | D | F | G || H | J | K | L | ; | ' |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| LShift | Z | X | C | V | B || N | M | , | . | / | RShift |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| ` | [ | Left | Rght | | Dn | Up | ] | \ |
|
||||
`---------------------------' `---------------------------'
|
||||
,----------------.,----------------.
|
||||
| LCtl | LAlt || LAlt | RCtl |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | RGUI || RGUI | | |
|
||||
| BkSp | ESC |--------||--------| Enter | Space |
|
||||
| | | MO(L1) || MO(L2) | | |
|
||||
`-----------------------'`------------------------'
|
||||
|
||||
L2 Keypad + Media layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| | | | | | || | NmLk | KP = | KP / | KP * | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | | Mute | Vol- | Vol+ | || | KP 7 | KP 8 | KP 9 | KP - | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | Stop | Prev | Play | Next | Sel || | KP 4 | KP 5 | KP 6 | KP + | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | | | | | || | KP 1 | KP 2 | KP 3 |KP Ent| |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| | | | | | ( | ) | KP . |KP Ent| |
|
||||
`---------------------------' `----------------------------------'
|
||||
,----------------.,----------------.
|
||||
| | || | |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | || | | |
|
||||
| | |--------||--------|KP Entr| KP 0 |
|
||||
| | | || | | |
|
||||
`-----------------------'`------------------------'
|
||||
*/
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_CX] = KEYMAP(
|
||||
// Left Hand
|
||||
TO(_CX), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
|
||||
KC_DEL, KC_1, KC_3, KC_5, KC_7, KC_9,
|
||||
KC_TAB, KC_Q, KC_G, KC_M, KC_L, KC_W,
|
||||
KC_ESC, KC_D, KC_S, KC_T, KC_N, KC_R,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_F, KC_J,
|
||||
KC_GRV, KC_LBRC, KC_LEFT, KC_RGHT,
|
||||
// Left Thumb
|
||||
KC_LCTL, KC_LALT,
|
||||
KC_RGUI,
|
||||
KC_BSPC, KC_ESC, MO(_KP),
|
||||
|
||||
// Right Hand
|
||||
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, TO(_QW), TO(_KP), TO(_KP), RESET,
|
||||
KC_0, KC_8, KC_6, KC_4, KC_2, KC_MINS,
|
||||
KC_B, KC_Y, KC_U, KC_V, KC_SCLN, KC_EQL,
|
||||
KC_I, KC_A, KC_E, KC_O, KC_H, KC_QUOT,
|
||||
KC_K, KC_P, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_DOWN, KC_UP, KC_RBRC, KC_BSLS,
|
||||
// Right Thumb
|
||||
KC_RALT, KC_RCTL,
|
||||
KC_RGUI,
|
||||
MO(_KP), KC_ENT, KC_SPC
|
||||
),
|
||||
|
||||
[_QW] = KEYMAP(
|
||||
// Left Hand
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______,
|
||||
_______, KC_Q, KC_W, KC_E, KC_R, KC_T,
|
||||
_______, KC_A, KC_S, KC_D, KC_F, KC_G,
|
||||
_______, KC_Z, KC_X, KC_C, KC_V, KC_B,
|
||||
_______, _______, _______, _______,
|
||||
// Left Thumb
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______,
|
||||
|
||||
// Right Hand
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______,
|
||||
KC_Y, KC_U, KC_I, KC_O, KC_P, _______,
|
||||
KC_H, KC_J, KC_K, KC_L, KC_SCLN, _______,
|
||||
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______,
|
||||
_______, _______, _______, _______,
|
||||
// Right Thumb
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______
|
||||
),
|
||||
|
||||
[_KP] = KEYMAP(
|
||||
// Left Hand
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______,
|
||||
_______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______,
|
||||
_______, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSEL,
|
||||
_______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______,
|
||||
// Left Thumb
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______,
|
||||
|
||||
// Right Hand */
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______,
|
||||
_______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______,
|
||||
_______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______,
|
||||
_______, KC_P1, KC_P2, KC_P3, KC_PENT, _______,
|
||||
KC_LPRN, KC_RPRN, KC_PDOT, KC_PENT,
|
||||
// Right Thumb
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, KC_PENT, KC_P0
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
||||
const uint16_t PROGMEM fn_actions[] = {
|
||||
|
||||
};
|
||||
|
||||
void persistent_default_layer_set(uint16_t default_layer) {
|
||||
eeconfig_update_default_layer(default_layer);
|
||||
default_layer_set(default_layer);
|
||||
}
|
||||
|
||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||
{
|
||||
switch(id) {
|
||||
case _CX:
|
||||
if (record->event.pressed) {
|
||||
persistent_default_layer_set(1UL<<_CX);
|
||||
}
|
||||
break;
|
||||
case _QW:
|
||||
if (record->event.pressed) {
|
||||
persistent_default_layer_set(1UL<<_QW);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
||||
|
||||
// Runs just one time when the keyboard initializes.
|
||||
void matrix_init_user(void) {
|
||||
|
||||
};
|
83
keyboards/kinesis/keymaps/carpalx/readme.md
Normal file
83
keyboards/kinesis/keymaps/carpalx/readme.md
Normal file
@@ -0,0 +1,83 @@
|
||||
# Carpalx Kinesis Keymap
|
||||
|
||||
## About this keymap
|
||||
|
||||
Carpalx layout (also known as QGMLWBY) is an optimized alternative keyboard layout.
|
||||
Learn more about it at:
|
||||
[http://mkweb.bcgsc.ca/carpalx/?popular_alternatives]()
|
||||
|
||||
The layout also includes a QWERTY layer to help with the transition.
|
||||
- Scroll Lock: QWERTY layer
|
||||
- Esc (Fn row): Carpalx layer
|
||||
- Keypad: Keypad and Media layer
|
||||
|
||||
## Details mapping
|
||||
|
||||
Function Keys on All Layers (Keypad toggles):
|
||||
,---------------------------------------------------------------.
|
||||
| L0 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 |
|
||||
`---------------------------------------------------------------'
|
||||
,---------------------------------------------------------------.
|
||||
| F9 | F10 | F11 | F12 | PSCR | L1 | L2 | L2 | RESET |
|
||||
`---------------------------------------------------------------'
|
||||
|
||||
L0 Carpalx layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| Del | 1 | 3 | 5 | 7 | 9 || 0 | 8 | 6 | 4 | 2 | - |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| Tab | Q | G | M | L | W || B | Y | U | V | ; | = |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| ESC | D | S | T | N | R || I | A | E | O | H | ' |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| LShift | Z | X | C | F | J || K | P | , | . | / | RShift |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| ` | [ | Left | Rght | | Dn | Up | ] | \ |
|
||||
`---------------------------' `---------------------------'
|
||||
,----------------.,----------------.
|
||||
| LCtl | LAlt || LAlt | RCtl |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | RGUI || RGUI | | |
|
||||
| BkSp | ESC |--------||--------| Enter | Space |
|
||||
| | | MO(L2) || MO(L2) | | |
|
||||
`-----------------------'`------------------------'
|
||||
|
||||
L1 QWERTY layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| Del | 1 | 3 | 5 | 7 | 9 || 0 | 8 | 6 | 4 | 2 | - |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| Tab | Q | W | E | R | T || Y | U | I | O | P | = |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| ESC | A | S | D | F | G || H | J | K | L | ; | ' |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| LShift | Z | X | C | V | B || N | M | , | . | / | RShift |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| ` | [ | Left | Rght | | Dn | Up | ] | \ |
|
||||
`---------------------------' `---------------------------'
|
||||
,----------------.,----------------.
|
||||
| LCtl | LAlt || LAlt | RCtl |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | RGUI || RGUI | | |
|
||||
| BkSp | ESC |--------||--------| Enter | Space |
|
||||
| | | MO(L1) || MO(L2) | | |
|
||||
`-----------------------'`------------------------'
|
||||
|
||||
L2 Keypad + Media layer:
|
||||
,-------------------------------------------.,-------------------------------------------.
|
||||
| | | | | | || | NmLk | KP = | KP / | KP * | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | | Mute | Vol- | Vol+ | || | KP 7 | KP 8 | KP 9 | KP - | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | Stop | Prev | Play | Next | Sel || | KP 4 | KP 5 | KP 6 | KP + | |
|
||||
|--------+------+------+------+------+------||------+------+------+------+------+--------|
|
||||
| | | | | | || | KP 1 | KP 2 | KP 3 |KP Ent| |
|
||||
`--------+------+------+------+------+------'`------+------+------+------+------+--------'
|
||||
| | | | | | ( | ) | KP . |KP Ent| |
|
||||
`---------------------------' `----------------------------------'
|
||||
,----------------.,----------------.
|
||||
| | || | |
|
||||
,------|-------|--------||--------+-------+-------.
|
||||
| | | || | | |
|
||||
| | |--------||--------|KP Entr| KP 0 |
|
||||
| | | || | | |
|
||||
`-----------------------'`------------------------'
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user