1
0
Fork 0

Keyboard: 40percentclub - enable 4x4 and 5x5 community keymaps (#4437)

* Enable 4x4 and 5x5 community keymap support

* Pull 4x4 community keymap fixes from @noroadsleft

* Build fixes for guidoism keymap - move keymap to layouts/community/planck_mit as it uses the LAYOUT_planck_mit macro
This commit is contained in:
zvecr 2018-11-26 17:27:07 +00:00 committed by Drashna Jaelre
parent 97ab3211e2
commit 0031e46191
12 changed files with 21 additions and 6 deletions

View file

@ -5,6 +5,8 @@ endif
AUDIO_ENABLE = no
ifeq ($(strip $(KEYBOARD)), zlant)
BACKLIGHT_ENABLE = no
else ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4)
BACKLIGHT_ENABLE = no
else
BACKLIGHT_ENABLE = yes
endif

View file

@ -1,24 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#define IGNORE_MOD_TAP_INTERRUPT
#define USB_MAX_POWER_CONSUMPTION 50

View file

@ -1,75 +0,0 @@
import itertools
import json
import os.path
import re
KEYMAP_C = """/* {0}
{1}
*/
[{2}] = {3}(
{4})
"""
README_MD = """## {0}
```
{1}
```
"""
base = os.path.dirname(__file__)
layer_names = dict(enumerate(['_QWERTY', '_LOWER', '_RAISE', '_MOVEMENT', '_NUMPAD', '_FUNCTION']))
layer_name = {('MO(%d)' % i): layer_names.get(i).strip('_') for i in layer_names.keys()}
keys = json.load(open(os.path.join(base, 'keys.json')))
d = json.load(open(os.path.join(base, 'guidoism.json')))
def surround(s, a, b, c):
return a + b.join(s) + c
def pattern(cell, table):
return [''*cell for i in range(table)]
top = surround(pattern(5, 12), '', '', '')
mid = surround(pattern(5, 12), '', '', '')
bottom = surround(pattern(5, 12), '', '', '')
from more_itertools import chunked, intersperse, interleave_longest
def uni(k):
return keys.get(k, k).lower().center(5)
def c_layout(i, definition, template):
c_name = layer_names[i]
pretty_name = c_name.strip('_').capitalize()
layout = d['layout']
surround = lambda s: ''.join(interleave_longest(['']*(len(s)+1), s))
layer = list(map(uni, definition))
layer[41] = layer[41].center(11)
layer = chunked(layer, 12)
rows = intersperse(mid, map(surround, layer))
pretty = '\n'.join(itertools.chain([top], rows, [bottom]))
surround = lambda s: ', '.join(s)
layer = list(map(lambda k: layer_name.get(k, k), definition))
layer = chunked(layer, 12)
rows = map(surround, layer)
c_layer = ',\n '.join(itertools.chain([], rows, []))
return template.format(pretty_name, pretty, c_name, layout, c_layer)
start = '// START_REPLACEMENT\n'
end = '// END_REPLACEMENT\n'
replacement = start + ',\n\n'.join(c_layout(i, l, KEYMAP_C) for i, l in enumerate(d['layers'])) + end
keymap = os.path.join(base, 'keymap.c')
existing = open(keymap).read()
r = re.compile(r'// START_REPLACEMENT.*// END_REPLACEMENT', re.DOTALL)
open(keymap, 'w').write(r.sub(replacement, existing))
replacement = '## Current Configuration\n\n' + '\n\n'.join(c_layout(i, l, README_MD) for i, l in enumerate(d['layers']))
keymap = os.path.join(base, 'readme.md')
existing = open(keymap).read()
r = re.compile(r'## Current Configuration.*', re.DOTALL)
open(keymap, 'w').write(r.sub(replacement, existing))

View file

