Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 2f7c2d2ee0c56380c85415cc932a828d > files > 6

eazykeyboard-2.0-3.fc14.x86_64.rpm


About Eazykeyboard
==================

Eazykeyboard provides a simple onscreen keyboard that can be used to type 
with keyboard or mouse into application windows. It is useful for physically 
impaired people and who are unfamiliar with certain keyboard layout. It sends 
key events to the application where the input foucs was last set. User can 
either click on buttons of this virtual keyboad or directly press physical 
keys(with input focus on eazykeyboard). The eazykeyboad forwards appropriate 
key events to the application input window.

Eazykeyboard is based on gtk-2.x and we expect that you have correctly set
the locale and font so that you are able to see proper rendering of characters
of your language.


Features
========

  * Supports multiple languages (All languages supported by gtk-2.0).
  * Supports one to many mapping (One key can send many characters, maximum 3).
  * It has facility to change language on the fly.
  * Initialy reads current keyboard map loaded into the memory.
  * It is transperant to xmodmap and Xkb input mechanism.
  * It may work independent of current keyboard map loaded into the memory.

 
Installation
============

The source and binary rpm are available for download at 
http://hollywood.ncst.ernet.in/indix

Binary rpm 	: eazykeyboard-X.XX-X.i386.rpm
Source rpm 	: eazykeyboard-X.XX-X.src.rpm
Souce tarball	: eazykeyboard-X.XX.tar.gz

Note that X.XX indicates version number of the package.

In order to install you must first login as root. 

To install binary RPM : 
# rpm -Uvh eazykeyboard-X.XX-X.i386.rpm

To install source RPM :
# rpm -i --rebuild eazykeyboard-X.XX-X.src.rpm

To install source tarball :

You should first read INSTALL file if you installing from source tarball.
Even after reading INSTALL file if you don'[t get what it means then below
are the simple steps.

# tar -zxvf eazykeyboard-X.XX.tar.gz
# cd eazykeyboard-X.XX
# ./configure
# make
# make install

On installation it copies the keyboard map files into
/usr//share/eazykeyboard/maps directory and eazykeyboard executable in
/usr/bin/ directory. However you can change these default directories by
specifying some arguments at the time of running configure script. See 
./configure --help for more detail.

When the application is run for the first time it creates .eazykeyboard 
directory into the home directory of user and copies all related language
files there. User can then make any changes to these keyboard map files as
long as it conforms the format of the keyboard layout file.

To run eazykeyboard, /use/local/bin must be in path (or copy it elsewhere).
Type eazykeyboard on command prompt.


Keyboard layout
===============

  * The keyboard layout is based on US standard keyboard.

  * Only alphabetic/numeric/punctuation keys mapping can be changed by user.

  * Other keys mapping is non mutable and hence in language files only
    those keys are offered whose mapping can be modified. Other keys F1 - F12,
    Shift, Alt, Ctrl, Space, Backspace, Enter, Esc mapping can't be changed.

  * For simplicity for each key their is a identifier KEY_A, KEY_Z, KEY_0,
    KEY_1, KEY_9, KEY_SPACE etc. which is acutlly lower case identifier of a
    key in US keyboard.


Language files
==============

Eazykeyboard supports multiple languages. These are stored in different 
language file in $HOME/.eazykeyboard directory. 

Top level file is Language.txt

It has entries about the supported languages and corrosponding language files.
Its structure is 

	<integer> (No of languages)
	<string> (Lang Name)	<string> (corrosponding lang file name)
	. . .
	. . . (n times)

To add a new language

	(1) Increment the languages count.
	(2) Write language name (one word) and lagnuage file name (one word)
            into the Language.txt file.
	(3) The corrosponding language file should be there in
            $HOME/.eazykeyboard directory.

The specific language file has following structure.

        47 (No of modifible keys provided on virtual keyboard)
        (Key Identifier)        (No shift string)        (shift string)
        KEY_A                          abc                     A
          .                             .                      .
          .                             .                      .
          .                             .                      .
        KEY_Z                           z                      Z
        KEY_0                           0                      )
        KEY_1                           1                      !
          .                             .                      .
          .                             .                      .
          .                             .                      .
        KEY_9                           9                      (
        KEY_TILDE                       `                      ~
          .                             .                      .
          .                             .                      .
          .                             .                      .
        KEY_SLASH                       /                      ?

When a new specific language file is to be created it must bear the same
structure as shown above. You can copy one of the file and just change
No shift and shift string part with the required string that you want to be
there on eazykeyboard.

The maximum character that can be assigned to a key is presently limited to 3.

English, Hindi, Tamil are the specific file given with the keyboard.
	
The user type language you can edit the key mappings on the fly and can sent 
those new mappings in keyevent. These mappings can also be saved.

	
System Mapping
==============

Initially eazykeyboard loads system keyboard mapping. It is sensitive to 
memory map change and keyboard group change. If you change the keyboard
memory map it would immediately take effect. Also if your keyboard memory
maps more than one keysym groups and you change	the group it immediately
takes effect. (Here we assume that there are two levels per group)


User Mapping
============

User mappings are stored in userLang.txt file in $HOME/.eazykey directory.
User can manipulate these mappings on the fly by using entry window portion
which is opened when we switch to user type from langage menu. 

Events are not redirected to other application if entry window is active. 
To hide entry window from view menu just uncheck the button, now events will
be redirected to redirect window.


Redirect Window
===============

The redirect window is one where events are redirectd by the eazykeyboard. It
is the window where last focus was set. On loading eazykeyboard user must
switch the focus at least once to and from the other application (redirect 
window) where the key events are to be redirected. The redirect window name and
id is shown is status bar.

Status bar can be shown/hidden from Options menu check button.


Usage
=====

Just load the application swith the focus to redirect window and then again
to eazykeyboard. Now all events (from physical keys or mouse press on buttons)
will be redirectd to application window.