나는 일반적으로 리눅스를 운영한다. Vim을 많이 사용하므로 Esc 키가 매우 중요합니다. 또한 다른 키보드 단축키를 많이 사용하므로 Control도 “키”입니다. Linux에서는 xcape 를 사용 하여 Caps lock 키를 Escape로 직접 매핑하거나 다른 키와 함께 누르면 Control로 매핑 하여이 문제를 해결했습니다 . 이것은 내 새끼 손가락의 빠른 도달 범위 내에서 두 세계의 최고를 넣습니다. Mac에서이 작업을 수행 할 수있는 방법이 있습니까?
답변
예 , Karabiner (이전의 KeyRemap4Macbook)를 사용 합니다.
먼저 키보드 환경 설정 패널로 가서 “Modifier Keys …”를 클릭하고 Caps Lock을 Control로 변경하십시오. 그런 다음 Karabiner로 이동하여이 옵션을 검색하십시오.
Control_L에서 Control_L로
(Control_L 만 입력하면 이스케이프 전송)
확인하고 완료했습니다. Karabiner를 사용하면 더 많은 키 바인딩을 사용하여 (현재 쓸모없는) 이스케이프 키를 하이퍼 키에 매핑하는 것과 같이 훨씬 더 흥미로운 일을 할 수 있습니다.
답변
Karabiner는 현재 MacOS Sierra와 호환되지 않습니다. Sierra 친화적 인 또 다른 솔루션은 Keyboard Maestro를 사용하는 것입니다 (무료는 아님). 다른 사람들이 제안한대로 Caps-Lock 키의 동작을 Control through System Preferences
-> Keyboard
-> Modifier Keys
로 변경하십시오 .
그런 다음 Keyboard Maestro에서 다음과 같이 매크로를 설정하십시오.
- 발동되다
USB Device Key Trigger
- 키보드에서 Caps-Lock 키를 누릅니다
- 한 번 두드리다
- 이 수정 자와 함께 :
^
- (사용하는 각 USB 키보드에 대해 이전 트리거를 반복해야합니다)
- 그런 다음 액션을 추가하십시오
Text
->Type a keystroke
- Esc를 누르십시오
답변
macOS 10.12 이상을 지원하는 Karabiner Elements를 사용 하려면를 열고 배열에 ~/.config/karabiner/karabiner.json
다음 규칙을 추가하십시오 rules
.
{
manipulators: [
{
description:
"Change caps_lock to control when used as modifier, escape when used alone",
from: {
key_code: "caps_lock",
modifiers: {
optional: ["any"]
}
},
to: [
{
key_code: "left_control"
}
],
to_if_alone: [
{
key_code: "escape",
modifiers: {
optional: ["any"]
}
}
],
type: "basic"
}
]
}
Hammerspoon 과 함께 ControlEscape.spoon 을 사용해 볼 수도 있습니다 .