Show GN: 오른쪽 Option / Command 키로 한/영 전환을 할 수 있도록 도와주는 앱을 만들어 봤습니다. (macOS)

6 hours ago 6

스크린샷 (Twitter / X)

macOS용 원격 제어 앱 을 만들고 있는데, 이때 얻은 노하우를 기반으로 오른쪽 Option / Command 키로 한/영 전환을 할 수 있도록 도와주는 'Sejong98'이라는 앱을 만들어 봤습니다.

기능

  • 아래 키들에 대해 '한/영 전환', '한글 입력으로 전환', '영문 입력으로 전환' 액션을 할당할 수 있습니다.

    • 오른쪽 Command
    • 오른쪽 Option
    • Shift + Sapce
  • Vim 사용자를 위한 기능: Escape 키를 누르면 영문 입력으로 전환하는 기능을 제공합니다.

지금까진 왜 프로그램들을 통해 한/영 전환이 불가능했는가? / 그러면 이 앱은 어떻게 이 문제를 해결했는가?

macOS는 HIToolbox라는 프레임워크에서 제공되는 TISSelectInputSource() 계열 API를 통해 입력 언어를 전환할 수 있습니다.

하지만, 이 API들은 사실 클래식 Mac OS 시대에 있던 Carbon API에 속하고, 현재는 메인터넌스가 되지 않는지, 이 API를 호출하면 한/중/일으로의 언어 전환이 거의 확률적에 가깝게 동작합니다. 어떤 때는 한글 입력이 되고, 어떤 때는 영문이 입력되고 ... 하는 식입니다.

하지만, API 호출 후, 다른 앱으로 갔다가 돌아오면 항상 정상적으로 한글 입력으로의 전환이 보장된다는 사실이 확인되었습니다. Sejong98은 이 점을 응용(어뷰징)하여 이 문제를 최대한 회피합니다.

Sejong98에서는 1x1의 보이지 않는 빈 창을 만들어놓고, 오른쪽 Command 키가 눌리면 최대한 빠르게 빈 창으로 이동했다가 원래 앱으로 돌아옵니다. 이렇게 하면, 윈도우 프레임이 잠깐 깜박이는 대신 한/영 전환이 항상 성공하게 됩니다.

Read Entire Article