에러 현상
M1 맥북 프로(2021), 아이패드 프로 11인치(3세대)로 유니버설 컨트롤을 사용할 때 Caps_Lock을 이용해 한/영 전환을 하면 아래와 같이 한글과 영어가 번갈아가며 나오는 오류가 발생한다.
이 오류가 발생하는 원인은 모르겠으나, 오류에 어느 정도 규칙은 있다.
먼저 한글이 잘 나오는데 한/영 전환을 하면 영어와 한글이 섞여서 나오는 오류가 발생하고
마찬가지로 영어가 잘 나올 때도 한/영 전환을 하면 영어와 한글이 섞여서 나오는 오류가 발생한다.
뇌피셜이지만 아이패드는 한/영키를 이용해 변경할 수 있는게 한글과 영어 두가지이지만
맥북은 한/영 + Caps_Lock 이렇게 3가지이기 때문에 발생하는 문제인 것 같다.
이 문제를 해결할 수 있는게 ⌃(Control) + Space이다. 이 단축키는 맥북에서 시스템 환경설정 - 키보드 - 단축키 - 입력 소스에 들어가보면 입력 소스, 즉 한/영을 전환하는 단축키라는 것을 알 수 있다.
이 단축키는 아이패드에서도 사용할 수 있기 때문에 유니버설 컨트롤 사용시에도 오류없이 한/영 전환을 사용할 수 있다.
하지만 여태 맥북으로 한/영 전환할 때 Caps_Lock을 사용해 온 사람으로써 또 다른 단축키를 사용하는게 싫어서 다른 방법을 찾아봤다.
카라비너(Karabiner-Elements)
기존에 맥에서 카라비너를 사용하는 사람들은 Caps_Lock을 사용한 한/영 전환이 빠르게 진행되지 않아서 사용하는게 대부분이다.
많은 사람들이 Caps_Lock을 F19로 변경하고 이 F19를 입력 소스 전환 단축키로 등록해서 기존 한/영 전환보다 빠르게 사용했다. (이렇게 하면 Caps_Lock 기능은 사용못한다.)
하지만 이렇게 하면 유니버설 컨트롤시 Caps_Lock을 누르면 F19를 누르는 것처럼 사용되기 때문에 아이패드는 아무것도 하지 않는다. (아이패드에서는 F19를 입력 소스 변경 단축키로 설정할 수 없기 때문)
그래서 내가 생각한 방법은 Caps_Lock을 F19가 아닌 기존 단축키인 ⌃(Control) + Space로 눌리도록 설정하는 방법이다.
Caps_Lock을 ⌃(Control) + Space로 매핑하는 방법
카라비너에는 단일키 -> 단일키로 매핑하는 것 뿐만 아니라 , 단일키 -> 복합키로 매핑하는 것도 지원한다.
그런데 이것은 본인이 만들어서 사용하거나 누군가 올린 파일을 사용해야 한다.
먼저, 텍스트 편집기에서 아래의 코드를 '한/영 전환.json'으로 저장한다.
{
"title": "Caps_Lock을 한영전환으로",
"rules": [
{
"description": "Caps_Lock을 한영전환으로",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "caps_lock"
},
"to": [
{
"repeat": true,
"key_code": "spacebar",
"modifiers": [
"left_control"
]
}
]
}
]
}
]
}
이 코드는 caps_lock을 spacebar + left_control로 변경하는 코드이다.
(json 파일을 만드는 법은 아래 블로그에 자세히 설명되어 있다.)
Karabiner (카라비너) json 설정파일 (쉽게) 만들기 (feat. Karabiner Complex Rules Generator)
카라비너(Karabiner)는 맥에서 쓸 수 있는 무료 키맵핑(Key Mapping 혹은 Assign) 앱입니다. 이 앱은 ...
blog.naver.com
이 json 파일을 카라비너 파일에 옮겨야 한다.
먼저 파인더를 키고 ⇧(Shift) + ⌘(Cmd) + g 를 누르면 나오는 창에 아래의 경로를 복붙한다.
~/.config/karabiner/assets/complex_modifications/
그 후 나오는 폴더에 json 파일을 집어 넣는다.
json 파일을 넣고 카라비너에서 Complex Modifications - Add rules를 누르면 아래 사진처럼 추가된 것을 볼 수 있다.
Enable을 눌러준다.
이 방법은 기존에 있는 입력 소스 단축키인 ⌃(Control) + Space로 매핑하는 것이기 때문에 여기까지만 하면 된다.
결과
이제 유니버설 컨트롤에서 오류 없이 Caps_Lock을 사용할 수 있고, 맥에서도 기존 Caps_Lock을 쓰는 것보다 더 빠르게 사용할 수 있다.
'개발 관련 Tips > Mac' 카테고리의 다른 글
Dock에서 iTerm2 아이콘 제거 (0) | 2022.07.28 |
---|