강좌 / 팁

하드웨어 USB 키패드를 매크로 키패드로 사용하기

2023.01.02 00:25

지후빠 조회:1917 추천:15

안녕하세요? 이전 마우스편- https://windowsforum.kr/lecture/18830777 -에 이어 키보드편입니다.^^

 

윈도우나 앱에서 단축키 지정시 보통 2개 조합, 또는 3개 이상의 키 조합으로 되는데 한손으로 누르기 힘든 경우도 있습니다. 늘릴수 있는 갯수도 제한되는 것 같구요. 이 게시물은 USB 키보드나 키패드를 추가하여 매크로 전용으로 사용하여 단축키를 단순화 시키거나 갯수를 늘려 보는 것 입니다. 하단에 추가 키보드 없이 펑션키나 숫자키패드를 이용하는 방법도 있으니 여분 키보드 없이 사용하실 분도 참고해보십시오.

 

키보드나 마우스를 추가하여도 윈도우에서 같은 키는 같은 신호로 처리하기 때문에 입력장치를 구별되게 인식할 수 있는 SW가 필요합니다. 검색해보니 비행 시뮬레이션용으로 만들어졌다가 USB 장치들을 지원하게된 luamacros, HIDmacros가 있고, 드라이버 형태로 지원하는 interception이라는 것에 autohotinterception으로 wrapping하여 autohotkey를 이용하는 방법이 있는 것 같습니다.

 

예전에 노트북과 tenkeyless 키보드 사용시 같이 사용했던 Q'senn usb 키패드로 예를 들어 보겠습니다.

- Num Lock이 켜진 상태와 꺼진 상태의 28개 정도 키를 단일키로 매크로나 복잡한 키조합을 전송할 수 있음.

- 숫자키패드 윈도우 스캔 코드 (전채 스캔코드는 댓글에 첨부합니다.)

keypadcode.jpg

 

읽기 귀찮다 싶으시면 오토핫키를 사용하시는 분은 3번, 사용하지 않는 분은 2번으로 직행하십시오. ^^

 

keyboard-macro.zip

 

1. luamacros ; https://github.com/me2d13/luamacros

- PE에서 WinXShell 에서 보았던  lua code를 사용하네요. https://www.lua.org/

- 다운로드 ; http://www.hidmacros.eu/luamacros.zip

- 특이하게 lua를 모르면 사용하지 말라고 합니다. HIDmacros 사용하라고...

- 단순한 key mapping만 할 것이라면, 생소하지만 검색으로 lua code 조금씩 찾아가며 설정할 수 있을 것 같습니다.

- sample script 첨부함; https://gist.github.com/trevren11/a4099bfc650643de6aaff223a046851a 참고하였습니다.

- 실행하는 방법은 LuaMacros.exe를 실행하여 스크립트를 열어서 화살표를 눌러 실행하는 방법과, LuaMacros.exe -r "스크립트.lua" 형식으로 자동 실행할 수 있습니다.

- 스크립트 상부에 lmc.minimizeToTray = true 와 lmc_minimize() 는 실행시 최소화되고 트레이로 보내라는 것이고 첫줄은 TTS라서 지워도 됩니다.

- lmc_device_set_name('MACROS', '55A2BC') 부분의 55A2BC 부분을 자신의 USB 장치에 맞춰서 설정하여야 합니다.

- 그림처럼 장치관리자에서 확인할 수 있고 두번째로 소개할 HIDmacros의 Devices에서 확인할 수도 있습니다. 장치를 특정하기 위해 장치관리자에서 사용중지시켜 볼 수 있습니다.

- 아래쪽은 각 키 버튼에 대한 실행할 예제를 몇가지 넣었습니다.

- 단점으로 해당 장치 전체가 점유되어 할당되지 않은 키는 동작하지 않습니다.(원래 키 입력도 안됨) 

hid-instance.jpg

 

2. HIDmacros ; https://www.hidmacros.eu/

- 1번 보다는 쉽고, 키 시퀀스 이용이나, vbscript나 jscript를 이용하여 매크로를 실행할 수 있습니다.

- 다운로드 ; https://www.hidmacros.eu/luamacros.zip , 설정탭에서 언어를 korean으로 바꾸십시오.