@ -1 +0,0 @@
{"keyboard":"planck/rev4","keymap":"guidoism","layout":"LAYOUT_planck_mit","layers":[["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_LCTL","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_COLN","KC_ENT","KC_LSFT","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_NO","MO(3)","KC_ESC","KC_LALT","KC_LGUI","MO(1)","LSFT_T(KC_SPC)","MO(2)","KC_RGUI","KC_RALT","KC_SCLN","MO(5)"],["KC_TILD","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_CIRC","KC_AMPR","KC_ASTR","KC_NO","KC_NO","KC_UNDO","KC_TRNS","KC_NO","KC_CUT","KC_COPY","KC_PSTE","KC_NO","KC_NO","KC_UNDS","KC_PLUS","KC_DQUO","KC_QUOT","KC_PIPE","KC_CAPS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_MNXT","KC_VOLD","KC_VOLU","KC_MPLY"],["KC_GRV","KC_P1","KC_P2","KC_P3","KC_P4","KC_P5","KC_P6","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_LBRC","KC_RBRC","KC_LPRN","KC_RPRN","KC_NO","KC_NO","KC_PMNS","KC_PEQL","KC_NO","KC_NO","KC_BSLS","KC_TRNS","KC_LT","KC_GT","KC_LCBR","KC_RCBR","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["RESET","DEBUG","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PGUP","KC_UP","KC_PGDN","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_LEFT","KC_DOWN","KC_RGHT","KC_NO","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_HOME","KC_NO","KC_END","KC_NO","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_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_PERC","KC_P7","KC_P8","KC_P9","KC_P0","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_DLR","KC_P4","KC_P5","KC_P6","KC_PDOT","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_P0","KC_P1","KC_P2","KC_P3","KC_PCMM","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_NO","KC_P0","KC_NO","KC_NO","KC_TRNS"],["KC_NO","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_NO","KC_TRNS"]]}

View file

@ -1,183 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
enum planck_layers {
_QWERTY,
_LOWER,
_RAISE,
_MOVEMENT,
_NUMPAD,
_FUNCTION,
};
enum planck_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
MOVEMENT,
NUMPAD,
};
#define FUNCTION MO(_FUNCTION)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// START_REPLACEMENT
/* Qwerty
q w e r t y u i o p
ctrl a s d f g h j k l :
z x c v b n m , . /
mov lower sp/sh raise ; fn
*/
[_QWERTY] = LAYOUT_planck_mit(
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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO,
MOVEMENT, KC_ESC, KC_LALT, KC_LGUI, LOWER, LSFT_T(KC_SPC), RAISE, KC_RGUI, KC_RALT, KC_SCLN, FUNCTION)
,
/* Lower
~ ! @ # $ % ^ & * undo
cut copypaste _ + " │ ' │ | │
caps
next vol- vol+ play
*/
[_LOWER] = LAYOUT_planck_mit(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_NO, KC_NO, KC_UNDO,
KC_TRNS, KC_NO, KC_CUT, KC_COPY, KC_PSTE, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_DQUO, KC_QUOT, KC_PIPE,
KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY)
,
/* Raise
` 1 2 3 4 5 6 7 8 9 0
[ ] ( ) - = \
< > { }
*/
[_RAISE] = LAYOUT_planck_mit(
KC_GRV, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,
KC_TRNS, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_PMNS, KC_PEQL, KC_NO, KC_NO, KC_BSLS,
KC_TRNS, KC_LT, KC_GT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
,
/* Movement
resetdebug pgup pgdn
home end
*/
[_MOVEMENT] = LAYOUT_planck_mit(
RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_TRNS,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_NO, KC_END, KC_NO, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
,
/* Numpad
% 7 8 9 0
$ 4 5 6 .
0 1 2 3 ,
0
*/
[_NUMPAD] = LAYOUT_planck_mit(
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PERC, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DLR, KC_P4, KC_P5, KC_P6, KC_PDOT, KC_TRNS,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P0, KC_P1, KC_P2, KC_P3, KC_PCMM, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_P0, KC_NO, KC_NO, KC_TRNS)
,
/* Function
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10
*/
[_FUNCTION] = LAYOUT_planck_mit(
KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS)
// END_REPLACEMENT
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
} else {
layer_off(_RAISE);
}
return false;
break;
case MOVEMENT:
if (record->event.pressed) {
layer_on(_MOVEMENT);
update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD);
} else {
layer_off(_MOVEMENT);
update_tri_layer(_LOWER, _MOVEMENT, _NUMPAD);
}
return false;
break;
}
return true;
}

