Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Maemo: Developers

Decoding virtual keyboard layout definition files (.vkb)

 

 

Maemo developers RSS feed   Index | Next | Previous | View Threaded


kimju-maemo-2007 at inside

Aug 21, 2007, 8:23 AM

Post #1 of 4 (1106 views)
Permalink
Decoding virtual keyboard layout definition files (.vkb)

I wanted to make a couple of small changes to the Finnish virtual
keyboard layout (for example, replace å and Å with / and |), but
couldn't find enough documentation about the virtual keyboard to
do that.

There are only few incomplete documents available about .vkb format,
gen_vkb utility and it's XML input format, and I couldn't find even
a single working example of the XML inputfile for gen_vkb. Let alone
the sources for the current layout files available in the device.

So, I spend couple of hours reverse engineering the .vkb files and
created a decode_vkb perl-script that decodes the binary .vkb files
to XML files that can be edited and then converted back to binary
with gen_vkb.

The script can currently decode all but one of the .vkbs in n800 to
XML files that gen_vkb encodes back to original ones. It's available
from my website along with some documentation:

http://idoru.metadreams.net/~kimju/src/maemo/decode_vkb/

Of the missing features, I really would like to add support for
modifier keys (mostly ctrl), but as the documentation is incomplete
and no official .vkb uses this feature I'm not sure how it is
even supposed to work. Any help would be appreciated and good and
complete documentation for both the XML and binary vkb formats even
more so.

-kimju
_______________________________________________
maemo-developers mailing list
maemo-developers[at]maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


quim.gil at nokia

Aug 22, 2007, 9:32 PM

Post #2 of 4 (1048 views)
Permalink
Re: Decoding virtual keyboard layout definition files (.vkb) [In reply to]

Thanks for your time going 'beyond'.

So we have got
http://maemo.org/development/documentation/how-tos/3-x/howto_him_bora.html

Any feedback on how to improve this document is appreciated, more if it
comes in the form of bug reports / RFE at bugs.maemo.org (product
'website', component 'documentation').

btw, in the wiki someone created
http://maemo.org/community/wiki/howtoinputmethod770/ and even
http://maemo.org/community/wiki/howto_setupkeyboard/
that seem to need some fresh look and love.

Any hint about the usefulness of these documents today is also well
receive (by me) since I'm going through
http://maemo.org/community/wiki/wikireorg/ these days (if you want to
help...)



On Tue, 2007-08-21 at 18:23 +0300, ext Kimmo Jukarainen wrote:
> There are only few incomplete documents available about .vkb format,
> gen_vkb utility and it's XML input format, and I couldn't find even
> a single working example of the XML inputfile for gen_vkb. Let alone
> the sources for the current layout files available in the device.
>
> So, I spend couple of hours reverse engineering the .vkb files and
> created a decode_vkb perl-script that decodes the binary .vkb files
> to XML files that can be edited and then converted back to binary
> with gen_vkb.
>
> The script can currently decode all but one of the .vkbs in n800 to
> XML files that gen_vkb encodes back to original ones. It's available
> from my website along with some documentation:
>
> http://idoru.metadreams.net/~kimju/src/maemo/decode_vkb/
>
> Of the missing features, I really would like to add support for
> modifier keys (mostly ctrl), but as the documentation is incomplete
> and no official .vkb uses this feature I'm not sure how it is
> even supposed to work. Any help would be appreciated and good and
> complete documentation for both the XML and binary vkb formats even
> more so.

--
Quim Gil - http://maemo.org

_______________________________________________
maemo-developers mailing list
maemo-developers[at]maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


mohammad.anwari at nokia

Aug 23, 2007, 1:22 AM

Post #3 of 4 (1046 views)
Permalink
Re: Decoding virtual keyboard layout definition files (.vkb) [In reply to]

Pada hari Selasa, tanggal 21/08/2007 pukul 18:23 +0300, ext Kimmo
Jukarainen menulis:
> There are only few incomplete documents available about .vkb format,
> gen_vkb utility and it's XML input format, and I couldn't find even
> a single working example of the XML inputfile for gen_vkb. Let alone
> the sources for the current layout files available in the device.

Does this example work for you?
http://770.fs-security.com/extra-layouts/kb-layout-sample.tar.gz

> The script can currently decode all but one of the .vkbs in n800 to
> XML files that gen_vkb encodes back to original ones. It's available

Cool :-)

> Of the missing features, I really would like to add support for
> modifier keys (mostly ctrl), but as the documentation is incomplete
> and no official .vkb uses this feature I'm not sure how it is

Yes that's not used by the proprietary plugins.

_______________________________________________
maemo-developers mailing list
maemo-developers[at]maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


marius at pov

Aug 26, 2007, 11:34 AM

Post #4 of 4 (1032 views)
Permalink
Re: Decoding virtual keyboard layout definition files (.vkb) [In reply to]

On Tue, Aug 21, 2007 at 06:23:54PM +0300, Kimmo Jukarainen wrote:
> I wanted to make a couple of small changes to the Finnish virtual
> keyboard layout (for example, replace å and Å with / and |), but
> couldn't find enough documentation about the virtual keyboard to
> do that.
>
> There are only few incomplete documents available about .vkb format,
> gen_vkb utility and it's XML input format, and I couldn't find even
> a single working example of the XML inputfile for gen_vkb. Let alone
> the sources for the current layout files available in the device.
>
> So, I spend couple of hours reverse engineering the .vkb files and
> created a decode_vkb perl-script that decodes the binary .vkb files
> to XML files that can be edited and then converted back to binary
> with gen_vkb.

> The script can currently decode all but one of the .vkbs in n800 to
> XML files that gen_vkb encodes back to original ones. It's available
> from my website along with some documentation:
>
> http://idoru.metadreams.net/~kimju/src/maemo/decode_vkb/

Been there, done that. I've a Python script that can decode all the
.vkb files found on my 770, and those can be converted back with gen_vkb
to produce identical binaries.

I never published or announced my script because someone on IRC drew my
attention to the draconic EULA on the 770/N800 firmware image download
page that seems to prohibit reverse engineering, among other things.

> Of the missing features, I really would like to add support for
> modifier keys (mostly ctrl), but as the documentation is incomplete
> and no official .vkb uses this feature I'm not sure how it is
> even supposed to work. Any help would be appreciated and good and
> complete documentation for both the XML and binary vkb formats even
> more so.

I also found some ancient C include file in Google that had macro
definitions for various bits in what looked like an earlier version of
the .vkb file format. I think I figured out how to describe all the
documented (and undocumented) features in the .xml files so that gen_vkb
accepts them, and then experiments showed that many of the things
that can be defined in the .vkb are not supported at all by the actual
closed-source virtual keyboard implementation.

Marius Gedminas
--
Is it not true that nobody finds it impossible to believe that a
double negative isn't bad grammatical form?
-- Mike on alt.pizza.delivery.drivers
Attachments: signature.asc (0.18 KB)

Maemo developers RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact lists@gossamer-threads.com
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.