Skip to content

Dev0June/macime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

macOS용 한손 키보드 입력기

뇌졸중으로 인한 장애로 한손으로만 키보드를 사용할 수 있게 되어, 한손 키보드 입력기를 개발

기능

  • 한글 입력: 이건구님의 한손 오른손 키보드 (libhangul 기반 구현)
  • 영어 입력: Half-QWERTY 키보드 구현 (양쪽 왼손, 오른손키 모두)

한손 키보드 안정성 테스트를 계속 진행 중... 현재 한글 키보드에서 오른손을 사용할 수 없는 상태인데, 사용하기엔 더 편해서 오른손 키보드를 우선 구현

빌드/설치

CLI 스크립트 사용:

  • 빌드: ./Scripts/build.sh
  • 설치: ./Scripts/install.sh
  • 제거: ./scripts/uninstall.sh

Xcode 사용:

  1. Xcode에서 빌드: ⌘+B
  2. 빌드된 .app 파일을 ~/Library/Input Methods/에 복사
  3. 시스템 환경설정 > 키보드 > 입력 소스에서 추가
  4. Caps Lock으로 한/영 전환

기본 영어 입력소스 제거 방법

원래 구름 입력기에도 적힌 방법이다. macOS에서 기본 영어 입력소스를 제거하여 한손 영문 키보드만 사용하도록 설정:

  1. 기본 영어 입력소스 삭제:

    • 시스템 환경설정 > 키보드 > 입력 소스
    • + 키 클릭
    • 일본어 > Romaji 선택하여 추가
    • 기본 영어 입력소스 선택 후 - 키로 삭제
    • 일본어 Romaji 선택 후 - 키로 삭제
  2. 한손영문 제거 시:

    • 영어 > 기본 영어 입력소스 선택하여 추가
    • 한손영문 입력소스 선택 후 - 키로 제거

참고: 기본 영어 입력소스는 macOS에서 최소 1개의 영어 입력소스를 요구하기 때문에 임시로 다른 입력소스를 추가한 후 삭제해야 합니다.

알려진 문제점

입력기 전환 시 상태 동기화 문제

현상:

  • 한손한글로 타이핑 중 Caps Lock으로 영문 전환 시, 이전 조합 상태가 남아있음
  • 한손영문에서 한손한글로 전환 시, 영문 입력 버퍼가 잔존함
  • 양방향 전환 모두에서 발생하는 문제

예시:

한글 입력 중: "안녕하" (조합 중) → Caps Lock → 영문 입력기
→ 나중에 한글로 복귀 시: "하" + 새 입력 = 예상치 못한 조합

영문 입력 중: "hello wo" → Caps Lock → 한글 입력기  
→ 나중에 영문 복귀 시: "wo" + 새 입력 = 중복/오타

원인:

  • macOS IME 시스템에서 각 입력기가 독립적인 상태를 가짐
  • 입력기 전환 시점에 상태 초기화가 완전하지 않음
  • deactivateServer 호출 타이밍이 일관되지 않음

현재 해결책 (단기):

  • 각 입력기의 deactivateServer/activateServer에서 강제 상태 초기화
  • 전환 시점에 조합 중인 문자 즉시 커밋

장기 해결 계획:

  • 단일 입력기 내 모드 전환 구조로 변경
  • 내장 합성기 방식으로 상태 동기화 문제 원천 차단

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Contributors