View file

@ -1,317 +0,0 @@
{
"KC_1": "1",
"SHIFTED_KC_1": "!",
"KC_2": "2",
"SHIFTED_KC_2": "@",
"KC_3": "3",
"SHIFTED_KC_3": "#",
"KC_4": "4",
"SHIFTED_KC_4": "$",
"KC_5": "5",
"SHIFTED_KC_5": "%",
"KC_6": "6",
"SHIFTED_KC_6": "^",
"KC_7": "7",
"SHIFTED_KC_7": "&",
"KC_8": "8",
"SHIFTED_KC_8": "*",
"KC_9": "9",
"SHIFTED_KC_9": "(",
"KC_0": "0",
"SHIFTED_KC_0": ")",
"KC_A": "a",
"SHIFTED_KC_A": "A",
"KC_B": "b",
"SHIFTED_KC_B": "B",
"KC_C": "c",
"SHIFTED_KC_C": "C",
"KC_D": "d",
"SHIFTED_KC_D": "D",
"KC_E": "e",
"SHIFTED_KC_E": "E",
"KC_F": "f",
"SHIFTED_KC_F": "F",
"KC_G": "g",
"SHIFTED_KC_G": "G",
"KC_H": "h",
"SHIFTED_KC_H": "H",
"KC_I": "i",
"SHIFTED_KC_I": "I",
"KC_J": "j",
"SHIFTED_KC_J": "J",
"KC_K": "k",
"SHIFTED_KC_K": "K",
"KC_L": "l",
"SHIFTED_KC_L": "L",
"KC_M": "m",
"SHIFTED_KC_M": "M",
"KC_N": "n",
"SHIFTED_KC_N": "N",
"KC_O": "o",
"SHIFTED_KC_O": "O",
"KC_P": "p",
"SHIFTED_KC_P": "P",
"KC_Q": "q",
"SHIFTED_KC_Q": "Q",
"KC_R": "r",
"SHIFTED_KC_R": "R",
"KC_S": "s",
"SHIFTED_KC_S": "S",
"KC_T": "t",
"SHIFTED_KC_T": "T",
"KC_U": "u",
"SHIFTED_KC_U": "U",
"KC_V": "v",
"SHIFTED_KC_V": "V",
"KC_W": "w",
"SHIFTED_KC_W": "W",
"KC_X": "x",
"SHIFTED_KC_X": "X",
"KC_Y": "y",
"SHIFTED_KC_Y": "Y",
"KC_Z": "z",
"SHIFTED_KC_Z": "Z",
"KC_ENTER": "\u23ce",
"KC_ENT": "\u23ce",
"KC_ESCAPE": "\u238b",
"KC_ESC": "\u238b",
"KC_BSPACE": "\u232b",
"KC_BSPC": "\u232b",
"KC_TAB": "\u21e5",
"KC_SPACE": "",
"KC_SPC": "",
"KC_MINUS": "-",
"KC_MINS": "-",
"KC_EQUAL": "+",
"KC_EQL": "=",
"KC_LBRACKET": "{",
"KC_LBRC": "[",
"KC_RBRACKET": "}",
"KC_RBRC": "]",
"KC_BSLS": "\\",
"KC_BSLASH": "\\",
"KC_SCOLON": ":",
"KC_SCLN": ";",
"KC_QUOTE": "\"",
"KC_QUOT": "'",
"KC_GRAVE": "`",
"KC_GRV": "`",
"KC_COMMA": ",",
"KC_COMM": ",",
"KC_DOT": ".",
"KC_SLASH": "/",
"KC_NUBS": "/",
"KC_NUHS": "#",
"KC_CAPSLOCK": "Caps",
"KC_CAPS": "Caps",
"KC_LCTRL": "Ctrl",
"KC_LCTL": "Ctrl",
"KC_LSHIFT": "\u21e7",
"KC_LSFT": "\u21e7",
"KC_LALT": "\u2325",
"KC_LGUI": "\u2318",
"KC_LCMD": "\u2318",
"KC_RCTRL": "Right Control",
"KC_RCTL": "Right Control",
"KC_RSHIFT": "\u21e7",
"KC_RSFT": "\u21e7",
"KC_RALT": "\u2325",
"KC_RGUI": "\u2318",
"KC_RCMD": "\u2318",
"KC_LOCKING_CAPS": "Locking Caps Lock",
"KC_LCAP": "Locking Caps Lock",
"KC_LOCKING_NUM": "Locking Num Lock",
"KC_LNUM": "Locking Num Lock",
"KC_LOCKING_SCROLL": "Locking Scroll Lock",
"KC_LSCR": "Locking Scroll Lock",
"KC_INT4": "JIS Henkan",
"KC_HENK": "JIS Henkan",
"KC_INT5": "JIS Muhenkan",
"KC_MHEN": "JIS Muhenkan",
"KC_PSCREEN": "Print Screen",
"KC_PSCR": "Print Screen",
"KC_SCROLLLOCK": "Scroll Lock",
"KC_SLCK": "Scroll Lock",
"KC_PAUSE": "Pause",
"KC_PAUS": "Pause",
"KC_INSERT": "Insert",
"KC_INS": "Insert",
"KC_HOME": "Home",
"KC_PGUP": "PgUp",
"KC_DELETE": "\u2326",
"KC_DEL": "\u2326",
"KC_END": "End",
"KC_PGDOWN": "PgDn",
"KC_PGDN": "PgDn",
"KC_RIGHT": "→",
"KC_RGHT": "→",
"KC_LEFT": "←",
"KC_DOWN": "↓",
"KC_UP": "↑",
"KC_APPLICATION": "Application (Windows Menu Key)",
"KC_APP": "Application (Windows Menu Key)",
"KC_POWER": "Deprecated by MS in favor of KC_SYSTEM_POWER.",
"KC_EXECUTE": "Execute",
"KC_HELP": "Help",
"KC_MENU": "Menu",
"KC_SELECT": "Select",
"KC_AGAIN": "Again",
"KC_UNDO": "Undo",
"KC_CUT": "Cut",
"KC_COPY": "Copy",
"KC_PASTE": "Paste",
"KC_FIND": "Find",
"KC_ALT_ERASE": "Alternate Erase",
"KC_SYSREQ": "SysReq/Attention",
"KC_CANCEL": "Cancel",
"KC_CLEAR": "Clear",
"KC_PRIOR": "Prior",
"KC_RETURN": "Return",
"KC_SEPARATOR": "Separator",
"KC_OUT": "Out",
"KC_OPER": "Oper",
"KC_CLEAR_AGAIN": "Clear/Again",
"KC_CRSEL": "CrSel/Props",
"KC_EXSEL": "ExSel",
"KC_SYSTEM_POWER": "System Power Down.",
"KC_PWR": "System Power Down.",
"KC_SYSTEM_SLEEP": "System Sleep",
"KC_SLEP": "System Sleep",
"KC_SYSTEM_WAKE": "System Wake",
"KC_WAKE": "System Wake",
"KC_STOP": "Stop",
"KC__MUTE": "Mute (macOS)",
"KC__VOLUP": "vol+",
"KC__VOLDOWN": "vol-",
"KC_AUDIO_MUTE": "Mute",
"KC_MUTE": "Mute",
"KC_AUDIO_VOL_UP": "vol+",
"KC_VOLU": "vol+",
"KC_AUDIO_VOL_DOWN": "vol-",
"KC_VOLD": "vol-",
"KC_MEDIA_NEXT_TRACK": "next",
"KC_MNXT": "next",
"KC_MEDIA_PREV_TRACK": "Previous Track (Windows)",
"KC_MPRV": "Previous Track (Windows)",
"KC_MEDIA_FAST_FORWARD": "next",
"KC_MFFD": "next",
"KC_MEDIA_REWIND": "Previous Track (macOS)",
"KC_MRWD": "Previous Track (macOS)",
"KC_MEDIA_STOP": "Stop Track",
"KC_MSTP": "Stop Track",
"KC_MEDIA_PLAY_PAUSE": "play",
"KC_MPLY": "play",
"KC_NUMLOCK": "Keypad Num Lock and Clear",
"KC_NLCK": "Keypad Num Lock and Clear",
"KC_SLSH": "/",
"KC_KP_SLASH": "/",
"KC_PSLS": "/",
"KC_KP_ASTERISK": "*",
"KC_PAST": "*",
"KC_KP_MINUS": "-",
"KC_PMNS": "-",
"KC_PPLS": "+",
"KC_KP_ENTER": "Enter",
"KC_PENT": "Enter",
"KC_KP_1": "1",
"KC_KP_2": "2",
"KC_KP_3": "3",
"KC_KP_4": "4",
"KC_KP_5": "5",
"KC_KP_6": "6",
"KC_KP_7": "7",
"KC_KP_8": "8",
"KC_KP_9": "9",
"KC_KP_0": "0",
"KC_F1": "F1",
"KC_F2": "F2",
"KC_F3": "F3",
"KC_F4": "F4",
"KC_F5": "F5",
"KC_F6": "F6",
"KC_F7": "F7",
"KC_F8": "F8",
"KC_F9": "F9",
"KC_F10": "F10",
"KC_F11": "F11",
"KC_F12": "F12",
"_______": "",
"KC_TILDE": "~",
"KC_TILD": "~",
"KC_EXCLAIM": "!",
"KC_EXLM": "!",
"KC_AT": "@",
"KC_HASH": "#",
"KC_DOLLAR": "$",
"KC_DLR": "$",
"KC_PERCENT": "%",
"KC_PERC": "%",
"KC_CIRCUMFLEX": "^",
"KC_CIRC": "^",
"KC_AMPERSAND": "&",
"KC_AMPR": "&",
"KC_ASTERISK": "*",
"KC_ASTR": "*",
"KC_LEFT_PAREN": "(",
"KC_LPRN": "(",
"KC_RIGHT_PAREN": ")",
"KC_RPRN": ")",
"KC_UNDERSCORE": "_",
"KC_UNDS": "_",
"KC_PLUS": "+",
"KC_LEFT_CURLY_BRACE": "{",
"KC_LCBR": "{",
"KC_RIGHT_CURLY_BRACE": "}",
"KC_RCBR": "}",
"KC_PIPE": "|",
"KC_COLON": ":",
"KC_COLN": ":",
"KC_DOUBLE_QUOTE": "\"",
"KC_DQUO": "\"",
"KC_DQT": "\"",
"KC_LEFT_ANGLE_BRACKET": "<",
"KC_LABK": "<",
"KC_LT": "<",
"KC_RIGHT_ANGLE_BRACKET": ">",
"KC_RABK": ">",
"KC_GT": ">",
"KC_QUESTION": "?",
"KC_QUES": "?",
"KC_KP_PLUS": "+",
"LSFT_T(KC_CAPS)": "\u21e7",
"LGUI(KC_X)": "<i class='fa fa-cut'></i>",
"LGUI(KC_C)": "<i class='fa fa-copy'></i>",
"LGUI(S(LALT(KC_V)))": "<i class='fa fa-paste'></i>",
"S(KC_NUHS)": "#",
"S(KC_NUBS)": "/",
"MOVEMENT": "\u0394",
"RAISE": "\u2350",
"LOWER": "\u2357",
"LCTL_T(KC_ESC)": "c/e",
"KC_NO": " ",
"MO(3)": "mov",
"MO(1)": "lower",
"MO(2)": "raise",
"MO(5)": "fn",
"LSFT_T(KC_SPC)": "sp/sh",
"KC_TRNS": "",
"KC_PSTE": "Paste",
"KC_P1": "1",
"KC_P2": "2",
"KC_P3": "3",
"KC_P4": "4",
"KC_P5": "5",
"KC_P6": "6",
"KC_P7": "7",
"KC_P8": "8",
"KC_P9": "9",
"KC_P0": "0",
"KC_PCMM": ",",
"KC_PDOT": ".",
"KC_PEQL": "="
}

