프로그램 설치없이 윈도 키보드에 맥용 단축키 설정하기

By | 2023-11-26

시스템 종료 대화 상자
맥용 키보드는 Control+Eject 키를 누르면, 이와 같이 시스템 종료를 선택하는 대화 상자가 나타난다.
(맥OS는 control-전원 버튼이나 control-미디어 추출(eject) 키를 누르면, 위와 같은 대화 상자가 나타난다.)

맥에 윈도용 키보드를 사용하면, Eject 키가 없기 때문에 위 대화 상자를 단축키만으로 열 수 없다. 그래서 Control+Pause 키를 누를 때 이 시스템 종료 선택 대화 상자가 나오도록 설정하는 방법을 설명한다. Karabiner 등과 같은 프로그램을 설치하거나 쓰지 않고, Pause 키에 전원 버튼 기능을 할당하는 가벼운 방법인 셈이다. — 이놈의 결벽증!

애플 키보드는 “음소거, 소리 줄이기, 소리 키우기” 기능이 “F10, F11, F12″에 할당되어 있는데, 윈도우용 키보드를 연결하면 이 기능이 작동하지 않아서 적잖이 불편하다. 나는 F9, 10, 11에 이 기능을 순서대로 할당하고 F12는 그대로 남겨뒀다. 크롬 브라우저의 “개발자 도구” 단축키이기 때문에.

 

  1. 터미널을 실행하고, 아래 % 이후의 명령을 복사해서 붙여넣고 엔터 키를 누른다(%는 쉘 프롬프트라는 의미이므로, %는 빼고 이후 내용만 복사 후 붙여넣어야 한다).
    % nano ~/Library/LaunchAgents/com.local.KeyRemapping.plist

    자신이 사용하는 사용자 폴더/Library/LaunchAgents/ 폴더 안에 com.local.KeyRemapping.plist 파일을 편집기로 열었을 것이다. 열린 nano 편집 창을 그대로 두고,
     

  2. 웹 브라우저에서 hidutil-generator 페이지를 클릭하여 연다.
    pause 키에 power 키 할당
    위와 비슷한 페이지가 열리면, 왼쪽 “From key“에 지정할 윈도 키 종류를 선택한다(위 스샷은 pause 키를 선택한 모습). 오른쪽 “To key“에 할당한 맥용 단축키를 선택한다(스샷은 power 키를 선택한 모습).
    더 추가할 단축키가 있으면, [Add key map] 버튼을 클릭한 후에 왼쪽에 윈도 키와, 오른쪽에 맥용 단축키를 지정하면 된다. 할당할 단축키를 모두 지정했다면, [Copy] 버튼을 클릭한다(아래 네모 상자에 있는 내용이 복사된다).
     
  3. 위 1번에서 열어둔 nano 편집 창을 클릭하고 붙여넣기(command+v)를 한다.
     
  4. 편집기를 빠져 나가면서 붙여넣기를 한 내용을 저장할 차례다.
    control+x 키를 누른 다음, 저장할 것인지 묻는데 y 키를 누르고 엔터 키를 누른다. 편집한 내용이 com.local.KeyRemapping.plist 파일에 저장되고 편집기가 % 프롬프트 상태로 빠져 나올 것이다.
     
  5. 터미널 창에서 명령어 두 가지만 실행하면 맥OS가 부팅되면서 ~/Library/LaunchAgents/com.local.KeyRemapping.plist 파일을 자동으로 불러오게 된다.
    % launchctl unload ~/Library/LaunchAgents/com.local.KeyRemapping.plist
    (이전에 단축키로 설정된 내용이 있으면 먼저 해제하기 위해서 실행해 준다.)

    % launchctl load ~/Library/LaunchAgents/com.local.KeyRemapping.plist
    (이 명령이 맥OS가 시동될 때 자동으로 단축키 할당을 읽어들이는 명령어다.
     

  6. 다른 작업을 하기 전에 우선 맥을 재시동해 주는 것이 작업이 꼬이지 않는다.
     
  7. 재시동 후에, 왼쪽 control 키와 Pause 키를 눌러서 맨 위의 시스템 종료를 선택하는 대화 상자가 나타나는지 확인해 본다. 잘 나오면, 이제 키보드에서 시스템 종료 대화 상자를 빠르게 열 수 있다.

    만약 제대로 단축키 지정이 안 되었다면, 다음 명령으로 확인해 본다.
    % hidutil property --get "UserKeyMapping"

    (
    {
    HIDKeyboardModifierMappingDst = 30064771174;
    HIDKeyboardModifierMappingSrc = 30064771144;
    }
    )

    와 같은 결과가 표시되어야 제대로 설정이 된 것이다.

    그렇지 않고 ((null))이라고만 표시되면, 위 5번의 명령을 다시 실행하고(unload 후 load 명령 줄) 재시동해 보기 바란다.
     

  8. [팁] 시스템 종료 선택 대화 상자가 열렸을 때, r 키를 누르면 재시동, s 키는 잠자기, 엔터 키는 시스템 종료가 실행된다.
    시스템 종료 대화 상자

 

참고로,
맥을 쓰고 있는 사람들은 이미 알고 있는 맥OS 설정에서 보조 키 변경하는 방법(아래 대화상자)은 여기서 굳이 설명하지 않았다.
보조 키 설정

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다