밝을희 클태

[ VIA ] VIA LM(), LT() 설정법 본문

개발 환경 구성

[ VIA ] VIA LM(), LT() 설정법

huipark 2024. 4. 5. 19:59

LM(): Layer Mod

LM(layer, mod) 함수는 특정 키를 누를 때 수정자(modifier) 키와 함께 레이어를 전환하는 기능을 한다. 여기서 layer는 활성화할 레이어를, mod는 사용할 수정자 키(예: MOD_LALT, MOD_LSFT 등)를 의미한다. 이 함수를 사용하면, 예를 들어, 특정 키를 누르는 동안에만 Shift 키가 활성화되면서 다른 레이어로 전환할 수 있다.

 

MOD_LCTL Left Control
MOD_LSFT Left Shift
MOD_LALT Left Alt
MOD_LGUI Left GUI (Windows/Command/Meta key)
MOD_RCTL Right Control
MOD_RSFT Right Shift
MOD_RALT Right Alt (AltGr)
MOD_RGUI Right GUI (Windows/Command/Meta key)
MOD_HYPR Hyper (Left Control, Shift, Alt and GUI)
MOD_MEH Meh (Left Control, Shift, and Alt)

LT(): Layer Tap

LT(layer, kc) 함수는 키를 짧게 탭할 때는 하나의 키코드(kc)를 발생시키고, 길게 누르고 있을 때는 다른 레이어(layer)로 전환하는 기능을 한다. 예를 들어, LT(1, KC_ESC)는 해당 키를 짧게 누르면 Esc를 발생시키고, 길게 누르고 있으면 레이어 1로 전환한다.

