Home

preedit

Preedit is the provisional text produced by an input method editor (IME) to represent the characters a user is composing but has not yet inserted into the document. It is a central concept in languages that require character-level disambiguation, such as Chinese, Japanese, and Korean, and in other text-entry systems that use composition before finalization. As the user types, the IME updates the preedit string, optionally presenting a list of candidate conversions and allowing the user to select one or continue typing to refine the composition.

The preedit is typically rendered differently from committed text. Common approaches include underlining, coloring, or highlighting

With many input methods, the user can insert or adjust punctuation within the preedit, switch between candidate

Examples include pinyin input for Chinese characters, kana-to-kanji conversion in Japanese, and Hangul composition in Korean.

portions
of
the
preedit
to
indicate
current
segments,
tones,
or
cursor
position.
The
application
receives
the
final
text
only
when
the
user
confirms
the
choice,
at
which
point
the
preedit
is
committed
and
replaces
the
provisional
string.
forms,
or
move
the
cursor
within
the
composition.
The
concept
also
encompasses
the
internal
state
of
the
input
framework,
where
a
preedit
string,
its
attributes,
and
its
position
are
maintained
separately
from
the
document
model.
Preedit
is
supported
by
input
method
frameworks
and
operating
system
IMEs,
which
provide
APIs
to
set
the
preedit
text
and
its
styling
for
rendering
in
applications.