원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.
macOS input methods
InputMethodKit input methods are macOS application bundles whose processes are launched by the system. Preserve the target project's build tools and layout.
Choose the relevant guidance
- Create an application or change bundle metadata and the server entry point:
- Install or update a built input source:
- Diagnose discovery, connection, controller, or event-handling failures:
references/troubleshooting.md.
- Implement marked text, candidates, menus, lifecycle hooks, or registration:
search the relevant section of references/imkit-api.md.
Read only what the task needs. A candidate-window change normally does not need project scaffolding or installation instructions.
Shared invariants
- Use an application bundle with an identifier containing
.inputmethod.and
LSBackgroundOnly set to true.
- Match
InputMethodConnectionNameto the name passed toIMKServerand keep
the server alive for the process lifetime.
- Match
InputMethodServerControllerClassto the controller's Objective-C
runtime name, commonly supplied by @objc(...) in Swift.
- Disable App Sandbox for the default local-development setup. When diagnosing
connection failures, inspect sandbox settings as well as the name and lifetime.
- Return
truefor handled input andfalsefor passthrough. Choose an event
handling entry point appropriate to the feature; multiple overrides can interact.
- Reference an icon only if its asset is included in the built bundle.
Complete the requested implementation and relevant checks. Installing an input source, selecting it, and logging the user out are separate side effects; carry out only those authorized by the task. State whether validation used a macOS build, an installed input source, or only source inspection.

