mirror of
https://github.com/qmk/qmk_firmware.git
synced 2026-06-20 22:35:40 -04:00
Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b386ccc786 | |||
| 0ed492978a | |||
| a2c6257942 | |||
| a14c9a057a | |||
| c9838fea12 | |||
| dfe18b40aa | |||
| f099142004 | |||
| d98ed28e7c | |||
| beb9f3ab71 | |||
| 77c04d148e | |||
| 90c74701aa | |||
| ede67df6bd | |||
| 27bf464dc3 | |||
| fb02593bd4 | |||
| c0dbd81b2b |
@@ -25,6 +25,11 @@ with open(os.path.join(qmk_dir, 'requirements.txt'), 'r') as fd:
|
||||
line = line.split('#')[0]
|
||||
|
||||
module = line.split('=')[0] if '=' in line else line
|
||||
|
||||
if module in ['pep8-naming']:
|
||||
# Not every module is importable by its own name.
|
||||
continue
|
||||
|
||||
if not find_spec(module):
|
||||
print('Could not find module %s!' % module)
|
||||
print('Please run `pip3 install -r requirements.txt` to install the python dependencies.')
|
||||
|
||||
@@ -0,0 +1,123 @@
|
||||
* [Complete Newbs Guide](ru-ru/newbs.md)
|
||||
* [Getting Started](ru-ru/newbs_getting_started.md)
|
||||
* [Building Your First Firmware](ru-ru/newbs_building_firmware.md)
|
||||
* [Flashing Firmware](ru-ru/newbs_flashing.md)
|
||||
* [Testing and Debugging](ru-ru/newbs_testing_debugging.md)
|
||||
* [Git Best Practices](ru-ru/newbs_best_practices.md)
|
||||
* [Learning Resources](ru-ru/newbs_learn_more_resources.md)
|
||||
|
||||
* [QMK Basics](ru-ru/README.md)
|
||||
* [QMK Introduction](ru-ru/getting_started_introduction.md)
|
||||
* [QMK CLI](ru-ru/cli.md)
|
||||
* [QMK CLI Config](ru-ru/cli_configuration.md)
|
||||
* [Contributing to QMK](ru-ru/contributing.md)
|
||||
* [How to Use Github](ru-ru/getting_started_github.md)
|
||||
* [Getting Help](ru-ru/getting_started_getting_help.md)
|
||||
|
||||
* [Breaking Changes](ru-ru/breaking_changes.md)
|
||||
* [2019 Aug 30](ru-ru/ChangeLog/20190830.md)
|
||||
|
||||
* [FAQ](ru-ru/faq.md)
|
||||
* [General FAQ](ru-ru/faq_general.md)
|
||||
* [Build/Compile QMK](ru-ru/faq_build.md)
|
||||
* [Debugging/Troubleshooting QMK](ru-ru/faq_debug.md)
|
||||
* [Keymap](ru-ru/faq_keymap.md)
|
||||
* [Driver Installation with Zadig](ru-ru/driver_installation_zadig.md)
|
||||
|
||||
* Detailed Guides
|
||||
* [Install Build Tools](ru-ru/getting_started_build_tools.md)
|
||||
* [Vagrant Guide](ru-ru/getting_started_vagrant.md)
|
||||
* [Build/Compile Instructions](ru-ru/getting_started_make_guide.md)
|
||||
* [Flashing Firmware](ru-ru/flashing.md)
|
||||
* [Customizing Functionality](ru-ru/custom_quantum_functions.md)
|
||||
* [Keymap Overview](ru-ru/keymap.md)
|
||||
|
||||
* [Hardware](ru-ru/hardware.md)
|
||||
* [Compatible Microcontrollers](ru-ru/compatible_microcontrollers.md)
|
||||
* [AVR Processors](ru-ru/hardware_avr.md)
|
||||
* [Drivers](ru-ru/hardware_drivers.md)
|
||||
|
||||
* Reference
|
||||
* [Keyboard Guidelines](ru-ru/hardware_keyboard_guidelines.md)
|
||||
* [Config Options](ru-ru/config_options.md)
|
||||
* [Keycodes](ru-ru/keycodes.md)
|
||||
* [Coding Conventions - C](ru-ru/coding_conventions_c.md)
|
||||
* [Coding Conventions - Python](ru-ru/coding_conventions_python.md)
|
||||
* [Documentation Best Practices](ru-ru/documentation_best_practices.md)
|
||||
* [Documentation Templates](ru-ru/documentation_templates.md)
|
||||
* [Glossary](ru-ru/reference_glossary.md)
|
||||
* [Unit Testing](ru-ru/unit_testing.md)
|
||||
* [Useful Functions](ru-ru/ref_functions.md)
|
||||
* [Configurator Support](ru-ru/reference_configurator_support.md)
|
||||
* [info.json Format](ru-ru/reference_info_json.md)
|
||||
* [Python CLI Development](ru-ru/cli_development.md)
|
||||
|
||||
* [Features](ru-ru/features.md)
|
||||
* [Basic Keycodes](ru-ru/keycodes_basic.md)
|
||||
* [US ANSI Shifted Keys](ru-ru/keycodes_us_ansi_shifted.md)
|
||||
* [Quantum Keycodes](ru-ru/quantum_keycodes.md)
|
||||
* [Advanced Keycodes](ru-ru/feature_advanced_keycodes.md)
|
||||
* [Audio](ru-ru/feature_audio.md)
|
||||
* [Auto Shift](ru-ru/feature_auto_shift.md)
|
||||
* [Backlight](ru-ru/feature_backlight.md)
|
||||
* [Bluetooth](ru-ru/feature_bluetooth.md)
|
||||
* [Bootmagic](ru-ru/feature_bootmagic.md)
|
||||
* [Combos](ru-ru/feature_combo.md)
|
||||
* [Command](ru-ru/feature_command.md)
|
||||
* [Debounce API](ru-ru/feature_debounce_type.md)
|
||||
* [DIP Switch](ru-ru/feature_dip_switch.md)
|
||||
* [Dynamic Macros](ru-ru/feature_dynamic_macros.md)
|
||||
* [Encoders](ru-ru/feature_encoders.md)
|
||||
* [Grave Escape](ru-ru/feature_grave_esc.md)
|
||||
* [Haptic Feedback](ru-ru/feature_haptic_feedback.md)
|
||||
* [HD44780 LCD Controller](ru-ru/feature_hd44780.md)
|
||||
* [Key Lock](ru-ru/feature_key_lock.md)
|
||||
* [Layouts](ru-ru/feature_layouts.md)
|
||||
* [Leader Key](ru-ru/feature_leader_key.md)
|
||||
* [LED Matrix](ru-ru/feature_led_matrix.md)
|
||||
* [Macros](ru-ru/feature_macros.md)
|
||||
* [Mouse Keys](ru-ru/feature_mouse_keys.md)
|
||||
* [OLED Driver](ru-ru/feature_oled_driver.md)
|
||||
* [One Shot Keys](ru-ru/feature_advanced_keycodes.md#one-shot-keys)
|
||||
* [Pointing Device](ru-ru/feature_pointing_device.md)
|
||||
* [PS/2 Mouse](ru-ru/feature_ps2_mouse.md)
|
||||
* [RGB Lighting](ru-ru/feature_rgblight.md)
|
||||
* [RGB Matrix](ru-ru/feature_rgb_matrix.md)
|
||||
* [Space Cadet](ru-ru/feature_space_cadet.md)
|
||||
* [Split Keyboard](ru-ru/feature_split_keyboard.md)
|
||||
* [Stenography](ru-ru/feature_stenography.md)
|
||||
* [Swap Hands](ru-ru/feature_swap_hands.md)
|
||||
* [Tap Dance](ru-ru/feature_tap_dance.md)
|
||||
* [Terminal](ru-ru/feature_terminal.md)
|
||||
* [Thermal Printer](ru-ru/feature_thermal_printer.md)
|
||||
* [Unicode](ru-ru/feature_unicode.md)
|
||||
* [Userspace](ru-ru/feature_userspace.md)
|
||||
* [Velocikey](ru-ru/feature_velocikey.md)
|
||||
|
||||
* For Makers and Modders
|
||||
* [Hand Wiring Guide](ru-ru/hand_wire.md)
|
||||
* [ISP Flashing Guide](ru-ru/isp_flashing_guide.md)
|
||||
* [ARM Debugging Guide](ru-ru/arm_debugging.md)
|
||||
* [I2C Driver](ru-ru/i2c_driver.md)
|
||||
* [WS2812 Driver](ru-ru/ws2812_driver.md)
|
||||
* [GPIO Controls](ru-ru/internals_gpio_control.md)
|
||||
* [Proton C Conversion](ru-ru/proton_c_conversion.md)
|
||||
|
||||
* For a Deeper Understanding
|
||||
* [How Keyboards Work](ru-ru/how_keyboards_work.md)
|
||||
* [Understanding QMK](ru-ru/understanding_qmk.md)
|
||||
|
||||
* Other Topics
|
||||
* [Using Eclipse with QMK](ru-ru/other_eclipse.md)
|
||||
* [Using VSCode with QMK](ru-ru/other_vscode.md)
|
||||
* [Support](ru-ru/support.md)
|
||||
* [Translating the QMK Docs](ru-ru/translating.md)
|
||||
|
||||
* QMK Internals (In Progress)
|
||||
* [Defines](ru-ru/internals_defines.md)
|
||||
* [Input Callback Reg](ru-ru/internals_input_callback_reg.md)
|
||||
* [Midi Device](ru-ru/internals_midi_device.md)
|
||||
* [Midi Device Setup Process](ru-ru/internals_midi_device_setup_process.md)
|
||||
* [Midi Util](ru-ru/internals_midi_util.md)
|
||||
* [Send Functions](ru-ru/internals_send_functions.md)
|
||||
* [Sysex Tools](ru-ru/internals_sysex_tools.md)
|
||||
@@ -0,0 +1,17 @@
|
||||
|
||||
// generated from users/manna-harbour_miryoku/miryoku.org
|
||||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
||||
#define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
|
||||
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
|
||||
#define RGB_MATRIX_HUE_STEP 8
|
||||
#define RGB_MATRIX_SAT_STEP 8
|
||||
#define RGB_MATRIX_VAL_STEP 8
|
||||
#define RGB_MATRIX_SPD_STEP 10
|
||||
#endif
|
||||
@@ -0,0 +1,4 @@
|
||||
|
||||
# generated from users/manna-harbour_miryoku/miryoku.org
|
||||
|
||||
RGB_MATRIX_ENABLE = WS2812
|
||||
@@ -1,7 +1,7 @@
|
||||
#pragma once
|
||||
#define XXX KC_NO
|
||||
#include "quantum.h"
|
||||
#define LAYOUT_HHKB( \
|
||||
#define LAYOUT_60_tsangan_hhkb( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2C,\
|
||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D,\
|
||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D,\
|
||||
@@ -14,3 +14,5 @@
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D }, \
|
||||
{ K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, XXX, K4A, K4B, XXX, K4D } \
|
||||
}
|
||||
|
||||
#define LAYOUT_HHKB LAYOUT_60_tsangan_hhkb
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
"width": 15,
|
||||
"height": 5,
|
||||
"layouts": {
|
||||
"LAYOUT_HHKB": {
|
||||
"LAYOUT_60_tsangan_hhkb": {
|
||||
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.5}, {"x":1.5, "y":4}, {"x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"x":11, "y":4, "w":1.5}, {"x":12.5, "y":4}, {"x":13.5, "y":4, "w":1.5}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,19 +5,19 @@
|
||||
#define _LAYER3 3
|
||||
#define _LAYER4 4
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LAYER0] = LAYOUT_HHKB( /* Base */
|
||||
[_LAYER0] = LAYOUT_60_tsangan_hhkb( /* Base */
|
||||
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_BSLS, KC_DEL,
|
||||
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,
|
||||
CTL_T(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_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(2),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, MO(1), KC_RCTL),
|
||||
[_LAYER1] = LAYOUT_HHKB( /* FN */
|
||||
[_LAYER1] = LAYOUT_60_tsangan_hhkb( /* FN */
|
||||
KC_GRAVE, 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_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET ,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_TRNS,
|
||||
KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, MAGIC_TOGGLE_NKRO, KC_TRNS, KC_TRNS, KC_END, KC_PGDOWN,KC_MNXT, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||
[_LAYER2] = LAYOUT_HHKB( /* FN2 */
|
||||
[_LAYER2] = LAYOUT_60_tsangan_hhkb( /* FN2 */
|
||||
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_DEL ,KC_TRNS,
|
||||
KC_TRNS, RGB_TOG, KC_TRNS, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, RESET,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
|
||||
@@ -12,3 +12,5 @@ NKRO_ENABLE = yes # USB Nkey Rollover
|
||||
AUDIO_ENABLE = no
|
||||
RGB_MATRIX_ENABLE = IS31FL3733 # Use RGB matrix
|
||||
NO_USB_STARTUP_CHECK = no # Disable initialization only when usb is plugged in
|
||||
|
||||
LAYOUTS = 60_tsangan_hhkb
|
||||
|
||||
@@ -21,3 +21,5 @@ NKRO_ENABLE = yes # USB Nkey Rollover
|
||||
AUDIO_ENABLE = no
|
||||
RGB_MATRIX_ENABLE = IS31FL3733 # Use RGB matrix
|
||||
NO_USB_STARTUP_CHECK = no # Disable initialization only when usb is plugged in
|
||||
|
||||
LAYOUTS = 60_tsangan_hhkb
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
#include "jotanck.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
matrix_init_user();
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void keyboard_pre_init_user() {
|
||||
setPinOutput(JOTANCK_LED1);
|
||||
setPinOutput(JOTANCK_LED2);
|
||||
void keyboard_pre_init_kb() {
|
||||
setPinOutput(JOTANCK_LED1);
|
||||
setPinOutput(JOTANCK_LED2);
|
||||
|
||||
keyboard_pre_init_user();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# jhelvy Keymap for [Iris Rev 2](https://docs.keeb.io/iris-build-guide/)
|
||||
|
||||
## Keymap
|
||||
|
||||
This is a custom keymap with the following layout:
|
||||
|
||||
<img src="https://github.com/jhelvy/qmkJsonConverter/raw/master/keymaps/keebio_iris_rev2_jhelvy.png" width="800">
|
||||
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
// #define USE_I2C
|
||||
#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_FORCE_HOLD
|
||||
#undef TAPPING_TERM
|
||||
#define TAPPING_TERM 200
|
||||
#define AUTO_SHIFT_TIMEOUT 150
|
||||
@@ -0,0 +1,54 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
#define _QWERTY 0
|
||||
#define _LOWER 1
|
||||
#define _RAISE 2
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
LOWER,
|
||||
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_EQL, \
|
||||
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_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, \
|
||||
KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_NO, KC_NO, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, \
|
||||
LALT(KC_A),KC_LGUI, MO(1), KC_SPC, MO(2), KC_PGDN),
|
||||
|
||||
[_LOWER] = LAYOUT( \
|
||||
KC_ESC,LGUI(KC_1),LGUI(KC_2),LGUI(KC_3),LGUI(KC_4),LGUI(KC_5), KC_SCLN, KC_PIPE, KC_COLN,LCTL(KC_9),LCTL(KC_0), KC_F12, \
|
||||
LCTL(KC_TAB),LGUI(KC_Q),LGUI(KC_W), KC_ESC,LGUI(KC_R),LGUI(KC_T), LCTL(KC_Y),LGUI(KC_LEFT), KC_UP,LGUI(KC_RGHT), KC_TILD, KC_F11, \
|
||||
LGUI(KC_BSPC),MO(2),LGUI(KC_S),LGUI(KC_C),LGUI(KC_V),LGUI(KC_X), KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_GRV, KC_ENT, \
|
||||
KC_F15,LGUI(KC_A),LGUI(KC_D), KC_F13,LGUI(KC_Z),LGUI(KC_Y), KC_NO, KC_NO,KC_BSPC,LGUI(KC_F), SGUI(KC_G),LGUI(KC_G), KC_BSLS, KC_F23, \
|
||||
KC_LALT,KC_LGUI, KC_TRNS, KC_SPC,KC_RGUI, KC_PGUP),
|
||||
|
||||
[_RAISE] = LAYOUT( \
|
||||
KC_VOLU,LGUI(LALT(KC_1)),LGUI(LALT(KC_2)), KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PLUS, \
|
||||
KC_VOLD, KC_NO, KC_NO, KC_NO,SGUI(KC_R), KC_F14, SGUI(KC_K),SGUI(KC_LEFT),LSFT(KC_UP),SGUI(KC_RGHT), KC_F18, KC_UNDS, \
|
||||
KC_MUTE,KC_TRNS, KC_NO, KC_LBRC, KC_RBRC, KC_TAB, KC_F21,LSFT(KC_LEFT),LSFT(KC_DOWN),LSFT(KC_RGHT), KC_F20, KC_F16, \
|
||||
KC_LSPO,KC_ASTG, KC_NO, KC_LCBR, KC_RCBR,LCTL(KC_U), KC_NO, KC_NO,KC_F22,LCTL(LGUI(KC_A)),LALT(LSFT(KC_LEFT)),LALT(LSFT(KC_RIGHT)), KC_F17, KC_F19, \
|
||||
KC_CAPS,LALT(KC_SPC), KC_LGUI, KC_SPC,KC_TRNS, KC_NO)
|
||||
|
||||
};
|
||||
|
||||
void encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (index == 0) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
}
|
||||
else if (index == 1) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_PGDN);
|
||||
} else {
|
||||
tap_code(KC_PGUP);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
AUTO_SHIFT_ENABLE = yes # Autoshift by holding down a key
|
||||
RGBLIGHT_ENABLE = yes
|
||||
BACKLIGHT_ENABLE = yes
|
||||
@@ -78,14 +78,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
//#define NO_ACTION_MACRO
|
||||
//#define NO_ACTION_FUNCTION
|
||||
|
||||
#ifdef USE_Link_Time_Optimization
|
||||
// LTO has issues with macros (action_get_macro) and "functions" (fn_actions),
|
||||
// so just disable them
|
||||
#define NO_ACTION_MACRO
|
||||
#define NO_ACTION_FUNCTION
|
||||
|
||||
#define DISABLE_LEADER
|
||||
#endif // USE_Link_Time_Optimization
|
||||
|
||||
@@ -2,4 +2,4 @@ BACKLIGHT_ENABLE = no
|
||||
AUDIO_ENABLE = yes
|
||||
RGBLIGHT_ENABLE = yes #Don't enable this along with I2C
|
||||
|
||||
EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
|
||||
LTO_ENABLE = yes
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# jhelvy Keymap for [Lily58 Pro](https://github.com/kata0510/Lily58)
|
||||
|
||||
## Keymap
|
||||
|
||||
This is a custom keymap with the following layout:
|
||||
|
||||
<img src="https://github.com/jhelvy/qmkJsonConverter/raw/master/keymaps/lily58_rev1_jhelvy.png" width="800">
|
||||
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//#define USE_MATRIX_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
|
||||
#define MASTER_LEFT
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
|
||||
#define SSD1306OLED
|
||||
|
||||
#define USE_SERIAL_PD2
|
||||
|
||||
#define TAPPING_FORCE_HOLD
|
||||
#undef TAPPING_TERM
|
||||
#define TAPPING_TERM 200
|
||||
|
||||
#undef RGBLED_NUM
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLED_NUM 27
|
||||
#define RGBLIGHT_LIMIT_VAL 120
|
||||
#define RGBLIGHT_HUE_STEP 10
|
||||
#define RGBLIGHT_SAT_STEP 17
|
||||
#define RGBLIGHT_VAL_STEP 17
|
||||
|
||||
#define AUTO_SHIFT_TIMEOUT 150
|
||||
|
||||
// Underglow
|
||||
/*
|
||||
#undef RGBLED_NUM
|
||||
#define RGBLED_NUM 14 // Number of LEDs
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGBLIGHT_SLEEP
|
||||
*/
|
||||
@@ -0,0 +1,112 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
#ifdef PROTOCOL_LUFA
|
||||
#include "lufa.h"
|
||||
#include "split_util.h"
|
||||
#endif
|
||||
#ifdef SSD1306OLED
|
||||
#include "ssd1306.h"
|
||||
#endif
|
||||
|
||||
|
||||
extern uint8_t is_master;
|
||||
|
||||
#define _QWERTY 0
|
||||
#define _LOWER 1
|
||||
#define _UPPER 2
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
LOWER,
|
||||
UPPER,
|
||||
};
|
||||
|
||||
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_EQL, \
|
||||
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_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, \
|
||||
KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, KC_RBRC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, \
|
||||
LALT(KC_A), KC_LCTL,KC_LGUI, MO(1), KC_SPC, MO(2), KC_PGDN, KC_NO),
|
||||
|
||||
[_LOWER] = LAYOUT( \
|
||||
KC_ESC,LGUI(KC_1),LGUI(KC_2),LGUI(KC_3),LGUI(KC_4),LGUI(KC_5), KC_SCLN,LSFT(KC_BSLS), KC_NO,LCTL(KC_9),LCTL(KC_0), KC_F12, \
|
||||
LCTL(KC_TAB),LGUI(KC_Q),LGUI(KC_W), KC_ESC,LGUI(KC_R),LGUI(KC_T), LCTL(KC_Y),LGUI(KC_LEFT), KC_UP,LGUI(KC_RGHT),LSFT(KC_GRV), KC_F11, \
|
||||
LGUI(KC_BSPC),MO(2),LGUI(KC_S),LGUI(KC_C),LGUI(KC_V),LGUI(KC_X), KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_GRV,LSFT(KC_SCLN), \
|
||||
KC_F15,LGUI(KC_A),LGUI(KC_D), KC_F13,LGUI(KC_Z),LGUI(KC_Y),LSFT(KC_LBRC),LSFT(KC_RBRC),KC_BSPC,LGUI(KC_F), SGUI(KC_G),LGUI(KC_G), KC_BSLS, KC_F23, \
|
||||
KC_NO, KC_NO,KC_NO,KC_TRNS, KC_NO, KC_RGUI, KC_PGUP, KC_NO),
|
||||
|
||||
[_UPPER] = LAYOUT( \
|
||||
KC__VOLUP,LGUI(LALT(KC_1)),LGUI(LALT(KC_2)), KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,LSFT(KC_EQL), \
|
||||
KC_VOLD, KC_NO, KC_NO, KC_NO,SGUI(KC_R), KC_F14, SGUI(KC_K),SGUI(KC_LEFT),LSFT(KC_UP),SGUI(KC_RGHT), KC_F18,LSFT(KC_MINS), \
|
||||
KC_MUTE,KC_TRNS, KC_NO, KC_LGUI, KC_TAB, KC_F21, KC_NO,LSFT(KC_LEFT),LSFT(KC_DOWN),LSFT(KC_RGHT), KC_F20, KC_F16, \
|
||||
KC_ASTG, KC_NO, KC_NO, KC_NO, KC_F22,LCTL(KC_U),LGUI(KC_LBRC),LGUI(KC_RBRC),LGUI(KC_N), KC_NO,LALT(LSFT(KC_LEFT)),LALT(LSFT(KC_RIGHT)), KC_F17, KC_F19, \
|
||||
KC_NO, KC_NO,KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO)
|
||||
|
||||
};
|
||||
|
||||
void matrix_init_user(void) {
|
||||
//SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
|
||||
#ifdef SSD1306OLED
|
||||
iota_gfx_init(!has_usb()); // turns on the display
|
||||
#endif
|
||||
}
|
||||
|
||||
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
|
||||
#ifdef SSD1306OLED
|
||||
|
||||
// When add source files to SRC in rules.mk, you can use functions.
|
||||
const char *read_layer_state(void);
|
||||
const char *read_logo(void);
|
||||
void set_keylog(uint16_t keycode, keyrecord_t *record);
|
||||
const char *read_keylog(void);
|
||||
const char *read_keylogs(void);
|
||||
|
||||
// const char *read_mode_icon(bool swap);
|
||||
// const char *read_host_led_state(void);
|
||||
// void set_timelog(void);
|
||||
// const char *read_timelog(void);
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
iota_gfx_task();
|
||||
}
|
||||
|
||||
void matrix_render_user(struct CharacterMatrix *matrix) {
|
||||
if (is_master) {
|
||||
// If you want to change the display of OLED, you need to change here
|
||||
matrix_write_ln(matrix, read_layer_state());
|
||||
matrix_write_ln(matrix, read_keylog());
|
||||
matrix_write_ln(matrix, read_keylogs());
|
||||
//matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui));
|
||||
//matrix_write_ln(matrix, read_host_led_state());
|
||||
//matrix_write_ln(matrix, read_timelog());
|
||||
} else {
|
||||
matrix_write(matrix, read_logo());
|
||||
}
|
||||
}
|
||||
|
||||
void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) {
|
||||
if (memcmp(dest->display, source->display, sizeof(dest->display))) {
|
||||
memcpy(dest->display, source->display, sizeof(dest->display));
|
||||
dest->dirty = true;
|
||||
}
|
||||
}
|
||||
|
||||
void iota_gfx_task_user(void) {
|
||||
struct CharacterMatrix matrix;
|
||||
matrix_clear(&matrix);
|
||||
matrix_render_user(&matrix);
|
||||
matrix_update(&display, &matrix);
|
||||
}
|
||||
#endif//SSD1306OLED
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
#ifdef SSD1306OLED
|
||||
set_keylog(keycode, record);
|
||||
#endif
|
||||
// set_timelog();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
# 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
|
||||
#
|
||||
AUTO_SHIFT_ENABLE = yes # Autoshift by holding down a key
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
|
||||
# If you want to change the display of OLED, you need to change here
|
||||
SRC += ./lib/glcdfont.c \
|
||||
./lib/rgb_state_reader.c \
|
||||
./lib/layer_state_reader.c \
|
||||
./lib/logo_reader.c \
|
||||
./lib/keylogger.c \
|
||||
# ./lib/mode_icon_reader.c \
|
||||
# ./lib/host_led_state_reader.c \
|
||||
# ./lib/timelogger.c \
|
||||
+756
-46
@@ -79,12 +79,12 @@
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"label":"Backspace",
|
||||
"label": "~",
|
||||
"x": 14,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"label":"Print Screen",
|
||||
"Label": "Ins",
|
||||
"x": 15,
|
||||
"y": 0
|
||||
},
|
||||
@@ -155,17 +155,18 @@
|
||||
"y": 1
|
||||
},
|
||||
{
|
||||
"label": "|",
|
||||
"label": "Backspace",
|
||||
"x": 13.5,
|
||||
"y": 1,
|
||||
"w": 1.5
|
||||
},
|
||||
{ "label": "Page Up",
|
||||
{
|
||||
"label": "Page up",
|
||||
"x": 15,
|
||||
"y": 1
|
||||
},
|
||||
{
|
||||
"label": "Caps Lock",
|
||||
"label": "Ctrl",
|
||||
"x": 0,
|
||||
"y": 2,
|
||||
"w": 1.75
|
||||
@@ -232,7 +233,7 @@
|
||||
"w": 2.25
|
||||
},
|
||||
{
|
||||
"label": "Page Down",
|
||||
"label": "Page down",
|
||||
"x": 15,
|
||||
"y": 2
|
||||
},
|
||||
@@ -299,17 +300,17 @@
|
||||
"w": 1.75
|
||||
},
|
||||
{
|
||||
"label": "Up",
|
||||
"label": "↑",
|
||||
"x": 14,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "End"
|
||||
"label": "End",
|
||||
"x": 15,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "Ctrl",
|
||||
"label": "Caps Lock",
|
||||
"x": 0,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
@@ -338,30 +339,746 @@
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label": "Win",
|
||||
"label": "Fn",
|
||||
"x": 11.25,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label": "Left",
|
||||
"label": "←",
|
||||
"x": 13,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "Down",
|
||||
"label": "↓",
|
||||
"x": 14,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "Right",
|
||||
"label": "→",
|
||||
"x": 15,
|
||||
"y": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"LAYOUT_default_splitspace": {
|
||||
"key_count": 70,
|
||||
"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": "|",
|
||||
"x": 13,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"label": "~",
|
||||
"x": 14,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"Label": "Ins",
|
||||
"x": 15,
|
||||
"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": "Backspace",
|
||||
"x": 13.5,
|
||||
"y": 1,
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"label": "Page up",
|
||||
"x": 15,
|
||||
"y": 1
|
||||
},
|
||||
{
|
||||
"label": "Ctrl",
|
||||
"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": "Page down",
|
||||
"x": 15,
|
||||
"y": 2
|
||||
},
|
||||
{
|
||||
"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
|
||||
},
|
||||
{
|
||||
"label": "↑",
|
||||
"x": 14,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "End",
|
||||
"x": 15,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "Caps Lock",
|
||||
"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": 2.25
|
||||
},
|
||||
{
|
||||
"label": "Fn",
|
||||
"x": 6,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"x": 7.25,
|
||||
"y": 4,
|
||||
"w": 2.75
|
||||
},
|
||||
{
|
||||
"label": "Alt",
|
||||
"x": 10,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label": "Fn",
|
||||
"x": 11.25,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label": "←",
|
||||
"x": 13,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "↓",
|
||||
"x": 14,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "→",
|
||||
"x": 15,
|
||||
"y": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"LAYOUT_wkl": {
|
||||
"key_count": 67,
|
||||
"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": "|",
|
||||
"x": 13,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"label": "~",
|
||||
"x": 14,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"Label": "Ins",
|
||||
"x": 15,
|
||||
"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": "Backspace",
|
||||
"x": 13.5,
|
||||
"y": 1,
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"label": "Page up",
|
||||
"x": 15,
|
||||
"y": 1
|
||||
},
|
||||
{
|
||||
"label": "Ctrl",
|
||||
"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": "Page down",
|
||||
"x": 15,
|
||||
"y": 2
|
||||
},
|
||||
{
|
||||
"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
|
||||
},
|
||||
{
|
||||
"label": "↑",
|
||||
"x": 14,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "End",
|
||||
"x": 15,
|
||||
"y": 3
|
||||
},
|
||||
{
|
||||
"label": "Caps Lock",
|
||||
"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": "Fn",
|
||||
"x": 11,
|
||||
"y": 4,
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"label": "←",
|
||||
"x": 13,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "↓",
|
||||
"x": 14,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "→",
|
||||
"x": 15,
|
||||
"y": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"key_count": 68,
|
||||
"key_count": 67,
|
||||
"layout": [
|
||||
{
|
||||
"label": "~",
|
||||
@@ -435,7 +1152,7 @@
|
||||
"w": 2
|
||||
},
|
||||
{
|
||||
"label": "Print Screen",
|
||||
"label": "Ins",
|
||||
"x": 15,
|
||||
"y": 0
|
||||
},
|
||||
@@ -506,14 +1223,7 @@
|
||||
"y": 1
|
||||
},
|
||||
{
|
||||
"label": "Enter",
|
||||
"x": 13.75,
|
||||
"y": 1,
|
||||
"w": 1.25,
|
||||
"h": 2
|
||||
},
|
||||
{
|
||||
"label": "Page Up",
|
||||
"label": "Page up",
|
||||
"x": 15,
|
||||
"y": 1
|
||||
},
|
||||
@@ -584,7 +1294,14 @@
|
||||
"y": 2
|
||||
},
|
||||
{
|
||||
"label": "Page Down",
|
||||
"label": "Enter",
|
||||
"x": 13.75,
|
||||
"y": 1,
|
||||
"w": 1.25,
|
||||
"h": 2
|
||||
},
|
||||
{
|
||||
"label": "Page down",
|
||||
"x": 15,
|
||||
"y": 2
|
||||
},
|
||||
@@ -595,7 +1312,7 @@
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label":"Win",
|
||||
"label": "Win",
|
||||
"x": 1.25,
|
||||
"y": 3
|
||||
},
|
||||
@@ -656,7 +1373,7 @@
|
||||
"w": 1.75
|
||||
},
|
||||
{
|
||||
"label": "Up",
|
||||
"label": "→",
|
||||
"x": 14,
|
||||
"y": 3
|
||||
},
|
||||
@@ -669,53 +1386,46 @@
|
||||
"label": "Ctrl",
|
||||
"x": 0,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"label": "Win",
|
||||
"x": 1.25,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
"x": 1.5,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "Alt",
|
||||
"x": 2.5,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"x": 3.75,
|
||||
"x": 4,
|
||||
"y": 4,
|
||||
"w": 6.25
|
||||
"w": 7
|
||||
},
|
||||
{
|
||||
"label": "Alt",
|
||||
"x": 10,
|
||||
"label": "Fn",
|
||||
"x": 11,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
"w": 1.5
|
||||
},
|
||||
{
|
||||
"label": "Win",
|
||||
"x": 11.25,
|
||||
"y": 4,
|
||||
"w": 1.25
|
||||
},
|
||||
{
|
||||
"label": "Left",
|
||||
"label": "←",
|
||||
"x": 13,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "Down",
|
||||
"label": "↓",
|
||||
"x": 14,
|
||||
"y": 4
|
||||
},
|
||||
{
|
||||
"label": "Right",
|
||||
"label": "→",
|
||||
"x": 15,
|
||||
"y": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
/**
|
||||
* keymap.c
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_iso(
|
||||
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_PSCR,
|
||||
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_PGUP,
|
||||
KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, KC_PGDN,
|
||||
KC_LSFT, KC_LGUI, 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_END,
|
||||
KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN,KC_RIGHT),
|
||||
[1] = LAYOUT_iso(
|
||||
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, RGB_TOG, RGB_MOD, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______),
|
||||
};
|
||||
@@ -0,0 +1,20 @@
|
||||
/**
|
||||
* keymap.c
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_wkl(
|
||||
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_PSCR,
|
||||
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_PGUP,
|
||||
KC_LCTRL, 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_PGDN,
|
||||
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_UP, KC_END,
|
||||
KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
|
||||
[1] = LAYOUT_wkl(
|
||||
KC_BSLS, 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, RGB_TOG, RGB_MOD, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______),
|
||||
};
|
||||
@@ -35,14 +35,14 @@
|
||||
}
|
||||
|
||||
#define LAYOUT_iso( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, k0f, \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, k0f, \
|
||||
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, k2d, k2e, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, \
|
||||
k40, k41, k42, k43, k45, k46, k47, k48 \
|
||||
) { \
|
||||
{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, k1d, KC_NO}, \
|
||||
{k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c,KC_NO, k0e}, \
|
||||
{k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c,KC_NO, KC_NO}, \
|
||||
{k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO}, \
|
||||
{k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, KC_NO}, \
|
||||
{k40, k41, k42,KC_NO,k43,KC_NO,KC_NO, k45, k46, k47, k48, k1e, k2e, k3e, k0f} \
|
||||
@@ -61,31 +61,3 @@
|
||||
{k30,KC_NO,k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, KC_NO}, \
|
||||
{k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k1e, k2e, k3e, k0f} \
|
||||
}
|
||||
|
||||
#define LAYOUT_wkl_splitspace( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2d, k2e, \
|
||||
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, \
|
||||
k40, k41, k42, k43, k45, k46, k47, k48, k49, k4a \
|
||||
) { \
|
||||
{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, k1d, KC_NO}, \
|
||||
{k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b,KC_NO,k2d, KC_NO}, \
|
||||
{k30,KC_NO,k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, KC_NO}, \
|
||||
{k40, k41, k42, k43, k45,KC_NO,k46, k47, k48, k49, k4a, k1e, k2e, k3e, k0f} \
|
||||
}
|
||||
|
||||
#define LAYOUT_iso_splitspace( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, k0f, \
|
||||
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, k2d, k2e, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, \
|
||||
k40, k41, k42, k43, k45, k46, k47, k48, k49, k4a \
|
||||
) { \
|
||||
{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, k1d, KC_NO}, \
|
||||
{k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO}, \
|
||||
{k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, KC_NO}, \
|
||||
{k40, k41, k42, k43, k45,KC_NO,k46, k47, k48, k49, k4a, k1e, k2e, k3e, k0f} \
|
||||
}
|
||||
|
||||
@@ -63,16 +63,16 @@
|
||||
#define gbp A(KC_3)
|
||||
|
||||
#define down KC_DOWN
|
||||
#define home KC_HOME
|
||||
#define end KC_END
|
||||
#define home G(KC_LEFT)
|
||||
#define end G(KC_RGHT)
|
||||
#define up KC_UP
|
||||
#define pgdn KC_PGDN
|
||||
#define pgup KC_PGUP
|
||||
#define left KC_LEFT
|
||||
#define rght KC_RGHT
|
||||
|
||||
#define tabl S(C(KC_TAB))
|
||||
#define tabr C(KC_TAB)
|
||||
#define tabl G(S(KC_LBRC))
|
||||
#define tabr G(S(KC_RBRC))
|
||||
#define fwd G(KC_RBRC)
|
||||
#define back G(KC_LBRC)
|
||||
#define dtl C(KC_LEFT)
|
||||
@@ -162,8 +162,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[SYMB] = LAYOUT_planck_grid(
|
||||
esc, n7, n5, n3, n1, n9, n8, n0, n2, n4, n6, dash,
|
||||
del, bsls, hash, astr, eql, pipe, at, rprn, lprn, dlr, ampr, gbp,
|
||||
caps, grv, exlm, lbrc, rbrc, circ, tild, rcbr, lcbr, plus, perc, caps,
|
||||
del, at, dlr, eql, lprn, lbrc, rbrc, rprn, astr, hash, plus, gbp,
|
||||
caps, grv, pipe, bsls, lcbr, tild, circ, rcbr, ampr, exlm, perc, caps,
|
||||
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____
|
||||
),
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ This is a layout for the grid planck, built with a few ideals in mind:
|
||||
|
||||
Layout rendered with [keyboard-layout-editor.com][]:
|
||||
|
||||

|
||||

|
||||
|
||||
The only behaviour not captured in this graphic is: pressing both cmd keys will
|
||||
send cmd+ctrl. See [keymap.c][] for details.
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
/* Copyright 2018 Carlos Filoteo
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#define TAPPING_TERM 150
|
||||
#define PERMISSIVE_HOLD
|
||||
#define IGNORE_MOD_TAP_INTERRUPT
|
||||
|
||||
// place overrides here
|
||||
@@ -0,0 +1,99 @@
|
||||
/* Copyright 2018 Carlos Filoteo
|
||||
*
|
||||
* 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 QMK_KEYBOARD_H
|
||||
#include "hvp.c"
|
||||
|
||||
#define LT3_ESC LT(3, KC_ESC)
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Base Layer
|
||||
* ,-------------------------------------------------------------------------.
|
||||
* | Esc | Q | W | E | R | T | Y | U | I | O | P |Bspace |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* |Tab/L3| A | S | D | F | G | H | J | K | L | ; | ' |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | Shift | Z | X | C | V | B | N | M | , | . | / |Sh/En|
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | Ctrl| Alt | Gui | App | L2 | Space | L1 | Left| Down| Up |Right|
|
||||
* `-------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
LAYOUT(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
LT3_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2),
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), KC_SFTENT,
|
||||
KC_LCTL, KC_APP, KC_LGUI, KC_LALT, MO(2), MT(MOD_LSFT, KC_SPC), MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* FN Layer 1
|
||||
* ,-------------------------------------------------------------------------.
|
||||
* | ` ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Delete|
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | | | | | | - | = | [ | ] | \ |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | F20 | |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | |Capsl| | | | Home| PgDn| PgUp| End |
|
||||
* `-------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
LAYOUT( /* Right */
|
||||
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_DELETE, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, _______, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______,
|
||||
KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
|
||||
),
|
||||
|
||||
/* FN Layer 2
|
||||
* ,-------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) |Delete|
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | | | | | | _ | + | { | } | | |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | |Capsl| | | | Home| PgDn| PgUp| End |
|
||||
* `-------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
LAYOUT( /* Left */
|
||||
KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
|
||||
KC_DELETE, _______, _______, _______, _______, _______, _______, KC_UNDERSCORE, KC_PLUS, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
|
||||
),
|
||||
|
||||
/* FN Layer 2
|
||||
* ,-------------------------------------------------------------------------.
|
||||
* | Esc | Calc|Webhm| Mail| Comp| | | | | |PrtSc| |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | | | | | | | | | | |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | | | | | | | | | | |
|
||||
* |-------------------------------------------------------------------------+
|
||||
* | | | | | | | |MousL|MousD|MousU|MousR|
|
||||
* `-------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
LAYOUT( /* Tab */
|
||||
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_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_PSCR,
|
||||
_______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
|
||||
RESET, _______, _______, _______, KC_MUTE, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
|
||||
),
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
# UT47 default keymap
|
||||
|
||||

