Port artsey 0.8.1 -> nibble

This commit is contained in:
KemoNine 2021-08-24 03:27:47 +00:00
parent 2d2a2e5048
commit 593ee03ec1
2 changed files with 267 additions and 49 deletions

View file

@ -21,3 +21,8 @@ CONFIG_ZMK_USB_LOGGING=n
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=25
CONFIG_ZMK_RGB_UNDERGLOW_SAT_START=100
CONFIG_ZMK_RGB_UNDERGLOW_BRT_START=75
# Combo Stuff for ARTSEY
CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=16
CONFIG_ZMK_COMBO_MAX_KEYS_PER_COMBO=8
CONFIG_ZMK_COMBO_MAX_PRESSED_COMBOS=8

View file

@ -4,30 +4,95 @@
* SPDX-License-Identifier: MIT
*/
/*****************************************
* - YOU MUST SET THE FOLLOWING CONFIG VALUES FOR THIS SETUP TO WORK PROPERLY IN YOUR BOARDS .conf FILE
* - CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=16
* - CONFIG_ZMK_COMBO_MAX_KEYS_PER_COMBO=8
* - CONFIG_ZMK_COMBO_MAX_PRESSED_COMBOS=8
*****************************************/
////////////////////////////////////////
// Various includes
#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/rgb.h>
#include <dt-bindings/zmk/ext_power.h>
#include <dt-bindings/zmk/mouse.h>
#define TIMEOUT_COMBO 250
#include <dt-bindings/zmk/bt.h>
#include <dt-bindings/zmk/outputs.h>
////////////////////////////////////////
// Layers
#define LAYER_ID_GLOBAL -1
#define LAYER_ID_DEFAULT 0
#define LAYER_ID_NAV 1
#define LAYER_ID_FUNC 2
#define LAYER_ID_ALT 3
#define LAYER_ID_MISC 4
#define LAYER_ID_FUNC 1
#define LAYER_ID_ALT 2
#define LAYER_ID_MISC 3
#define LAYER_ID_BASE 4
#define LAYER_ID_NUMBERS 5
#define LAYER_ID_SYMBOLS 6
#define LAYER_ID_PARENTHETICALS 7
#define LAYER_ID_NAVIGATION 8
#define LAYER_ID_BT_SEL 9
#define LAYER_ID_CUSTOM 10
#define LAYER_ID_BIG_SYM 11
#define LAYER_ID_BIG_FUNCTION 12
////////////////////////////////////////
// Artsey definitions
#define ARTSEY_BT_TOP &out OUT_BLE
#define ARTSEY_BT_BOTTOM &out OUT_USB
#define TIMEOUT_COMBO_2 250
#define TIMEOUT_COMBO_3 250
#define TIMEOUT_COMBO_4 250
#define TIMEOUT_LAYER_HOLD 250
#define ARTSEY_BASE_A A
#define ARTSEY_BASE_R R
#define ARTSEY_BASE_T T
#define ARTSEY_BASE_S S
#define ARTSEY_BASE_E E
#define ARTSEY_BASE_Y Y
#define ARTSEY_BASE_I I
#define ARTSEY_BASE_O O
#define ARTSEY_COMBO_N N
#define KEY_A 20
#define KEY_R 19
#define KEY_T 18
#define KEY_S 17
#define KEY_E 36
#define KEY_Y 35
#define KEY_I 34
#define KEY_O 33
#define KEY_F_TOP 21
#define KEY_F_BOTTOM 37
////////////////////////////////////////
// Enable OLED
&pro_micro_i2c {
status = "okay";
};
////////////////////////////////////////
// Sticky / Leader Keys
#define TIMEOUT_STICKY_LEADER_KEY 5000
&sk {
release-after-ms = <TIMEOUT_STICKY_LEADER_KEY>;
};
&sl {
release-after-ms = <TIMEOUT_STICKY_LEADER_KEY>;
};
////////////////////////////////////////
// Sensors
/ {
sensors {
compatible = "zmk,keymap-sensors";
sensors = <&encoder_1>;
};
};
////////////////////////////////////////
// Behaviors
/ {
behaviors {
tildeesc: tilde_escape {
compatible = "zmk,behavior-mod-morph";
@ -36,36 +101,106 @@
bindings = <&kp ESC>, <&kp TILDE>;
mods = <(MOD_LSFT)>;
};
miscartsey: misc_artsey {
compatible = "zmk,behavior-mod-morph";
label = "MISC_ARTSEY";
#binding-cells = <0>;
bindings = <&mo LAYER_ID_MISC>, <&tog LAYER_ID_BASE>;
mods = <(MOD_LALT)>;
};
layer_base_kp: layer_base_kp { compatible = "zmk,behavior-hold-tap"; label = "layer_base_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&mo>, <&kp>; };
layer_numbers_kp: layer_numbers_kp { compatible = "zmk,behavior-hold-tap"; label = "layer_numbers_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&mo>, <&kp>; };
layer_symbols_kp: layer_symbols_kp { compatible = "zmk,behavior-hold-tap"; label = "layer_symbols_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&mo>, <&kp>; };
layer_parentheticals_kp: layer_parentheticals_kp { compatible = "zmk,behavior-hold-tap"; label = "layer_parentheticals_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&mo>, <&kp>; };
layer_custom_kp: layer_custom_kp { compatible = "zmk,behavior-hold-tap"; label = "layer_custom_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&mo>, <&kp>; };
ctrl_alt_kp: ctrl_alt_kp { compatible = "zmk,behavior-hold-tap"; label = "ctrl_alt_kp";
#binding-cells = <2>; tapping_term_ms = <TIMEOUT_LAYER_HOLD>; flavor = "tap-preferred";
bindings = <&sk>, <&sk>; };
};
};
////////////////////////////////////////
// Combos
/ {
combos {
compatible = "zmk,combos";
combo_layer_navigations_left {
timeout-ms = <TIMEOUT_COMBO>;
key-positions = <34 19 36>;
bindings = <&tog LAYER_ID_NAV>;
layers = <LAYER_ID_NAV LAYER_ID_FUNC>;
};
combo_layer_navigation_right {
timeout-ms = <TIMEOUT_COMBO>;
key-positions = <39 24 41>;
bindings = <&tog LAYER_ID_NAV>;
layers = <LAYER_ID_NAV LAYER_ID_FUNC>;
};
combo_shift_lock_left {
timeout-ms = <TIMEOUT_COMBO>;
key-positions = <19 35>;
bindings = <&kt LSHFT>;
layers = <LAYER_ID_NAV LAYER_ID_FUNC>;
};
combo_shift_lock_right {
timeout-ms = <TIMEOUT_COMBO>;
key-positions = <24 40>;
bindings = <&kt LSHFT>;
layers = <LAYER_ID_NAV LAYER_ID_FUNC>;
/*****************************************
* 2 key combos
*****************************************/
// Function layer doesn't apply to non-big artsey presently
#if defined ARTSEY_BIG
combo_layer_functions { key-positions = <KEY_F_TOP KEY_F_BOTTOM>; bindings = <&sl LAYER_ID_BIG_FUNCTION>; };
#endif
combo_enter { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_E>; bindings = <&kp ENTER>; };
combo_control { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_S>; bindings = <&sk LCTRL>; };
combo_gui { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_Y KEY_S>; bindings = <&sk LGUI>; };
combo_alt { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_I KEY_S>; bindings = <&sk LALT>; };
combo_backspace { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_R>; bindings = <&kp BACKSPACE>; };
combo_delete { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_I KEY_R>; bindings = <&kp DELETE>; };
combo_shift_lock { timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_R KEY_Y>; bindings = <&kt LSHFT>; };
combo_b { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_O>; bindings = <&kp B>; };
combo_c { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_Y>; bindings = <&kp C>; };
combo_n { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_I KEY_O>; bindings = <&kp ARTSEY_COMBO_N>; };
combo_f { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_R>; bindings = <&kp F>; };
combo_g { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_R KEY_T>; bindings = <&kp G>; };
combo_u { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_Y KEY_I>; bindings = <&kp U>; };
combo_h { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_I>; bindings = <&kp H>; };
combo_v { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_R KEY_S>; bindings = <&kp V>; };
combo_j { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_T KEY_S>; bindings = <&kp J>; };
combo_w { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_S>; bindings = <&kp W>; };
combo_k { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_Y KEY_O>; bindings = <&kp K>; };
combo_comma { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_Y>; bindings = <&kp COMMA>; };
combo_period { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_I>; bindings = <&kp PERIOD>; };
combo_slash { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_O>; bindings = <&kp SLASH>; };
combo_exclamation { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_T KEY_I>; bindings = <&kp EXCL>; };
combo_seven { layers = <LAYER_ID_NUMBERS>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_A KEY_R>; bindings = <&kp N7>; };
combo_eight { layers = <LAYER_ID_NUMBERS>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_R KEY_T>; bindings = <&kp N8>; };
combo_nine { layers = <LAYER_ID_NUMBERS>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_E KEY_Y>; bindings = <&kp N9>; };
combo_zero { layers = <LAYER_ID_NUMBERS>; timeout-ms = <TIMEOUT_COMBO_2>; key-positions = <KEY_Y KEY_I>; bindings = <&kp N0>; };
/*****************************************
* 3 key combos
*****************************************/
combo_esc { timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_A KEY_R KEY_O>; bindings = <&kp ESC>; };
combo_layer_navigation { timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_R KEY_E KEY_I>; bindings = <&tog LAYER_ID_NAVIGATION>; };
combo_m { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_Y KEY_I KEY_O>; bindings = <&kp M>; };
combo_d { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_A KEY_R KEY_T>; bindings = <&kp D>; };
combo_p { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_E KEY_I KEY_O>; bindings = <&kp P>; };
combo_q { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_A KEY_T KEY_S>; bindings = <&kp Q>; };
combo_x { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_R KEY_T KEY_S>; bindings = <&kp X>; };
combo_l { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_E KEY_Y KEY_I>; bindings = <&kp L>; };
combo_single_quote { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_3>; key-positions = <KEY_A KEY_Y KEY_I>; bindings = <&kp SQT>; };
/*****************************************
* 4 key combos
*****************************************/
combo_tab { timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_A KEY_R KEY_T KEY_O>; bindings = <&kp TAB>; };
combo_space { timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_E KEY_Y KEY_I KEY_O>; bindings = <&kp SPACE>; };
combo_shift { timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_E KEY_R KEY_T KEY_S>; bindings = <&sk LSHFT>; };
combo_layer_bt_select { timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_A KEY_E KEY_S KEY_O>; bindings = <&tog LAYER_ID_BT_SEL>; };
combo_bt_clr { timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_R KEY_Y KEY_T KEY_I>; bindings = <&bt BT_CLR>; };
combo_z { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_A KEY_R KEY_T KEY_S>; bindings = <&kp Z>; };
combo_caps_lock { layers = <LAYER_ID_BASE>; timeout-ms = <TIMEOUT_COMBO_4>; key-positions = <KEY_O KEY_I KEY_Y KEY_A>; bindings = <&kp CAPS>; };
};
};
////////////////////////////////////////
// Keymap (main THEN artsey)
/ {
keymap {
compatible = "zmk,keymap";
@ -77,23 +212,11 @@
bindings = <
&tildeesc &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC &kp HOME
&kp C_MUTE &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &kp RBKT &kp BSLH &kp PG_UP
&mo LAYER_ID_MISC &mo LAYER_ID_ALT &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET &kp PG_DN
&miscartsey &mo LAYER_ID_ALT &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET &kp PG_DN
&trans &kp LSHFT &none &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT &kp UP &kp END
&trans &kp LCTRL &kp LGUI &kp LALT &kp SPACE &mo LAYER_ID_FUNC &kp RCTRL &kp RALT &kp LEFT &kp DOWN &kp RIGHT
>;
};
nav_layer {
label = "Nav";
sensor-bindings = <&inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN>;
bindings = <
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp DEL
&trans &trans &kp PG_UP &kp HOME &kp UP &kp END &trans &trans &mkp MB1 &mmv MOVE_UP &mkp MB2 &mwh SCROLL_UP &trans &trans &trans &trans
&none &trans &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &trans &trans &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_RIGHT &mwh SCROLL_DOWN &trans &trans &trans
&none &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&none &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
>;
};
function_layer {
label = "Function";
@ -101,8 +224,8 @@
bindings = <
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &trans &kp DEL
&trans &kp CAPS &kp PG_UP &kp HOME &kp UP &kp END &trans &trans &mkp MB1 &mmv MOVE_UP &mkp MB2 &mwh SCROLL_UP &trans &trans &kp INS &kp INS
&none &trans &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &trans &trans &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_RIGHT &mwh SCROLL_DOWN &trans &kp PSCRN &kp PSCRN
&trans &kp CAPS &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp INS &kp INS
&none &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp PSCRN &kp PSCRN
&none &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp C_PP
&none &trans &trans &trans &trans &trans &kp C_VOLUME_UP &kp C_VOLUME_DOWN &kp C_MUTE &trans &trans
>;
@ -133,5 +256,95 @@
&none &rgb_ug RGB_HUI &rgb_ug RGB_HUD &rgb_ug RGB_BRI &rgb_ug RGB_BRD &ext_power EP_TOG &trans &trans &trans &trans &trans
>;
};
artsey_base {
label = "*ARTSEY*";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &layer_numbers_kp LAYER_ID_NUMBERS ARTSEY_BASE_S &kp ARTSEY_BASE_T &kp ARTSEY_BASE_R &layer_parentheticals_kp LAYER_ID_PARENTHETICALS ARTSEY_BASE_A &kp MINUS &none &none &none &none &none &none &none &none &none
&tog LAYER_ID_BASE &none &layer_custom_kp LAYER_ID_CUSTOM ARTSEY_BASE_O &kp ARTSEY_BASE_I &kp ARTSEY_BASE_Y &layer_symbols_kp LAYER_ID_SYMBOLS ARTSEY_BASE_E &sk LSHFT &none &none &none &none &none &none &none &none
&trans &none &ctrl_alt_kp LALT LCTRL &kp AT &kp DEL &kp EQUAL &kp TAB &none &none &none &none &none &none &none &none &none
&trans &none &none &mo LAYER_ID_BIG_SYM &kp SPACE &none &none &none &none &none &none
>;
};
artsey_numbers {
label = "Number";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &mo LAYER_ID_NUMBERS &kp N3 &kp N2 &kp N1 &none &none &none &none &none &none &none &none &none &none
&trans &none &none &kp N6 &kp N5 &kp N4 &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
artsey_symbols {
label = "Symbol";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &kp GRAVE &kp SEMI &kp BSLH &kp EXCL &none &none &none &none &none &none &none &none &none &none
&trans &none &kp EQUAL &kp MINUS &kp QMARK &mo LAYER_ID_SYMBOLS &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
artsey_parentheticals {
label = "Paren";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &kp LBRC &kp LPAR &kp RPAR &mo LAYER_ID_PARENTHETICALS &none &none &none &none &none &none &none &none &none &none
&trans &none &kp RBRC &kp LBKT &kp RBKT &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
artsey_navigation {
label = "Nav";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &kp PG_UP &kp HOME &kp UP &kp END &none &none &none &none &none &none &none &none &none &none
&trans &none &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
artsey_bt {
label = "BT";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none ARTSEY_BT_TOP &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &none &none &none &none &none &none &none &none &none &none
&trans &none ARTSEY_BT_BOTTOM &bt BT_SEL 5 &bt BT_SEL 4 &bt BT_SEL 3 &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
artsey_custom {
label = "Custom";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &kp C_VOL_UP &kp INS &kp C_MUTE &none &none &none &none &none &none &none &none &none &none
&trans &none &mo LAYER_ID_CUSTOM &kp C_VOL_DN &kp PSCRN &sk RSHFT &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
big_artsey_symbol {
label = "*Symbol*";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &kp CARET &kp LBRC &kp RBRC &kp HASH &kp GRAVE &none &none &none &none &none &none &none &none &none
&trans &none &kp AMPS &kp LPAR &kp RPAR &kp DLLR &kp BSLH &none &none &none &none &none &none &none &none
&trans &none &kp ASTRK &kp LBKT &kp RBKT &kp PRCNT &kp PIPE &none &none &none &none &none &none &none &none &none
&trans &none &none &none &kp SEMI &none &none &none &none &none &none
>;
};
big_artsey_function {
label = "*Func*";
bindings = <
&none &none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &kp F4 &kp F3 &kp F2 &kp F1 &none &none &none &none &none &none &none &none &none &none
&trans &none &kp F8 &kp F7 &kp F6 &kp F5 &none &none &none &none &none &none &none &none &none
&trans &none &kp F12 &kp F11 &kp F10 &kp F9 &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none
>;
};
};
};