일상/개발 일기

관리자 권한도 없는데 맥에서 한영키를 쓰고 싶다고?

by 목도리 2021. 9. 18.

본문부터 알려줘

ctrl + space가 싫어

사실 가격에 제일 충격받았다. 타건감은 노트북 키보드인데 가격은 15만원!

집에서는 윈도우를 쓰지만 밖에서는 맥을 써야 한다. 처음 맥을 쓰고 가장 충격받았던 건 바로 한영키였다. 몇 번을 눌렀는데 전환이 되지 않는다! 찾아보니 윈도우 키배열로 변경 시 쓸 수 있는 모양이었다. 그러면 맥에서 한영전환은 어떻게 할까? ctrl + space다. 영어만 쓴다면야 상관 없겠지만 문장 하나 쓸 때에도 한영을 서너번은 바꿔줘야 한다. 당연히 키 둘을 눌러 한영 전환을 하는 것보다 키 하나를 눌러 한영 전환을 하는 것이 더 편하다. 어떻게 기존에 쓰던 방식대로 배열을 바꿀 수는 없을까?

경로: -> System Preferences -> Keyboard -> Shortcuts -> Input Sources

키보드 설정에 가보면 ctrl + space를 fn키로 바꿀 수는 있다. 하지만 매직 키보드에 한/영으로 표기된 rightcmd로는 바꿀 수 없다. 외장 프로그램을 사용해야 한다.

karabiner elements?

가장 많은 사람들이 사용하는 방법인 것 같다. karabiner elements는 맥에서 키보드 단축키를 설정할 수 있는 프로그램이다. 여기서 rightcmd를 f18로 변경해 주면 한영키(rightcmd) -> f18로 입력 -> 다음 입력 소스 선택(select next source in input menu) 순으로 입력이 넘겨져 한영키를 쓸 수 있게 된다. 가장 편하고 좋은 방법이나 큰 문제가 있다.

나한테는 관리자 권한이 없는 걸

보통 회사나 학교 컴퓨터에선 관리자 권한이 주어지지 않는다. 그런데 위 프로그램을 설치하려면 관리자 권한이 필요하다. 결국 저 방법은 쓸 수가 없다! 그래서 어쩔 수 없이 ctrl + space를 쓰는 사람들이 많을 것이다. 하지만 2년은 맥을 더 사용해야 하는데 이렇게 불편하게 키보드를 쓰고 싶지는 않았다. 거의 일주일 동안 시간을 낭비한 끝에 결국 방법을 찾아냈다.

keymap.py

github 에 올라온 작은 파이썬 프로그램이지만... 관리자 권한 없이 키 배열을 변경할 수 있다! iTerm 터미널 프로그램을 열어 다음과 같이 입력하고 엔터를 눌러주자.

cd $HOME
git clone "https://github.com/ivangreene/keymap"
cd keymap $HOME/keymap/keymap.py map rightcmd f18

rightcmd -> f18이라고 출력이 뜨면 성공한 것이다. 이제 한/영 키를 누르면 f18키가 대신 눌린다! 그런데 f18키가 한영키는 아니다.

경로: -> System Preferences -> Keyboard -> Shortcuts -> Input Sources

하지만 한영키 전환을 f18키로 설정할 수는 있다. 이제 맥에서도 한/영키를 사용할 수 있다! 하지만 여전히 문제는 남아 있다.

매번 설정을 다시 해줘야 해?

터미널 설정에는 로그인 시 자동 실행이 있다. (우클릭 -> Options -> Open at Login). 그렇다면 터미널이 켜질 때마다 저 프로그램이 자동으로 실행되게 할 수는 없을까? keymap을 실행하면 터미널에 다음과 같이 나온다.

> keymap
Usage: 
	keymap map <key> <dest> # <key>를 <dest>의 단축키로 지정함
	keymap swap <key> <key> # 두 키를 바꿈
	keymap unmap <keys>... # 위에서 설정한 단축키를 지움
	keymap list # 현재 지정된 단축키 목록 표시
	keymap save [file] # 단축키 설정을 저장함 (기본 위치: ~/.keymaprc)
	keymap load [file] # 단축키 설정을 불러옴 (기본 위치: ~/.keymaprc)
	keymap keys # 키보드의 키 목록 나열

저장과 불러오기 기능이 있으니 터미널에

$HOME/keymap/keymap.py map rightcmd f18 $HOME/keymap/keymap.py save echo "$HOME/keymap/keymap.py load" >> ~/.zshrc

다음과 같이 입력하여 터미널 자동실행 설정 파일에 keymap 프로그램이 설정 파일을 불러오도록 저장한다. 다음에 로그인할 때마다

터미널 실행시 화면 (의 상상도)

다음과 같이 뜨며 한영키 사용이 가능해질 것이다.

이제 한영키를 한영키라 부를 수 있다!

번외: 윈도우 키보드를 맥에서 쓰는 법

$HOME/keymap/keymap.py swap leftcmd leftalt

댓글