View file

@ -1,107 +0,0 @@
# Guido's Planck Keyboard Layout
I've written a script to convert the json file from the
[QMK Configurator](https://config.qmk.fm) to the C macros
and a pretty form the comments.
First import the json file in this directory into the configurator,
make any changes, export the file and then run this:
mv ~/Downloads/guidoism.json layouts/community/ortho_4x12/guidoism/ && python3 layouts/community/ortho_4x12/guidoism/generate_c.py && make planck:guidoism:dfu
TODO: Move running of generate_c.py to makefile so I just need to run `make planck:guidoism:dfu`
Note that the pretty forms of the keys are defined in another json
file and are made for my specific board. You made need to update this
file to get the pretty forms to look right.
* Left palm to the `mov` key gets you the `Move` layer
* Right thumb on the `raise` key gets you the various programming brackets and parens on your left hand
* Left palm on `mov` key and left thumb on `lower` key gets you a numpad on your right hand
* Shift with the spacebar
* Left pinky is control on hold and escape on tap
## Current Configuration
## Qwerty
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│ ⇥ │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ ⌫ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ ctrl│ a │ s │ d │ f │ g │ h │ j │ k │ l │ : │ ⏎ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ ⇧ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ mov │ ⎋ │ ⌥ │ ⌘ │lower│ sp/sh │raise│ ⌘ │ ⌥ │ ; │ fn │
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```
## Lower
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ │ │ undo│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ cut │ copy│paste│ │ │ _ │ + │ " │ ' │ | │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ caps│ │ │ │ │ │ │ │ │ │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ next│ vol-│ vol+│ play│
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```
## Raise
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ [ │ ] │ ( │ ) │ │ │ - │ = │ │ │ \ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ < │ > │ { │ } │ │ │ │ │ │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ │ │ │ │
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```
## Movement
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│reset│debug│ │ │ │ │ │ pgup│ ↑ │ pgdn│ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ ← │ ↓ │ → │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ home│ │ end │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ │ │ │ │
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```
## Numpad
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│ │ │ │ │ │ │ % │ 7 │ 8 │ 9 │ 0 │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ $ │ 4 │ 5 │ 6 │ . │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ , │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ 0 │ │ │ │
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```
## Function
```
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│ │ f1 │ f2 │ f3 │ f4 │ f5 │ f6 │ f7 │ f8 │ f9 │ f10 │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ │ │ │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ │ │ │ │ │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ │ │ │ │ │ │ │ │ │ │ │
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
```

View file

@ -5,10 +5,10 @@ ifeq ($(strip $(KEYBOARD)), jj40)
SWAP_HANDS_ENABLE = no
endif
ifeq ($(strip $(KEYBOARD)), 4x4)
ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4)
SWAP_HANDS_ENABLE = no
endif
ifeq ($(strip $(KEYBOARD)), zlant)
SWAP_HANDS_ENABLE = no
endif
endif

View file

@ -3,6 +3,8 @@ AUDIO_ENABLE = no # Audio output on port C6
ifeq ("$(KEYBOARD)","vitamins_included")
RGBLIGHT_ENABLE = no
else ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4)
RGBLIGHT_ENABLE = no
else
RGBLIGHT_ENABLE = yes
endif