Tutorial > Alphanumeric input > Learning to type with Alphanumeric input using a TouchScreen or TouchPad >


Using AutoComplete

Page index:

1. Introduction and operation

2. Entering text using AutoComplete

3. Simple example

4. More elaborate example

5. Getting help

6. Further notes

1. Introduction and operation

The number of keys available in the NumPad is limited and therefore entering text is inevitably slower than using the Standard keyboard. AutoComplete can be used to speed up typing.

The user enters the first few letters of the word required. Using the AutoComplete mode, a number of words starting with the partial word typed is suggested to the user. If the desired word is found, the user selects the word intended thus replacing the partial word typed with the suggested word.

In mobile devices, blind users usually turn off AutoComplete as they often find it confusing and more of a hindrance than a benefit.
AutoComplete in SpeakOn's 'Alphanumeric input' works very differently. Consequently it requires an understanding of how it works. In addition, to use AutoComplete efficiently, the user needs to do a simple mental calculation. If you feel that this is not for you, skip this page and do not use AutoComplete. However, once understood, AutoComplete performs its operation in seconds.

There is value in AutoComplete provided that the number of steps required to find the intended word is quicker than typing the complete word in the first place.

As an example, let's use the word 'hello'. To type this word without AutoComplete, five characters need to be entered.

Let's consider the AutoComplete process; if the letter 'h' is typed, with AutoComplete potentially all the words in the alphabet starting with the letter 'h' would be available for the user to choose from; many thousands of words which is obviously impractical. Entering two letters, in this example 'he', would potentially present all the words starting with 'he'; not as many as with a single letter but still very large and not practical to use. Entering three letters, in our example 'hel', presents a shorter list of potential words but still too large for practical use so there is a need to reduce the number of potential words further.

To reduce the number of potential words available, we can limit the number of letters in each suggested word. In our example, we know that the length of the word 'hello' is five letters and so limiting the words available to five letters or less would reduce the number of potential matches further.

It was found with experimentation that typing just over half the word length, and limiting automatically the number of letters to the expected word length or less, produces a list of usually no more than 20 potential matches which is practical.

Assuming that the user types just over half the word length, the word length calculated by the system would be twice the number of letters entered minus 1.

To calculate the 'just over half the word length', the user performs the following steps:

In our example where the user wants to type the word 'hello', the user makes a quick mental calculation that three letters are just over half the word length
5 divided by 2 equals 2.5, rounded up results in 3
The user therefore types the first three letters of the word 'hello'; 'hel'.

The system obviously does not know the word the user wants to type and therefore calculates an estimate of the word length in reverse order, based on the three letters already typed, as follows
3 times 2 equals 6 minus 1 = 5
This means that all words with five letters or less would be included in the list of potential matches.

Although an estimate of the maximum number of letters allowed in a match is computed automatically, this can be easily overridden by the user thus changing on-demand the number of suggested words.
This means in practice that an exact calculation of the 'just over half the word length' to be entered by the user is not required; an estimate is sufficient. Practical examples are provided further below.

Individual users tend to use a similar language style and thus use some words more often than others. The 'Alphanumeric input' system saves the last 500 most recently used and correctly spelled words in a personal dictionary. When AutoComplete is invoked, firstly this personal dictionary is scanned for matches, and if found, they are presented to the user. Because of the limited number of words, the list of matches is short thus increasing efficiency. If no matches are found in the personal dictionary, the system automatically uses a general English dictionary instead. The user can switch easily between dictionaries if, for example, the number of matches in the user's personal dictionary does not contain the word desired.

2. Entering text using AutoComplete

To use AutoComplete, the Entry type must be set to 'Word entry'. If not already set, do this by invoking:
'Entry Type' {swipe up > left > down}
This gesture toggles between 'Key entry' and 'Word entry'.
As explained in the 'Typing using Word entry' page, you can configure the 'Alphanumeric input settings' task to use 'Word entry' by default.

To use AutoComplete you need to first type the first few letters of the word you want to AutoComplete; this word is then entered into the Word control.

3. Simple example

In the example mentioned above, you want to type the word 'hello'. As the word is short, you know that the word length is 5 letters long.
You calculate the 'just over half word length' to be 3 as follows:
5 divided by 2 equals 2.5, and rounded up, the result is 3.

In this example, using the technique you learned before, type the text 'hel' (the first three letters of the word 'hello').

To AutoComplete this word invoke:
AutoComplete {swipe left > up > right}
You are switched to the AutoComplete mode.

Depending on whether you typed the word 'hello' recently, this word might or might not be part of your AutoComplete Personal dictionary.
If at least one or more suggested words starting with the text 'hel' and word length of 5 letters or less is found in your Personal dictionary, a list of suggested words is presented.
Scroll Up and Down and try to find the word 'hello'. If you can't find it, you can switch to the general English dictionary by invoking:
Function {swipe up > left}
Again a list of suggested words is presented.
Scroll Up and Down to find the word 'hello'.

You can listen to the suggested word in focus including its spelling by invoking:
Content {swipe up > right > down}

If you are not sure where you are, invoke:
'Where am I?' {swipe down > right > up}
The mode, Function set and other relevant information is announced.

The dictionaries used are implemented as functions. If you invoke a few times:
Function {swipe up > left}
you will toggle between your personal and the general English dictionaries.

When you are satisfied with a suggested word (in this case 'hello') invoke:
Select {swipe up > down}
You are switched back to the 'Alphanumeric input' mode and the text you typed before, in our example 'hel', is replaced by 'hello'.
You can modify this replaced word if you wish. Usually invoke:
Space {swipe down > right}
to submit the word followed by a space to the SpeakOn control in focus.

