Log In  

Toki Pona D-Pad Keyboard v1

Cart #rapiyiteja-0 | 2022-02-13 | Code ▽ | Embed ▽ | No License


This is a typing program for Toki Pona text made by jan Momo (aka Machitoons aka me)
You can type letters and syllables by holding a button and tapping the DPAD.
By default the mapping on PC is Z,X and the arrow keys, this mapping is slightly terrible, so please use this program only with a controller or on mobile with the touchscreen-DPAD.
ALSO: the browser-version of the program works a little... oddly. The PAUSE menu info sadly disappears for no apparent reason when selecting options (It works fine within PICO-8, something about the browser maybe? idk.)

Vowels and j-/w- are typed with (o), consonants and CV(n)-syllables are typed with (x) and (o)+(x)

The PAUSE menu has some extra features:

  • a toggle between manual and automatic copying of the text to the clipboard
  • a toggle between a night mode and an (eye-piercing) day mode, some people like light modes afterall...

When you stop typing, a little Machi will appear in the bottom left, depending on the time of day she'll have different animations.

copying to clipboard might not work on mobile devices because of a ctrl+c check implemented within PICO-8, taking a screenshot might work at least, meanwhile I'll try to find a workaround for mobile

(o) Button

By holding (o) and tapping a direction you can switch from "a" (the default) to other vowels

  • L: e
  • U: i
  • R: o
  • D: u

By holding (o) and tapping up or down and then tapping the DPAD again you can type the syllables j- and w-.

  • U: i/j

  • L: je
  • U: ja
  • R: jo
  • D: ju

...and W

  • D: u/w

  • L: we
  • U: wi
  • R: wo
  • D: wa

Tapping (x) adds a syllable-final n.

(o)Down,Down gives you wa and (o)Up,Up gives you ja, as opposed to wu and ji.
If you tap up or down but keep the DPAD pressed before releasing the (o) button, it will type a singular w/j, this also works with the other consonants, select the consonant but release the button(s) before the DPAD for a singular consonant without the -a syllable attached.

(x) Button

Tap (x) for a space.

holding (x) and tapping the DPAD:

  • L: pa
  • U: ta
  • R: ka
  • D: sa

keep holding (x) to change the vowel:

  • L: -e
  • U: -i
  • R: -o
  • D: -u

Tapping (o) (whilst keeping (x) pressed) adds a syllable final -n.

(o)+(x) Button Macro

Tap (o)+(x) for a new-line.

This button macro gives access to the leftover consonants as well as another way to write a final -n.
hold the 2 buttons and tap the DPAD:

  • L: ma
  • U: na
  • R: la
  • D: n (ignores any further inputs, will always input a singular n)

keep holding (x) and (o) to change the vowel:

  • L: -e
  • U: -i
  • R: -o
  • D: -u

(Re)tapping (o) (whilst keeping (x) pressed) adds a syllable final -n.


The DPAD pressed on its own has unique functionalities and numerous extra characters can be typed with character-combinations.

  • L: delete character/syllable
  • U: ^
  • R: .
  • D: ,


"^c" -> C (works for any letter)
".." -> :
":." -> …
",." -> ;
"^," -> '
"'," -> "
",," -> -
".-" -> !
"!," -> ?
"- " -> __
"-." -> +
"^^" -> [
"[." -> ]
",^" -> 0

Numbers are a special case: when typing, a previous digit can
be increased by +1 by typing ^ and by +4 by typing : right after it.

If you find any bugs/issues feel free to message me on twitter @machitoons (I'm most active there)

P#106871 2022-02-14 02:07 ( Edited 2022-02-14 17:19)


I have a slight suggestion, @machi.

Is it possible when you hit one of the control keys either 🅾️ or ❎, you would visually show the choices available with the arrow keys as long as you are holding down the control key ?

Of course releasing the control key will remove the visual aids and either continue to the next control set or type out that particular key.

In any case do not leave the user "blind." Always show what the arrow keys will do and only accept it when the main control button is released. Here is a demo for a single level option.

Use 🅾️ to activate.

From there release for letter A or tap any of the arrow keys one or more times for the other letters.

Press ❎ to erase a single character.

Cart #misaziyihi-0 | 2022-02-14 | Code ▽ | Embed ▽ | No License

P#106878 2022-02-14 03:24 ( Edited 2022-02-14 03:26)

@dw817 no doubt possible, might take a while to implement tho and I coded this in some sort of 6-day-without-breaks rush and now I'm a bit tuckered out haha

Shouldnt be impossible tho... I could run two coroutines in parallel that both access the same tree...

the hardets part would prolly be making space for the inputs onscreen haha

P#106910 2022-02-14 17:25

sina pali e ilo pona!

Interesting program!

P#107042 2022-02-16 15:50

@rnd wow i feel kinda honored seeing you here, thanks!
(tan) lipu sina la mi sona e toki pona~

P#109127 2022-03-25 00:40

ni li nasa, taso ni li pona mute kin!

P#111495 2022-05-08 07:20


P#124955 2023-01-28 16:29

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2023-06-06 19:41:43 | 0.094s | Q:33