Last active
December 23, 2022 14:44
-
-
Save arai-ta/8113c765650b3d5526e720da68a1eba3 to your computer and use it in GitHub Desktop.
Plancky handmade keyboard firmware based on PRK Firmware
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
puts "=== Plancky ===" | |
kbd = Keyboard.new | |
kbd.init_pins( | |
[ 21, 23, 20, 22 ], | |
[ 26, 27, 28, 29, 9, 8, 7, 6, 5, 4, 3, 2 ] | |
) | |
kbd.add_layer :default, %i[ | |
KC_TAB KC_Q KC_W KC_E KC_R KC_T KC_Y KC_U KC_I KC_O KC_P KC_MINS | |
ES_CTRL KC_A KC_S KC_D KC_F KC_G KC_H KC_J KC_K KC_L KC_SCOLON KC_BSPC | |
KC_LSFT KC_Z KC_X KC_C KC_V KC_B KC_N KC_M KC_COMM KC_DOT KC_SLSH KC_ENTER | |
BS_FUNC KC_ESC KC_LALT KC_LGUI LE_NUMB SP_CURS XXXXXXXX LK_SYMB KC_LEFT KC_DOWN KC_UP KC_RIGHT | |
] | |
kbd.add_layer :number, %i[ | |
KC_TAB KC_1 KC_2 KC_3 KC_4 KC_5 KC_6 KC_7 KC_8 KC_9 KC_0 KC_MINS | |
ES_CTRL XXXXXXXX XXXXXXXX SS_ALL SS_PART XXXXXXXX XXXXXXXX KC_4 KC_5 KC_6 XXXXXXXX KC_BSPC | |
KC_LSFT XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_0 KC_1 KC_2 KC_3 XXXXXXXX KC_ENTER | |
BS_FUNC XXXXXXXX KC_LALT KC_LGUI LE_NUMB SP_CURS XXXXXXXX LK_SYMB KC_LEFT KC_DOWN KC_UP KC_RIGHT | |
] | |
kbd.add_layer :symbol, %i[ | |
KC_TAB KC_EXLM KC_AT KC_HASH KC_DLR KC_PERC KC_CIRC KC_AMPR KC_ASTER KC_LPRN KC_RPRN KC_TILD | |
ES_CTRL XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_MINUS KC_EQL KC_LBRC KC_RBRC KC_BSLS KC_QUOTE | |
KC_LSFT XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_UNDS KC_PLUS KC_LCBR KC_RCBR KC_PIPE KC_DQUO | |
BS_FUNC XXXXXXXX KC_LALT KC_LGUI LE_NUMB SP_CURS XXXXXXXX LK_SYMB KC_LEFT KC_DOWN KC_UP KC_GRAVE | |
] | |
kbd.add_layer :function, %i[ | |
KC_TAB KC_F1 KC_F2 KC_F3 KC_F4 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_MINS | |
ES_CTRL KC_F5 KC_F6 KC_F7 KC_F8 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_BSPC | |
KC_LSFT KC_F9 KC_F10 KC_F11 KC_F12 XXXXXXXX XXXXXXXX KC_MUTE KC_VOLDOWN KC_VOLUP XXXXXXXX KC_ENTER | |
BS_FUNC XXXXXXXX KC_LALT KC_LGUI LE_NUMB SP_CURS XXXXXXXX LK_SYMB KC_LEFT KC_DOWN KC_UP KC_RIGHT | |
] | |
kbd.add_layer :cursor, %i[ | |
KC_TAB KC_HOME WORD_FWD WORD_BACK XXXXXXXX XXXXXXXX XXXXXXXX KC_PGUP PAGE_NEXT PAGE_PREV XXXXXXXX KC_MINS | |
ES_CTRL XXXXXXXX XXXXXXXX KC_PGDOWN XXXXXXXX KC_END KC_LEFT KC_DOWN KC_UP KC_RIGHT XXXXXXXX KC_BSPC | |
KC_LSFT XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX KC_ENTER XXXXXXXX XXXXXXXX XXXXXXXX KC_ENTER | |
BS_FUNC XXXXXXXX KC_LALT KC_LGUI LE_NUMB SP_CURS XXXXXXXX LK_SYMB KC_LEFT KC_DOWN KC_UP KC_RIGHT | |
] | |
kbd.define_composite_key :PAGE_NEXT, %i(KC_LGUI KC_RBRACKET) # next page | |
kbd.define_composite_key :PAGE_PREV, %i(KC_LGUI KC_LBRACKET) # previous page | |
kbd.define_composite_key :WORD_FWD , %i(KC_LALT KC_RIGHT) # move forward by 1 word | |
kbd.define_composite_key :WORD_BACK, %i(KC_LALT KC_LEFT) # move back by 1 word | |
kbd.define_composite_key :SS_ALL, %i(KC_LGUI KC_LSFT KC_3) # screenshot all | |
kbd.define_composite_key :SS_PART, %i(KC_LGUI KC_LSFT KC_4) # screenshot partial | |
kbd.define_mode_key :BS_FUNC, [ :KC_BSPC, :function, 300, nil ] | |
kbd.define_mode_key :ES_CTRL, [ :KC_ESC, :KC_LCTL, 300, nil ] | |
kbd.define_mode_key :LE_NUMB, [ :KC_LANG2, :number, 300, nil ] | |
kbd.define_mode_key :LK_SYMB, [ :KC_LANG1, :symbol, 300, nil ] | |
kbd.define_mode_key :SP_CURS, [ :KC_SPC, :cursor, 200, nil ] | |
kbd.start! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment