Skip to content
[Pebble] Tertiary text input for the Pebble!
C Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Tertiary Text

Simple Texting from your Wrist!

Type using your Pebble! Tertiary text presents a solution for a quick and efficient method of entering text using only the Pebble itself. By fully utilizing the three buttons and narrowing down the selection each time, it is possible to hit all twenty-six characters of the alphabet in three button strokes. It looks a little clunky at first, but in almost no time the letters become muscle memory and your speed greatly improves.

Tertiary Text in Action!

Tertiary Text in action

How to Type

The process may be effective, but it admittedly isn't the most straightforward. Check the animation above to get a better idea of how it functions. Also see the diagram below:


On the start screen, all 26 letters + the space are shown in three groups of nine, one group corresponding to each button. Selecting the top button then, for example, breaks it down into the group of nine, dividing that one into three groups of three, again one group for each button. The second click will then do the same thing to the selected group, making three groups of one letter each. The third and final click will then select the letter that it corresponds to, and successfully type it!

Extra characters and symbols

Of course there are more than the 26 lower case letters that need to be typed, and have we not just made use of all the three available buttons? Well, there is something else we can do, despite having a limited number of buttons to work with:

Holding for more thingsHolding for more thingsHolding for more thingsHolding for more things


Implementing Tertiary text is straightfoward. Simply add the tertiary_text.h and tertiary_text.c files from the src directory to your app's source directory, and add the following code in the file where you want to invoke it:

#include "tertiary_text.h"

After this, Tertiary Text can be invoked via a pop-up window by using the following method:

void tertiary_text_prompt( const char* title, TertiaryTextCallback callback, void* extra );

It takes a title for the window, as well as a callback as input. The callback function should be of the form:

void(* TertiaryTextCallback)( const char* result, size_t result_length, void* extra );

For more detailed information on the API, check out tertiary_text.h. For a very simple example app, check out main.c. It will log the typed text. More information about logging is available here.


I'm open to any and all contributions! I very much want Tertiary Text to become as easy-to-use as possible to allow any Pebble app to integrate their own keyboard without making a big deal out of it. If you see literally any change at all, feel free to make a pull request.


Visit the offical project page here for official Tertiary Text downloads and .pbw files.



Tertiary Text is licensed under the MIT License.

You can’t perform that action at this time.