Edios / t9keyboard

T9 Keyboard controled by numpad keyboard buttons
MIT License
0 stars 1 forks source link
t9 t9-keys trie trie-structure trie-tree

T9 Keyboard controled by Numpad keyboard buttons.

Project of T9 keyboard which is controlled by numpad keyboard buttons. Application takes sequence of digits, convert it to corresponding letters combos and use Trie tree search to match sequence with potent words. When user choose a phrase from available predicted words search results, it will be written to the screen.

Preview

Using application to type in notepad:

App Screenshot

Instalation guide and system requirements

  cd <main project directory>
  pip install -r requirements.txt
  python run.py

Alternative solution:

Key bindings

Default key actions for T9 mode.
    """
    +-------+-------+-------++-------+
    |   7   |   8   |   9   ||   +   |
    |  .?!  |  ABC  |  DEF  ||       |
    +-------+-------+-------+|       |
    |   4   |   5   |   6   || BACK  |
    |  GHI  |  JKL  |  MNO  || SPACE |
    +-------+-------+-------++-------+
    |   1   |   2   |   3   |
    | PQRS  |  TUV  |  WXYZ |
    +-------+-------+-------+
    |       0       |   .   |
    |     SPACE     |SWITCH |
    +-------+-------+-------+
    """
    Digit key 7 :
        - type Dot sign
    Digit keys 8, 9, 4, 6, 7, 1, 2, 3 :
        - Add digit to queue.
    Dot key (Del):
        - switch word hint (phrase)
    Digit key 0 :
        - Accept current hint phrase. Then write phrase as keyboard output
    Plus key + :
        - Backspace

Running Tests

Pytest is configured to be runned from main project directory. To run tests, use the following command.

  cd <main project directory>
  pytest