Ajemi is an IME (input method) for Toki Pona. With proper font support, it allows you to type Sitelen Pona characters with ease.
Click link below to download the installer.
To type and see the Sitelen Pona characters, you need to:
- Press Win + Space to switch to the input method.
- Set the font of your editor to sitelen seli kiwen juniko that comes with the input method.
You can also use Fairfax HD, Nishiki-Teki or any other UCSUR-compliant font.
To type a glyph, simply type its spelling, and press Space to confirm.
Pressing Enter releases the raw text instead1.
The candidate list can help you type faster. Press Space to select the highlighted candidate or press 1 ~ 5 to pick any one of them.
You can also type multiple glyphs in a row. Long glyphs will be automatically inserted for you.
To type punctuators, type:
.for middle dot:for colon"for corner brackets[]for proper name cartouche
Joiners compose adjacent glyphs into compound glyphs. Type:
-for zero-width joiner^for stack joiner*for scale joiner
Long glyphs are created by extending certain glyphs with special control characters. In most cases you don't need to worry about them because the input method inserts them for you. But if you want more precise control over long glyphs, you can type:
()to extend glyphs forward{}to extend glyphs backward
Here's a rough demonstration of the behavior of the control characters:
| Spelling | Glyph |
|---|---|
kala-lili |
![]() |
kala*lili |
![]() |
kala^lili |
![]() |
pi (kala lili) |
![]() |
{kala lili} kama |
![]() |
Dictionary files are stored in %APPDATA%/Ajemi/dict. Their format follows these 3 rules:
- Entries are written as
{spelling} {option 1} {option 2} ... {option n} - Single-character options can be written in their Unicode code points
- Comments start with
#
Here's a minimal example:
jan 🜶
musi ☋
pakala ⍯ ⍃
[ U+1F58C
] U+1F58C
Configure the appearance and behavior of the input method by editing %APPDATA%/Ajemi/conf.toml. Here's the default one for reference:
[font]
name = "sitelen seli kiwen juniko"
size = 20
[layout]
vertical = false
[color]
clip = "#0078D7"
background = "#FAFAFA"
highlight = "#E8E8FF"
index = "#A0A0A0"
candidate = "black"
highlighted = "black"
[behavior]
toggle = "Ctrl"
long_pi = false
long_glyph = falsePrerequisites:
Run the following commands to setup the development envirorment:
cargo install just
just setup
To build the project and register the newly built IME for testing, run:
just build
When you're done testing, you can unregister the IME with:
just unreg
Create an installer for the project by running:
just pack
Footnotes
-
Alternatively, press Ctrl to toggle off the input method temporarily. CapsLock and 英数 also functions as toggles if configured. ↩
-
Just does not utilize PowerShell and relies on Git Bash to function on Windows. Make sure the
binfolder of Git is added to yourPATH. ↩ -
Make sure
isccis accessible from shell by edittingPATH↩








