forked from Github/qmk_firmware
Compare commits
14 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ac82cd1ba7 | ||
![]() |
31f5229191 | ||
![]() |
2f65ab183d | ||
![]() |
8350d7e607 | ||
![]() |
e7bb975482 | ||
![]() |
a6be48681a | ||
![]() |
e9944bfc8e | ||
![]() |
9303b42e69 | ||
![]() |
042a450e24 | ||
![]() |
2cf6bfe9ac | ||
![]() |
2917e55bd4 | ||
![]() |
55d4c9b162 | ||
![]() |
904b1b3f99 | ||
![]() |
0310eafdcf |
@@ -8,7 +8,6 @@ indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
# We recommend you to keep these unchanged
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
@@ -16,3 +15,22 @@ insert_final_newline = true
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
||||
indent_size = 4
|
||||
|
||||
# Make these match what we have in .gitattributes
|
||||
[*.mk]
|
||||
end_of_line = lf
|
||||
|
||||
[Makefile]
|
||||
end_of_line = lf
|
||||
|
||||
[*.sh]
|
||||
end_of_line = lf
|
||||
|
||||
# The gitattributes file will handle the line endings conversion properly according to the operating system settings for other files
|
||||
|
||||
|
||||
# We don't have gitattributes properly for these
|
||||
# So if the user have for example core.autocrlf set to true
|
||||
# the line endings would be wrong.
|
||||
[lib/**]
|
||||
end_of_line = unset
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@@ -52,6 +52,7 @@ util/Win_Check_Output.txt
|
||||
.vscode/last.sql
|
||||
.vscode/temp.sql
|
||||
.stfolder
|
||||
.tags
|
||||
|
||||
# ignore image files
|
||||
*.png
|
||||
@@ -64,4 +65,4 @@ util/Win_Check_Output.txt
|
||||
# things travis sees
|
||||
secrets.tar
|
||||
id_rsa_*
|
||||
/.vs
|
||||
/.vs
|
192
keyboards/cu24/config.h
Normal file
192
keyboards/cu24/config.h
Normal file
@@ -0,0 +1,192 @@
|
||||
/* Copyright 2018 Yiancar
|
||||
*
|
||||
* 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 0x0000
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER Yiancar/CapsUnlocked
|
||||
#define PRODUCT CU24
|
||||
#define DESCRIPTION A luxurious fully customisable numpad
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 6
|
||||
#define MATRIX_COLS 4
|
||||
|
||||
/*
|
||||
* Keyboard Matrix Assignments
|
||||
*
|
||||
* Change this to how you wired your keyboard
|
||||
* COLS: AVR pins used for columns, left to right
|
||||
* ROWS: AVR pins used for rows, top to bottom
|
||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||
*
|
||||
*/
|
||||
#define MATRIX_ROW_PINS { E6, F5, B4, B6, C6, C7 }
|
||||
#define MATRIX_COL_PINS { F0, F1, D0, D1 }
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL, or CUSTOM_MATRIX */
|
||||
#define DIODE_DIRECTION ROW2COL
|
||||
|
||||
/* Backlight */
|
||||
#define BACKLIGHT_PIN B5
|
||||
#define BACKLIGHT_BREATHING
|
||||
#define BACKLIGHT_LEVELS 5
|
||||
|
||||
/* RGB Glow */
|
||||
#define RGB_DI_PIN F4 // The pin the LED strip is connected to
|
||||
#define RGBLED_NUM 5 // Number of LEDs in your strip
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCING_DELAY 5
|
||||
|
||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||
//#define MATRIX_HAS_GHOST
|
||||
|
||||
/* 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
|
||||
|
||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
// #define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Force NKRO
|
||||
*
|
||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||
* makefile for this to work.)
|
||||
*
|
||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||
* until the next keyboard reset.
|
||||
*
|
||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||
* fully operational during normal computer usage.
|
||||
*
|
||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||
* power-up.
|
||||
*
|
||||
*/
|
||||
//#define FORCE_NKRO
|
||||
|
||||
/*
|
||||
* Magic Key Options
|
||||
*
|
||||
* Magic keys are hotkey commands that allow control over firmware functions of
|
||||
* the keyboard. They are best used in combination with the HID Listen program,
|
||||
* found here: https://www.pjrc.com/teensy/hid_listen.html
|
||||
*
|
||||
* The options below allow the magic key functionality to be changed. This is
|
||||
* useful if your keyboard/keypad is missing keys and you want magic key support.
|
||||
*
|
||||
*/
|
||||
|
||||
/* key combination for magic key command */
|
||||
#define IS_COMMAND() ( \
|
||||
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
|
||||
)
|
||||
|
||||
/* control how magic key switches layers */
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
|
||||
|
||||
/* override magic key keymap */
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
|
||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
|
||||
//#define MAGIC_KEY_HELP1 H
|
||||
//#define MAGIC_KEY_HELP2 SLASH
|
||||
//#define MAGIC_KEY_DEBUG D
|
||||
//#define MAGIC_KEY_DEBUG_MATRIX X
|
||||
//#define MAGIC_KEY_DEBUG_KBD K
|
||||
//#define MAGIC_KEY_DEBUG_MOUSE M
|
||||
//#define MAGIC_KEY_VERSION V
|
||||
//#define MAGIC_KEY_STATUS S
|
||||
//#define MAGIC_KEY_CONSOLE C
|
||||
//#define MAGIC_KEY_LAYER0_ALT1 ESC
|
||||
//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
|
||||
//#define MAGIC_KEY_LAYER0 0
|
||||
//#define MAGIC_KEY_LAYER1 1
|
||||
//#define MAGIC_KEY_LAYER2 2
|
||||
//#define MAGIC_KEY_LAYER3 3
|
||||
//#define MAGIC_KEY_LAYER4 4
|
||||
//#define MAGIC_KEY_LAYER5 5
|
||||
//#define MAGIC_KEY_LAYER6 6
|
||||
//#define MAGIC_KEY_LAYER7 7
|
||||
//#define MAGIC_KEY_LAYER8 8
|
||||
//#define MAGIC_KEY_LAYER9 9
|
||||
//#define MAGIC_KEY_BOOTLOADER PAUSE
|
||||
//#define MAGIC_KEY_LOCK CAPS
|
||||
//#define MAGIC_KEY_EEPROM E
|
||||
//#define MAGIC_KEY_NKRO N
|
||||
//#define MAGIC_KEY_SLEEP_LED Z
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
//#define NO_ACTION_MACRO
|
||||
//#define NO_ACTION_FUNCTION
|
||||
|
||||
/*
|
||||
* MIDI options
|
||||
*/
|
||||
|
||||
/* Prevent use of disabled MIDI features in the keymap */
|
||||
//#define MIDI_ENABLE_STRICT 1
|
||||
|
||||
/* enable basic MIDI features:
|
||||
- MIDI notes can be sent when in Music mode is on
|
||||
*/
|
||||
//#define MIDI_BASIC
|
||||
|
||||
/* enable advanced MIDI features:
|
||||
- MIDI notes can be added to the keymap
|
||||
- Octave shift and transpose
|
||||
- Virtual sustain, portamento, and modulation wheel
|
||||
- etc.
|
||||
*/
|
||||
//#define MIDI_ADVANCED
|
||||
|
||||
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
||||
//#define MIDI_TONE_KEYCODE_OCTAVES 1
|
||||
|
||||
#endif
|
16
keyboards/cu24/cu24.c
Normal file
16
keyboards/cu24/cu24.c
Normal file
@@ -0,0 +1,16 @@
|
||||
/* Copyright 2018 Yiancar
|
||||
*
|
||||
* 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 "cu24.h"
|
42
keyboards/cu24/cu24.h
Normal file
42
keyboards/cu24/cu24.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/* Copyright 2018 Yiancar
|
||||
*
|
||||
* 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 CU24_H
|
||||
#define CU24_H
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
// This a shortcut to help you visually see your layout.
|
||||
// The following is an example using the Planck MIT layout
|
||||
// The first section contains all of the arguments
|
||||
// The second converts the arguments into a two-dimensional array
|
||||
#define KEYMAP( \
|
||||
k00, k01, k02, k03, \
|
||||
k10, k11, k12, k13, \
|
||||
k20, k21, k22, k23, \
|
||||
k30, k31, k32, k33, \
|
||||
k40, k41, k42, k43, \
|
||||
k50, k51, k52, k53 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, k02, k03 }, \
|
||||
{ k10, k11, k12, k13 }, \
|
||||
{ k20, k21, k22, k23 }, \
|
||||
{ k30, k31, k32, k33 }, \
|
||||
{ k40, k41, k42, k43 }, \
|
||||
{ k50, k51, k52, k53 } \
|
||||
}
|
||||
|
||||
#endif
|
56
keyboards/cu24/keymaps/default/keymap.c
Normal file
56
keyboards/cu24/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,56 @@
|
||||
/* Copyright 2018 Yiancar
|
||||
*
|
||||
* 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 "cu24.h"
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = KEYMAP( /* Base */
|
||||
KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, \
|
||||
MO(1) , KC_PSLS, KC_PAST, KC_PMNS, \
|
||||
KC_P7 , KC_P8 , KC_P9 , KC_PPLS, \
|
||||
KC_P4 , KC_P5 , KC_P6 , KC_PPLS, \
|
||||
KC_P1 , KC_P2 , KC_P3 , KC_PENT, \
|
||||
KC_P0 , KC_P0 , KC_PDOT, KC_PENT
|
||||
),
|
||||
|
||||
[1] = KEYMAP( /* FN */
|
||||
RGB_TOG, RGB_MOD, BL_STEP, BL_BRTG, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
|
||||
RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, \
|
||||
RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, RESET , KC_TRNS
|
||||
),
|
||||
};
|
||||
|
||||
/* Use this function to add macros */
|
||||
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;
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
10
keyboards/cu24/keymaps/default/readme.md
Normal file
10
keyboards/cu24/keymaps/default/readme.md
Normal file
@@ -0,0 +1,10 @@
|
||||
https://imgur.com/a/vpHFj
|
||||
|
||||