Alternatively in the AutoComplete mode, if you just wish to submit directly the suggested word to the SpeakOn control invoke:
Space {swipe down > right}
You are switched back to the 'Alphanumeric input' mode, the text you typed before, in our example 'hel', is replaced by 'hello'
and this replaced word followed by a space is submitted to the SpeakOn control in focus.

In the AutoComplete mode, you don't have to accept any of the suggested words and can switch back to the 'Alphanumeric input' mode by invoking:
Escape {swipe left > right}
or
Back {swipe right > up}
No action is taken.

Note that if the word 'hello' is not found in your personal dictionary, the general English dictionary is used automatically instead.

4. More elaborate example

As mentioned above, the system obviously does not know the word the user wants to type and therefore calculates from the number of letters typed already an estimate of the word length. As explained above, this estimated word length is used to limit the number of words suggested.

In the previous example where the user wanted to type the word 'hello', the system estimated correctly the word length to be 5 from the text 'hel' typed by the user.

Let's take another example where the user wants to type the word 'friend'; the user makes a quick mental calculation that four letters are just over half the word length
6 divided by 2 equals 3, plus 1 equals 4
The user therefore types the first four letters of the word 'friend'; 'frie'.

Again, the system obviously does not know the word the user wants to type and therefore calculates an estimate of the word length in reverse order, based on the four letters already typed, as follows
4 times 2 equals 8 minus 1 = 7
When you switch to the AutoComplete mode, you get a list of all words with a word length of 7 letters or less; this list should contain the word 'friend'.
Notice that the system overestimated the word length to be 7 letters long where in fact it is 6. This overestimation by 1 is a slight problem with all words of an even number of letters and means that you get a longer list of suggested words than necessary (all words with 7 letters in addition to all words with fewer letters). 
In the case of the word 'friend' in our example, using the general English dictionary, the estimate of word length of 7 letters produces a list of 7 suggested words.
You can simply scroll Up and Down to find the word you want; in our case 'friend'. Alternatively as you know that the word length of 'friend' is actually six you can manually reduce the estimated word length from 7 letters to 6 by invoking:
Left {swipe left}
This reduces the number of suggested words in our example to 5.
Again you can scroll Up and Down to find the word 'friend' in the usual way.
In this example, reducing the estimated word length resulted in only a small reduction in the suggested word list (from 7 to 5) but with other examples this reduction can be more dramatic and thus reduces the steps involved in finding the word you want to type.

You will find that with long words you might be either overestimating or underestimating the word length and therefore wrongly calculating the number of letters (which are just over half the word length) you need to type. Consequently the estimated word length calculated by the system is wrong too.

In the case of underestimation of the word length, the list of suggested words does not contain the word you want to type.  In this case, manually increase the estimated word length by invoking:
Right {swipe right}
Experience shows that if you increase the estimated word length until you get up to a list of no more than 20 suggested words, you should be able to find the word you want to type.

In the case of overestimation of the word length, the list of suggested words can be too long.  In this case, manually reduce the estimated word length by invoking:
Left {swipe left}
Experience shows that if you reduce the estimated word length until you get down to a list of no more than 20 suggested words, you should be able to find the word you want to type.

While the procedure above might sound complicated, in practice, with some experience, it can be performed rapidly, thus increasing typing efficiency.

5. Getting help

You can get help at any time. Two modes of help are available: 'Help list' and 'Help input'

To toggle between 'Help list' and 'Help input' invoke:
Help {swipe left > down}

The 'Help list' mode provides a list of keys and their actions. Simply scroll Up and Down to examine the list. You can memorize relevant keys and their actions for future use or invoke:
Select {swipe up > down}
The action is performed as if you invoked these gestures and you are switched back to the AutoComplete mode.

The 'Help input' mode enables you to discover the action associated with the keys. Simply invoke the various gestures; their action is announced.

To switch back to the AutoComplete mode invoke:
Escape {swipe left > right}
or
Back {swipe right > up}

#### 6. Further notes

1. For obvious reasons, a word is considered to be of at least two letters. Therefore entering a single letter followed by AutoComplete results in a suggested list of words with two letters.

2. AutoComplete tends to be more efficient with long words as potentially more typing can be saved.

3. Do not get confused between the SpellCheck Personal dictionary and the AutoComplete Personal dictionary.

The SpellCheck Personal dictionary contains new words that you have decided to add to it; adding a word to the personal dictionary is an operation that you need to perform manually.

The AutoComplete Personal dictionary contains the last 500 words that you typed recently and are spelled correctly. This is an automatic operation which you have no control over.

4. Recently used words, if spelled correctly, are saved to the AutoComplete Personal dictionary only if the user switches back from the 'Alphanumeric input' mode to the 'Default input' mode.

5. AutoComplete is always applied regardless of whether the user starts to type in lower or upper case. Each AutoComplete word suggested is always based on the words in the dictionary and if different versions (mixes of upper and lower case) exist in the dictionary, only one version is offered; one of the mixed case versions. If no mixed case version is found, a lower case version of the word is offered.


[ Next - Typing using Braille grade 2 ]

[ Previous - Using SpellCheck ]

[ Up - Learning to type with Alphanumeric input using a TouchScreen or TouchPad - Section ]

[ Up 2 - Alphanumeric input - Section ]

[ Up 3 - Tutorial - Section ]

[ Up 4 - SpeakOn MediaSuite Manual and Tutorial - Main Index ]