(c) 2003 Michael Kuehn, U Koblenz-Landau

================================================================
UKO-II README
================================================================

UKO-II is a XEmacs package that provides a highly ambiguous
keyboard with only four buttons for text entry. This software is
tested under XEmacs 21.4.5. The installation assumes a running
XEmacs which is available from http://www.xemacs.org/ .

 
================================================================
INSTALLATION
================================================================

1. Since you are reading this, I guess you unzipped and untared
the package in a directory, e.g. "C:\Program Files\UKO-II\".

2. Start XEmacs and choose "Edit Init File" from the "Options"
menu entry.

3. Insert the line 

	(setq uko-emacs-directory "C:\\Program Files\\UKO-II\\")

into the empty file. Notice the double "\\".

4. Define the four physical keys to be used by e.g.

	(setq uko-physical-switch-0 [(kp-0)])
	(setq uko-physical-switch-1 [(kp-1)])
	(setq uko-physical-switch-2 [(kp-2)])
	(setq uko-physical-switch-3 [(kp-3)])

for using keypad 1 to 3 for the letter keys and keypad 0 for the
command key. (See the XEmacs Info under the "Help" menu for
"Representing Keystrokes").

5. Add the line

	(load (concat uko-emacs-directory "uko-ii.el"))

to this file.

6. Save this file with "Save init.el" under the "File" menu
entry. It should be saved now under "C:\.xemacs\init.el".


================================================================
USAGE
================================================================

Now start XEmacs again. It should load the UKO-II interface now
automatically. You start the UKO-II system by typing

	M-x uko-init <RET>

Please consult the XEmacs tutorial under the Help menu to learn
how to invoke M-x commands.

The screen shows a large text editing window and
four button windows on the bottom. The first three buttons are
the letter keys containing several letters, the right-most
button 0 is the command button.

For writing a word, you type the corresponding letter key once
for each letter. In the editing window, the number of the
pressed letter key is shown. After finishing the word and
pressing key [0] followed by key [3], a word suggestion is
depicted that can be selected then by key [2]. Key [1] and [3]
show other suggestions or even a whole list of words which match
the entered ambiguous key sequence. By pressing key [0] again,
the disambiguation process is cancelled and typing can be
continued. 

An overview over all key actions (nnn stands for an ambiguous
code):

nnn [0] [1]	Delete last character(s). Confirm deletion with
		[2]. Undo deletion with [3]. Cancel with [0].
		
nnn [0] [2]	Spell a word by disambiguation each letter key
		manually. [1] and [3] switch the letter under
		the cursor, [2] proceeds to the next letter.

nnn [0] [3]	Expand the ambiguous code. [1] and [3] provide
		other suggestion. [2] selects the current block
		or suggestion. [0] cancels expanding.

(nnn) [0] [0]	Do nothing.

[0] [1]		Delete last word(s). Confirm deletion with
		[2]. Undo deletion with [3]. Cancel with [0].

[0] [2]		Call a macro command. Discussed later.

[0] [3]		Move the cursor between words. [1] and [3] move
		cursor one word backward/forward. [2] finishes
		movement. [0] cancels movement.

================================================================
MACROS
================================================================

The macro facility is thought to provide a large set of further
commands (as well as punctuation, numbers etc.) which are typed
in by name. It is not yet very functional now and will change
considerably in the future. Please ignore this function right
now. 


================================================================
CUSTOMIZATION
================================================================

Following Lisp variables (following default values) can be
customized in your .xemacs/init.el:

uko-proposal-block-size	5
uko-proposal-preview-num 3
uko-capsword-flag t
uko-keyboard-layout

uko-physical-switch-0 [(kp-0)]
uko-physical-switch-1 [(kp-1)]
uko-physical-switch-2 [(kp-2)]
uko-physical-switch-3 [(kp-3)]

uko-invert-button-time 0.1

uko-proposal-window-width 20
uko-proposal-keep-window t
