Keyboard Debate

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(Your short-term options)
(qwo Quikwriting for Openmoko keyboard)
Line 33: Line 33:
 
It is hard to call this a key-board, it looks more like a pair of [http://en.wikipedia.org/wiki/Ouija Ouija board] than a matrix of buttons. But as far as an touchscreen input method for letters, this one allows the stylus to remain on the screen and move continuously. Needs a few hours of practice before writing words fluently.
 
It is hard to call this a key-board, it looks more like a pair of [http://en.wikipedia.org/wiki/Ouija Ouija board] than a matrix of buttons. But as far as an touchscreen input method for letters, this one allows the stylus to remain on the screen and move continuously. Needs a few hours of practice before writing words fluently.
  
* http://qwo.projects.openmoko.org/
+
* http://www.nongnu.org/qwo/
  
 
=== Vkbd system ===
 
=== Vkbd system ===

Revision as of 09:56, 23 February 2009

Contents

Summary of the problem

Om 2008.8 uses Qtopia for its phone stack. Qtopia has a build-in keyboard primarily designed to compose SMS in English. This keyboard is very impractical to use with a terminal or enter an URL.

More details..., list of all keyboard bugs in the defect tracking system.

List of available keyboards

Qtopia keyboard

The Qtopia keyboard build-in Om 2008.8. See also the documentation at Trolltech

ASU Keyboard
ASU Keyboard with hello
ASU Keyboard with numeric keys

Matchbox keyboard

The matchbox keyboard. See also homepage of Matchbox keyboard and Matchbox stroke.
Screenshot of the keyboard applet on 2007.2

Illume keyboard

The illume virtual keyboard a.k.a. Raster's keyboard.

Illume-Keyboard-Screenshot.png

Probably looking like this or like that.

See also Illume#Virtual_Keyboard (which would need to be completed ;)

qwo Quikwriting for Openmoko keyboard

It is hard to call this a key-board, it looks more like a pair of Ouija board than a matrix of buttons. But as far as an touchscreen input method for letters, this one allows the stylus to remain on the screen and move continuously. Needs a few hours of practice before writing words fluently.

Vkbd system

The vkbd system.

List of keyboard-related Howtos

How to use the Qtopia keyboard shipped with Om 2008.8 ?

Summary:

  • Slide finger left = backspace.
  • Slide finger right = space.
  • Slide finger up/down = changes between lowercase/uppercase/numbers/special characters.
  • The 'Enter' key is bottom right on the special characters page
  • Hovering over a letter for more than 2 seconds activates zoom mode, allowing you to type specific letters without prediction.

Detailed version: see How to use the Qtopia keyboard.

How to have a toggle button to make the keyboard appear/disappear ?

Short answer: In 2008.8, opkg install illume-config. In testing, edit '/etc/enlightenment/default_profile' to use illume theme instead of 'asu'. Long answer: here.

How to install the matchbox keyboard ?

Short answer: opkg install matchbox-keyboard-applet matchbox-keyboard-inputmethod Long answer: here.

How to install the illume (Raster's) keyboard ?

Short answer: opkg install illume-config-illume

Detailed answer:

opkg install illume-config # Get the qwerty button if not there yet

echo export QTOPIA_NO_VIRTUAL_KEYBOARD=1 >> /etc/X11/Xsession.d/89qtopia # Turn off built-in qtopia keyboard

opkg install illume-config-illume

rm -rf ~/.e/e/config/illume # Purge E's cache

/etc/init.d/xserver-nodm restart # Restart X


Then switch keyboard from "None" to "Default" in Illume's preferences.

How to turn off the Qtopia keyboard ?

Short answer: Add the line export QTOPIA_NO_VIRTUAL_KEYBOARD=1 into the file /etc/X11/Xsession.d/89qtopia.

Warning: Even when you install another keyboard, if you do not turn off the Qtopia keyboard it will come back on the top to bite you trollishly. References: Comment on ticket 1864, and untested proposed patch to qpe. If you use base-image (testing) don't forget to set E_PROFILE="-profile illume" in /etc/enlightenment/default_profile see [1]

How to change the keyboards layout ?

TBD

matchbox

See instructions on the Change matchbox keyboard layout page.

illume

Go to the official page (Illume) all of the following are available there.

Install illume-keyboards-terminal package :) they are all recommended ones for illume.

How to change the dictionary used by the predictive keyboards ?

Qtopia keyboard

You can compile your own wordlist or use precompiled wordlists.

From the Openwall project

This method retrieves wordlists with lower case words only, not including proper names. This is not sufficient for languages with capitalized nouns, such as german. Precompiled openwall words.dawg can be found at: http://alasal.be/openmoko/keyboard . To compile the openwall wordlist on your Linux box:
wget http://www.3v1n0.net/openmoko/qtopia-italian-keyboard.tar.bz2
tar xvf qtopia-italian-keyboard.tar.bz2
wget ftp://ftp.mathematik.uni-marburg.de/pub/mirror/openwall/wordlists/languages/***YourLanguageHere***/lower.gz
gunzip lower.gz
./qdawggen -d lang_LANG lower
mv lang_LANG/lower.dawg words.dawg

Other sources

A better german wordlist, including proper names and nouns, can be downloaded from http://www.fragcom.de/server/fragcom_words . It is based on the Debian package "wngerman".

Installing the words.dawg file

First, move the English dictionary out of the way, on your Neo:
cd /opt/Qtopia/etc/dict/
cp -r en_EN lang_LANG

Second, back on your Linux box, send the dictionary (overwriting the existing words.dawg in the new directory):
scp words.dawg root@192.168.0.202:/opt/Qtopia/etc/dict/lang_LANG/words.dawg
Third, edit /opt/Qtopia/etc/default/Trolltech/locale.conf to change the language
[Language]
InputLanguages = lang_LANG
Language = lang_LANG
Fourth, restart X or reboot your Neo.

Illume keyboard

The Terminal layout has an empty dictionary. The words you type are entered automatically in the dictionary.

To add another language you have to do the following steps:

  • Get a dictionary file from your computer.

On Debian/Ubuntu systems, it is located in /usr/share/dict Here is a Portuguese dictionary for OpenMoko’s Illume keyboard.

To add a dictionary you can find them by typing : apt-cache search wordlist|grep ^w|sort and install it on your computer with : apt-get install wfrench (replace french with your language)

  • Copy the dictionary to your freerunner in /usr/lib/enlightenment/modules/illume/dicts/

for example do : scp /usr/share/dict/french root@192.168.0.202:/usr/lib/enlightenment/modules/illume/dicts/French.dic

  • Now you can choose your language in the upper left corner of the keyboard !

Other keyboards

Matchbox has no predictive mode (to be confirmed ?).

How to toggle the predictive mode on and off ?

TBD

How to make Qtopia keyboards and illume/raster keyboard coexist ?

TBD

Your short-term options

Even if things might look bad, you shouldn't assume that they are
  • Turn off the Qtopia keyboard and install the matchbox one instead.
  • Keep the Qtopia keyboard, let go (for a while) the desire to use the terminal locally, login remotely via ssh when you need.
  • Get an external keyboard, USB or Bluetooth, light and foldable if you want.
  • Switch to 2007.2 (but then similar issues arise : Switching Keyboards on Om 2007.2), FSO or Debian.
  • Patch Qtopia so that it plays nice with other keyboards, send upstream, meanwhile recompile and provide a package.

PS: Complaining that management does not listen to the users needs is not a productive option.

Perspectives for long-term resolution

On August 27th 2008, Marek from Openmoko inc. announced the intention to focus on the low-level layers. Future "base system" distribution may not include any phone stack at all.

Personal tools

Summary of the problem

Om 2008.8 uses Qtopia for its phone stack. Qtopia has a build-in keyboard primarily designed to compose SMS in English. This keyboard is very impractical to use with a terminal or enter an URL.

More details..., list of all keyboard bugs in the defect tracking system.

List of available keyboards

Qtopia keyboard

The Qtopia keyboard build-in Om 2008.8. See also the documentation at Trolltech

ASU Keyboard
ASU Keyboard with hello
ASU Keyboard with numeric keys

Matchbox keyboard

The matchbox keyboard. See also homepage of Matchbox keyboard and Matchbox stroke.
Screenshot of the keyboard applet on 2007.2

Illume keyboard

The illume virtual keyboard a.k.a. Raster's keyboard.

Illume-Keyboard-Screenshot.png

Probably looking like this or like that.

See also Illume#Virtual_Keyboard (which would need to be completed ;)

qwo Quikwriting for Openmoko keyboard

It is hard to call this a key-board, it looks more like a pair of Ouija board than a matrix of buttons. But as far as an touchscreen input method for letters, this one allows the stylus to remain on the screen and move continuously. Needs a few hours of practice before writing words fluently.

Vkbd system

The vkbd system.

List of keyboard-related Howtos

How to use the Qtopia keyboard shipped with Om 2008.8 ?

Summary:

  • Slide finger left = backspace.
  • Slide finger right = space.
  • Slide finger up/down = changes between lowercase/uppercase/numbers/special characters.
  • The 'Enter' key is bottom right on the special characters page
  • Hovering over a letter for more than 2 seconds activates zoom mode, allowing you to type specific letters without prediction.

Detailed version: see How to use the Qtopia keyboard.

How to have a toggle button to make the keyboard appear/disappear ?

Short answer: In 2008.8, opkg install illume-config. In testing, edit '/etc/enlightenment/default_profile' to use illume theme instead of 'asu'. Long answer: here.

How to install the matchbox keyboard ?

Short answer: opkg install matchbox-keyboard-applet matchbox-keyboard-inputmethod Long answer: here.

How to install the illume (Raster's) keyboard ?

Short answer: opkg install illume-config-illume

Detailed answer:

opkg install illume-config # Get the qwerty button if not there yet

echo export QTOPIA_NO_VIRTUAL_KEYBOARD=1 >> /etc/X11/Xsession.d/89qtopia # Turn off built-in qtopia keyboard

opkg install illume-config-illume

rm -rf ~/.e/e/config/illume # Purge E's cache

/etc/init.d/xserver-nodm restart # Restart X


Then switch keyboard from "None" to "Default" in Illume's preferences.

How to turn off the Qtopia keyboard ?

Short answer: Add the line export QTOPIA_NO_VIRTUAL_KEYBOARD=1 into the file /etc/X11/Xsession.d/89qtopia.

Warning: Even when you install another keyboard, if you do not turn off the Qtopia keyboard it will come back on the top to bite you trollishly. References: Comment on ticket 1864, and untested proposed patch to qpe. If you use base-image (testing) don't forget to set E_PROFILE="-profile illume" in /etc/enlightenment/default_profile see [1]

How to change the keyboards layout ?

TBD

matchbox

See instructions on the Change matchbox keyboard layout page.

illume

Go to the official page (Illume) all of the following are available there.

Install illume-keyboards-terminal package :) they are all recommended ones for illume.

How to change the dictionary used by the predictive keyboards ?

Qtopia keyboard

You can compile your own wordlist or use precompiled wordlists.

From the Openwall project

This method retrieves wordlists with lower case words only, not including proper names. This is not sufficient for languages with capitalized nouns, such as german. Precompiled openwall words.dawg can be found at: http://alasal.be/openmoko/keyboard . To compile the openwall wordlist on your Linux box:
wget http://www.3v1n0.net/openmoko/qtopia-italian-keyboard.tar.bz2
tar xvf qtopia-italian-keyboard.tar.bz2
wget ftp://ftp.mathematik.uni-marburg.de/pub/mirror/openwall/wordlists/languages/***YourLanguageHere***/lower.gz
gunzip lower.gz
./qdawggen -d lang_LANG lower
mv lang_LANG/lower.dawg words.dawg

Other sources

A better german wordlist, including proper names and nouns, can be downloaded from http://www.fragcom.de/server/fragcom_words . It is based on the Debian package "wngerman".

Installing the words.dawg file

First, move the English dictionary out of the way, on your Neo:
cd /opt/Qtopia/etc/dict/
cp -r en_EN lang_LANG

Second, back on your Linux box, send the dictionary (overwriting the existing words.dawg in the new directory):
scp words.dawg root@192.168.0.202:/opt/Qtopia/etc/dict/lang_LANG/words.dawg
Third, edit /opt/Qtopia/etc/default/Trolltech/locale.conf to change the language
[Language]
InputLanguages = lang_LANG
Language = lang_LANG
Fourth, restart X or reboot your Neo.

Illume keyboard

The Terminal layout has an empty dictionary. The words you type are entered automatically in the dictionary.

To add another language you have to do the following steps:

  • Get a dictionary file from your computer.

On Debian/Ubuntu systems, it is located in /usr/share/dict Here is a Portuguese dictionary for OpenMoko’s Illume keyboard.

To add a dictionary you can find them by typing : apt-cache search wordlist|grep ^w|sort and install it on your computer with : apt-get install wfrench (replace french with your language)

  • Copy the dictionary to your freerunner in /usr/lib/enlightenment/modules/illume/dicts/

for example do : scp /usr/share/dict/french root@192.168.0.202:/usr/lib/enlightenment/modules/illume/dicts/French.dic

  • Now you can choose your language in the upper left corner of the keyboard !

Other keyboards

Matchbox has no predictive mode (to be confirmed ?).

How to toggle the predictive mode on and off ?

TBD

How to make Qtopia keyboards and illume/raster keyboard coexist ?

TBD

Your short-term options

Even if things might look bad, you shouldn't assume that they are
  • Turn off the Qtopia keyboard and install the matchbox one instead.
  • Keep the Qtopia keyboard, let go (for a while) the desire to use the terminal locally, login remotely via ssh when you need.
  • Get an external keyboard, USB or Bluetooth, light and foldable if you want.
  • Switch to 2007.2 (but then similar issues arise : Switching Keyboards on Om 2007.2), FSO or Debian.
  • Patch Qtopia so that it plays nice with other keyboards, send upstream, meanwhile recompile and provide a package.

PS: Complaining that management does not listen to the users needs is not a productive option.

Perspectives for long-term resolution

On August 27th 2008, Marek from Openmoko inc. announced the intention to focus on the low-level layers. Future "base system" distribution may not include any phone stack at all.