[mac] 맥에서 python 으로 윈도우용 키보드 한영키 작동하도록 plist 파일 수정





💡 팁 한번의 실행으로 윈도우용 키보드의 한영키 사용이 가능합니다.
↓↓↓
[한영키 한영전환] 어플 다운로드




1. 맥에서 윈도우용 키보드 사용시 한영전환 문제

  • 맥에서 윈도우용 키보드를 사용할 때 한영전환을 위해서 karabiner 나 hammerspoon 같은 키매핑 프로그램을 사용해야합니다.
  • 두 개 이상의 사용자 계정을 가지고 있는 맥이라면, A유저가 키매핑 프로그램을 사용시 B유저는 해당 키의 매핑이 작동하지 않는 경우가 있습니다. 
  • 맥 기본 키매핑 파일인 com.apple.symbolichotkeys.plist 파일을 수정하는 방법을 이용하면 다수의 사용자가 하나의 컴퓨터를 이용해도 한영키를 한영전환용으로 사용 가능합니다. 




2. python 스크립트로 한영키를 한영 전환용으로 매핑

  • com.apple.symbolichotkeys.plist 파일을 xcode나 plist editor로 수정하는 방법이 있지만, python 스크립트로 간단하게 수정하는 방법을 소개합니다.
  • 스크립트의 내용은 com.apple.symbolichotkeys.plist 파일의 백업본을 만들어 두고, 원본 파일에서 '61'번 key를 찾아 값을 (65535, 104, 0) 으로 변경하는 겁니다.
  • 사용된 모듈은 plistlib, os.path, shutil 입니다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    import plistlib
    import os.path
    import shutil
     
    homedir = os.path.expanduser("~")
    filename = homedir+'/library/preferences/com.apple.symbolichotkeys.plist'
    filename_bak = homedir+'/library/preferences/com.apple.symbolichotkeys_bak.plist'
    shutil.copy(filename, filename_bak)
     
    with open(filename, 'rb'as fp1:
        pl = plistlib.load(fp1)
        pl['AppleSymbolicHotKeys']['61']['value']['parameters']=[65535,104,0]
        fp1.close()
    with open(filename, 'wb'as fp2:
        plistlib.dump(pl, fp2)
     
     
     
    cs
  • 어플이 실행되면 원본파일과 동일한 위치에 원본파일의 사본com.apple.symbolichotkeys_bak.plist 파일이 생성됩니다.




3. py 파일을 응용프로그램으로 변환 py2app

  • pip를 통해 py2app 최신 릴리즈를 설치합니다. 

    1
    pip install -U py2app
    cs

  • 어플 생성용 setup.py 파일을 만듭니다. py 피일이 위치한 곳에 setup.py 파일이 생성 됩니다.

    1
    py2applet --make-setup MyApplication.py
    cs

  • Pycharm 등을 사용한다면, build와 dist 디렉토리를 삭제해 주는 것이 좋습니다.

    1
    rm -rf build dist
    cs


  • 단독 실행이 가능한 어플을 만들어 줍니다. 파일은 ./dist 폴더 내부에 스크립트와 동일한 이름으로 생성됩니다.

    1
    python setup.py py2app 
    cs

    • 어플에 아이콘을 사용하고 싶다면, icns 파일을 사용해야 합니다. 실행파일 생성시 --iconfile 파일명.icns 를 붙여 줍니다.

      1
      2
      python setup.py py2app --iconfile icon_name.icns
       
      cs






참고 

💡 파이썬을 이용한 파일 및 디렉터리 작업 '링크'

💡 py 파일을 맥용 응용프로그램으로 전환 py2app  '링크

💡 맥의 OS 디렉토리 정보 가져오기 '링크'

💡 PNG 파일을 ICNS 파일로 변환 사이트 '링크'






댓글 쓰기

0 댓글