input-methods
input-methods copied to clipboard
Documenting the various input methods / IMEs and the events they trigger.
Input methods
Introduction
The purpose of this repository is to document various input methods / IMEs, how to install them, and the UI Events they trigger in the browser.
UI Event Viewer, available here:
https://danburzo.github.io/input-methods/index.html
Can be used to inspect the various keyboard / input / composition events that get triggered on a contenteditable element, using either the native DOM APIs or the React.js-polyfilled ones. It takes a cue from the excellent Keyboard Event Viewer.
Input methods
The danburzo.ro/input-methods/ project organizes input methods by operating system.
Specifications
Browser support and known limitations
beforeinput
Firefox | Chrome | Safari |
---|---|---|
Does not fire beforeinput — issue here |
Added support in Chrome 60 | Added support in Safari 10.1 |
Differences between native DOM and React
- React will send
beforeinput
as aSyntheticInputEvent
of typecompositionend
when finishing a composition in Firefox; Chrome gets an event of typetextInput
. -
input
events areSyntheticEvent
s instead ofSyntheticInputEvent
s for some reason -
SyntheticKeyboardEvent
s don't have thecode
property.
Other resources
- IME Test from the VSCode Github repository.
- Keyboard Event Viewer
Contributing
See Contributing.md
for ways to contribute — much appreciated!