skillfed

pyobjc-framework-InputMethodKit

Wrappers for the framework InputMethodKit on macOS

pyobjc-framework-inputmethodkit v12.2.2 626.4K downloads/30d#5,689 on PyPI803
Permissive license MIT Active released

What it is and what it does

This package wraps Apple's InputMethodKit framework for use in Python, allowing developers to build custom input methods on macOS. It is part of the PyObjC project and provides direct access to the native framework's APIs through Python bindings. The wrapper does not include its own documentation; users must refer to Apple's InputMethodKit documentation combined with PyObjC's general translation guidance to understand how to use the framework.

The package is macOS-only and requires Python 3.10 or later. It depends on pyobjc-core and pyobjc-framework-Cocoa, which handle the underlying Objective-C bridge. Installation is straightforward on supported macOS versions via pre-built wheels, though it will not work on Linux or Windows systems.

Use it for:

  • Building custom input methods for non-Latin scripts or specialized keyboard layouts on macOS
  • Creating accessibility-focused text input solutions that integrate with macOS system input handling
  • Developing IME (Input Method Editor) applications for languages not well-supported by default macOS input
  • Integrating Python-based text processing logic into macOS input method pipelines

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python bindings to macOS's InputMethodKit framework, enabling development of custom input methods for text input on macOS 10.5 or later.

Yes, if you are developing input methods on macOS and need Python bindings to InputMethodKit. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and supports current Python versions. Install friction is moderate due to platform specificity, but pre-built wheels mitigate compilation overhead. Not applicable for non-macOS development.

Install

pyobjc-framework-inputmethodkit on PyPI

pip

pip install pyobjc-framework-inputmethodkit

uv

uv add pyobjc-framework-inputmethodkit

poetry

poetry add pyobjc-framework-inputmethodkit

Installing pyobjc-framework-InputMethodKit

Before you install

Medium install friction due to platform specificity and compiled wheels. Actively maintained with a recent release (3 days old) and solid repository activity. Requires macOS and specific Python versions (3.10+); wheels are provided for CPython 3.10 through 3.15.

License in practice

MIT license permits commercial and private use with minimal restrictions, making this suitable for proprietary input method development.

Quickstart

pip install pyobjc-framework-inputmethodkit

import InputMethodKit
# Access InputMethodKit framework classes via PyObjC bindings

Requires macOS 10.5 or later and Python 3.10+; will not install or function on non-macOS systems.

Verify before relying

  • Specific InputMethodKit classes and methods exposed by this wrapper version
  • Whether this package includes example input method implementations or only raw framework bindings
  • Performance characteristics or known limitations when bridging Python to Objective-C input method callbacks

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction medium — platform-specific wheel
Runtime dependencies 2 — pyobjc-core, pyobjc-framework-Cocoa
Maintenance actively maintained — 3 days since the last release
Last repo commit
First released
Downloads 626,367/month — #5,689 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyobjc_framework_inputmethodkit-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_inputmethodkit-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl

Keywords: PyObjC, InputMethodKit

Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: MacOS X :: CocoaIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: MacOS :: MacOS XProgramming Language :: Objective CProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Free Threading :: 3 - StableProgramming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: User Interfaces

Tags

macOS input method developmentInputMethodKit Python bindingscustom text input methods macOSPyObjC InputMethodKit wrappermacOS IME developmentObjective-C input framework Python
macos-onlyinput-methodsobjc-bindings

More Python Modules packages

idna

Converts domain names between Unicode and…

permissive · top 100 on PyPI

setuptools

Setuptools is a Python build backend and…

permissive · top 100 on PyPI

PyYAML

PyYAML parses and emits YAML 1.1 data format,…

permissive · top 100 on PyPI

pydantic

Pydantic validates Python data structures…

permissive · top 100 on PyPI

annotated-types

Provides reusable metadata objects for use with…

permissive · top 100 on PyPI

typing-inspection

Provides runtime tools to inspect and…

permissive · top 100 on PyPI

pyobjc-framework-CallKit

Provides Python bindings for Apple's CallKit…

permissive · top 15,000 on PyPI

pyobjc-framework-LatentSemanticMapping

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-PencilKit

Provides Python bindings to Apple's PencilKit…

permissive · top 15,000 on PyPI

pyobjc-framework-ClassKit

Provides Python bindings to Apple's ClassKit…

permissive · top 15,000 on PyPI

pyobjc-framework-SafariServices

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-Contacts

Provides Python bindings to macOS's Contacts…

permissive · top 15,000 on PyPI

pyobjc-framework-ScreenSaver

Provides Python bindings to macOS's ScreenSaver…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreAudio

Provides Python bindings to macOS's CoreAudio…

permissive · top 15,000 on PyPI

pyobjc-framework-PushKit

Provides Python bindings to Apple's PushKit…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreText

Provides Python bindings to macOS's CoreText…

permissive · top 5,000 on PyPI