- Devices(장치) 탭에서 해당 장치를 선택후 Macros탭에서 New로 하나씩 key mapping이나 매크로 script를 지정합니다.

- '키보드 시퀀스 보내기'와 '프로그램 실행', '스크립트' 중에 실행 형태를 선택하여 설정합니다.

- '키보드 시퀀스 보내기'에 단축키나 문장을 넣을 수 있지만 문장 입력시 영문으로 설정하고 한글입력 모드이면 한글 전송이 됩니다.

- Num Lock Off 상태에서 스캔코드가 잘 못 입력됩니다. hidmacros.xml을 열어서 직접 수정해줍니다.

- luamacros와 다르게 설정된 키만 매크로로 실행되고 나머지 키는 원래 키로 동작합니다.

- autohotkey를 사용하지 않은 사용자에게는 좋은 선택이 될 것 같습니다.

hid-instance-1.jpg

hidmacros-1.jpg

hidmacros-2.jpg

 

3. AutoHotInterception ; https://github.com/evilC/AutoHotInterception

- 먼저 Interception 드라이버 설치 후 재부팅, Autohotkey에서 AutoHotInterception.ahk를 include하여 사용합니다.

3-1 Interception ; https://github.com/oblitum/Interception

--- 다운로드 ; https://github.com/oblitum/Interception/releases/download/v1.0.1/Interception.zip

3-1 AHI 다운로드 ; https://github.com/evilC/AutoHotInterception/releases/download/v0.8.0/AutoHotInterception.zip

--- 관리자 권한으로 드라이버 설치 ; install-interception.exe /install, 제거는 /uninstall, 재부팅 필요합니다.

3-3 설치 편하시도록 첨부파일에 필수 파일만 추려서 넣었습니다. 압축 풀고 driver-install-and-unblock.bat을 실행하십시오.

3-4 AHI 사용한 첨부 ahk 파일 간단 설명

ahi-vid-pid.jpg

--- monitor.ahk 실행하여 자신에 맞는 VID /PID를 확인하여 ahk스크립트 GetKeyboardId(0x173D, 0x0001, 1) 부분을 수정하십시오.

--- Left-Mouse-Buttons-Swap.ahk ; https://windowsforum.kr/lecture/18830777 에 소개한 것으로 AHI 기본 사용법 파악용.

--- Qsenn-numpad.ahk : 큐센 숫자키패드를 대상으로 설정하는 예제입니다.

3-5 AHI와 무관한 AHK 스크립트 첨부 파일 설명

--- F1-F12-LongPress.ahk : 펑션키를 짧게 누르면 원래의 기능, 조금 길게 누르면 설정된 프로그램을 실행합니다.

--- NumLockOff.ahk : NumLock off 상태에서 숫자키패들 0~9.을 단축키로 사용합니다.

 

위 예제들에 대해서는 몇 가지만 설명드립니다. 편집기로 열어보면 대충 뭘하는지 알 수 있습니다.

- Left-Mouse-Buttons-Swap.ahk는 개념 이해에 대한 참고만 하십시오. 실사용은 어렵습니다. 일주일전쯤 올린 마우스편을 참고...

- Qsenn-numpad.ahk에서 BS 짧게 누르면 멀티창에서 ctrl+{f4}로 해당창을 닫고, 좀 길게 누르면 alt+{f4}로 해당 앱을 종료합니다.

--- 크롬을 예로 들면 BS 짧게 누르면 탭닫기, 길게누르면 크롬 종료

--- +키에 복사, -키에 잘라내기, Enter에 붙여넣기, *에 미디어 재생/정지, /에 mute 등

- NumLockOff.ahk에서 NumpadEnd키는 clcl클립보드 "옵션-액션"에서 템플릿중 댓글용 상용구를 모아두고 사용할 수 있는 예제입니다.

--- Qsenn-numpad.ahk와 NumLockOff.ahk에서 ins에 ctrl+z 실행취소, del에 ctrl+y 다시실행, 앞뒤 이동, 볼륨조절 등

 

4. 클립보드 유틸 CLCL 소개

- 위 NumLockOff.ahk에 단축키 설정되어 있는 것과 관련되어 있어서 조금 설명드립니다.

- 관련 게시물들을 올린적이 있습니다. https://windowsforum.kr/lecture/16357131 , https://windowsforum.kr/data/7635265 

- 기능 하나하나가 버릴 것이 없이 알찬 유틸인 것 같습니다. 여기서는 상용구 사용하는 방법을 간단히 요약합니다.

- 먼저 옵션-액션-추가 합니다.

clcl-option-action-add.jpg

- 다음 뷰어-템플릿에서 적당히 구성합니다.

clcl-viewer-template-add.jpg

- 상용구 사용할 곳에서 해당 단축키 실행

clcl-action-popup.jpg

- 이런 상용구를 분야별로 만들어 사용할 수 있고,

  이처럼 추가하지 않고도 기본 alt+c 를 누르면 최근 클립보드 히스토리와 템플릿이 나타납니다.

clcl-action-popup-alt-c.jpg

- 또 액션에 추가하여 심플한 툴바로도 사용가능합니다.

clcl-toolbar.jpg

 

 

여분의 키보드나 한손 (게이밍) 키보드 등을 효율적으로 사용할 수 있을 것 같고, 전문 프로그램 사용하시는 분은 잘 세팅하면 유용할 것 같습니다. key mapping, macro program 등 다른 다양한 방법도 있겠지만 키조합 보다는 단일키를 활용해보자는 시도였습니다. ^^

 

늦어서... 생각나는 것 있으면 내일 더 추가하겠습니다. 간단히 쓰려고 시작한 것이 시간이 많이 걸리네요.ㅜㅜ

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4490 윈 도 우| PrincePE_V18.5 [164] %카리스마 204986 99 02-02
4489 윈 도 우| 윈도우7 Windows 정품 인증 기술 업데이트로 인증하기 [21] 얼룩강아지 111629 0 02-27
4488 윈 도 우| 비스타(VISTA) 인증 후 무한 리부팅 현상 해결법 [1] gooddew 98131 0 06-17
4487 윈 도 우| 바이오스 안에 OEM SLIC 가 내장되었는지 확인하는 방법 [5] gooddew 84995 0 06-17
4486 윈 도 우| UEFI-모드 부팅 [설치 USB] 만들기 [8] eunnano 77030 0 09-07
4485 A.I 사용법 무작정 따라하기 (스샷 첨부) - 마지막 수정 [67] PoLaRiS 74991 6 09-10
4484 하드웨어| 유튜브 버퍼링 완전해결2 (hosts파일 사용, DNS변경 x, SKB... [44] hsk 63927 6 05-06
4483 윈 도 우| 비스타/세븐 DVD-4cd 분할 가이드 v2 김간지 63413 0 01-21
4482 윈 도 우| Usb를 이용한 XP설치 [21] 고맙쥐 62282 11 10-23
4481 윈 도 우| 비스타의 숨겨진 부팅로고를 보자 [5] cdcsj 60484 0 05-26
4480 윈 도 우| 소소한팁..Windows 로그온 사진이 작을때.. 김간지 59255 0 07-12
4479 윈 도 우| God Mode 만들기 [5] 적광 55432 0 12-26
4478 기 타| Superfetch 기능 사용중단하기 [13] gooddew 55294 1 09-16
4477 윈 도 우| Win7_8 PE/수정/추가/바탕화면/교체하기 [13] 까꾸리 54352 17 05-18
4476 Windows 7 과 XP 프린터와 파일 서로 공유하기 [5] sp2 52848 3 08-22
4475 윈 도 우| 윈도우8 다국어 언어팩 설치 방법(영문 기준) [6] chkid 51183 5 11-11
4474 윈 도 우| 삼성 노트북의 복원솔루션 5 를 이용하여 SSD에 복원영역 ... [13] 울랄라백수 48974 4 06-17
4473 소프트웨어| USB키보드인채로 PLOP 사용하기 (USB 2.0 MODE + PE) [19] hazuki 48384 0 01-19
4472 윈 도 우| 만능고스트 사용후 hal.dll 오류로 부터 벗어나기 [2] cdcsj 47764 0 04-29
XE1.11.6 Layout1.4.8