KC_NO XXXXXXX Ignore this key (NOOP) N/A N/A N/A
KC_TRANSPARENT KC_TRNS, _______ Use the next lowest non-transparent key N/A N/A N/A
KC_A   a and A
KC_B   b and B
KC_C   c and C
KC_D   d and D
KC_E   e and E
KC_F   f and F
KC_G   g and G
KC_H   h and H
KC_I   i and I
KC_J   j and J
KC_K   k and K
KC_L   l and L
KC_M   m and M
KC_N   n and N
KC_O   o and O
KC_P   p and P
KC_Q   q and Q
KC_R   r and R
KC_S   s and S
KC_T   t and T
KC_U   u and U
KC_V   v and V
KC_W   w and W
KC_X   x and X
KC_Y   y and Y
KC_Z   z and Z
KC_1   1 and !
KC_2   2 and @
KC_3   3 and #
KC_4   4 and $
KC_5   5 and %
KC_6   6 and ^
KC_7   7 and &
KC_8   8 and *
KC_9   9 and (
KC_0   0 and )
KC_ENTER KC_ENT Return (Enter)
KC_ESCAPE KC_ESC Escape
KC_BACKSPACE KC_BSPC Delete (Backspace)
KC_TAB   Tab
KC_SPACE KC_SPC Spacebar
KC_MINUS KC_MINS - and _
KC_EQUAL KC_EQL = and +
KC_LEFT_BRACKET KC_LBRC [ and {
KC_RIGHT_BRACKET KC_RBRC ] and }
KC_BACKSLASH KC_BSLS \ and |
KC_NONUS_HASH KC_NUHS Non-US # and ~
KC_SEMICOLON KC_SCLN ; and :
KC_QUOTE KC_QUOT ' and "
KC_GRAVE KC_GRV ` and ~
KC_COMMA KC_COMM , and <
KC_DOT   . and >
KC_SLASH KC_SLSH / and ?
KC_CAPS_LOCK KC_CAPS Caps Lock
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_PRINT_SCREEN KC_PSCR Print Screen ✔2
KC_SCROLL_LOCK KC_SCRL, KC_BRMD Scroll Lock, Brightness Down (macOS) ✔2
KC_PAUSE KC_PAUS, KC_BRK, KC_BRMU Pause, Brightness Up (macOS) ✔2
KC_INSERT KC_INS Insert  
KC_HOME   Home
KC_PAGE_UP KC_PGUP Page Up
KC_DELETE KC_DEL Forward Delete
KC_END   End
KC_PAGE_DOWN KC_PGDN Page Down
KC_RIGHT KC_RGHT Right Arrow
KC_LEFT   Left Arrow
KC_DOWN   Down Arrow
KC_UP   Up Arrow
KC_NUM_LOCK KC_NUM Keypad Num Lock and Clear
KC_KP_SLASH KC_PSLS Keypad /
KC_KP_ASTERISK KC_PAST Keypad *
KC_KP_MINUS KC_PMNS Keypad -
KC_KP_PLUS KC_PPLS Keypad +
KC_KP_ENTER KC_PENT Keypad Enter
KC_KP_1 KC_P1 Keypad 1 and End
KC_KP_2 KC_P2 Keypad 2 and Down Arrow
KC_KP_3 KC_P3 Keypad 3 and Page Down
KC_KP_4 KC_P4 Keypad 4 and Left Arrow
KC_KP_5 KC_P5 Keypad 5
KC_KP_6 KC_P6 Keypad 6 and Right Arrow
KC_KP_7 KC_P7 Keypad 7 and Home
KC_KP_8 KC_P8 Keypad 8 and Up Arrow
KC_KP_9 KC_P9 Keypad 9 and Page Up
KC_KP_0 KC_P0 Keypad 0 and Insert
KC_KP_DOT KC_PDOT Keypad . and Delete
KC_NONUS_BACKSLASH KC_NUBS Non-US \ and |
KC_APPLICATION KC_APP Application (Windows Context Menu Key)  
KC_KB_POWER   System Power   ✔3
KC_KP_EQUAL KC_PEQL Keypad =
KC_F13   F13
KC_F14   F14
KC_F15   F15
KC_F16   F16
KC_F17   F17
KC_F18   F18
KC_F19   F19
KC_F20   F20  
KC_F21   F21  
KC_F22   F22  
KC_F23   F23  
KC_F24   F24  
KC_EXECUTE KC_EXEC Execute    
KC_HELP   Help    
KC_MENU   Menu    
KC_SELECT KC_SLCT Select    
KC_STOP   Stop    
KC_AGAIN KC_AGIN Again    
KC_UNDO   Undo    
KC_CUT   Cut    
KC_COPY   Copy    
KC_PASTE KC_PSTE Paste    
KC_FIND   Find    
KC_KB_MUTE   Mute  
KC_KB_VOLUME_UP   Volume Up  
KC_KB_VOLUME_DOWN   Volume Down  
KC_LOCKING_CAPS_LOCK KC_LCAP Locking Caps Lock  
KC_LOCKING_NUM_LOCK KC_LNUM Locking Num Lock  
KC_LOCKING_SCROLL_LOCK KC_LSCR Locking Scroll Lock  
KC_KP_COMMA KC_PCMM Keypad ,    
KC_KP_EQUAL_AS400   Keypad = on AS/400 keyboards      
KC_INTERNATIONAL_1 KC_INT1 International 1  
KC_INTERNATIONAL_2 KC_INT2 International 2  
KC_INTERNATIONAL_3 KC_INT3 International 3  
KC_INTERNATIONAL_4 KC_INT4 International 4  
KC_INTERNATIONAL_5 KC_INT5 International 5  
KC_INTERNATIONAL_6 KC_INT6 International 6    
KC_INTERNATIONAL_7 KC_INT7 International 7      
KC_INTERNATIONAL_8 KC_INT8 International 8      
KC_INTERNATIONAL_9 KC_INT9 International 9      
KC_LANGUAGE_1 KC_LNG1 Language 1    
KC_LANGUAGE_2 KC_LNG2 Language 2    
KC_LANGUAGE_3 KC_LNG3 Language 3    
KC_LANGUAGE_4 KC_LNG4 Language 4    
KC_LANGUAGE_5 KC_LNG5 Language 5    
KC_LANGUAGE_6 KC_LNG6 Language 6      
KC_LANGUAGE_7 KC_LNG7 Language 7      
KC_LANGUAGE_8 KC_LNG8 Language 8      
KC_LANGUAGE_9 KC_LNG9 Language 9      
KC_ALTERNATE_ERASE KC_ERAS Alternate Erase      
KC_SYSTEM_REQUEST KC_SYRQ SysReq/Attention      
KC_CANCEL KC_CNCL Cancel      
KC_CLEAR KC_CLR Clear    
KC_PRIOR KC_PRIR Prior      
KC_RETURN KC_RETN Return      
KC_SEPARATOR KC_SEPR Separator      
KC_OUT   Out      
KC_OPER   Oper      
KC_CLEAR_AGAIN KC_CLAG Clear/Again      
KC_CRSEL KC_CRSL CrSel/Props      
KC_EXSEL KC_EXSL ExSel      
KC_LEFT_CTRL KC_LCTL Left Control
KC_LEFT_SHIFT KC_LSFT Left Shift
KC_LEFT_ALT KC_LALT, KC_LOPT Left Alt (Option)
KC_LEFT_GUI KC_LGUI, KC_LCMD, KC_LWIN Left GUI (Windows/Command/Meta key)
KC_RIGHT_CTRL KC_RCTL Right Control
KC_RIGHT_SHIFT KC_RSFT Right Shift
KC_RIGHT_ALT KC_RALT, KC_ROPT, KC_ALGR Right Alt (Option/AltGr)
KC_RIGHT_GUI KC_RGUI, KC_RCMD, KC_RWIN Right GUI (Windows/Command/Meta key)
KC_SYSTEM_POWER KC_PWR System Power Down ✔3
KC_SYSTEM_SLEEP KC_SLEP System Sleep ✔3
KC_SYSTEM_WAKE KC_WAKE System Wake   ✔3
KC_AUDIO_MUTE KC_MUTE Mute
KC_AUDIO_VOL_UP KC_VOLU Volume Up ✔4
KC_AUDIO_VOL_DOWN KC_VOLD Volume Down ✔4
KC_MEDIA_NEXT_TRACK KC_MNXT Next Track ✔5
KC_MEDIA_PREV_TRACK KC_MPRV Previous Track ✔5
KC_MEDIA_STOP KC_MSTP Stop Track  
KC_MEDIA_PLAY_PAUSE KC_MPLY Play/Pause Track
KC_MEDIA_SELECT KC_MSEL Launch Media Player  
KC_MEDIA_EJECT KC_EJCT Eject  
KC_MAIL   Launch Mail  
KC_CALCULATOR KC_CALC Launch Calculator  
KC_MY_COMPUTER KC_MYCM Launch My Computer  
KC_WWW_SEARCH KC_WSCH Browser Search  
KC_WWW_HOME KC_WHOM Browser Home  
KC_WWW_BACK KC_WBAK Browser Back  
KC_WWW_FORWARD KC_WFWD Browser Forward  
KC_WWW_STOP KC_WSTP Browser Stop  
KC_WWW_REFRESH KC_WREF Browser Refresh  
KC_WWW_FAVORITES KC_WFAV Browser Favorites  
KC_MEDIA_FAST_FORWARD KC_MFFD Next Track ✔5
KC_MEDIA_REWIND KC_MRWD Previous Track ✔6 ✔5
KC_BRIGHTNESS_UP KC_BRIU Brightness Up
KC_BRIGHTNESS_DOWN KC_BRID Brightness Down
KC_CONTROL_PANEL KC_CPNL Open Control Panel    
KC_ASSISTANT KC_ASST Launch Context-Aware Assistant    
KC_MISSION_CONTROL KC_MCTL Open Mission Control    
KC_LAUNCHPAD KC_LPAD Open Launchpad  

 

한마디로 LM()은 해당 레이어로 이동하면서 설정한 모디키가 눌려진 상태고 LT()는 짧게 누르면 설정한 key가 눌리고 길게 누르면 레이어만 이동이 되는 상태다.

 
예시 : 
  • LT(원하는 레이어, KC_CAPS)
    • 캡스락을 짧게 누를시 캡스락키 길게 누를 시 내가 원하는 레이어로 이동
    • 활용을 하자면 2번 레이어 pl;' 키에 방향키를 설정하고 LT(2, KC_CAPS) 를 캡스락에 맵핑 해두면 캡스락을 누른상태에서 pl;' 키로 방향키를 사용할 수 있다.
  • LM(원하는 레이어, MOD_LALT)
    • 좌 알트를 누르면 해당 레이어로 이동되면서 좌 알트가 함께 눌린 상태
    • 2번 레이어 숫자 4키에 F4를 맵핑하고 LM(2, MOD_LALT)를 좌 알트에 맵핑하면 ALT + 4 만으로 ALT + F4를 사용할 수 있다.