![]() |
[Announce] QwikScript port for Maemo
1 Attachment(s)
Hello everyone,
I've managed to mix up the QwikScript input method for Qtopia with the Hildon input method plugin example. The result is an input method plug-in implementing QwikScript on the Maemo OS 2008 platform. The code is available in the garage (project name: qwikscript). It's currently in beta form: it works, I haven't have it crash on me yet, but it's still not 100% perfect or feature complete. I've only made a .deb available for now; you'll need to sudo gainroot to install it. EDIT: you'll also need to restart your tablet, at least until I figure out how the input method process can be restarted. Note that the code is still somewhat rough; I'm releasing it in the hope that others will find it as useful as I do right now. Namely, the input area graphics are not to my liking, and the virtual keyboard's shift/modea/modeb keys are ignored. Let me know what you think, but please be gentle, it's my first Maemo application. :) What is QwikScript? The QwikScript input method was originally written by David Placek and is inspired from Ken Perlin's "QuikWriting" input method. It's a bit hard to explain without some sort of screenshot. Look for it in the attachments to the post. The two square areas with a center circle are the alphabetical and numeric input areas, respectively. There are two sets of characters per area: outer and inner. The inner letters are accessed by inputting the "square" character as a prefix. To enter characters:
Here's an explanation of the different symbols in the input areas, besides the obvious ones:
|
Re: [Announce] QwikScript port for Maemo
Thanks so much; I think this is the first 3rd-party input method, so you're definitely a trail-blazer here; I think I'd rather have a graffiti-ish system (less learning), but I'm certainly going to give this a shot.
I'm going to try it in portrait mode, as I'm reasonably happy with the stylus-board and/or finger-board for landscape. HWR is the only input method that retains its utility well in portrait mode ATM, but because it's so bad to start with, it's about tied with the (severely degraded) stylus-board. So you'll get feedback within about a day or two on that; though it's not horribly representative of mainstream usage, I have high hopes for this. Edit: Installed fine; not showing up in list yet. (Probably needs a restart...) |
Re: [Announce] QwikScript port for Maemo
Quote:
As for Graffiti, I beleive the original one is patent-encumbered. Graffiti 2 (Jot) may be OK, but I'd hate to try to code it from scratch... if anybody knows of some open-source code I could use, I'm willing to give it a shot at some point. Still, by all means, try it out in landscape to see if you can get the hang of it. The port to portrait mode should be easy enough, it's just hard for me to test it. Anybody know how to do this on scratchbox? (I'm not really willing to reflash to test this) Edit: yes, you need a restart, or at the very least, restart of the hildon-input-method process (I haven't found documentation on how to do a "warm start" yet). When installed, it shows up as "QwikScript" in the input menu. |
Re: [Announce] QwikScript port for Maemo
I didn't download or even try it before getting dizzy with excitement over this (though I have been running a fever, maybe that's it). :D
An alternative input method!!! Hooray! Any chance of OPTI II or ATOMIK or something like that? Thanks sooo much for blazing that trail. |
Re: [Announce] QwikScript port for Maemo
As far as an OSS "Graffiti", I have come across it in the NDS homebrew world. Not sure how useful it will be, but binaries and source are here:
http://gugusse.central.free.fr/papaf...Frotz_v1.5.zip I'm sure you can make a few small changes to the alphabet if it keeps you out of trouble ;) EDIT: Here's the main page, scroll way to the bottom to see the input method. Thanks again. http://gugusse.central.free.fr/papafuji/adventures.html |
Re: [Announce] QwikScript port for Maemo
Rebooted; it works, sorta. One of the two pads is ~75% on-screen with the navigator on the left (or right); with the navigator on the top (or bottom), or in full-screen, 1 pad is on, and the other is about 35% on.
So it's usable, if you have a sane configuration and don't mind using one pad. I'd rather use both; but the functionality's there. Unfortunately, I think it's too wide to ever fit both pads on with the navigator on the side. I'll post a couple screenies momentarily to demonstrate what I'm talking about. (Dug up an old post of mine; perhaps I'm one of few who really wanted this...) The most promising one looks like xscribble, that's graffiti-like stuff. It's also got a website last updated in 2003, and a version number >1 (1.3), so mixed news. Also matchbox-stroke, xstroke (GPL), but the place it's supposed to live is down, the other xstroke (non-commercial license), and perhaps some others. The Agenda VR3 had graffiti-like stuff, but I'm not sure how easy it is to extract it, or even where the source is to be found. (I used to lust after these, way back in the day...) Here's some info, though. http://agendawiki.com/cgi-bin/aw.pl?HWRProjectPage http://agendawiki.com/cgi-bin/aw.pl?RecdInvestigation http://agendawiki.com/cgi-bin/aw.pl?Andys/UsingAgenda |
Re: [Announce] QwikScript port for Maemo
2 Attachment(s)
. . .
|
Re: [Announce] QwikScript port for Maemo
I've only used it a bit, but it seems to be rather finicky about down-right and down-left (switch pads and return) -- it seems as though if I drag too far down before hooking over, it doesn't take it, but if I make a near-circular loop through the correct intersections, that works... Could it be losing track at the bottom edge of the screen? (Or could my screen not be reporting things well at the extreme edge, perhaps...)
|
Re: [Announce] QwikScript port for Maemo
OK, I've released a version that should work better in portrait mode.
Grab it here: https://garage.maemo.org/frs/?group_...elease_id=1792 As far as the "finicky" part in the bottom: I don't know, I haven't really noticed this (I have more problems with the top-center part myself--I suspect once I add the color pixel detection back from the old code, it will work better). But you don't need to go all the way to the edge of the input area to input characters, even those on the outer edge. I don't go much further than 50% of the way between the circle and the edge myself. And thanks for the feedback! |
Re: [Announce] QwikScript port for Maemo
I know I don't need to, but I've a tendency to ride the bezel when I'm at the edge of the screen.
What color pixel detection? :confused: Anyway, I'll install that tonight, but don't expect any feedback till tomorrow, probably evening. Thanks again! Edit: one thought: How hard would it be to show trails, or at least a dot for a cursor, so you can see where you're going if your calibration's not spot-on? That's probably a lot to add... |
Re: [Announce] QwikScript port for Maemo
Re: the color pixel detection: notice those gray "splotches" (I can't think of a better word for them :) between the quadrants in the squares? Those are intended to improve accuracy by not registering movement into them. This means doing a getpixel under the pen location, which means, programming-wise, that I'll have to convert the server-side pixmap to a client-side one. But I didn't know GTK+ at all until last week, so I'll have to do a bit of research. :)
As far as riding the bezel goes, I can't reproduce it myself (but then again, I'm running in landscape mode, so I have only one bezel that's really an issue). I suspect some sort of rounding error, and I have some ideas on how I could fix it, but I'd need you to beta test packages I'd send over to you, because I don't want to cut releases with changes I'm not that sure about... |
Re: [Announce] QwikScript port for Maemo
bge, this looks, at a minimum, fun.
"I've only made a .deb available for now; you'll need to sudo gainroot to install it." I know how to sudo gainroot, but what do I do then to install qwikscript? (I clicked Open and the deb appeared to install normally; and it shows in Installed Apps, but not in Extras or anywhere like that.) So how do I complete installing it? And once installed, how start it? And how decide in a hildonized app which input method will pop up? Thanks! |
Re: [Announce] QwikScript port for Maemo
GeraldKo, actually, you won't need to become root after all. I fixed the package so it installs properly using the app manager.
To complete the installation, restart the tablet. To activate, bring up the on-screen keyboard normally and click on the button in the lower right corner. In the popup, click 'input method' then select 'QwikScript'. Hope this helps. Let me know... |
Re: [Announce] QwikScript port for Maemo
It shows up as an "Input method" but it's faded out and can't be selected.
|
Re: [Announce] QwikScript port for Maemo
Quote:
It appears they are parabolas; it seems it would be simpler to do the math to figure out which side you're on; plus that makes it less pixel-size dependent. Quote:
As far as the portrait version; it works great in full-width; however, with the navigator on the side, it's almost as non-usable as before. Now both pads are ~80% visible... How about a test for the width; if it's too narrow to fit both fully, align it so the alpha pad is fully visible, and the other truncated. If there's enough width, center it like now. I'm starting to get the hang of it, but the letter I want is always hiding on the wrong side of my fingers and stylus. :/ |
Re: [Announce] QwikScript port for Maemo
Quote:
Try the following, after running sudo gainroot, and restarting the tablet in between tries:
Thanks in advance! |
Re: [Announce] QwikScript port for Maemo
I've the same problem as GeraldKo.
Quote:
Code:
...Code:
ls -lrt /usr/lib/hildon-input-method/ |
Re: [Announce] QwikScript port for Maemo
Happy to install as root, just need instruction. Benson, how did you do it?
And do you guys find QwikScript faster than the virtual keyboard? |
Re: [Announce] QwikScript port for Maemo
All,
I think I figured out why the menu item is dimmed. It's related to input language settings. I now recall what I did to fix it in scratchbox--I changed the language returned by the im plugin and then promptly forgot I'd done it :) I'll read a bit more on what languages I'm supposed to support. But overall, the problem is that I only support en_US for now, and you're probably using en_GB or something else. Until I fix this problem, you can enable the plug-in by setting your input language. Do that in the control panel, Text input settings, Languages tab, and set one of the two languages to English (USA). Then, go to the virtual keyboard, click on the input menu (bottom left icon) and change the Language (Language cascading menu) to English (USA). The QwikScript options should un-dim (is that a word?). Sorry I misled everybody about the root install and made everyone reboot their tablet; there's little documentation on the input method framework, and I've been working on this for the past couple of weeks an hour at the time, so I tend to forget some details :-) As far as speed of QwikScript is concerned: no, I'm not faster with it yet than with the virtual keyboard. I ported it even though I didn't know whether it was any good, mostly because I wanted a pen-based input that worked better than the HWR; unfortunately, the only way to know whether it worked well was to port it and try it out. I'm getting faster with it every day as I internalize the strokes needed; it probably will remain slower than the thumb keyboard, but faster than the HWR, Graffiti or the hunt-keys-one-at-a-time pen keyboard. YYMV, etc. Still, according to the researcher's paper (http://mrl.nyu.edu/~perlin/experimen...uikwriting.pdf), it's supposed to be roughly 3x faster than Graffiti after some training. |
Re: [Announce] QwikScript port for Maemo
Thanks, I have it working now. It's like a kid's game. I plan a word and see how fast I can do it. It's hard to tell if it can be faster than hunt-and-peck on the virtual qwerty, but I'm used to the qwerty. I find the little letters hard to see on the QwikScript "keyboard" too. I kind of like it though. Thanks for the port, and for the info on it! I'll give the pdf a read.
. Quote:
|
Re: [Announce] QwikScript port for Maemo
Is there an fr_CA locale? I'd have never guessed...
|
Re: [Announce] QwikScript port for Maemo
Quote:
And the Québécois pride, I suppose, is in the same state as my support for accents in QuikScript; that is, not implemented yet :D (Actually, my second locale is fr_CA, so there :) |
Re: [Announce] QwikScript port for Maemo
Well, "release early, release often" they always say... Then again, it's my fault if it's so buggy :)
I've another release (0.9.2) in the garage; you all know how to get it by now :D It should fix the bad truncation in portrait mode (it's still truncated, just better truncated--I hope, I still can't test this!). It's also a partial fix to the disabled menu: now, I return ALL English locales as supported instead of just en_US. I don't want to return others because I don't really support them, since there's no I18N keyboard in there yet... Finally, I've activated the "Shift" and "Alt" keys; they're pretty useful as indicators of the current shift mode. Enjoy this release! |
Re: [Announce] QwikScript port for Maemo
Working, now properly usable on portrait. Oddly, it's not quite centered when it is full-width; but it's close (I don't care if it's dead center...) and it now fully displays the left pad when the navigator is on the side.
Great! And of course, the two buttons (Shift, Alt) work well now; I had intended to suggest that one or both be used as indicators. Along those lines: What about the pad-swapping? If Alt and Shift were consolidated, or perhaps alt moved to the &!e' key, you could also have an indicator/control for that. Maybe even have it latchable... a double-click on the swap button "permanently" switches the pads, instead of next char only? Just thoughts here; I don't really see a major usability shortcoming here, the way it is. Well, maybe using Gnumeric; you wind up wanting the numbers there. But, there's always full-screen and/or moving the panel to the top where it belongs. |
Re: [Announce] QwikScript port for Maemo
Super-cool; I'll play with it.:DFrom my preliminary test it's hard to believe this will be as fast as the virtual keyboard, though.:confused:
|
Re: [Announce] QwikScript port for Maemo
I like it very much. Although I'm still typing pretty slow with it I think it will be a lot better then hunt-and-peck with the stylus after some more training. It's more fun anyway.
Edit: PS. can anybody show me how to get an exclamation mark (!) ? Edit: Never mind, I found it, it is below the T and must be preceded by Alt. |
Re: [Announce] QwikScript port for Maemo
Quote:
Actually, I've consolidated Shift and Alt to Sh/Alt (ok, so it's not a great name) in the ModeA key, and pad swap is in the ModeB key (replacing the old shift location). Edit: I wanted to use the &!e' key, but it doesn't look like it gets a callback when clicked??? This is a bit strange... I'm curious how the built-in virtual keyboard uses this key in the first place... The ModeA key goes from (nothing) -> Shift -> Shift Lock -> Alt -> Alt Lock -> (nothing). The ModeB key goes from (nothing) -> Swap -> Swap Lock -> (nothing). I've also added a bit of code to display the last composed key in the middle of the appropriate input area. This is incredibly useful for password fields. Also implemented pixel color detection (as discussed before), etc. Oh, and bousch, thanks, looks like I had goofed with my little image editing job; the exclamation mark is now shown. Hadn't noticed it at all, really... This was a fun little project; there's still a bit of polish to add, but once that's done, I'll try to hunt down some graffiti implementation or port xstroke (hopefully the latter isn't too slow...) |
Re: [Announce] QwikScript port for Maemo
I have found QuikScript fun to do, but I don't think it will ever be as fast as typing on the onscreen keyboard. I chose a long sentence to keep re-writing and, after practicing it for a while in QuikScript, I timed how long it took me to type it using the onscreen qwerty and QuikScript. Since I'm so much more familiar with qwerty, I compensated by letting myself substitute wrong letters for any letters in QuikScript for which I couldn't quickly remember their position. Still, qwerty came in at just about one minute and QuikScript came in never better than 1:40.
|
Re: [Announce] QwikScript port for Maemo
[Off-topic]
Quote:
Here's my first shot at tempting someone. In that thread, if you're interested, it might be worth looking at Benson's post #3, where he talks about HWR-generated character strings and some other ideas. Then I made another pitch here. In that thread, it would be worth looking at my posts #7 and #9, where I list various macro-typing apps implemented in Linux. Possibly more helpful are Benson's posts where he outlines a way (that I can't follow) to make the type of program I'm talking about, especially #11, 15, and 16. To my mind it would be great to have a form-filler since it's not that easy to type on the Tablets. If you read the first post of either thread, though, you'll get enough of that viewpoint! Auto-typing in Xterm was not the main point, and as geneven points out in the second thread, maybe I mis-marketed the app request. So, Benoit, how's this all look to you? Interesting? |
Re: [Announce] QwikScript port for Maemo
Oh my gosh, I've just spent an hour or so on Qwikscript and I'm exhausted. But it's fun. And I think it might work.
One idea is to make the "wheels" into "training wheels". Some people might have trouble reading the letters at the standard size. For training, a special setup could be constructed in which they are twice as big and the text displayed when you type is only a few lines. That might make things clearer for some people. Then, after one mastered the shapes of the letters, one would get rid of the training wheels and understand the system better. Just an idea. This is really challenging, but also promising. I think that in another hour or two I will be ready to go permanently Quikscript, or at least I will be able to decide whether it is really as quick as the virtual keyboard for me. I can touch type on a real keyboard at 70 wpm, so I might not be a fair test because I know the standard keyboard pretty well. Everybody study their Qwikscript; I'm sure we'll be in speed contests on tv any year now. Maybe it will be an Olympic sport! |
Re: [Announce] QwikScript port for Maemo
I am more enthusiastic about QwikScript the more I use it. This message is written entirely with QwikScript. One thing I notice is that the double letter mistakes that I find way common using a virtual keyboard on my N800 have entirely vanished. ( I tested typing over 70 wpm according to Mavis Beacon herself, but of course that wasn't on my tablet or with QwikScript.)
I think that this will become quite comfortable, after a LOT more practice. I'm going to start using it as my exclusive way of producing text on my N800. Goodby virtual keyboard! |
Re: [Announce] QwikScript port for Maemo
Kudos for this little gem.
What I am most excieted about is that qwikscript is also available for the Zaurus and for the Palm (albeit pre-OS5 versions only). Neither version supports accented characters. If we want to keep the layouts compatible, we have to be careful with such enhancements. I believe the palm version is already a bit different. BTW my other preferred pen input method is the atomik keyboard, which does not seem to be available for maemo (it is great on the palm TX though) Anyways, thanks a lot. |
Re: [Announce] QwikScript port for Maemo
Hi. I did the port initially for Qtopia / Zaurus. I'm glad to see that somebody else found it useful. I saw a few questions about how it compares to other input methods, regarding speed and such. What I found was that you may be able to input text faster with an on-screen keyboard, but the real advantage to the QS idea is that once you become familiar with the strokes, you can "touch-write" without having to look at the input area. With an on-screen keyboard, you're always looking at the screen to make sure you're hitting the right key. One thing that hindered speed with QwikScript was trying to get the accuracy down. I think if you took a cue from some of the more modern input methods and combined QS with a dictionary to auto-correct for accuracy, you would have a very useable and fast "eyes-free" input method. I love the newer input methods like Swype on the android that intelligenly assist you, but I haven't found anything comparable to QwikScript that will let you write while your eyes are focused somewhere else. So I hope the idea lives on. These days everything is based on finger-touch, and styluses have mostly gone out of style, but I would still like to have something better that could be used without looking.
|
| All times are GMT. The time now is 07:43. |
vBulletin® Version 3.8.8