|
||||
|
||||
[KLE](http://www.keyboard-layout-editor.com/##@@_y:0%3B&=Esc&=Q&=W&=E&=R&=T&=Y&=U&=I&=O&=P&_w:1.5%3B&=Back%20Space&_x:0.25&a:4&f:4&w:4&h:4&d:true%3B&=%3Cb%3EGNAP!%3C%2F%2Fb%3E%3Cp%3E%3Cp%3EMinimum%20stagger%3Cp%3E47%20key%20layout%3B&@_a:7&f:3&w:1.25%3B&=Tab&=A&=S&=D&=F&=G&=H&=J&=K&=L&=%2F%3B&_w:1.25%3B&=%27%3B&@_w:1.5%3B&=Shift&=Z&=X&=C&=V&=B&=N&=M&=,&=.&=%2F%2F&=Return%3B&@=Ctrl&=Alt&=Super&=Menu&_w:1.25%3B&=%2F&dArr%2F%3B&_w:2%3B&=&_w:1.25%3B&=%2F&uArr%2F%3B&=%2F&larr%2F%3B&=%2F&darr%2F%3B&=%2F&uarr%2F%3B&=%2F&rarr%2F%3B%3B&=undefined)
|
||||
@@ -0,0 +1 @@
|
||||
TAP_DANCE_ENABLE = yes
|
||||
@@ -1,21 +1,19 @@
|
||||
"""Serve QMK documentation locally
|
||||
"""
|
||||
import http.server
|
||||
import os
|
||||
|
||||
from milc import cli
|
||||
|
||||
|
||||
class DocsHandler(http.server.SimpleHTTPRequestHandler):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, directory='docs', **kwargs)
|
||||
|
||||
|
||||
@cli.argument('-p', '--port', default=8936, type=int, help='Port number to use.')
|
||||
@cli.subcommand('Run a local webserver for QMK documentation.')
|
||||
def docs(cli):
|
||||
"""Spin up a local HTTPServer instance for the QMK docs.
|
||||
"""
|
||||
with http.server.HTTPServer(('', cli.config.docs.port), DocsHandler) as httpd:
|
||||
os.chdir('docs')
|
||||
|
||||
with http.server.HTTPServer(('', cli.config.docs.port), http.server.SimpleHTTPRequestHandler) as httpd:
|
||||
cli.log.info("Serving QMK docs at http://localhost:%d/", cli.config.docs.port)
|
||||
cli.log.info("Press Control+C to exit.")
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ def doctor(cli):
|
||||
ok = False
|
||||
|
||||
# Determine our OS and run platform specific tests
|
||||
OS = platform.system()
|
||||
OS = platform.system() # noqa (N806), uppercase name is ok in this instance
|
||||
|
||||
if OS == "Darwin":
|
||||
cli.log.info("Detected {fg_cyan}macOS.")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from qmk.errors import NoSuchKeyboardError
|
||||
|
||||
|
||||
def test_NoSuchKeyboardError():
|
||||
def test_nosuchkeyboarderror():
|
||||
try:
|
||||
raise NoSuchKeyboardError("test message")
|
||||
except NoSuchKeyboardError as e:
|
||||
|
||||
@@ -6,3 +6,4 @@ colorama
|
||||
hjson
|
||||
nose2
|
||||
flake8
|
||||
pep8-naming
|
||||
|
||||
@@ -6,7 +6,14 @@
|
||||
#define KC_NP KC_NO // key is not present
|
||||
#define KC_NA KC_NO // present but not available for use
|
||||
#define KC_NU KC_NO // available but not used
|
||||
|
||||
// non-KC_ keycodes
|
||||
#define KC_RST RESET
|
||||
#define KC_TOG RGB_TOG
|
||||
#define KC_MOD RGB_MOD
|
||||
#define KC_HUI RGB_HUI
|
||||
#define KC_SAI RGB_SAI
|
||||
#define KC_VAI RGB_VAI
|
||||
|
||||
enum layers { BASE, MEDR, NAVR, MOUR, NSSL, NSL, FUNL };
|
||||
|
||||
@@ -30,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_NP, KC_NP, KC_NA, KC_NA, KC_NA, KC_BTN3, KC_BTN1, KC_BTN2, KC_NP, KC_NP
|
||||
),
|
||||
[MEDR] = LAYOUT_miryoku(
|
||||
KC_RST, KC_NA, KC_NA, KC_NA, KC_NA, KC_NU, KC_NU, KC_NU, KC_NU, KC_NU,
|
||||
KC_RST, KC_NA, KC_NA, KC_NA, KC_NA, KC_TOG, KC_MOD, KC_HUI, KC_SAI, KC_VAI,
|
||||
KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, KC_NA, KC_NU, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT,
|
||||
KC_NA, KC_ALGR, KC_NA, KC_NA, KC_NA, KC_NU, KC_NU, KC_NU, KC_NU, KC_NU,
|
||||
KC_NP, KC_NP, KC_NA, KC_NA, KC_NA, KC_MSTP, KC_MPLY, KC_MUTE, KC_NP, KC_NP
|
||||
|
||||
@@ -134,11 +134,12 @@ the home position. Unused keys are available for other related functions.
|
||||
*** Media (MEDR)
|
||||
|
||||
Tertiary RH layer is media control, with volume up / down and next / prev
|
||||
mirroring the navigation keys. Pause, stop and mute are on thumbs. Unused keys
|
||||
are available for other related functions.
|
||||
mirroring the navigation keys. Pause, stop and mute are on thumbs. RGB control
|
||||
is on the top row (combine with shift to invert). Unused keys are available for
|
||||
other related functions.
|
||||
|
||||
#+NAME: medr
|
||||
| | | | | |
|
||||
| TOG | MOD | HUI | SAI | VAI |
|
||||
| | MPRV | VOLD | VOLU | MNXT |
|
||||
| | | | | |
|
||||
| MSTP | MPLY | MUTE | NP | NP |
|
||||
@@ -413,7 +414,14 @@ Contains the keymap. Included from keymap.c
|
||||
#define KC_NP KC_NO // key is not present
|
||||
#define KC_NA KC_NO // present but not available for use
|
||||
#define KC_NU KC_NO // available but not used
|
||||
|
||||
// non-KC_ keycodes
|
||||
#define KC_RST RESET
|
||||
#define KC_TOG RGB_TOG
|
||||
#define KC_MOD RGB_MOD
|
||||
#define KC_HUI RGB_HUI
|
||||
#define KC_SAI RGB_SAI
|
||||
#define KC_VAI RGB_VAI
|
||||
|
||||
<<table-enums()>>
|
||||
|
||||
@@ -464,6 +472,7 @@ Build options. Automatically included.
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
|
||||
|
||||
#+END_SRC
|
||||
|
||||
|
||||
@@ -561,11 +570,12 @@ To use the keymap on a keyboard which does not support the layouts feature,
|
||||
LAYOUT_miryoku is defined as a macro mapping onto the keyboard's own LAYOUT
|
||||
macro, leaving the unused keys as KC_NO. The userspace keymap is then included.
|
||||
|
||||
|
||||
*** crkbd
|
||||
|
||||
The outer columns are unused.
|
||||
|
||||
**** keymap.c
|
||||
|
||||
[[../../keyboards/crkbd/keymaps/manna-harbour_miryoku/keymap.c][keyboards/crkbd/keymaps/manna-harbour_miryoku/keymap.c]]
|
||||
#+BEGIN_SRC C :noweb yes :tangle ../../keyboards/crkbd/keymaps/manna-harbour_miryoku/keymap.c
|
||||
|
||||
@@ -588,10 +598,48 @@ KC_NO, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, KC_
|
||||
|
||||
#+END_SRC
|
||||
|
||||
|
||||
**** config.h
|
||||
|
||||
[[../../keyboards/crkbd/keymaps/manna-harbour_miryoku/config.h][keyboards/crkbd/keymaps/manna-harbour_miryoku/config.h]]
|
||||
#+BEGIN_SRC C :noweb yes :tangle ../../keyboards/crkbd/keymaps/manna-harbour_miryoku/config.h
|
||||
|
||||
// <<header>>
|
||||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
||||
#define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
|
||||
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
|
||||
#define RGB_MATRIX_HUE_STEP 8
|
||||
#define RGB_MATRIX_SAT_STEP 8
|
||||
#define RGB_MATRIX_VAL_STEP 8
|
||||
#define RGB_MATRIX_SPD_STEP 10
|
||||
#endif
|
||||
|
||||
#+END_SRC
|
||||
|
||||
|
||||
**** rules.mk
|
||||
|
||||
[[../../keyboards/crkbd/keymaps/manna-harbour_miryoku/rules.mk][keyboards/crkbd/keymaps/manna-harbour_miryoku/rules.mk]]
|
||||
#+BEGIN_SRC C :noweb yes :tangle ../../keyboards/crkbd/keymaps/manna-harbour_miryoku/rules.mk
|
||||
|
||||
# <<header>>
|
||||
|
||||
RGB_MATRIX_ENABLE = WS2812
|
||||
|
||||
#+END_SRC
|
||||
|
||||
|
||||
To build for this keyboard,
|
||||
|
||||
#+BEGIN_SRC sh :tangle no
|
||||
cd ../.. && make crkbd:manna-harbour_miryoku:avrdude
|
||||
cd ../.. && make crkbd:manna-harbour_miryoku:flash
|
||||
#+END_SRC
|
||||
|
||||
|
||||
|
||||
@@ -12,13 +12,12 @@ util_dir=$(dirname "$0")
|
||||
|
||||
# For those distros that do not package bootloadHID
|
||||
install_bootloadhid() {
|
||||
wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp
|
||||
wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp
|
||||
cd /tmp/bootloadHID.2012-12-08/commandline/
|
||||
make
|
||||
if [ $? == 0 ]; then
|
||||
if make; then
|
||||
sudo cp bootloadHID /usr/local/bin
|
||||
fi
|
||||
cd -
|
||||
fi
|
||||
cd -
|
||||
}
|
||||
|
||||
if grep ID /etc/os-release | grep -qE "fedora"; then
|
||||
@@ -68,6 +67,7 @@ elif grep ID /etc/os-release | grep -qE 'debian|ubuntu'; then
|
||||
libnewlib-arm-none-eabi \
|
||||
libusb-dev \
|
||||
python3 \
|
||||
python3-pip \
|
||||
unzip \
|
||||
wget \
|
||||
zip
|
||||
|
||||
@@ -24,8 +24,9 @@ fi
|
||||
brew tap osx-cross/avr
|
||||
brew tap osx-cross/arm
|
||||
brew update
|
||||
brew install avr-gcc@8 arm-gcc-bin dfu-programmer avrdude clang-format dfu-util python3
|
||||
brew install avr-gcc@8 arm-gcc-bin@8 dfu-programmer avrdude clang-format dfu-util python3
|
||||
brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
|
||||
brew link --force avr-gcc@8
|
||||
brew link --force arm-gcc-bin@8
|
||||
|
||||
pip3 install -r "${util_dir}/../requirements.txt"
|
||||
|
||||
Reference in New Issue
Block a user