Last active
November 4, 2022 09:11
-
-
Save arai-ta/3fb68ee5b3ab4dec9928c7008531afc8 to your computer and use it in GitHub Desktop.
GRIN Type-R keymap
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 "=== GRIN Type-R ===" | |
kbd = Keyboard.new | |
kbd.init_pins( | |
[ 20, 19, 18, 17, 16 ], | |
[ 8, 7, 6, 2, 3, 4, 5, 10, 15, 14, 13, 12, 11, 9, 21 ] | |
) | |
kbd.add_layer :default, %i[ | |
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_GRAVE 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 OPEN_IN_NEW_WINDOW | |
KC_LCTL KC_A KC_S KC_D KC_F KC_G KC_H KC_J KC_K KC_L KC_SCOLON KC_QUOT XXXXXXX KC_ENT KC_BSPC | |
KC_LSFT XXXXXXX KC_Z KC_X KC_C KC_V KC_B KC_N KC_M KC_COMM KC_DOT KC_SLSH KC_RSFT XXXXXXX KC_ENT | |
BS_FUNC KC_LALT KC_LGUI XXXXXXX KC_LANG2 KC_SPC XXXXXXX ENT_CSR LNG_CSR KC_RGUI FUNC KC_LEFT KC_DOWN KC_UP KC_RIGHT | |
] | |
kbd.add_layer :func, %i[ | |
LOCK_SCR KC_F1 KC_F2 KC_F3 KC_F4 KC_F5 KC_F6 KC_F7 KC_F8 KC_F9 KC_F10 KC_F11 KC_F12 XXXXXXX XXXXXXX | |
XXXXXXX KC_F1 KC_F2 KC_F3 KC_F4 XXXXXXX XXXXXXX XXXXXXX KC_PSCREEN KC_SCROLLLOCK KC_PAUSE XXXXXXX XXXXXXX XXXXXXX KC_PSCREEN | |
KC_LCTL KC_F5 KC_F6 KC_F7 KC_F8 XXXXXXX XXXXXXX KC_INS KC_HOME KC_PGUP KC_BSPC XXXXXXX XXXXXXX XXXXXXX KC_PAUSE | |
KC_LSFT XXXXXXX KC_F9 KC_F10 KC_F11 KC_F12 XXXXXXX XXXXXXX KC_DEL KC_END KC_PGDN XXXXXXX KC_RSFT XXXXXXX KC_INS | |
BS_FUNC KC_LALT KC_LGUI XXXXXXX _______ EMOJI XXXXXXX XXXXXXX _______ _______ FUNC KC_HOME KC_PGDN KC_PGUP KC_END | |
] | |
kbd.add_layer :cursor, %i[ | |
XXXXXXX MOVE_TOP XXXXXXX XXXXXXX MOVE_TAIL XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX MOVE_HEAD XXXXXXX XXXXXXX XXXXXXX XXXXXXX | |
KC_TAB XXXXXXX WORD_FWD WORD_BACK XXXXXXX XXXXXXX XXXXXXX KC_PGUP PAGE_NEXT PAGE_PREV XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX | |
KC_LCTL XXXXXXX XXXXXXX KC_PGDN XXXXXXX MOVE_BTM KC_LEFT KC_DOWN KC_UP KC_RIGHT XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX | |
KC_LSFT XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX WCTL_APP XXXXXXX XXXXXXX XXXXXXX XXXXXXX XXXXXXX KC_RSFT XXXXXXX XXXXXXX | |
BS_FUNC KC_LALT KC_LGUI XXXXXXX _______ KC_SPC _______ ENT_CSR _______ _______ _______ KC_HOME KC_PGDN KC_PGUP KC_END | |
] | |
# vi like cursor move | |
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 :MOVE_HEAD, %i(KC_LGUI KC_LEFT ) # move to head of line | |
kbd.define_composite_key :MOVE_TAIL, %i(KC_LGUI KC_RIGHT) # move to tail of line | |
kbd.define_composite_key :MOVE_TOP , %i(KC_LGUI KC_UP ) # move to top of area | |
kbd.define_composite_key :MOVE_BTM , %i(KC_LGUI KC_DOWN ) # move to bottom of area | |
# Mac | |
kbd.define_composite_key :WCTL_ALL, %i(KC_LCTL KC_UP) # Mission Control ALL | |
kbd.define_composite_key :WCTL_APP, %i(KC_LCTL KC_DOWN) # Mission Control APP | |
kbd.define_composite_key :EMOJI , %i(KC_LCTL KC_LGUI KC_SPACE) # Open emoji select window | |
kbd.define_composite_key :LOCK_SCR, %i(KC_LCTL KC_LGUI KC_Q) # Lock screen | |
# with Application | |
kbd.define_composite_key :OPEN_IN_NEW_WINDOW, %i(KC_LGUI KC_LSHT KC_LCTL KC_N) | |
kbd.define_composite_key :MEET_TOGGLE_MIC , %i(KC_LGUI KC_D ) | |
kbd.define_composite_key :MEET_TOGGLE_CAM , %i(KC_LGUI KC_E ) | |
# PRK Firmware Test | |
kbd.define_mode_key :PROC_TEST,[ Proc.new { kbd.macro "aiueo" } , nil, 200, nil ] | |
kbd.before_report do | |
kbd.invert_sft if kbd.keys_include?(:KC_SCOLON) | |
end | |
kbd.define_mode_key :FUNC, [ nil, :func, nil, nil ] | |
kbd.define_mode_key :SPC_CSR, [ :KC_SPC, :cursor, 300, 100 ] | |
kbd.define_mode_key :LNG_CSR, [ :KC_LANG1, :cursor, 300, nil ] | |
kbd.define_mode_key :ENT_CSR, [ :KC_ENT, :cursor, 200, nil ] | |
kbd.define_mode_key :BS_FUNC, [ :KC_BSPC , :func, 200, 100 ] | |
kbd.start! | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment