8bitdo 키보드와 슈퍼키 키맵핑(with Hammerspoon)
취업후 꾸준히 공부를 하기 위해
블로그에도 각오를 적어놨지만
미룬이가 되어버린... 하하
그러던 중 좋은 키보드를 사면 키보드를 치고 싶어 공부를 하게된다는 이야기를 듣고
홀린듯 키보드를 구매하게 되었습니다!
그 키보드는 바로바로 "8BitDo 레트로 기계식 게이밍 키보드" 입니다.
저는 쿠팡에서 87,900원에 구매를 했고
9/5 도착 예정이였는데 그것보다 이틀 빠른 9/3일에 도착을 했습니다.
8bitdo 구매하러가기>> https://link.coupang.com/a/bQBcSx
8BitDo 레트로 기계식 게이밍 키보드 핫스왑 87키 듀얼 슈퍼버튼 포함 - 무선키보드 | 쿠팡
쿠팡에서 5.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 6 제품도 바로 쿠팡에서 확인할 수 있습니다.
www.coupang.com
풀샷은 이렇습니다..!
레트로한 느낌이 너무 예쁘지 않나요?
디자인 너무 예쁘고
카일박스백축이 생각보다 타건해봤을 때 느낌이 좋더라구요! (전 평소 적축과 광축을 선호합니다.)
대신 좀 시끄러워서ㅋㅋㅋ 회사에서 쓰기엔 무리라고 느껴지고요
키보드가 상당히 무겁습니다.
슈퍼키 버튼은 오락실 버튼 같은 느낌일거라고 예상했는데
그냥 스위치 하나에 큰 키캡을 올려둔 느낌이에요.. 대실망
그리고 유선이라서 생각보다 쓸 때 불편하더라구요ㅜㅜ
참고로 저는
왼쪽은 'pnpm dev 엔터' , 오른쪽은 엔터
이런식으로 슈퍼키를 구성했어요!
슈퍼키 구성은 다음과 같이 했어요.
1. 오른쪽 슈퍼키 "엔터"
- 별표키를 매핑 표시등이 켜질때까지 누르기 > 매핑할 키 + 슈퍼키 입력 > 끝!
2. 왼쪽 슈퍼키 "pnpm dev 엔터"
- f6 + p 를 왼쪽 슈퍼키에 매핑
- claude ai 와 hammerSpoon 을 사용하여 f6 + p 를 입력했을 때 pnpm dev 엔터를 입력하게끔 hammerspoon 에 스크립트 적용
hammerspoon 다운로드 > 이것저것 설정 허용 > hammerspoon 실행 > File > OpneConfig > 스크립트 작성 > File>ReloadConfig > 끝!!
클로드가 짜준 스크립트
-- F6 키가 눌렸는지 추적하는 변수
local f6Pressed = false
-- 'pnpm dev' 를 입력하는 함수
local function typePnpmDev()
hs.eventtap.keyStrokes("pnpm dev")
hs.timer.usleep(10000) -- 10ms 대기
hs.eventtap.keyStroke({}, "return") -- 엔터 키 입력
end
-- 키 이벤트를 감시하는 이벤트 탭 생성
local keyWatcher = hs.eventtap.new({hs.eventtap.event.types.keyDown, hs.eventtap.event.types.keyUp}, function(event)
local keyCode = event:getKeyCode()
local eventType = event:getType()
-- F6 키 코드
local f6KeyCode = hs.keycodes.map["f6"]
-- P 키 코드
local pKeyCode = hs.keycodes.map["p"]
if keyCode == f6KeyCode then
if eventType == hs.eventtap.event.types.keyDown then
f6Pressed = true
elseif eventType == hs.eventtap.event.types.keyUp then
f6Pressed = false
end
return true -- F6 키 이벤트 중단
elseif keyCode == pKeyCode and eventType == hs.eventtap.event.types.keyDown and f6Pressed then
hs.timer.doAfter(0.01, function()
typePnpmDev()
f6Pressed = false -- F6 상태 초기화
end)
return true -- P 키 이벤트 중단
end
return false
end)
-- 이벤트 탭 시작
keyWatcher:start()
그러면 짧은 타건 영상을 끝으로 블로그 포스팅은 여기서 마무리하겠습니다!
가격: ㄱㅊ
키감: 만족
소음: 회사에선 못쓸 정도
팜레스트: 필수
무게: 무거움
총평: 만족
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."