marnanel: (Default)
[personal profile] marnanel
Funnily enough, someone was asking about virtual keyboards on gtk-list this morning.

Last week at the MeeGo Conference several people were talking about virtual keyboards, and the idea came up of doing predictive text, either by making more likely letters physically larger, or merely by increasing their sensitivity.

When I came home, I wrote a JavaScript mock-up based on a third-order Markov chain. It's quite fun to play with, especially on a touchscreen.

When I showed this to a few people at Collabora and elsewhere, Rob McQueen suggested avoiding reinventing the wheel by using the rather wonderful Dasher system as a back end. So, after a longish hacking session, here it is:



State of the keyboard after typing "FLO".

Click here to see a video of the keyboard in action


The front end shown here is just a custom GTK widget I threw together; in real life it would use an existing input method. I've exaggerated the differences between letter sizes for demonstration. (As I mentioned above, the physical letter sizes might not change at all.)

There is a wiki page about all this. Let me know if you'd be interested in helping work on this; I'll be releasing the code shortly, and adding a link on the wiki to it. (Odd thought: I wonder how useful another demonstration piece of JavaScript would be, pulling data from Dasher running as a CGI. Let me know.)

There is also an existing roughly similar system for Android, and, I hear, for the iPhone.

Update: An AJAX version you can play with.
From:
Anonymous
OpenID
Identity URL: 
User
Account name:
Password:
If you don't have an account you can create one now.
Subject:
HTML doesn't work in the subject.

Message:

 
Notice: This account is set to log the IP addresses of everyone who comments.
Links will be displayed as unclickable URLs to help prevent spam.

Profile

marnanel: (Default)
Monument

May 2013

S M T W T F S
   1234
56789 1011
121314151617 18
19202122232425
262728293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 20th, 2013 05:44 pm
Powered by Dreamwidth Studios