|
||||
|
||||
# Default CU24 Layout
|
||||
|
||||
This is the default layout that comes flashed on every CU24. It is like a normal numpad,
|
||||
with all the led customization on the Fn layer.
|
||||
|
||||
See [All Layouts](https://imgur.com/trwO7dN) for all supported configurations!
|
15
keyboards/cu24/readme.md
Normal file
15
keyboards/cu24/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# CU24
|
||||
|
||||

|
||||
|
||||
A luxurious 24 key keypad with various layouts. Includes RGB underglow, backlight and an aluminium, brass and nylon case.
|
||||
|
||||
Keyboard Maintainer: [Yiancar](https://github.com/yiancar)
|
||||
Hardware Supported: PCB v1.0 (uses a 32u4)
|
||||
Hardware Availability: http://caps-unlocked.com/
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make CU24: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.
|
69
keyboards/cu24/rules.mk
Normal file
69
keyboards/cu24/rules.mk
Normal file
@@ -0,0 +1,69 @@
|
||||
# MCU name
|
||||
#MCU = at90usb1286
|
||||
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*
|
||||
# Teensy halfKay 512
|
||||
# Teensy++ halfKay 1024
|
||||
# Atmel DFU loader 4096
|
||||
# LUFA bootloader 4096
|
||||
# USBaspLoader 2048
|
||||
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
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
|
||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
NKRO_ENABLE = yes # USB Nkey Rollover
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
|
||||
MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
|
||||
UNICODE_ENABLE = no # Unicode
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
||||
RGBLIGHT_ENABLE = yes # RGB drivers
|
18
keyboards/deltasplit75/info.json
Normal file
18
keyboards/deltasplit75/info.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"keyboard_name": "DeltaSplit75",
|
||||
"identifier":"FEED:3060:0001",
|
||||
"manufacturer": "xyxjj",
|
||||
"maintainer": "xyxjj & itsaferbie",
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "n/a",
|
||||
"width": 17,
|
||||
"height": 6,
|
||||
"layouts": {
|
||||
"KEYMAP_V2": {
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":8, "y":0}, {"label":"F8", "x":9, "y":0}, {"label":"F9", "x":10, "y":0}, {"label":"F10", "x":11, "y":0}, {"label":"F11", "x":12, "y":0}, {"label":"F12", "x":13, "y":0}, {"label":"Print", "x":14, "y":0}, {"label":"Scroll", "x":15, "y":0}, {"label":"Pause", "x":16, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":8, "y":1}, {"label":"*", "x":9, "y":1}, {"label":"(", "x":10, "y":1}, {"label":")", "x":11, "y":1}, {"label":"_", "x":12, "y":1}, {"label":"+", "x":13, "y":1}, {"label":"Back", "x":14, "y":1}, {"label":"Trns", "x":15, "y":1}, {"label":"Home", "x":16, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":7.5, "y":2}, {"label":"U", "x":8.5, "y":2}, {"label":"I", "x":9.5, "y":2}, {"label":"O", "x":10.5, "y":2}, {"label":"P", "x":11.5, "y":2}, {"label":"{", "x":12.5, "y":2}, {"label":"}", "x":13.5, "y":2}, {"label":"Back", "x":14.5, "y":2, "w":1.5}, {"label":"PgUp", "x":16, "y":2}, {"label":"Ctrl", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":7.75, "y":3}, {"label":"J", "x":8.75, "y":3}, {"label":"K", "x":9.75, "y":3}, {"label":"L", "x":10.75, "y":3}, {"label":":", "x":11.75, "y":3}, {"label":"\"", "x":12.75, "y":3}, {"label":"Trns", "x":13.75, "y":3}, {"label":"Enter", "x":14.75, "y":3, "w":1.25}, {"label":"PgDn", "x":16, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"label":"Trns", "x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"B", "x":7.25, "y":4}, {"label":"N", "x":8.25, "y":4}, {"label":"M", "x":9.25, "y":4}, {"label":"<", "x":10.25, "y":4}, {"label":">", "x":11.25, "y":4}, {"label":"?", "x":12.25, "y":4}, {"label":"Shift", "x":13.25, "y":4, "w":1.75}, {"label":"Up", "x":15, "y":4}, {"label":"End", "x":16, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"label":"Space", "x":3.75, "y":5, "w":2}, {"label":"Fn", "x":5.75, "y":5}, {"label":"Space", "x":7.75, "y":5, "w":2.75}, {"label":"Alt", "x":10.5, "y":5, "w":1.25}, {"label":"Win", "x":11.75, "y":5}, {"label":"Ctrl", "x":12.75, "y":5, "w":1.25}, {"label":"Left", "x":14, "y":5}, {"label":"Down", "x":15, "y":5}, {"label":"Right", "x":16, "y":5}]
|
||||
},
|
||||
"KEYMAP_PROTOSPLIT": {
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":8, "y":0}, {"label":"F8", "x":9, "y":0}, {"label":"F9", "x":10, "y":0}, {"label":"F10", "x":11, "y":0}, {"label":"F11", "x":12, "y":0}, {"label":"F12", "x":13, "y":0}, {"label":"Insert", "x":14, "y":0}, {"label":"Home", "x":15, "y":0}, {"label":"PgUp", "x":16, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":8, "y":1}, {"label":"*", "x":9, "y":1}, {"label":"(", "x":10, "y":1}, {"label":")", "x":11, "y":1}, {"label":"_", "x":12, "y":1}, {"label":"+", "x":13, "y":1}, {"label":"Delete", "x":14, "y":1}, {"label":"End", "x":15, "y":1}, {"label":"PgDn", "x":16, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":7.5, "y":2}, {"label":"U", "x":8.5, "y":2}, {"label":"I", "x":9.5, "y":2}, {"label":"O", "x":10.5, "y":2}, {"label":"P", "x":11.5, "y":2}, {"label":"{", "x":12.5, "y":2}, {"label":"}", "x":13.5, "y":2}, {"label":"Back", "x":14.5, "y":2, "w":1.5}, {"label":"Scroll", "x":16, "y":2}, {"label":"Ctrl", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":7.75, "y":3}, {"label":"J", "x":8.75, "y":3}, {"label":"K", "x":9.75, "y":3}, {"label":"L", "x":10.75, "y":3}, {"label":":", "x":11.75, "y":3}, {"label":"\"", "x":12.75, "y":3}, {"label":"Enter", "x":13.75, "y":3, "w":2.25}, {"label":"Pause", "x":16, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"B", "x":7.25, "y":4}, {"label":"N", "x":8.25, "y":4}, {"label":"M", "x":9.25, "y":4}, {"label":"<", "x":10.25, "y":4}, {"label":">", "x":11.25, "y":4}, {"label":"?", "x":12.25, "y":4}, {"label":"Shift", "x":13.25, "y":4, "w":1.75}, {"label":"Up", "x":15, "y":4}, {"label":"Print", "x":16, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"label":"Space", "x":3.75, "y":5, "w":2}, {"label":"Fn", "x":5.75, "y":5}, {"label":"Space", "x":7.75, "y":5, "w":2.75}, {"label":"Alt", "x":10.5, "y":5, "w":1.25}, {"label":"Win", "x":11.75, "y":5}, {"label":"Ctrl", "x":12.75, "y":5, "w":1.25}, {"label":"Left", "x":14, "y":5}, {"label":"Down", "x":15, "y":5}, {"label":"Right", "x":16, "y":5}]
|
||||
}
|
||||
}
|
||||
}
|
@@ -3,7 +3,7 @@ DeltaSplit75
|
||||
|
||||
A split 75% keyboard made by xyxjj. [More info on qmk.fm](http://qmk.fm/deltasplit75/)
|
||||
|
||||
Keyboard Maintainer: [xyxjj](https://github.com/xyxjj)
|
||||
Keyboard Maintainer: [xyxjj](https://github.com/xyxjj) & [itsaferbie](https://github.com/itsaferbie)
|
||||
Hardware Supported: Pro Micro
|
||||
Hardware Availability: Group Buy
|
||||
|
||||
|
85
keyboards/dz60/keymaps/f3d3/keymap.c
Normal file
85
keyboards/dz60/keymaps/f3d3/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 | - | = | ` | Bck |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | 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 | , | . | RSh | U | / |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Ctrl | GUI | Alt | Space | Fn1 | Play | Pscr | Fn1 | Left |Rght |Down |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
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_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_ENT,
|
||||
KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_TRNS, KC_RSFT, KC_UP, KC_SLSH,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_MPLY, KC_PSCR, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
|
||||
|
||||
|
||||
|
||||
/* Layer 1
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | PWR | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | Del |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | |RGBT |RGBM |Hue+ |Hue- |Sat+ |Sat- |Val+ |Val- | | | | | RESET |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | | | | | | | | | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | BLT | BL- | BL+ | BLS | | | |Vol+ | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | | Stop | | |Prev |Vol- |Next |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
|
||||
KEYMAP_2_SHIFTS(
|
||||
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_TRNS, KC_DEL,
|
||||
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT),
|
||||
};
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
255
keyboards/ergodox_ez/keymaps/saha/keymap.c
Normal file
255
keyboards/ergodox_ez/keymaps/saha/keymap.c
Normal file
@@ -0,0 +1,255 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
#include "ergodox_ez.h"
|
||||
#include "debug.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
#define BASE 0 // Base layer - QWERTY
|
||||
#define SPEC 1 // Special keys favoring programming in c-like languages
|
||||
#define NUM 2 // Numeric layer with number row functional keys
|
||||
|
||||
#define ___ KC_TRNS
|
||||
#define BSLASH LSFT(KC_SLSH)
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[BASE] = LAYOUT_ergodox(
|
||||
|
||||
// Left side
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_VOLU, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /**/ KC_F11, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_VOLD, /**/ KC_Q, /**/ KC_W, /**/ KC_E, /**/ KC_R, /**/ KC_T, /**/ KC_ESC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_MPLY, /**/ KC_A, /**/ KC_S, /**/ KC_D, /**/ KC_F, /**/ KC_G, /*===============*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_MUTE, /**/ KC_Z, /**/ KC_X, /**/ KC_C, /**/ KC_V, /**/ KC_B, /**/ KC_BSPC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/ ___, /**/ KC_RALT, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_DEL, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /**/ KC_LALT, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /*===============*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
|
||||
// Right side
|
||||
//
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_F12, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_Y, /**/ KC_U, /**/ KC_I, /**/ KC_O, /**/ KC_P, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*===============*/ KC_H, /**/ KC_J, /**/ KC_K, /**/ KC_L, /**/ KC_SCLN, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_ENT, /**/ KC_N, /**/ KC_M, /**/ KC_COMM, /**/ KC_DOT, /**/ KC_SLSH, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ MO(NUM), /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*===============*/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_RSFT, /**/ MO(SPEC) /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
),
|
||||
|
||||
|
||||
[SPEC] = LAYOUT_ergodox(
|
||||
|
||||
// Left side
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_EXLM, /**/ KC_AT, /**/ KC_HASH, /**/ KC_DLR, /**/ KC_PERC, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_GRV, /**/ KC_QUOT, /**/ KC_LCBR, /**/ KC_RCBR, /**/ KC_PLUS, /**/ KC_ESC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_TAB, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ KC_EQUAL, /*===============*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_HASH, /**/ KC_PERC, /**/ KC_LBRC, /**/ KC_RBRC, /**/ KC_MINUS, /**/ KC_BSPC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/ ___, /**/ KC_LALT, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_DEL, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /**/ KC_LALT, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /*===============*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
|
||||
// Right side
|
||||
//
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_CIRC, /**/ KC_AMPR, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_AMPR, /**/ KC_HOME, /**/ KC_UP, /**/ KC_END, /**/ KC_CIRC, /**/ KC_F7, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*===============*/ KC_EXLM, /**/ KC_LEFT, /**/ KC_DOWN, /**/ KC_RIGHT, /**/ KC_COLN, /**/ KC_F8, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_ENT, /**/ KC_PIPE, /**/ KC_UNDS, /**/ KC_LT, /**/ KC_GT, /**/ KC_BSLS, /**/ KC_F9, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/KC_F10,/**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*===============*/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_RSFT, /**/ ___ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
),
|
||||
|
||||
[NUM] = LAYOUT_ergodox(
|
||||
|
||||
// Left side
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_F1, /**/ KC_F2, /**/ KC_F3, /**/ KC_F4, /**/ KC_F5, /**/ KC_F11, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_EXLM, /**/ KC_AT, /**/ KC_HASH, /**/ KC_DLR, /**/ KC_PERC, /**/ KC_ESC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /*===============*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*==========================================================================================*/ /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_HASH, /**/ KC_PERC, /**/ KC_LBRC, /**/ KC_RBRC, /**/ KC_MINUS, /**/ KC_BSPC, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/ ___, /**/ KC_LALT, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_DEL, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /**/ KC_LALT, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ /**/ /*===============*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
|
||||
// Right side
|
||||
//
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_F12, /**/ KC_F6, /**/ KC_F7, /**/ KC_F8, /**/ KC_F9, /**/ KC_F10, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_CIRC, /**/ KC_AMPR, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*===============*/ KC_6, /**/ KC_7, /**/ KC_8, /**/ KC_9, /**/ KC_0, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ /*==========================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ KC_ENT, /**/ KC_PIPE, /**/ KC_UNDS, /**/ KC_COMM, /**/ KC_DOT, /**/ KC_BSLS, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=========================================================================================================*/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/
|
||||
/**/ /**/ /**/ /**/ /**/ /**/
|
||||
/*=======================================================================*/
|
||||
|
||||
/*==============================*/
|
||||
/**/ /**/ /**/
|
||||
/**/ ___, /**/ ___, /**/
|
||||
/**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*===============*/ /**/ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/**/ ___, /**/ KC_RSFT, /**/ ___ /**/
|
||||
/**/ /**/ /**/ /**/
|
||||
/*=============================================*/
|
||||
),
|
||||
|
||||
};
|
14
keyboards/ergodox_infinity/info.json
Normal file
14
keyboards/ergodox_infinity/info.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"keyboard_name": "Infinity Ergodox",
|
||||
"manufacturer": "Input Club",
|
||||
"identifier": "FEED:6464:0001",
|
||||
"processor": "MK20DX256VLH7",
|
||||
"bootloader": "KIIBOHD_BOOTLOADER",
|
||||
"width": 19.5,
|
||||
"height": 9.375,
|
||||
"layouts": {
|
||||
"KEYMAP": {
|
||||
"layout": [{"label":"#", "x":3.5, "y":0}, {"label":"*", "x":15, "y":0}, {"label":"@", "x":2.5, "y":0.125}, {"label":"$", "x":4.5, "y":0.125}, {"label":"&", "x":14, "y":0.125}, {"label":"(", "x":16, "y":0.125}, {"label":"%", "x":5.5, "y":0.25}, {"x":6.5, "y":0.25}, {"x":12, "y":0.25}, {"label":"^", "x":13, "y":0.25}, {"x":0, "y":0.375, "w":1.5}, {"label":"!", "x":1.5, "y":0.375}, {"label":")", "x":17, "y":0.375}, {"x":18, "y":0.375, "w":1.5}, {"label":"E", "x":3.5, "y":1}, {"label":"I", "x":15, "y":1}, {"label":"W", "x":2.5, "y":1.125}, {"label":"R", "x":4.5, "y":1.125}, {"label":"U", "x":14, "y":1.125}, {"label":"O", "x":16, "y":1.125}, {"label":"T", "x":5.5, "y":1.25}, {"x":6.5, "y":1.25, "h":1.5}, {"x":12, "y":1.25, "h":1.5}, {"label":"Y", "x":13, "y":1.25}, {"x":0, "y":1.375, "w":1.5}, {"label":"Q", "x":1.5, "y":1.375}, {"label":"P", "x":17, "y":1.375}, {"x":18, "y":1.375, "w":1.5}, {"label":"D", "x":3.5, "y":2}, {"label":"K", "x":15, "y":2}, {"label":"S", "x":2.5, "y":2.125}, {"label":"F", "x":4.5, "y":2.125}, {"label":"J", "x":14, "y":2.125}, {"label":"L", "x":16, "y":2.125}, {"label":"G", "x":5.5, "y":2.25}, {"label":"H", "x":13, "y":2.25}, {"x":0, "y":2.375, "w":1.5}, {"label":"A", "x":1.5, "y":2.375}, {"label":":", "x":17, "y":2.375}, {"x":18, "y":2.375, "w":1.5}, {"x":6.5, "y":2.75, "h":1.5}, {"x":12, "y":2.75, "h":1.5}, {"label":"C", "x":3.5, "y":3}, {"label":"<", "x":15, "y":3}, {"label":"X", "x":2.5, "y":3.125}, {"label":"V", "x":4.5, "y":3.125}, {"label":"M", "x":14, "y":3.125}, {"label":">", "x":16, "y":3.125}, {"label":"B", "x":5.5, "y":3.25}, {"label":"N", "x":13, "y":3.25}, {"x":0, "y":3.375, "w":1.5}, {"label":"Z", "x":1.5, "y":3.375}, {"label":"?", "x":17, "y":3.375}, {"x":18, "y":3.375, "w":1.5}, {"x":3.5, "y":4}, {"x":15, "y":4}, {"x":2.5, "y":4.125}, {"x":4.5, "y":4.125}, {"x":14, "y":4.125}, {"x":16, "y":4.125}, {"x":0.5, "y":4.375}, {"x":1.5, "y":4.375}, {"x":17, "y":4.375}, {"x":18, "y":4.375}, {"x":1, "y":4.375}, {"x":2, "y":4.375}, {"x":0, "y":5.375, "h":2}, {"x":1, "y":5.375, "h":2}, {"x":2, "y":5.375}, {"x":2, "y":6.375}, {"x":-3.0, "y":6.375}, {"x":-2, "y":6.375}, {"x":-3.0, "y":7.375}, {"x":-2, "y":7.375, "h":2}, {"x":-1.0, "y":7.375, "h":2}, {"x":-3.0, "y":8.375}]
|
||||
}
|
||||
}
|
||||
}
|
292
keyboards/ergodox_infinity/keymaps/not-quite-neo/keymap.c
Normal file
292
keyboards/ergodox_infinity/keymaps/not-quite-neo/keymap.c
Normal file
@@ -0,0 +1,292 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
/*
|
||||
NQN is not-quite-neo
|
||||
A layout based on neo2
|
||||
*/
|
||||
|
||||
#include "action_layer.h"
|
||||
#include "version.h"
|
||||
|
||||
#include "nqn-keys-on-quertz-de-latin1.h"
|
||||
#include "nqn-basic-layout.h"
|
||||
|
||||
// Since our quirky block definitions are basically a list of comma separated
|
||||
// arguments, we need a wrapper in order for these definitions to be
|
||||
// expanded before being used as arguments to the LAYOUT_xxx macro.
|
||||
#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__)
|
||||
|
||||
#ifdef LEADER_TIMEOUT
|
||||
#undef LEADER_TIMEOUT
|
||||
#endif
|
||||
#define LEADER_TIMEOUT 300
|
||||
|
||||
#define TAP_ONCE(code) \
|
||||
register_code (code); \
|
||||
unregister_code (code)
|
||||
|
||||
|
||||
// Automatic number generation of important keywords
|
||||
enum my_keycodes{
|
||||
// Layer numbers follow the neo2 terminology, i.e. base layer = layer 1
|
||||
L01 = 0,
|
||||
/* L02, SHIFT is not (yet) implemented as a fully customizable layer */
|
||||
L03,
|
||||
L04,
|
||||
L05,
|
||||
/* L06, UNSPECIFIED not (yet) needed */
|
||||
LFN
|
||||
};
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* L01 -> default: BASE LAYER
|
||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
||||
* | TAB | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | BACKSP |
|
||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
||||
* | ESC | | LEADR| | LEADR| | ENTER |
|
||||
* |--------+ | | | | +--------|
|
||||
* | L03 | L01_LEFT |------| |------| L01_RIGHT | L03 |
|
||||
* |--------+ | LFN | | LFN | +--------|
|
||||
* | SHIFT | | | | | | SHIFT |
|
||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
||||
* | CTRL | GUI | ALT | L05 | L04 | | L04 | L05 | ALTGR| LFN | CTRL |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
* ,-------------. ,-------------.
|
||||
* | HOME | END | | LEFT | RIGHT|
|
||||
* ,------|------|------| |------+------+------.
|
||||
* | | | PGUP | | UP | | |
|
||||
* | SPACE| SHIFT|------| |------| SHIFT| SPACE|
|
||||
* | | | PGDN | | DOWN | | |
|
||||
* `--------------------' `--------------------'
|
||||
*/
|
||||
[L01] = LAYOUT_ergodox_wrapper(
|
||||
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX,
|
||||
KC_ESC, L01_LEFT_01, KC_LEAD,
|
||||
MO(L03), L01_LEFT_02,
|
||||
KC_LSHIFT, L01_LEFT_03, MO(LFN),
|
||||
KC_LCTRL,KC_LGUI,KC_LALT, MO(L05), MO(L04),
|
||||
XXXXXXX, XXXXXXX,
|
||||
KC_PGUP,
|
||||
KC_SPACE,KC_LSHIFT,KC_PGDN,
|
||||
//--
|
||||
XXXXXXX, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPACE,
|
||||
KC_LEAD, L01_RIGHT_01, KC_ENTER,
|
||||
L01_RIGHT_02, MO(L03),
|
||||
MO(LFN), L01_RIGHT_03, KC_RSHIFT,
|
||||
MO(L04), MO(L05), KC_RALT, MO(LFN), KC_RCTRL,
|
||||
KC_LEFT, KC_RIGHT,
|
||||
KC_UP,
|
||||
KC_DOWN, KC_RSHIFT, KC_SPACE
|
||||
),
|
||||
|
||||
|
||||
/*
|
||||
L02 -> MO(L02): SHIFT (as a layer not used, not defined, not reachable)
|
||||
*/
|
||||
|
||||
|
||||
/* L03 -> MO(L03): PROGRAMMING
|
||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
||||
* | | | | | | | | | | | | | | | |
|
||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
||||
* | | | | | | | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | L03_LEFT |------| |------| L03_RIGHT | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | | | | | | |
|
||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
||||
* | | | | | | | | | | | |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
* ,-------------. ,-------------.
|
||||
* | | | | | |
|
||||
* ,------|------|------| |------+------+------.
|
||||
* | | | | | | | |
|
||||
* | | |------| |------| | |
|
||||
* | | | | | | | |
|
||||
* `--------------------' `--------------------'
|
||||
*/
|
||||
[L03] = LAYOUT_ergodox_wrapper(
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L03_LEFT_01, _______,
|
||||
_______, L03_LEFT_02,
|
||||
_______, L03_LEFT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______,
|
||||
//--
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L03_RIGHT_01, _______,
|
||||
L03_RIGHT_02, _______,
|
||||
_______, L03_RIGHT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______
|
||||
),
|
||||
|
||||
/* L04 -> MO(L04): NAVIGATION AND NUMBERS
|
||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
||||
* | | | | | | | | | | | | | | | |
|
||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
||||
* | | | | | | | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | L04_LEFT |------| |------| L04_RIGHT | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | | | | | | |
|
||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
||||
* | | | | | | | | | | | |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
* ,-------------. ,-------------.
|
||||
* | | | | | |
|
||||
* ,------|------|------| |------+------+------.
|
||||
* | | | | | | | |
|
||||
* | 0 | |------| |------| | 0 |
|
||||
* | | | | | | | |
|
||||
* `--------------------' `--------------------'
|
||||
*/
|
||||
[L04] = LAYOUT_ergodox_wrapper(
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L04_LEFT_01, _______,
|
||||
_______, L04_LEFT_02,
|
||||
_______, L04_LEFT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
KC_0, _______, _______,
|
||||
//--
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L04_RIGHT_01, _______,
|
||||
L04_RIGHT_02, _______,
|
||||
_______, L04_RIGHT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, KC_0
|
||||
),
|
||||
|
||||
|
||||
/* L05 -> MO(L05): ALTERNATE
|
||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
||||
* | | | | | | | | | | | | | | | |
|
||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
||||
* | | | | | | | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | L05_LEFT |------| |------| L05_RIGHT | |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | | | | | | |
|
||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
||||
* | | | | | | | | | | | |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
* ,-------------. ,-------------.
|
||||
* | | | | | |
|
||||
* ,------|------|------| |------+------+------.
|
||||
* | | | | | | | |
|
||||
* | | |------| |------| | |
|
||||
* | | | | | | | |
|
||||
* `--------------------' `--------------------'
|
||||
*/
|
||||
[L05] = LAYOUT_ergodox_wrapper(
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L05_LEFT_01, _______,
|
||||
_______, L05_LEFT_02,
|
||||
_______, L05_LEFT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______,
|
||||
//--
|
||||
_______, _______, _______, _______, _______, _______, _______,
|
||||
_______, L05_RIGHT_01, _______,
|
||||
L05_RIGHT_02, _______,
|
||||
_______, L05_RIGHT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______
|
||||
),
|
||||
|
||||
|
||||
/*
|
||||
L06 -> <TBD>: UNSPECIFIED
|
||||
*/
|
||||
|
||||
|
||||
/* LFN -> MO(FN): FUNCTION
|
||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
||||
* | RESET | | | | | | | | | | | | | | RESET |
|
||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
||||
* | | | | | | | BACKSPC|
|
||||
* |--------+ | | | | +--------|
|
||||
* | | L06_LEFT |------| |------| L06_RIGHT | INSERT |
|
||||
* |--------+ | | | | +--------|
|
||||
* | | | | | | | DELETE |
|
||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
||||
* | | | | | | | VOL+ | VOL- | MUTE | | |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
* ,-------------. ,-------------.
|
||||
* | | | | | |
|
||||
* ,------|------|------| |------+------+------.
|
||||
* | | | | | | | |
|
||||
* | | |------| |------| | |
|
||||
* | | | | | | | |
|
||||
* `--------------------' `--------------------'
|
||||
*/
|
||||
[LFN] = LAYOUT_ergodox_wrapper(
|
||||
RESET, _______, _______, _______, _______, _______, _______,
|
||||
_______, L06_LEFT_01, _______,
|
||||
_______, L06_LEFT_02,
|
||||
_______, L06_LEFT_03, _______,
|
||||
_______, _______, _______, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______,
|
||||
//--
|
||||
_______, _______, _______, _______, _______, _______, RESET,
|
||||
_______, L06_RIGHT_01, KC_BSPACE,
|
||||
L06_RIGHT_02, KC_INSERT,
|
||||
_______, L06_RIGHT_03, KC_DELETE,
|
||||
KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
|
||||
_______, _______,
|
||||
_______,
|
||||
_______, _______, _______
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
||||
// Runs just one time when the keyboard initializes.
|
||||
void matrix_init_user(void) {
|
||||
set_unicode_input_mode(UC_LNX);
|
||||
};
|
||||
|
||||
|
||||
LEADER_EXTERNS();
|
||||
|
||||
// Runs constantly in the background, in a loop.
|
||||
void matrix_scan_user(void) {
|
||||
LEADER_DICTIONARY() {
|
||||
leading = false;
|
||||
leader_end();
|
||||
|
||||
SEQ_ONE_KEY (KC_1) {
|
||||
// ¯\_(ツ)_/¯
|
||||
unicode_input_start(); register_hex(0xaf); unicode_input_finish();
|
||||
register_code (KC_RALT); TAP_ONCE (KC_MINS); unregister_code (KC_RALT);
|
||||
register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT);
|
||||
unicode_input_start (); register_hex(0x30c4); unicode_input_finish();
|
||||
register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT);
|
||||
unicode_input_start (); register_hex(0xaf); unicode_input_finish();
|
||||
}
|
||||
|
||||
SEQ_ONE_KEY (KC_2) {
|
||||
// 凸(ツ)凸
|
||||
unicode_input_start(); register_hex(0x51F8); unicode_input_finish();
|
||||
register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT);
|
||||
unicode_input_start (); register_hex(0x30c4); unicode_input_finish();
|
||||
register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT);
|
||||
unicode_input_start (); register_hex(0x51F8); unicode_input_finish();
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,5 @@
|
||||
# not-quite-neo
|
||||
|
||||
This is my personal take on porting the [neo2 layout](https://www.neo-layout.org/) to support multiple keyboards.
|
||||
|
||||
Refer to the [readme.md](../../../../users/not-quite-neo/readme.md) of the generic parts of the implementation.
|
@@ -0,0 +1,2 @@
|
||||
BACKLIGHT_ENABLE = yes
|
||||
UNICODE_ENABLE = yes
|
41
keyboards/iris/keymaps/hag/config.h
Normal file
41
keyboards/iris/keymaps/hag/config.h
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@hexwire.com>
|
||||
|
||||
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 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
|
||||
|
||||
#endif
|
297
keyboards/iris/keymaps/hag/keymap.c
Normal file
297
keyboards/iris/keymaps/hag/keymap.c
Normal file
@@ -0,0 +1,297 @@
|
||||
#include "iris.h"
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
|
||||
//Heavily modified keymap. Some features:
|
||||
//Multiple layouts, I use dvorak as main.
|
||||
//Nordic(swedish) signs
|
||||
//Symbols, numpad, arrows/navigation reachable under the alpas via the layers
|
||||
//Mirrored ctl, alt and shift to be able to use both hands when doing commands
|
||||
//Gaming layer, qwerty with space on left half.
|
||||
|
||||
#define _QWERTY 2
|
||||
#define _DVORAK 0
|
||||
#define _COLEMAK 1
|
||||
#define _WORKMAN 3
|
||||
#define _GAMING 4
|
||||
#define _NUMPAD 5
|
||||
#define _LOWER 6
|
||||
#define _RAISE 7
|
||||
|
||||
#define _ADJUST 16
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
DVORAK,
|
||||
COLEMAK,
|
||||
WORKMAN,
|
||||
GAMING,
|
||||
NUMPAD,
|
||||
LOWER,
|
||||
RAISE,
|
||||
ADJUST,
|
||||
};
|
||||
|
||||
#define KC_ KC_TRNS
|
||||
#define _______ KC_TRNS
|
||||
#define KC_XXXX KC_NO
|
||||
|
||||
#define KC_Sw2 RALT(KC_2) // Nordic @
|
||||
#define KC_Sw3 RALT(KC_3) // Nordic something
|
||||
#define KC_Sw4 RALT(KC_4) // Nordic something
|
||||
#define KC_Sw5 RALT(KC_5) // Nordic something
|
||||
#define KC_Sw6 RALT(KC_6) // ...
|
||||
#define KC_Sw7 RALT(KC_7)
|
||||
#define KC_Sw8 RALT(KC_8)
|
||||
#define KC_Sw9 RALT(KC_9)
|
||||
#define KC_Sw0 RALT(KC_0)
|
||||
#define KC_Tild RALT(KC_RBRC)
|
||||
#define KC_Bsls RALT(KC_MINS)
|
||||
#define KC_Bar RALT(KC_NUBS)
|
||||
#define KC_Less S(KC_NUBS)
|
||||
#define KC_CATDEL LCTL(LALT(KC_DEL)) // Ctrl alt del
|
||||
#define KC_TSKMGR LCTL(S(KC_ESC)) // Ctrl shift esc
|
||||
#define KC_NUMP TG(_NUMPAD) // Toggle layer NUMPAD for use in KC_keymaps
|
||||
#define KC_Close RALT(KC_F4) // Alt F4
|
||||
#define KC_Great S(KC_NUBS)
|
||||
#define KC_MEH1 MEH(KC_1)
|
||||
#define KC_MEH2 MEH(KC_2)
|
||||
#define KC_MEH3 MEH(KC_3)
|
||||
#define KC_MEH4 MEH(KC_4)
|
||||
#define KC_MEH5 MEH(KC_5)
|
||||
|
||||
#define KC_LOWR LOWER
|
||||
#define KC_RASE RAISE
|
||||
#define KC_RST RESET
|
||||
#define KC_BL_S BL_STEP
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
DEL ,APP, VOLD,MUTE,VOLU,LGUI, RGUI,MPRV,MPLY,MNXT,DOWN,ESC ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
TAB , Q , W , E , R , T , Y , U , I , O , P ,LBRC,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
LCTL, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
LSFT, Z , X , C , V , B ,NUMP, ENT , N , M ,COMM,DOT ,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LALT,LOWR,BSPC, SPC ,RASE,LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_GAMING] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,ESC ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
TAB , Q , W , E , R , T , Y , U , I , O , P ,DEL,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
LCTL, A , S , D , F , G , H , J , K , L ,SCLN,RCTL,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
LSFT, Z , X , C , V , B , Y , ENT , N , M ,COMM,DOT ,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LALT,LOWR,SPC, BSPC ,RASE,LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_DVORAK] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
DEL ,APP ,VOLD,MUTE,VOLU,LGUI, RGUI,MPRV,MPLY,MNXT,DOWN,ESC ,
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
TAB ,LBRC,QUOT,SCLN, P , Y , F , G , C , R , L ,DEL,
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
LCTL, A , O , E , U , I , D , H , T , N , S ,RCTL,
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
LSFT,DOT , Q , J , K , X ,NUMP, ENT , B , M , W , V , Z ,RSFT,
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
LALT,LOWR,BSPC, SPC ,RASE,LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_COLEMAK] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
DEL ,APP, VOLD,MUTE,VOLU,LGUI, RGUI,MPRV,MPLY,MNXT,DOWN,ESC ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
TAB , Q , W , F , P , G , J , L , U , Y ,LBRC,QUOT,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
LCTL, A , R , S , T , D , H , N , E , I , O ,SCLN,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
LSFT, Z , X , C , V , B ,NUMP, ENT , K , M ,COMM, DOT,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LALT,LOWR,BSPC, SPC ,RASE,LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_WORKMAN] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
DEL ,APP, VOLD,MUTE,VOLU,LGUI, RGUI,MPRV,MPLY,MNXT,DOWN,ESC ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
TAB , Q , W , R , W , B , J , F , U , P ,LBRC,SCLN,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
LCTL, A , S , H , T , G , Y , N , E , O , I ,RCTL,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
LSFT, Z , X , M , C , V ,NUMP, ENT , K , L ,QUOT, DOT,SLSH,RSFT,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LALT,LOWR,BSPC, SPC ,RASE,LALT
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_NUMPAD] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,MEH1,BTN2,MS_U,BTN1,CATDEL, PIPE, P7 , P8 , P9 ,SLSH, ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,MEH4,MS_L,MS_D,MS_R,TSKMGR, COMM, P4 , P5 , P6 ,MINS, ,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
,MEH5,ACL0,ACL1,ACL2,MEH3, , PENT,DOT , P1 , P2 , P3 , P0 , ,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
LALT,LOWR,BSPC, , P0 ,NLCK
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
|
||||
[_LOWER] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,CAPS,PGUP, UP ,PGDN, ESC, RCBR,EXLM,ASTR,LPRN,UNDS, ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,HOME,LEFT,DOWN,RGHT, END, RPRN,QUES,Sw8 ,Sw9 ,LABK, ,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
, ENT, , , , DEL, , ,RABK,NUBS,Sw7 ,Sw0 ,Great, ,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
, , , , ,
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_RAISE] = KC_KEYMAP(
|
||||
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
|
||||
TILD,EXLM,GRV ,EQL, DLR ,PERC, Sw3 ,Sw5 ,Sw6 ,Sw0 ,RPRN, ,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,Bar ,Sw2 ,HASH, AT ,PERC, PIPE, 7 , 8 , 9 ,PMNS,PSLS,
|
||||
//|----+----+----+----+----+----| |----+----+----+----+----+----|
|
||||
,Bsls,Tild,SLSH,AMPR,BSLS, COMM, 4 , 5 , 6 ,PPLS,PAST,
|
||||
//|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
|
||||
,PIPE,Sw4 ,PLUS,CIRC,TILD, , PENT,DOT , 1 , 2 , 3 , 0 ,PEQL,
|
||||
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
|
||||
, ,DEL , , ,
|
||||
// `----+----+----' `----+----+----'
|
||||
),
|
||||
|
||||
[_ADJUST] = KEYMAP(
|
||||
//,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------.
|
||||
GAMING , DVORAK, WORKMAN, COLEMAK, QWERTY , KC_RST, _______, _______, _______, _______, KC_PWR, RESET,
|
||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||
_______, _______, _______,LGUI(KC_UP),_______,LALT(KC_F4), _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI,
|
||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||
_______, _______,LGUI(KC_LEFT),LGUI(KC_DOWN),LGUI(KC_RGHT),_______, _______, 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 DVORAK:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
// PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_DVORAK);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case NUMPAD:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
// PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_NUMPAD);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case COLEMAK:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
// PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_COLEMAK);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case WORKMAN:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
// PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_WORKMAN);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case GAMING:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
// PLAY_SONG(tone_qwerty);
|
||||
#endif
|
||||
persistent_default_layer_set(1UL<<_GAMING);
|
||||
}
|
||||
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;
|
||||
}
|
6
keyboards/iris/keymaps/hag/rules.mk
Normal file
6
keyboards/iris/keymaps/hag/rules.mk
Normal file
@@ -0,0 +1,6 @@
|
||||
RGBLIGHT_ENABLE = yes
|
||||
BACKLIGHT_ENABLE = yes
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
@@ -34,7 +34,7 @@ extern rgblight_config_t rgblight_config;
|
||||
// @Override
|
||||
void matrix_init_kb(void) {
|
||||
// call user level keymaps, if any
|
||||
// matrix_init_user();
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
#ifdef BACKLIGHT_ENABLE
|
||||
@@ -67,7 +67,8 @@ void rgblight_set(void) {
|
||||
}
|
||||
|
||||
bool rgb_init = false;
|
||||
void matrix_scan_user(void) {
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// if LEDs were previously on before poweroff, turn them back on
|
||||
if (rgb_init == false && rgblight_config.enable) {
|
||||
i2c_init();
|
||||
@@ -76,5 +77,18 @@ void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
rgblight_task();
|
||||
|
||||
matrix_scan_user();
|
||||
/* Nothing else for now. */
|
||||
}
|
||||
|
||||
__attribute__((weak)) // overridable
|
||||
void matrix_init_user(void) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
__attribute__((weak)) // overridable
|
||||
void matrix_scan_user(void) {
|
||||
|
||||
}
|
||||
|
@@ -66,3 +66,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \
|
||||
)
|
||||
};
|
||||
|
||||
// Loop
|
||||
void matrix_scan_user(void) {
|
||||
// Empty
|
||||
};
|
||||
|
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
|
||||
* | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Shift|PrScr |ISO ~ |ISO | | | | | | |bl_on |bl_stp| Enter|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
@@ -121,3 +121,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||
}
|
||||
return MACRO_NONE;
|
||||
};
|
||||
|
||||
// Loop
|
||||
void matrix_scan_user(void) {
|
||||
// Empty
|
||||
};
|
||||
|
@@ -4,5 +4,6 @@
|
||||
#include "../../config.h"
|
||||
|
||||
#define PREVENT_STUCK_MODIFIERS
|
||||
#define TAPPING_TERM 300
|
||||
|
||||
#endif
|
||||
|
@@ -11,6 +11,18 @@ enum custom_keycodes {
|
||||
RAISE,
|
||||
};
|
||||
|
||||
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)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
@@ -24,10 +36,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_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 , \
|
||||
_______, KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
|
||||
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 \
|
||||
),
|
||||
|
||||
/* Lower
|
||||
|
1
keyboards/jj40/keymaps/krusli/rules.mk
Normal file
1
keyboards/jj40/keymaps/krusli/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
TAP_DANCE_ENABLE = yes
|
@@ -107,3 +107,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
// Loop
|
||||
void matrix_scan_user(void) {
|
||||
// Empty
|
||||
};
|
||||
|
@@ -91,12 +91,6 @@ uint8_t matrix_scan(void) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// Looping keyboard code goes here
|
||||
// This runs every cycle (a lot)
|
||||
matrix_scan_user();
|
||||
};
|
||||
|
||||
// declarations
|
||||
void matrix_set_row_status(uint8_t row) {
|
||||
DDRB = (1 << row);
|
||||
|
@@ -42,7 +42,6 @@ BACKLIGHT_CUSTOM_DRIVER = yes
|
||||
|
||||
RGBLIGHT_ENABLE = yes
|
||||
RGBLIGHT_CUSTOM_DRIVER = yes
|
||||
# DISABLE_WS2812 = no
|
||||
|
||||
KEY_LOCK_ENABLE = yes
|
||||
|
||||
|
28
keyboards/levinson/keymaps/losinggeneration/README.md
Normal file
28
keyboards/levinson/keymaps/losinggeneration/README.md
Normal file
@@ -0,0 +1,28 @@
|
||||
losinggeneration's Levinson Layout
|
||||
============================
|
||||
|
||||
See description of the layout in the common folder
|
||||
[here](../../../../users/losinggeneration/README.md)
|
||||
|
||||
## Features
|
||||
- Adjust
|
||||
- Removed AGSwap, AGNorm, & Del
|
||||
- Added Caps Lock, F1-F12 in a 4x3 grid, backlight control, arrow cluster,
|
||||
and layer transitions to the new layers.
|
||||
- Moved Reset & Audio control to the right side
|
||||
|
||||
## Layouts
|
||||
|
||||
### Adjust (Lower + Raise)
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| CAPS | F9 | F10 | F11 | F12 |BL On ||Audoff| | | | Up | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | | | | | || | | XXX | Left | Down |Right |
|
||||
`-----------------------------------------''-----------------------------------------'
|
||||
```
|
42
keyboards/levinson/keymaps/losinggeneration/config.h
Normal file
42
keyboards/levinson/keymaps/losinggeneration/config.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@hexwire.com>
|
||||
Copyright 2018 Harley Laue <losinggeneration@gmail.com>
|
||||
|
||||
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
|
||||
long with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include QMK_KEYBOARD_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 */
|
||||
|
||||
#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
|
||||
|
||||
#endif
|
38
keyboards/levinson/keymaps/losinggeneration/keymap.c
Normal file
38
keyboards/levinson/keymaps/losinggeneration/keymap.c
Normal file
@@ -0,0 +1,38 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "losinggeneration-config.h"
|
||||
#include "losinggeneration-keymap.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = CATMAP( QWERTY_LAYER ),
|
||||
[_COLEMAK] = CATMAP( COLEMAK_LAYER ),
|
||||
[_WORKMAN] = CATMAP( WORKMAN_LAYER ),
|
||||
[_DVORAK] = CATMAP( DVORAK_LAYER ),
|
||||
[_GAME] = CATMAP( GAME_LAYER ),
|
||||
[_NUMPAD] = CATMAP( NUMPAD_LAYER ),
|
||||
[_MOUSE] = CATMAP( MOUSE_LAYER ),
|
||||
[_LOWER] = CATMAP( LOWER_LAYER ),
|
||||
[_RAISE] = CATMAP( RAISE_LAYER ),
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | CAPS | F9 | F10 | F11 | F12 |BL On ||Audoff| | | | Up | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | | | | | || | | XXX | Left | Down |Right |
|
||||
* `-----------------------------------------''-----------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = CATMAP( \
|
||||
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , BL_OFF , RESET , TO_GAME, TO_NUM , TO_MS , _______, _______, \
|
||||
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , BL_TOGG, AU_ON , QWERTY , COLEMAK, WORKMAN, DVORAK , _______, \
|
||||
KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , BL_ON , AU_OFF , _______, _______, _______, KC_UP , _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT \
|
||||
)
|
||||
|
||||
};
|
||||
|
17
keyboards/levinson/keymaps/losinggeneration/rules.mk
Normal file
17
keyboards/levinson/keymaps/losinggeneration/rules.mk
Normal file
@@ -0,0 +1,17 @@
|
||||
# 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
|
||||
#
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
MIDI_ENABLE = no # MIDI controls
|
||||
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
8
keyboards/miuni32/keymaps/ki/config.h
Normal file
8
keyboards/miuni32/keymaps/ki/config.h
Normal file
@@ -0,0 +1,8 @@
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
// place overrides here
|
||||
|
||||
#endif
|
149
keyboards/miuni32/keymaps/ki/keymap.c
Normal file
149
keyboards/miuni32/keymaps/ki/keymap.c
Normal file
@@ -0,0 +1,149 @@
|
||||
#include "miuni32.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
enum miuni32_layers {
|
||||
_BEAKL,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_UNION
|
||||
};
|
||||
|
||||
enum miuni32_keycodes {
|
||||
BEAKL = SAFE_RANGE,
|
||||
LOWER,
|
||||
RAISE
|
||||
};
|
||||
|
||||
#define SPC_SHF SFT_T(KC_SPC)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Level 0: BEAKL
|
||||
* ,---------------------------------------------------------------------------------------.
|
||||
* | J | H | O | U | K | LOWER | G | C | R | F | Z |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | Q | I | E | A | Y | RAISE | D | S | T | N | B |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | / | , | ' | . | X |SPC\SHF| W | M | L | P | V |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
*/
|
||||
[_BEAKL] ={
|
||||
{KC_J, KC_H, KC_O, KC_U, KC_K, KC_NO, KC_G, KC_C, KC_R, KC_F, KC_Z},
|
||||
{KC_Q, KC_I, KC_E, KC_A, KC_Y, RAISE, KC_D, KC_S, KC_T, KC_N, KC_B},
|
||||
{KC_SLSH, KC_COMM, KC_QUOT, KC_DOT, KC_X, SPC_SHF, KC_W, KC_M, KC_L, KC_P, KC_V}
|
||||
},
|
||||
/* Lower
|
||||
* ,---------------------------------------------------------------------------------------.
|
||||
* | Tab | { | _ | } | & | | Gui | [ | % | ] | Bkspc |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | \ | ( | 1 | ) | # | | $ | < | 0 | > | | |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | 5 | 4 | 3 | 2 | Ctl | | Alt | 9 | 8 | 7 | 6 |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
*/
|
||||
[_LOWER] ={
|
||||
{KC_TAB, KC_LCBR, KC_UNDS, KC_RBRC, KC_AMPR, _______, KC_RGUI, KC_LBRC, KC_PERC, KC_RBRC, KC_BSPC},
|
||||
{KC_BSLS, KC_LPRN, KC_1, KC_RPRN, KC_HASH, _______, KC_DLR, KC_LT, KC_0, KC_GT, KC_PIPE},
|
||||
{KC_5, KC_4, KC_3, KC_2, KC_LCTL, _______, KC_RALT, KC_9, KC_8, KC_7, KC_6}
|
||||
},
|
||||
/* Raise
|
||||
* ,---------------------------------------------------------------------------------------.
|
||||
* | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | F11 | F12 | ! | - | + | | = | ; | ) | ` | ? |
|
||||
* |------------------------------- -------------------------------------------------------|
|
||||
* | % | $ | # | @ | | | | ( | * | & | ^ |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
*/
|
||||
[_RAISE] ={
|
||||
{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_EXLM, KC_MINS, KC_PLUS, _______, KC_EQL, KC_SCLN, KC_RPRN, KC_GRV, KC_QUES},
|
||||
{KC_PERC, KC_DLR, KC_HASH, KC_AT, _______, _______, _______, KC_LPRN, KC_ASTR, KC_AMPR, KC_CIRC}
|
||||
},
|
||||
/* Union
|
||||
* ,---------------------------------------------------------------------------------------.
|
||||
* | RESET | | | | | | | | | | Del |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | | | | | | | | | | | |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
* | | | | | | | | | | | |
|
||||
* |---------------------------------------------------------------------------------------|
|
||||
*/
|
||||
[_UNION] ={
|
||||
{RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
}
|
||||
};
|
||||
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
//planck like tri layer
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case BEAKL:
|
||||
if (record->event.pressed) {
|
||||
set_single_persistent_default_layer(_BEAKL);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case LOWER:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_LOWER);
|
||||
update_tri_layer(_LOWER, _RAISE, _UNION);
|
||||
} else {
|
||||
layer_off(_LOWER);
|
||||
update_tri_layer(_LOWER, _RAISE, _UNION);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case RAISE:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_RAISE);
|
||||
update_tri_layer(_LOWER, _RAISE, _UNION);
|
||||
} else {
|
||||
layer_off(_RAISE);
|
||||
update_tri_layer(_LOWER, _RAISE, _UNION);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
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 {
|
||||
|
||||
}
|
||||
|
||||
}
|
4
keyboards/miuni32/keymaps/ki/readme.md
Normal file
4
keyboards/miuni32/keymaps/ki/readme.md
Normal file
@@ -0,0 +1,4 @@
|
||||
# A BEAKL9-ish keymap for miuni32
|
||||
A major WIP
|
||||
Using planck like tri layer switching with a single center control column
|
||||
No mousekey support
|
21
keyboards/miuni32/keymaps/ki/rules.mk
Normal file
21
keyboards/miuni32/keymaps/ki/rules.mk
Normal file
@@ -0,0 +1,21 @@
|
||||
# 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 = no # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
COMMAND_ENABLE = yes # 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 = no # 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 = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
0
keyboards/niu_mini/keymaps/default/keymap.c
Executable file → Normal file
0
keyboards/niu_mini/keymaps/default/keymap.c
Executable file → Normal file
@@ -18,6 +18,6 @@ When adding your keymap to this list, keep it organised alphabetically (select l
|
||||
* **folder_name** description
|
||||
|
||||
# List of keymaps
|
||||
|
||||
- **default** default layout from KBDFans
|
||||
- **mason**
|
||||
- **planck** Planck default layout
|
||||
|
29
keyboards/nyquist/keymaps/losinggeneration/README.md
Normal file
29
keyboards/nyquist/keymaps/losinggeneration/README.md
Normal file
@@ -0,0 +1,29 @@
|
||||
losinggeneration's Nyquist Layout
|
||||
============================
|
||||
|
||||
See description of the layout in the common folder
|
||||
[here](../../../../users/losinggeneration/README.md)
|
||||
|
||||
## Features
|
||||
- Adjust
|
||||
- Removed AGSwap, AGNorm, & Del
|
||||
- Added Caps Lock, F1-F12 in a 4x3 grid, arrow cluster, and layer transitions
|
||||
to the new layers.
|
||||
|
||||
## Layouts
|
||||
|
||||
### Adjust (Lower + Raise)
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| RESET|DEBUG | | | | || | | | | | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| CAPS | F9 | F10 | F11 | F12 | || | | | | Up | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | | | | | || | | XXX | Left | Down |Right |
|
||||
`-----------------------------------------''-----------------------------------------'
|
||||
```
|
35
keyboards/nyquist/keymaps/losinggeneration/config.h
Normal file
35
keyboards/nyquist/keymaps/losinggeneration/config.h
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@hexwire.com>
|
||||
Copyright 2018 Harley Laue <losinggeneration@gmail.com>
|
||||
|
||||
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
|
||||
long with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include QMK_KEYBOARD_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
|
55
keyboards/nyquist/keymaps/losinggeneration/keymap.c
Normal file
55
keyboards/nyquist/keymaps/losinggeneration/keymap.c
Normal file
@@ -0,0 +1,55 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "losinggeneration-config.h"
|
||||
#include "losinggeneration-keymap.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
#define NUMBER_ROW \
|
||||
KC_GRV ,KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = CATMAP( NUMBER_ROW, QWERTY_LAYER ),
|
||||
[_COLEMAK] = CATMAP( NUMBER_ROW, COLEMAK_LAYER ),
|
||||
[_WORKMAN] = CATMAP( NUMBER_ROW, WORKMAN_LAYER ),
|
||||
[_DVORAK] = CATMAP( NUMBER_ROW, DVORAK_LAYER ),
|
||||
[_GAME] = CATMAP( NUMBER_ROW, GAME_LAYER ),
|
||||
[_NUMPAD] = CATMAP( \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, KC_PAST, KC_PSLS, KC_BSPC, KC_BSPC, \
|
||||
NUMPAD_LAYER \
|
||||
),
|
||||
|
||||
[_MOUSE] = CATMAP( \
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||
MOUSE_LAYER \
|
||||
),
|
||||
|
||||
[_LOWER] = CATMAP( \
|
||||
KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL , \
|
||||
LOWER_LAYER \
|
||||
),
|
||||
|
||||
[_RAISE] = CATMAP(NUMBER_ROW, RAISE_LAYER ),
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | RESET|DEBUG | | | | || | | | | | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | CAPS | F9 | F10 | F11 | F12 | || | | | | Up | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | | | | | || | | XXX | Left | Down |Right |
|
||||
* `-----------------------------------------''-----------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = CATMAP( \
|
||||
RESET , DEBUG , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, _______, TO_GAME, TO_NUM , TO_MS , _______, _______, \
|
||||
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, QWERTY , COLEMAK, WORKMAN, DVORAK , _______, \
|
||||
KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, KC_UP , _______, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT \
|
||||
)
|
||||
};
|
||||
|
17
keyboards/nyquist/keymaps/losinggeneration/rules.mk
Normal file
17
keyboards/nyquist/keymaps/losinggeneration/rules.mk
Normal file
@@ -0,0 +1,17 @@
|
||||
# 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
|
||||
#
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
MIDI_ENABLE = no # MIDI controls
|
||||
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
168
keyboards/planck/keymaps/jirgn/assets/layout.json
Normal file
168
keyboards/planck/keymaps/jirgn/assets/layout.json
Normal file
@@ -0,0 +1,168 @@
|
||||
[
|
||||
{
|
||||
"switchMount": "cherry",
|
||||
"switchBrand": "cherry",
|
||||
"switchType": "MX1A-C1xx",
|
||||
"pcb": true,
|
||||
"css": ".keylabel2 {\n color: #61ba5d !important;\n}\n.keylabel6 {\n color: #fa7a5f !important;\n}\n.keylabel8 {\n color: #7ab7f7 !important;\n}\n.keylabel7 {\n color: #999 !important;\n}"
|
||||
},
|
||||
[
|
||||
{
|
||||
"fa": [
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
2
|
||||
]
|
||||
},
|
||||
"\n~\n\n`\n\n\n\n\n\nTab",
|
||||
{
|
||||
"sm": "cherry",
|
||||
"sb": "cherry",
|
||||
"st": "MX1A-C1xx"
|
||||
},
|
||||
"\n!\n\n1\n\n\n\n\n\nQ",
|
||||
{
|
||||
"sm": "",
|
||||
"sb": "",
|
||||
"st": ""
|
||||
},
|
||||
"\n@\n\n2\n\n\n\n\n\nW",
|
||||
"\n#\n\n3\n\n\n\n\n\nE",
|
||||
"\n$\n\n4\n\n\n\n\n\nR",
|
||||
"\n%\n\n5\n\n\n\n\n\nT",
|
||||
"\n^\n\n6\n\n\n\n\n\nY",
|
||||
"\n&\n\n7\n\n\n\n\n\nU",
|
||||
"\n*\n\n8\n\n\n\n\n\nI",
|
||||
"\n(\n\n9\n\n\n\n\n\nO",
|
||||
"\n)\n\n0\n\n\n\n\n\nP",
|
||||
{
|
||||
"a": 7
|
||||
},
|
||||
"<i class='mss mss-Unicode-BackSpace-DeleteLeft-Big-2'></i>"
|
||||
],
|
||||
[
|
||||
{
|
||||
"c": "#b8b8b8",
|
||||
"a": 5
|
||||
},
|
||||
"\n<i class='mss mss-Unicode-DeleteRight-Big-2'></i>\n\n\nCtrl\n\n<i class='mss mss-Unicode-Escape-3'></i>",
|
||||
{
|
||||
"c": "#61ba5d",
|
||||
"a": 4
|
||||
},
|
||||
"\n¡\n\nF1\nNav\n\n\n\n\nA",
|
||||
{
|
||||
"c": "#cccccc",
|
||||
"fa": [
|
||||
0,
|
||||
2,
|
||||
1,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"\n™\nHome\nF2\n\n\n\n\n\nS",
|
||||
"\n€\nPg Up\nF3\n\n\n\n\n\nD",
|
||||
"\n¢\nPg Dn\nF4\n\n\n\n\n\nF",
|
||||
"\n∞\nEnd\nF5\n\n\n\n\n\nG",
|
||||
{
|
||||
"fa": [
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"\n§\n←\nF6\n\n\n\n\n\nH",
|
||||
"\n_\n↓\n-\n\n\n\n\n\nJ",
|
||||
"\n+\n↑\n=\n\n\n\n\n\nK",
|
||||
"\n{\n→\n[\n\n\n\n\n\nL",
|
||||
{
|
||||
"c": "#61ba5d",
|
||||
"fa": [
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
]
|
||||
},
|
||||
"\n}\n\n]\nNav\n\n\n:\n\n;",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"\n|\n\n\\\n\n\n\n\"\n\n'"
|
||||
],
|
||||
[
|
||||
{
|
||||
"c": "#b8b8b8",
|
||||
"a": 7
|
||||
},
|
||||
"Shift",
|
||||
{
|
||||
"c": "#cccccc",
|
||||
"a": 4
|
||||
},
|
||||
"\n\n\nF7\n\n\n\n\n\nZ",
|
||||
"\n\n\nF8\n\n\n\n\n\nX",
|
||||
"\n\n\nF9\n\n\n\n\n\nC",
|
||||
"\n\n\nF10\n\n\n\n\n\nV",
|
||||
"\n\n\nF11\n\n\n\n\n\nB",
|
||||
"\n\n\nF12\n\n\n\n\n\nN",
|
||||
"\n~\n\n#\n\n\n\n\n\nM",
|
||||
"\n|\n\n/\n\n\n\n<\n\n,",
|
||||
{
|
||||
"a": 6
|
||||
},
|
||||
"\n\n>\n\n\n\n\n\n.",
|
||||
"\n\n?\n\n\n\n\n\n/",
|
||||
{
|
||||
"c": "#b8b8b8",
|
||||
"a": 7
|
||||
},
|
||||
"<i class='kb kb-Return-2'></i>\n\n\n\nShift"
|
||||
],
|
||||
[
|
||||
"",
|
||||
"Hyper",
|
||||
"<i class='mss mss-Unicode-Option-3'></i>",
|
||||
"<i class='mss mss-Unicode-Command-3'></i>",
|
||||
{
|
||||
"c": "#fa7a5f"
|
||||
},
|
||||
"⇓",
|
||||
{
|
||||
"c": "#cccccc",
|
||||
"w": 2
|
||||
},
|
||||
"",
|
||||
{
|
||||
"c": "#7ab7f7"
|
||||
},
|
||||
"⇑",
|
||||
{
|
||||
"c": "#b8b8b8"
|
||||
},
|
||||
"<i class='mss mss-Unicode-Command-3'></i>",
|
||||
"<i class='mss mss-Unicode-Option-3'></i>",
|
||||
"Hyper",
|
||||
""
|
||||
]
|
||||
]
|
42
keyboards/planck/keymaps/jirgn/config.h
Normal file
42
keyboards/planck/keymaps/jirgn/config.h
Normal file
@@ -0,0 +1,42 @@
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
#define STARTUP_SONG SONG(PLANCK_SOUND)
|
||||
// #define STARTUP_SONG SONG(NO_SOUND)
|
||||
|
||||
#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
|
||||
SONG(COLEMAK_SOUND), \
|
||||
SONG(DVORAK_SOUND) \
|
||||
}
|
||||
#endif
|
||||
|
||||
#define MUSIC_MASK (keycode != KC_NO)
|
||||
|
||||
/*
|
||||
* MIDI options
|
||||
*/
|
||||
|
||||
/* Prevent use of disabled MIDI features in the keymap */
|
||||
//#define MIDI_ENABLE_STRICT 1
|
||||
|
||||
/* enable basic MIDI features:
|
||||
- MIDI notes can be sent when in Music mode is on
|
||||
*/
|
||||
|
||||
#define MIDI_BASIC
|
||||
|
||||
/* enable advanced MIDI features:
|
||||
- MIDI notes can be added to the keymap
|
||||
- Octave shift and transpose
|
||||
- Virtual sustain, portamento, and modulation wheel
|
||||
- etc.
|
||||
*/
|
||||
//#define MIDI_ADVANCED
|
||||
|
||||
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
||||
//#define MIDI_TONE_KEYCODE_OCTAVES 2
|
||||
|
||||
#endif
|
221
keyboards/planck/keymaps/jirgn/keymap.c
Normal file
221
keyboards/planck/keymaps/jirgn/keymap.c
Normal file
@@ -0,0 +1,221 @@
|
||||
/* Copyright 2015-2017 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/>.
|
||||
*/
|
||||
|
||||
#include "planck.h"
|
||||
#include "action_layer.h"
|
||||
|
||||
extern keymap_config_t keymap_config;
|
||||
|
||||
enum planck_layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_PLOVER,
|
||||
_ADJUST,
|
||||
_NAVIGATION
|
||||
};
|
||||
|
||||
enum planck_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
PLOVER,
|
||||
LOWER,
|
||||
RAISE,
|
||||
EXT_PLV
|
||||
};
|
||||
|
||||
// keycode aliases
|
||||
#define _______ KC_TRNS
|
||||
#define ___x___ KC_NO
|
||||
#define KC_EUR LALT(S(KC_2))
|
||||
#define KC_SEC LALT(KC_6)
|
||||
#define CTL_DEL CTL_T(KC_DEL)
|
||||
#define NAV_SCLN LT(_NAVIGATION, KC_SCLN)
|
||||
#define NAV_A LT(_NAVIGATION, KC_A)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* Tab for Esc--| Ctrl | A Nav| S | D | F | G | H | J | K | L | ; Nav| Ctrl |--Tab for "
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / | Shift|--Tab for Enter
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Hyper| Alt | Super| Lower| Space | Raise| Super| ALt | Hyper| |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_QWERTY] = {
|
||||
{KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
|
||||
{CTL_T(KC_ESC), NAV_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NAV_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, SFT_T(KC_ENT)},
|
||||
{___x___, KC_HYPR, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LGUI, KC_LALT, KC_HYPR, ___x___}
|
||||
},
|
||||
|
||||
/* Lower
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* Tab to Del---| Ctrl | ¡ | ™ | € | ¢ | ∞ | § | _ | + | { | } | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | | |ISO ~ |ISO | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_LOWER] = {
|
||||
{KC_TILD, 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), KC_BSPC},
|
||||
{CTL_DEL, LALT(KC_1), LALT(KC_2), KC_EUR, LALT(KC_4), LALT(KC_5), LALT(KC_6), KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE},
|
||||
{_______, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, S(KC_NUHS), S(KC_NUBS), _______, _______, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
},
|
||||
|
||||
/* Raise
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* Tab to Del---| Ctrl | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_RAISE] = {
|
||||
{KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC},
|
||||
{CTL_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_NUHS, KC_NUBS, _______, _______, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
},
|
||||
|
||||
/* Navigation
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | | HOME | PGUP | PGDN | END | LEFT | DOWN | UP | RIGHT| | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_NAVIGATION] = {
|
||||
{___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___},
|
||||
{_______, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END , KC_LEFT, KC_DOWN, KC_UP , KC_RIGHT, _______, ___x___},
|
||||
{_______, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, ___x___, _______},
|
||||
{___x___, _______, _______, _______, ___x___, ___x___, ___x___, ___x___, _______, _______, _______, ___x___}
|
||||
},
|
||||
|
||||
/* Plover layer (http://opensteno.org)
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | # | # | # | # | # | # | # | # | # | # | # | # |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | S | T | P | H | * | * | F | P | L | T | D |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | S | K | W | R | * | * | R | B | G | S | Z |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Exit | | | A | O | | E | U | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
|
||||
[_PLOVER] = {
|
||||
{KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 },
|
||||
{___x___, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC},
|
||||
{___x___, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT},
|
||||
{EXT_PLV, ___x___, ___x___, KC_C, KC_V, ___x___, ___x___, KC_N, KC_M, ___x___, ___x___, ___x___}
|
||||
},
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | Reset| | | | | | | | | | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Plover| | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = {
|
||||
{_______, RESET, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL },
|
||||
{_______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, PLOVER, _______, _______, _______},
|
||||
{_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
float plover_song[][2] = SONG(PLOVER_SOUND);
|
||||
float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
|
||||
#endif
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case QWERTY:
|
||||
if (record->event.pressed) {
|
||||
print("mode just switched to qwerty and this is a huge string\n");
|
||||
set_single_persistent_default_layer(_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 PLOVER:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
stop_all_notes();
|
||||
PLAY_SONG(plover_song);
|
||||
#endif
|
||||
layer_off(_RAISE);
|
||||
layer_off(_LOWER);
|
||||
layer_off(_ADJUST);
|
||||
layer_on(_PLOVER);
|
||||
if (!eeconfig_is_enabled()) {
|
||||
eeconfig_init();
|
||||
}
|
||||
keymap_config.raw = eeconfig_read_keymap();
|
||||
keymap_config.nkro = 1;
|
||||
eeconfig_update_keymap(keymap_config.raw);
|
||||
}
|
||||
return false; break;
|
||||
case EXT_PLV:
|
||||
if (record->event.pressed) {
|
||||
#ifdef AUDIO_ENABLE
|
||||
PLAY_SONG(plover_gb_song);
|
||||
#endif
|
||||
layer_off(_PLOVER);
|
||||
}
|
||||
return false; break;
|
||||
}
|
||||
return true;
|
||||
}
|
5
keyboards/planck/keymaps/jirgn/readme.md
Normal file
5
keyboards/planck/keymaps/jirgn/readme.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# Jirgns Planck Layout
|
||||
|
||||
This layout was designed with [Layout Designer](http://www.keyboard-layout-editor.com/#/)
|
||||
|
||||
[Permalink to Layout](http://www.keyboard-layout-editor.com/##@_switchMount=cherry&switchBrand=cherry&switchType=MX1A-C1xx&pcb:true&css=.keylabel2%20%7B%0A%20%20%20%20color%2F:%20%2361ba5d%20!important%2F%3B%0A%7D%0A.keylabel6%20%7B%0A%20%20%20%20color%2F:%20%23fa7a5f%20!important%2F%3B%0A%7D%0A.keylabel8%20%7B%0A%20%20%20%20color%2F:%20%237ab7f7%20!important%2F%3B%0A%7D%0A.keylabel7%20%7B%0A%20%20%20%20color%2F:%20%23999%20!important%2F%3B%0A%7D%3B&@_fa@:0&:2&:0&:2%3B%3B&=%0A~%0A%0A%60%0A%0A%0A%0A%0A%0ATab&_sm=cherry&sb=cherry&st=MX1A-C1xx%3B&=%0A!%0A%0A1%0A%0A%0A%0A%0A%0AQ&=%0A%2F@%0A%0A2%0A%0A%0A%0A%0A%0AW&=%0A%23%0A%0A3%0A%0A%0A%0A%0A%0AE&=%0A$%0A%0A4%0A%0A%0A%0A%0A%0AR&=%0A%25%0A%0A5%0A%0A%0A%0A%0A%0AT&=%0A%5E%0A%0A6%0A%0A%0A%0A%0A%0AY&=%0A%2F&%0A%0A7%0A%0A%0A%0A%0A%0AU&=%0A*%0A%0A8%0A%0A%0A%0A%0A%0AI&=%0A(%0A%0A9%0A%0A%0A%0A%0A%0AO&=%0A)%0A%0A0%0A%0A%0A%0A%0A%0AP&_a:7%3B&=%3Ci%20class%2F='mss%20mss-Unicode-BackSpace-DeleteLeft-Big-2'%3E%3C%2F%2Fi%3E%3B&@_c=%23b8b8b8&a:5%3B&=%0A%3Ci%20class%2F='mss%20mss-Unicode-DeleteRight-Big-2'%3E%3C%2F%2Fi%3E%0A%0A%0ACtrl%0A%0A%3Ci%20class%2F='mss%20mss-Unicode-Escape-3'%3E%3C%2F%2Fi%3E&_c=%2361ba5d&a:4%3B&=%0A¡%0A%0AF1%0ANav%0A%0A%0A%0A%0AA&_c=%23cccccc&fa@:0&:2&:1&:2%3B%3B&=%0A™%0AHome%0AF2%0A%0A%0A%0A%0A%0AS&=%0A€%0APg%20Up%0AF3%0A%0A%0A%0A%0A%0AD&=%0A¢%0APg%20Dn%0AF4%0A%0A%0A%0A%0A%0AF&=%0A∞%0AEnd%0AF5%0A%0A%0A%0A%0A%0AG&_f2:2%3B&=%0A§%0A←%0AF6%0A%0A%0A%0A%0A%0AH&_f2:2%3B&=%0A%2F_%0A↓%0A-%0A%0A%0A%0A%0A%0AJ&_f2:2%3B&=%0A+%0A↑%0A%2F=%0A%0A%0A%0A%0A%0AK&_f2:2%3B&=%0A%7B%0A→%0A%5B%0A%0A%0A%0A%0A%0AL&_c=%2361ba5d&fa@:0&:2&:2&:2&:0&:2&:2&:2%3B%3B&=%0A%7D%0A%0A%5D%0ANav%0A%0A%0A%2F:%0A%0A%2F%3B&_c=%23cccccc%3B&=%0A%7C%0A%0A%5C%0A%0A%0A%0A%22%0A%0A'%3B&@_c=%23b8b8b8&a:7%3B&=Shift&_c=%23cccccc&a:4%3B&=%0A%0A%0AF7%0A%0A%0A%0A%0A%0AZ&=%0A%0A%0AF8%0A%0A%0A%0A%0A%0AX&=%0A%0A%0AF9%0A%0A%0A%0A%0A%0AC&=%0A%0A%0AF10%0A%0A%0A%0A%0A%0AV&=%0A%0A%0AF11%0A%0A%0A%0A%0A%0AB&=%0A%0A%0AF12%0A%0A%0A%0A%0A%0AN&=%0A~%0A%0A%23%0A%0A%0A%0A%0A%0AM&=%0A%7C%0A%0A%2F%2F%0A%0A%0A%0A%3C%0A%0A,&_a:6%3B&=%0A%0A%3E%0A%0A%0A%0A%0A%0A.&=%0A%0A%3F%0A%0A%0A%0A%0A%0A%2F%2F&_c=%23b8b8b8&a:7%3B&=%3Ci%20class%2F='kb%20kb-Return-2'%3E%3C%2F%2Fi%3E%0A%0A%0A%0AShift%3B&@=&=Hyper&=%3Ci%20class%2F='mss%20mss-Unicode-Option-3'%3E%3C%2F%2Fi%3E&=%3Ci%20class%2F='mss%20mss-Unicode-Command-3'%3E%3C%2F%2Fi%3E&_c=%23fa7a5f%3B&=%2F&dArr%2F%3B&_c=%23cccccc&w:2%3B&=&_c=%237ab7f7%3B&=%2F&uArr%2F%3B&_c=%23b8b8b8%3B&=%3Ci%20class%2F='mss%20mss-Unicode-Command-3'%3E%3C%2F%2Fi%3E&=%3Ci%20class%2F='mss%20mss-Unicode-Option-3'%3E%3C%2F%2Fi%3E&=Hyper&=)
|
3
keyboards/planck/keymaps/jirgn/rules.mk
Normal file
3
keyboards/planck/keymaps/jirgn/rules.mk
Normal file
@@ -0,0 +1,3 @@
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
6
keyboards/planck/keymaps/not-quite-neo/config.h
Normal file
6
keyboards/planck/keymaps/not-quite-neo/config.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef CONFIG_USER_H
|
||||
#define CONFIG_USER_H
|
||||
|
||||
#include "../../config.h"
|
||||
|
||||
#endif
|
129
keyboards/planck/keymaps/not-quite-neo/keymap.c
Normal file
129
keyboards/planck/keymaps/not-quite-neo/keymap.c
Normal file
@@ -0,0 +1,129 @@
|
||||
/*
|
||||
NQN is not-quite-neo
|
||||
A layout based on the
|
||||
*/
|
||||
|
||||
|
||||
#include "planck.h"
|
||||
#include "nqn-keys-on-quertz-de-latin1.h"
|
||||
#include "nqn-basic-layout.h"
|
||||
|
||||
|
||||
// Automatic number generation of important keywords
|
||||
enum my_keycodes{
|
||||
// Layer numbers follow the neo2 terminology, i.e. base layer = layer 1
|
||||
L01 = 0,
|
||||
/* L02, SHIFT is not (yet) implemented as a fully customizable layer */
|
||||
L03,
|
||||
L04,
|
||||
L05,
|
||||
/* L06, UNSPECIFIED not (yet) needed */
|
||||
LFN
|
||||
};
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* L01 -> default: BASE LAYER
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ESC | | | ENTER|
|
||||
* |------+ | +------|
|
||||
* | L03 | L01_LEFT | L01_RIGHT | L03 |
|
||||
* |------+ | +------|
|
||||
* | SHIFT| | | SHIFT|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | CTLR | GUI | ALT | L05 | L04 | SPACE| SPACE| L04 | L05 | ALTGR| LFN | CTLR |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[L01] = {
|
||||
{KC_ESC, L01_LEFT_01, L01_RIGHT_01, KC_ENTER},
|
||||
{MO(L03), L01_LEFT_02, L01_RIGHT_02, MO(L03)},
|
||||
{KC_LSHIFT, L01_LEFT_03, L01_RIGHT_03, KC_RSFT},
|
||||
{KC_LCTRL,KC_LGUI, KC_LALT, MO(L05), MO(L04), KC_SPC, KC_SPC, MO(L04), MO(L05), KC_RALT, MO(LFN), KC_RCTRL}
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
L02 -> MO(L02): SHIFT (as a layer not used, not defined, not reachable)
|
||||
*/
|
||||
|
||||
|
||||
/* L03 -> MO(L03): PROGRAMMING
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | | | |
|
||||
* |------+ | +------|
|
||||
* | | L03_LEFT | L03_RIGHT | |
|
||||
* |------+ | +------|
|
||||
* | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[L03] = {
|
||||
{_______, L03_LEFT_01, L03_RIGHT_01, _______},
|
||||
{_______, L03_LEFT_02, L03_RIGHT_02, _______},
|
||||
{_______, L03_LEFT_03, L03_RIGHT_03, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
},
|
||||
|
||||
|
||||
/* L04 -> MO(L04): NAVIGATION AND NUMBERS
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | | | |
|
||||
* |------+ | +------|
|
||||
* | | L04_LEFT | L04_RIGHT | |
|
||||
* |------+ | +------|
|
||||
* | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | 0 | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[L04] = {
|
||||
{_______, L04_LEFT_01, L04_RIGHT_01, _______},
|
||||
{_______, L04_LEFT_02, L04_RIGHT_02, _______},
|
||||
{_______, L04_LEFT_03, L04_RIGHT_03, _______},
|
||||
{_______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______, _______}
|
||||
},
|
||||
|
||||
|
||||
/* L05 -> MO(L05): ALTERNATE
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | | | |
|
||||
* |------+ | +------|
|
||||
* | | L05_LEFT | L05_RIGHT | |
|
||||
* |------+ | +------|
|
||||
* | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[L05] = {
|
||||
{_______, L05_LEFT_01, L05_RIGHT_01, _______},
|
||||
{_______, L05_LEFT_02, L05_RIGHT_02, _______},
|
||||
{_______, L05_LEFT_03, L05_RIGHT_03, _______},
|
||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
L06 -> <TBD>: UNSPECIFIED
|
||||
*/
|
||||
|
||||
|
||||
/* LFN -> MO(FN): FUNCTION
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | RESET| | | BACKS|
|
||||
* |------+ | +------|
|
||||
* | | L06_LEFT | L06_RIGHT |INSERT|
|
||||
* |------+ | +------|
|
||||
* | | | |DELETE|
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |VOICE-|VOICE+|MUS ON|MUS OF| LIGHT| | | VOL+ | VOL- | MUTE | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[LFN] = {
|
||||
{RESET, L06_LEFT_01, L06_RIGHT_01, KC_BSPC},
|
||||
{_______, L06_LEFT_02, L06_RIGHT_02, KC_INS},
|
||||
{_______, L06_LEFT_03, L06_RIGHT_03, KC_DEL},
|
||||
{MUV_DE, MUV_IN, MU_ON, MU_OFF, _______, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______}
|
||||
}
|
||||
};
|
5
keyboards/planck/keymaps/not-quite-neo/readme.md
Normal file
5
keyboards/planck/keymaps/not-quite-neo/readme.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# not-quite-neo
|
||||
|
||||
This is my personal take on porting the [neo2 layout](https://www.neo-layout.org/) to support multiple keyboards.
|
||||
|
||||
Refer to the [readme.md](../../../../users/not-quite-neo/readme.md) of the generic parts of the implementation.
|
29
keyboards/planck/keymaps/not-quite-neo/rules.mk
Normal file
29
keyboards/planck/keymaps/not-quite-neo/rules.mk
Normal file
@@ -0,0 +1,29 @@
|
||||
# Based on Zach's Planck Makefile
|
||||
# Max .hex size is about 28636 bytes
|
||||
|
||||
# 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
|
||||
#
|
||||
TAP_DANCE_ENABLE = no # Enable TapDance functionality
|
||||
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 = 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
|
||||
USB_6KRO_ENABLE = no # 6key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
MIDI_ENABLE = no # MIDI controls
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
#VARIABLE_TRACE = no # Debug changes to variable values
|
||||
UNICODE_ENABLE = no # Unicode (can't be used with unicodemap)
|
||||
UNICODEMAP_ENABLE = no # Enable extended 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
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
@@ -23,4 +23,21 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
/* Map RXLED to USB_LED_NUM_LOCK */
|
||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
||||
DDRB |= (1 << 0); PORTB &= ~(1 << 0);
|
||||
} else {
|
||||
DDRB &= ~(1 << 0); PORTB &= ~(1 << 0);
|
||||
}
|
||||
|
||||
/* Map TXLED to USB_LED_CAPS_LOCK */
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
DDRD |= (1 << 5); PORTD &= ~(1 << 5);
|
||||
} else {
|
||||
DDRD &= ~(1 << 5); PORTD &= ~(1 << 5);
|
||||
}
|
||||
}
|
||||
|
@@ -1,2 +1,7 @@
|
||||
# krusli's HHKB-style keymap for the XD60
|
||||
HHKB-style keymap for the XD60. The board was not built with split backspace but still has Backspace and |\\ swapped.
|
||||
# krusli's Keymap for XIUDI's 60% XD60 PCB
|
||||
|
||||
## Additional Notes
|
||||
Keymap for the XD60 with 2.25u left shift and split backspace. HHKB-like function layer.
|
||||
|
||||
## Build
|
||||
To build this keymap, simply run `make xd60:krusli` on the top-level directory for QMK.
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/*
|
||||
/*
|
||||
* Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
* This file is based on:
|
||||
* LUFA-120219/Demos/Device/Lowlevel/KeyboardMouse
|
||||
|
@@ -371,7 +371,7 @@ show_path:
|
||||
@echo OBJ=$(OBJ)
|
||||
|
||||
check-size:
|
||||
$(eval MAX_SIZE=$(shell n=`avr-gcc -E -mmcu=$(MCU) $(CFLAGS) $(OPT_DEFS) tmk_core/common/avr/bootloader_size.c 2> /dev/null | grep -oP "(?<=AVR_SIZE: ).+"`; echo $$(($$n)) || echo 0))
|
||||
$(eval MAX_SIZE=$(shell n=`avr-gcc -E -mmcu=$(MCU) $(CFLAGS) $(OPT_DEFS) tmk_core/common/avr/bootloader_size.c 2> /dev/null | perl -ne 'print "$&\n" if /(?<=AVR_SIZE: ).+/'`; echo $$(($$n)) || echo 0))
|
||||
$(eval CURRENT_SIZE=$(shell if [ -f $(BUILD_DIR)/$(TARGET).hex ]; then $(SIZE) --target=$(FORMAT) $(BUILD_DIR)/$(TARGET).hex | $(AWK) 'NR==2 {print $$4}'; else printf 0; fi))
|
||||
if [ $(MAX_SIZE) -gt 0 ] && [ $(CURRENT_SIZE) -gt 0 ]; then \
|
||||
$(SILENT) || printf "$(MSG_CHECK_FILESIZE)" | $(AWK_CMD); \
|
||||
|
185
users/losinggeneration/README.md
Normal file
185
users/losinggeneration/README.md
Normal file
@@ -0,0 +1,185 @@
|
||||
losinggeneration's ortholinear layout
|
||||
============================
|
||||
|
||||
### Features
|
||||
|
||||
- Main layer(s)
|
||||
- The left space bar key has been changed to delete to have backspace
|
||||
& delete on the same main layer.
|
||||
- Adujst is a tap dance with one tap goes to the Adjust layer, second tap
|
||||
goes to the Numpad layer, a third tap goes to the Mouse layer. More taps
|
||||
are an error and disables tapping until you stop and try again.
|
||||
- Ctrl when tapped once & Ctrl+Alt when tapped twice
|
||||
- Left Alt when tapped once & Right Alt when tapped twice.
|
||||
- Left GUI when tapped once & right GUI when tapped twice. This is
|
||||
because I have a compose key on the right GUI key.
|
||||
- Left shift is a one shot modifier.
|
||||
- Enter when tapped Shift when held.
|
||||
- Esc when tapped Ctrl when held.
|
||||
- Lower & Raise
|
||||
- Removed ISO ~, ISO |, ISO #, ISO /, Media Next, & Media Play
|
||||
- Added PgUp, PgDn, Home, & End under the home row
|
||||
- Added Mute next to Vol-
|
||||
- New layers: Workman, Game, Numpad, & Mouse
|
||||
|
||||
## Layouts
|
||||
These include the 5x12 layout since it's nearly identical to the 4x12 layout.
|
||||
The only difference is the top row is removed for the 4x12 layout.
|
||||
|
||||
The Adjust layer keyboard specific, so it's described with the specific
|
||||
keyboard.
|
||||
|
||||
### Qwerty
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| 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 |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI |Lower | Bksp ||Space |Raise | Left | Down | Up |Right |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Colemak
|
||||
|
||||
```
|
||||
,-----------------------------------------.,-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Tab | Q | W | F | P | G || J | L | U | Y | ; | Bksp |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Esc | A | R | S | T | D || H | N | E | I | O | " |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Shift| Z | X | C | V | B || K | M | , | . | / |Enter |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI |Lower | Bksp ||Space |Raise | Left | Down | Up |Right |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Workman
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Tab | Q | D | R | W | B || J | F | U | P | ; | Bksp |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Esc | A | S | H | T | G || Y | N | E | O | I | " |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Shift| Z | X | M | C | V || K | L | , | . | / |Enter |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI |Lower | Bksp ||Space |Raise | Left | Down | Up |Right |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Dvorak
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Tab | " | , | . | P | Y || F | G | C | R | L | Bksp |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Esc | A | O | E | U | I || D | H | T | N | S | / |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Shift| ; | Q | J | K | X || B | M | W | V | Z |Enter |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI |Lower | Bksp ||Space |Raise | Left | Down | Up |Right |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Game (Qwerty without one shot modifiers & tap dancing)
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| 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 |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI |Lower |Space ||Space |Raise | Left | Down | Up |Right |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Number pad
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| XXX | XXX | XXX | XXX | XXX | XXX || XXX | NLCK | * | / | BKSP | BKSP |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Tab | XXX | XXX | XXX | XXX | XXX || NLCK | 7 | 8 | 9 | - | BKSP |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Esc | XXX | XXX | XXX | XXX | XXX || * | 4 | 5 | 6 | + | BKSP |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Shift | XXX | XXX | XXX | XXX | XXX || / | 1 | 2 | 3 | ENT | XXX |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI | XXX |Space ||Space | 0 | 0 | . | ENT | XXX |
|
||||
`-----------------------------------------''-----------------------------------------'
|
||||
```
|
||||
|
||||
### Mouse movement
|
||||
|
||||
* M is short for Mouse
|
||||
* MW is short for Mouse Wheel
|
||||
* MB is short for Mouse Button
|
||||
* MA is short for Mouse Acceleration
|
||||
|
||||
|
||||
* MB\_1 is the left click
|
||||
* MB\_2 is the right click
|
||||
* MB\_3 is the middle click
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| XXX | XXX | XXX | XXX | XXX | XXX || XXX | XXX | XXX | XXX | XXX | XXX |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Tab | MB_1 | MB_3 | MB_2 | MB_4 | MB_5 || MA_0 | MB_1 | MB_3 | MB_2 | MB_4 | MB_5 |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Esc | MW_L | MW_U | MW_D | MW_R | XXX || MA_1 | M_LT | M_UP | M_DN | M_RT | XXX |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Shift | MA_0 | MA_1 | MA_2 | XXX | XXX || MA_2 | MW_L | MW_U | MW_D | MW_R | XXX |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
|Adjust| Ctrl | Alt | GUI | XXX |Space || XXX | XXX | XXX | XXX | XXX | XXX |
|
||||
`-----------------------------------------''-----------------------------------------'
|
||||
```
|
||||
|
||||
### Lower
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ~ | ! | @ | # | $ | % || ^ | & | * | ( | ) | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| ~ | ! | @ | # | $ | % || ^ | & | * | ( | ) | Bksp |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Del | F1 | F2 | F3 | F4 | F5 || F6 | _ | + | | \ | | |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | ⏹ |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | | | | | || | | Mute | Vol- | Vol+ | ⏯ |
|
||||
`-----------------------------------------'`-----------------------------------------'
|
||||
```
|
||||
|
||||
### Raise
|
||||
|
||||
```
|
||||
,-----------------------------------------..-----------------------------------------.
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Del |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| ` | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| Del | F1 | F2 | F3 | F4 | F5 || F6 | - | = | [ | ] | \ |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | ⏹ |
|
||||
|------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
| | | | | | || | | Mute | Vol- | Vol+ | ⏯ |
|
||||
`-----------------------------------------''-----------------------------------------'
|
||||
```
|
||||
|
74
users/losinggeneration/losinggeneration-common.h
Normal file
74
users/losinggeneration/losinggeneration-common.h
Normal file
@@ -0,0 +1,74 @@
|
||||
#ifndef LOSINGGENERATION_COMMON_H
|
||||
#define LOSINGGENERATION_COMMON_H
|
||||
|
||||
/* Custom keys & combinations to be shorter for keymaps */
|
||||
#define KC_LCA LCA(KC_NO)
|
||||
/* Fillers to make layering more clear */
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
|
||||
#define OSM_LSFT OSM(MOD_LSFT)
|
||||
#define TD_CTL TD(TD_CTL_CTLALT)
|
||||
#define TD_GUI TD(TD_LGUI_RGUI)
|
||||
#define TD_ALT TD(TD_LALT_RALT)
|
||||
#define MT_ENT SFT_T(KC_ENT)
|
||||
#define MT_ESC CTL_T(KC_ESC)
|
||||
|
||||
/* Custom layer movements for keymaps */
|
||||
#define TD_ADJ TD(TD_ADJUST)
|
||||
#define TO_GAME TO(_GAME)
|
||||
#define TO_MS TO(_MOUSE)
|
||||
#define TO_NUM TO(_NUMPAD)
|
||||
#define MO_ADJ MO(_ADJUST)
|
||||
|
||||
/* Mouse keys */
|
||||
#define MS_BTN1 KC_MS_BTN1
|
||||
#define MS_BTN2 KC_MS_BTN2
|
||||
#define MS_BTN3 KC_MS_BTN3
|
||||
#define MS_BTN4 KC_MS_BTN4
|
||||
#define MS_BTN5 KC_MS_BTN5
|
||||
#define MS_LEFT KC_MS_LEFT
|
||||
#define MS_DOWN KC_MS_DOWN
|
||||
#define MS_UP KC_MS_UP
|
||||
#define MS_RGHT KC_MS_RIGHT
|
||||
#define MW_LEFT KC_MS_WH_LEFT
|
||||
#define MW_DOWN KC_MS_WH_DOWN
|
||||
#define MW_UP KC_MS_WH_UP
|
||||
#define MW_RGHT KC_MS_WH_RIGHT
|
||||
#define MS_ACL0 KC_MS_ACCEL0
|
||||
#define MS_ACL1 KC_MS_ACCEL1
|
||||
#define MS_ACL2 KC_MS_ACCEL2
|
||||
|
||||
/*
|
||||
* This will expand values sent to it to send to the KEYMAP macro so defines
|
||||
* can be used by KEYMAP
|
||||
*/
|
||||
#define CATMAP(...) KEYMAP(__VA_ARGS__)
|
||||
|
||||
/*
|
||||
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 _QWERTY 0
|
||||
#define _COLEMAK 1
|
||||
#define _WORKMAN 2
|
||||
#define _DVORAK 3
|
||||
#define _GAME 4
|
||||
#define _NUMPAD 5
|
||||
#define _MOUSE 6
|
||||
#define _LOWER 14
|
||||
#define _RAISE 15
|
||||
#define _ADJUST 16
|
||||
|
||||
enum custom_keycodes {
|
||||
QWERTY = SAFE_RANGE,
|
||||
COLEMAK,
|
||||
WORKMAN,
|
||||
DVORAK,
|
||||
LOWER,
|
||||
RAISE,
|
||||
};
|
||||
|
||||
#endif
|
29
users/losinggeneration/losinggeneration-config.h
Normal file
29
users/losinggeneration/losinggeneration-config.h
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@hexwire.com>
|
||||
Copyright 2018 Harley Laue <losinggeneration@gmail.com>
|
||||
|
||||
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
|
||||
long with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef LOSINGGENERATION_CONFIG_H
|
||||
#define LOSINGGENERATION_CONFIG_H
|
||||
|
||||
#define MOUSEKEY_DELAY 100
|
||||
#define MOUSEKEY_INTERVAL 20
|
||||
#define MOUSEKEY_MAX_SPEED 10
|
||||
#define MOUSEKEY_TIME_TO_MAX 20
|
||||
#define MOUSEKEY_WHEEL_MAX_SPEED 8
|
||||
#define MOUSEKEY_WHEEL_TIME_TO_MAX 20
|
||||
|
||||
#endif
|
352
users/losinggeneration/losinggeneration-keymap.h
Normal file
352
users/losinggeneration/losinggeneration-keymap.h
Normal file
@@ -0,0 +1,352 @@
|
||||
#ifndef LOSINGGENERATION_KEYMAP_H
|
||||
#define LOSINGGENERATION_KEYMAP_H
|
||||
|
||||
#include "action_layer.h"
|
||||
#include "eeconfig.h"
|
||||
#include "losinggeneration-common.h"
|
||||
|
||||
/* Tap dance keycodes */
|
||||
enum tap_dance_keycodes {
|
||||
TD_CTL_CTLALT = 0,
|
||||
TD_LGUI_RGUI,
|
||||
TD_LALT_RALT,
|
||||
TD_ADJUST,
|
||||
};
|
||||
|
||||
/*
|
||||
Used to indicate a CTRL should be pressed on one press, or CTRL+ALT on
|
||||
a double tap
|
||||
*/
|
||||
void dance_ctl_ctlalt_each(qk_tap_dance_state_t *state, void *user_data) {
|
||||
register_code(KC_LCTL);
|
||||
if(state->count > 1) {
|
||||
register_code(KC_LALT);
|
||||
}
|
||||
}
|
||||
|
||||
/* Used to release CTRL or the double tapped variant CTRL+ALT */
|
||||
void dance_ctl_ctlalt_reset(qk_tap_dance_state_t *state, void *user_data) {
|
||||
unregister_code(KC_LCTL);
|
||||
if(state->count > 1) {
|
||||
unregister_code(KC_LALT);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Set ADJUST layer on the first press and off after that.
|
||||
Each is used to make sure ADJUST activates as soon as it's pressed the first
|
||||
time.
|
||||
*/
|
||||
void dance_adj_each(qk_tap_dance_state_t *state, void *user_data) {
|
||||
if(state->count == 1) {
|
||||
layer_on(_ADJUST);
|
||||
} else {
|
||||
layer_off(_ADJUST);
|
||||
}
|
||||
}
|
||||
|
||||
/* Set NUMPAD layer on second tap and MOUSE layer on 3rd */
|
||||
void dance_adj_finish(qk_tap_dance_state_t *state, void *user_data) {
|
||||
switch(state->count) {
|
||||
case 1: break;
|
||||
case 2:
|
||||
layer_on(_NUMPAD);
|
||||
break;
|
||||
case 3:
|
||||
layer_on(_MOUSE);
|
||||
break;
|
||||
default:
|
||||
reset_tap_dance(state);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Turn off any layer that may have been tapped on */
|
||||
void dance_adj_reset(qk_tap_dance_state_t *state, void *user_data) {
|
||||
switch(state->count) {
|
||||
case 1:
|
||||
layer_off(_ADJUST);
|
||||
break;
|
||||
case 2:
|
||||
layer_off(_NUMPAD);
|
||||
break;
|
||||
case 3:
|
||||
layer_off(_MOUSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
||||
[TD_CTL_CTLALT] = ACTION_TAP_DANCE_FN_ADVANCED(dance_ctl_ctlalt_each, NULL, dance_ctl_ctlalt_reset),
|
||||
[TD_LGUI_RGUI] = ACTION_TAP_DANCE_DOUBLE(KC_LGUI, KC_RGUI),
|
||||
[TD_LALT_RALT] = ACTION_TAP_DANCE_DOUBLE(KC_LALT, KC_RALT),
|
||||
[TD_ADJUST] = ACTION_TAP_DANCE_FN_ADVANCED(dance_adj_each, dance_adj_finish, dance_adj_reset),
|
||||
};
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define BOTTOM_40_ROW \
|
||||
TD_ADJ ,TD_CTL , TD_ALT , TD_GUI , LOWER , KC_DEL , KC_SPC , RAISE , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | ⏹ |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | | | | | || | | Mute | Vol- | Vol+ | ⏯ |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define BOTTOM_RAISE_LOWER_ROWS \
|
||||
_______, KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_PGUP, KC_PGDN, KC_HOME, KC_END , KC_MSTP, \
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Tab | || | Bksp |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define STD_TAB_ROW(...) KC_TAB, __VA_ARGS__, KC_BSPC
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Esc | || |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
|
||||
#define STD_ESC_ROW(...) KC_ESC, __VA_ARGS__
|
||||
|
||||
/*
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Shift| || |Enter |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define STD_LSFT_ROW(...) OSM_LSFT, __VA_ARGS__, MT_ENT
|
||||
|
||||
/* 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 |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define QWERTY_LAYER \
|
||||
STD_TAB_ROW( KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ), \
|
||||
STD_ESC_ROW( KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT), \
|
||||
STD_LSFT_ROW(KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH), \
|
||||
BOTTOM_40_ROW
|
||||
|
||||
/* Colemak
|
||||
* ,-----------------------------------------.,-----------------------------------------.
|
||||
* | Tab | Q | W | F | P | G || J | L | U | Y | ; | Bksp |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Esc | A | R | S | T | D || H | N | E | I | O | " |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B || K | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define COLEMAK_LAYER \
|
||||
STD_TAB_ROW( KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN), \
|
||||
STD_ESC_ROW( KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_QUOT), \
|
||||
STD_LSFT_ROW(KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH), \
|
||||
BOTTOM_40_ROW
|
||||
|
||||
/* Workman
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Tab | Q | D | R | W | B || J | F | U | P | ; | Bksp |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Esc | A | S | H | T | G || Y | N | E | O | I | " |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Shift| Z | X | M | C | V || K | L | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define WORKMAN_LAYER \
|
||||
STD_TAB_ROW( KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , KC_SCLN), \
|
||||
STD_ESC_ROW( KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , KC_QUOT), \
|
||||
STD_LSFT_ROW(KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM, KC_DOT , KC_SLSH), \
|
||||
BOTTOM_40_ROW
|
||||
|
||||
/* Dvorak
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Tab | " | , | . | P | Y || F | G | C | R | L | Bksp |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Esc | A | O | E | U | I || D | H | T | N | S | / |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Shift| ; | Q | J | K | X || B | M | W | V | Z |Enter |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define DVORAK_LAYER \
|
||||
STD_TAB_ROW( KC_QUOT, KC_COMM, KC_DOT , KC_P , KC_Y , KC_F , KC_G , KC_C , KC_R , KC_L), \
|
||||
STD_ESC_ROW( KC_A , KC_O , KC_E , KC_U , KC_I , KC_D , KC_H , KC_T , KC_N , KC_S , KC_SLSH), \
|
||||
STD_LSFT_ROW(KC_SCLN, KC_Q , KC_J , KC_K , KC_X , KC_B , KC_M , KC_W , KC_V , KC_Z), \
|
||||
BOTTOM_40_ROW
|
||||
|
||||
/* Game (Qwerty without one shot modifiers & tap dancing)
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | 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 |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower |Space ||Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define GAME_LAYER \
|
||||
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 , \
|
||||
MO_ADJ , KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RAISE , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT
|
||||
|
||||
/* Number pad
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Tab | XXX | XXX | XXX | XXX | XXX || NLCK | 7 | 8 | 9 | - | BKSP |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Esc | XXX | XXX | XXX | XXX | XXX || * | 4 | 5 | 6 | + | BKSP |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Shift | XXX | XXX | XXX | XXX | XXX || / | 1 | 2 | 3 | ENT | XXX |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI | XXX |Space ||Space | 0 | 0 | . | ENT | XXX |
|
||||
* `-----------------------------------------''-----------------------------------------'
|
||||
*/
|
||||
#define NUMPAD_LAYER \
|
||||
KC_TAB , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, KC_P7 , KC_P8 , KC_P9 , KC_PMNS, KC_BSPC, \
|
||||
KC_ESC , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PAST, KC_P4 , KC_P5 , KC_P6 , KC_PPLS, KC_BSPC, \
|
||||
KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSLS, KC_P1 , KC_P2 , KC_P3 , KC_PENT, XXXXXXX, \
|
||||
TD_ADJ , TD_CTL , TD_ALT , TD_GUI , XXXXXXX, KC_SPC , KC_SPC , KC_P0 , KC_P0 , KC_PDOT, KC_PENT, XXXXXXX
|
||||
|
||||
/* Mouse movement
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | Tab | MB_1 | MB_3 | MB_2 | MB_4 | MB_5 || MA_0 | MB_1 | MB_3 | MB_2 | MB_4 | MB_5 |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Esc | MW_L | MW_U | MW_D | MW_R | XXX || MA_1 | M_LT | M_UP | M_DN | M_RT | XXX |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Shift | MA_0 | MA_1 | MA_2 | XXX | XXX || MA_2 | MW_L | MW_U | MW_D | MW_R | XXX |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI | XXX |Space || XXX | XXX | XXX | XXX | XXX | XXX |
|
||||
* `-----------------------------------------''-----------------------------------------'
|
||||
*/
|
||||
#define MOUSE_LAYER \
|
||||
KC_TAB , MS_BTN1, MS_BTN3, MS_BTN2, MS_BTN4, MS_BTN5, MS_ACL0, MS_BTN1, MS_BTN3, MS_BTN2, MS_BTN4, MS_BTN5, \
|
||||
KC_ESC , MW_LEFT, MW_DOWN, MW_UP , MW_RGHT, XXXXXXX, MS_ACL1, MS_LEFT, MS_DOWN, MS_UP , MS_RGHT, XXXXXXX, \
|
||||
KC_LSFT, MS_ACL0, MS_ACL1, MS_ACL2, XXXXXXX, XXXXXXX, MS_ACL2, MW_LEFT, MW_DOWN, MW_UP , MW_RGHT, XXXXXXX, \
|
||||
TD_ADJ , TD_CTL , TD_ALT , TD_GUI , XXXXXXX, KC_SPC , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
|
||||
|
||||
/* Lower
|
||||
* ,-----------------------------------------..-----------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % || ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 || F6 | _ | + | | \ | | |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | ⏹ |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | | | | | || | | Mute | Vol- | Vol+ | ⏯ |
|
||||
* `-----------------------------------------'`-----------------------------------------'
|
||||
*/
|
||||
#define LOWER_LAYER \
|
||||
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, \
|
||||
BOTTOM_RAISE_LOWER_ROWS
|
||||
|
||||
/* 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 | PgUp | PgDn | Home | End | ⏹ |
|
||||
* |------+------+------+------+------+------||------+------+------+------+------+------|
|
||||
* | | | | | | || | | Mute | Vol- | Vol+ | ⏯ |
|
||||
* `-----------------------------------------''-----------------------------------------'
|
||||
*/
|
||||
#define RAISE_LAYER \
|
||||
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, \
|
||||
BOTTOM_RAISE_LOWER_ROWS
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
|
||||
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
|
||||
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
|
||||
float tone_workman[][2] = SONG(PLOVER_SOUND);
|
||||
#else
|
||||
float tone_qwerty;
|
||||
float tone_dvorak;
|
||||
float tone_colemak;
|
||||
float tone_workman;
|
||||
#define PLAY_SONG(tone)
|
||||
#endif
|
||||
|
||||
void persistent_default_layer_set(uint16_t default_layer) {
|
||||
layer_state_set(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) {
|
||||
PLAY_SONG(tone_qwerty);
|
||||
persistent_default_layer_set(1UL<<_QWERTY);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case COLEMAK:
|
||||
if (record->event.pressed) {
|
||||
PLAY_SONG(tone_colemak);
|
||||
persistent_default_layer_set(1UL<<_COLEMAK);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case WORKMAN:
|
||||
if (record->event.pressed) {
|
||||
PLAY_SONG(tone_workman);
|
||||
persistent_default_layer_set(1UL<<_WORKMAN);
|
||||
}
|
||||
return false;
|
||||
break;
|
||||
case DVORAK:
|
||||
if (record->event.pressed) {
|
||||
PLAY_SONG(tone_dvorak);
|
||||
persistent_default_layer_set(1UL<<_DVORAK);
|
||||
}
|
||||
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;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif
|
16
users/losinggeneration/rules.mk
Normal file
16
users/losinggeneration/rules.mk
Normal file
@@ -0,0 +1,16 @@
|
||||
# Build Options
|
||||
# Only enable things here that are generic to all keyboards. A yes or no here
|
||||
# will override keyboard/keymap specific values
|
||||
#
|
||||
#BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
#COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
#CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
#NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
TAP_DANCE_ENABLE = yes # Enable tap dancing
|
||||
#UNICODE_ENABLE = no # Unicode
|
||||
|
||||
ifndef QUANTUM_DIR
|
||||
include ../../../../Makefile
|
||||
endif
|
124
users/not-quite-neo/nqn-basic-layout.h
Normal file
124
users/not-quite-neo/nqn-basic-layout.h
Normal file
@@ -0,0 +1,124 @@
|
||||
#ifndef NQN_BASIC_LAYOUT_H
|
||||
#define NQN_BASIC_LAYOUT_H
|
||||
|
||||
/*
|
||||
This is the basic NQN layout
|
||||
|
||||
It consists of a block of 5x3, 5x4, 6x3, or 6x4 for each hand. This allows us
|
||||
to use these blocks for a variety of keyboards like the planck, preonic and
|
||||
even splits like the ergodox.
|
||||
|
||||
You can see that we use some quirky preprocessor defines to achive what we
|
||||
desire. In the future I would like to see qmk taking a more generic approach
|
||||
like the KLL.
|
||||
|
||||
The naming convention for these blocks is
|
||||
L<LAYER>_<SIDE>_<ROW>
|
||||
|
||||
The LAYER is a number following the neo2 manner starting at 1 for the base
|
||||
layer, 2 is shift, 3 is for special chars etc.
|
||||
|
||||
SIDE is, well either the left or right side/half of a keyboard.
|
||||
|
||||
The ROW is starting from the top, numbering beginning at 1.
|
||||
*/
|
||||
|
||||
|
||||
#include "nqn-common.h"
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* LEFT RIGHT
|
||||
* ,----------------------------------. ,----------------------------------.
|
||||
* 01 | x | v | l | c | w | | k | h | g | f | q |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 02 | u | i | a | e | o | | s | n | r | t | d |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 03 | y | < | # | p | z | | b | m | , | . | j |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
*/
|
||||
#define L01_LEFT_01 KC_X, KC_V, KC_L, KC_C, KC_W
|
||||
#define L01_LEFT_02 KC_U, KC_I, KC_A, KC_E, KC_O
|
||||
#define L01_LEFT_03 N_Y, N_LT, N_HS, KC_P, N_Z
|
||||
#define L01_RIGHT_02 KC_S, KC_N, KC_R, KC_T, KC_D
|
||||
#define L01_RIGHT_01 KC_K, KC_H, KC_G, KC_F, KC_Q
|
||||
#define L01_RIGHT_03 KC_B, KC_M, KC_COMM, KC_DOT, KC_J
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* LEFT RIGHT
|
||||
* ,----------------------------------. ,----------------------------------.
|
||||
* 01 | … | _ | [ | ] | ^ | | ! | < | > | = | & |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 02 | \ | / | { | } | * | | ? | ( | ) | - | @ |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 03 | # | $ | | | ~ | ` | | + | % | " | ' | ° |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
*/
|
||||
#define L03_LEFT_01 N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC
|
||||
#define L03_LEFT_02 N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR
|
||||
#define L03_LEFT_03 N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE
|
||||
#define L03_RIGHT_01 N_EXKL, N_LT, N_GT, N_EQ, N_AMP
|
||||
#define L03_RIGHT_02 N_QUES, N_LPARN, N_RPARN, N_MINS, N_AT
|
||||
#define L03_RIGHT_03 N_PLUS, N_PERC, N_QUOT, N_SING, N_DEGRE
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* LEFT RIGHT
|
||||
* ,----------------------------------. ,----------------------------------.
|
||||
* 01 | PAGEU| BACKS| UP | DELET| PAGED| | / | 7 | 8 | 9 | - |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 02 | HOME | LEFT | DOWN | RIGHT| END | | * | 4 | 5 | 6 | + |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 03 | ESC | TAB | INSRT| ENTER| UNDO | | ENTER| 1 | 2 | 3 | , |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
*/
|
||||
#define L04_LEFT_01 KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN
|
||||
#define L04_LEFT_02 KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END
|
||||
#define L04_LEFT_03 KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO
|
||||
#define L04_RIGHT_01 KC_KP_SLASH, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_MINUS
|
||||
#define L04_RIGHT_02 KC_KP_ASTERISK, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS
|
||||
#define L04_RIGHT_03 KC_KP_ENTER, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_DOT
|
||||
|
||||
|
||||
/*
|
||||
* LEFT RIGHT
|
||||
* ,----------------------------------. ,----------------------------------.
|
||||
* 01 | | | | | | | | | | | |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 02 | ü | | ä | € | ö | | ß | | | | |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 03 | | | | | | | | µ | | | |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
*/
|
||||
#define L05_LEFT_01 _______, _______, _______, _______, _______
|
||||
#define L05_LEFT_02 N_UE, _______, N_AE, N_EURO, N_OE
|
||||
#define L05_LEFT_03 _______, _______, _______, _______, _______
|
||||
#define L05_RIGHT_01 _______, _______, _______, _______, _______
|
||||
#define L05_RIGHT_02 N_SS, _______, _______, _______, _______
|
||||
#define L05_RIGHT_03 _______, N_MU, _______, _______, _______
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* LEFT RIGHT
|
||||
* ,----------------------------------. ,----------------------------------.
|
||||
* 01 | F1 | F2 | F3 | F4 | | | MAIL | MUSIC| FILES| CALC | PASTE|
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 02 | F5 | F6 | F7 | F8 | | | PREV |PLAY/P| NEXT | STOP | COPY |
|
||||
* |------+------+------+------+------| |------+------+------+------+------|
|
||||
* 03 | F9 | F10 | F11 | F12 | | | PRINT| SCROL| PAUSE| NUMLK| CUT |
|
||||
* `----------------------------------' `----------------------------------'
|
||||
*/
|
||||
#define L06_LEFT_01 KC_F1, KC_F2, KC_F3, KC_F4, _______
|
||||
#define L06_LEFT_02 KC_F5, KC_F6, KC_F7, KC_F8, _______
|
||||
#define L06_LEFT_03 KC_F9, KC_F10, KC_F11, KC_F12, _______
|
||||
#define L06_RIGHT_01 KC_MAIL, KC_MSEL, KC_MY_COMPUTER, KC_CALCULATOR, N_PASTE
|
||||
#define L06_RIGHT_02 KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, N_COPY
|
||||
#define L06_RIGHT_03 KC_PSCR, KC_SLCK, KC_PAUS, KC_NLCK, N_CUT
|
||||
|
||||
|
||||
#endif
|
14
users/not-quite-neo/nqn-common.h
Normal file
14
users/not-quite-neo/nqn-common.h
Normal file
@@ -0,0 +1,14 @@
|
||||
#ifndef NQN_COMMON_H
|
||||
#define NQN_COMMON_H
|
||||
|
||||
|
||||
/*
|
||||
This file holds some commen NQN definitions
|
||||
*/
|
||||
|
||||
|
||||
#define _______ KC_TRNS
|
||||
#define XXXXXXX KC_NO
|
||||
|
||||
|
||||
#endif
|
73
users/not-quite-neo/nqn-keys-on-quertz-de-latin1.h
Normal file
73
users/not-quite-neo/nqn-keys-on-quertz-de-latin1.h
Normal file
@@ -0,0 +1,73 @@
|
||||
#ifndef NQN_KEYS_ON_QUERTZ_DE_LATIN1_H
|
||||
#define NQN_KEYS_ON_QUERTZ_DE_LATIN1_H
|
||||
|
||||
|
||||
/*
|
||||
This file defines the desierd NQN keys if you use a software (operating sysetm)
|
||||
configured for a QUERTZ layout (de-latin1).
|
||||
|
||||
These chars can be created by using ALTGR on linux and a few of them on windows
|
||||
with a German de-latin1 layout (depending on desktop environment and/or
|
||||
application).
|
||||
′¹²³¼½¬{[]}\¸
|
||||
@ł€¶ŧ←↓→øþ¨~
|
||||
æſðđŋħ̣ĸł˝^’
|
||||
|»«¢„“”µ·…–
|
||||
|
||||
Additionally, there are some common chars that we dit not yet define:
|
||||
§
|
||||
*/
|
||||
|
||||
|
||||
#include "nqn-common.h"
|
||||
|
||||
|
||||
// NQN key definitions in no particular order
|
||||
#define N_LT KC_NONUS_BSLASH
|
||||
#define N_HS KC_NONUS_HASH
|
||||
#define N_DOTS RALT(KC_DOT) // …
|
||||
#define N_USC LSFT(KC_SLASH) // _
|
||||
#define N_LSQBR RALT(KC_8) // [
|
||||
#define N_RSQBR RALT(KC_9) // ]
|
||||
#define N_CIRC KC_GRAVE // ^
|
||||
#define N_EXKL LSFT(KC_1) // !
|
||||
#define N_GT LSFT(KC_NONUS_BSLASH) // >
|
||||
#define N_EQ LSFT(KC_0) // =
|
||||
#define N_AMP LSFT(KC_6) // &
|
||||
#define N_BSLS RALT(KC_MINS) // \ backslash
|
||||
#define N_SLSH LSFT(KC_7) // /
|
||||
#define N_LCUBR RALT(KC_7) // {
|
||||
#define N_RCUBR RALT(KC_0) // }
|
||||
#define N_ASTR LSFT(KC_RBRC) // *
|
||||
#define N_QUES LSFT(KC_MINS) // ?
|
||||
#define N_LPARN LSFT(KC_8) // (
|
||||
#define N_RPARN LSFT(KC_9) // )
|
||||
#define N_MINS KC_SLASH // -
|
||||
#define N_COLN LSFT(KC_DOT) // :
|
||||
#define N_HASH KC_BSLASH // #
|
||||
#define N_DLR LSFT(KC_4) // $
|
||||
#define N_PIPE RALT(KC_NONUS_BSLASH) // |
|
||||
#define N_TILD RALT(KC_RBRC) // ~
|
||||
#define N_GRAVE LSFT(KC_EQUAL) // `
|
||||
#define N_PLUS KC_RBRC // +
|
||||
#define N_PERC LSFT(KC_5) // %
|
||||
#define N_QUOT LSFT(KC_2) // "
|
||||
#define N_SING LSFT(KC_BSLASH) // '
|
||||
#define N_SEMI LSFT(KC_COMM) // ;
|
||||
#define N_EURO RALT(KC_E) // €
|
||||
#define N_AT RALT(KC_Q) // @
|
||||
#define N_Z KC_Y
|
||||
#define N_Y KC_Z
|
||||
#define N_AE KC_QUOTE // ä
|
||||
#define N_OE KC_SCOLON // ö
|
||||
#define N_UE KC_LBRACKET // ü
|
||||
#define N_MU RALT(KC_M) // µ
|
||||
#define N_SS KC_MINS // ß
|
||||
#define N_DEGRE LSFT(KC_GRAVE) // °
|
||||
#define N_PASTE LCTL(KC_V) // CTRL+V
|
||||
#define N_COPY LCTL(KC_C) // CTRL+C
|
||||
#define N_CUT LCTL(KC_X) // CTRL+X
|
||||
#define N_UNDO LCTL(N_Z) // CTRL+Z
|
||||
|
||||
|
||||
#endif
|
24
users/not-quite-neo/readme.md
Normal file
24
users/not-quite-neo/readme.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# not-quite-neo
|
||||
|
||||
This is my personal take on porting the [neo2 layout](https://www.neo-layout.org/) to support both a ergodox (infinity) and a planck keyboard. Some sacrifices needed to be made, hence this layout is not-quite-neo.
|
||||
|
||||
## Use case
|
||||
My use case is simple:
|
||||
|
||||
* I want to use neo2 (or a keymap as close as possible) on any computer I can plug my keyboards in. Because installing the neo2 SW driver is often not a acceptable solution.
|
||||
* Since most computers I work on (colleagues, family, etc.) use a de-DE keymap, I can not use the official neo2 implementation, because it relies on a us layout and I often times do not even posses the administration rights to change that.
|
||||
* neo2 makes use of most of the keys of a standard 104 key keyboard, especially for supporting the planck I needed to deviate from the original neo2 layout in order to fit everything I wanted.
|
||||
|
||||
Therefore, I put all reusable code in the users/not-quite-neo directory and created a custom not-quite-neo keymap for the planck and the ergodox infinity keyboard respectively.
|
||||
|
||||
## Pitfalls
|
||||
Mind, since neo2 is a SW driver supported layout it offers a lot of features that are hard to support in hardware (especially the fancy utf stuff with math symbols and greek letters etc.).
|
||||
|
||||
Right now this implementation only incompletely supports neo2 layers 1 to 4.
|
||||
|
||||
The biggest difference is probably the support for the German Umlauts ä, ö, ü and the ß. Since we rely on a smaller number of keys some glyphs needed to be created otherwise. See the implementation in [nqn-basic-layout.h](nqn-basic-layout.h) for details.
|
||||
|
||||
## Keyboards and keymaps
|
||||
|
||||
You can find the *not-quite-neo* keymap for the ergodox infinity under [qmk_firmware/keyboards/ergodox_infinity/keymaps/not-quite-neo/](../../keyboards/ergodox_infinity/keymaps/not-quite-neo/readme.md). Respectively the keymap for the planck resides in [qmk_firmware/keyboards/planck/keymaps/not-quite-neo/](../../keyboards/planck/keymaps/not-quite-neo/readme.md)
|
||||
.
|
Reference in New Issue
Block a user