Chris Jones wrote:
I don't think cairo could be trusted to render an SVG in the same way
as inkscape.  It's a good idea though and it would be worth having the
xml layout file svg-like.
Right, so this just shows how little I know about Cairo and SVG :)

Looking at the GOK keyboard files, I see that the XML markup is fairly wordy (like /usr/share/gok/keyboard.kbd) and there are _very many_ files. Layout and content seems to be mixed.

I wonder if we could split the definitions into 2 or 3 layers?

1. Keycodes and glyphs:
- a table that links keycodes with letters in all languages - this obviously exists already in the form of some UTF-8 lookup table or something.

2. Local keyboard layouts
- This defines the way that keys normally appears on a keyboard. Clearly definition files of this exist already as well, that we can hook into.

3. Layout files. This would be a very simple file that ties a key code to a spatial location, and this file should be fairly easy to edit for those who want to make custom keyboards. It would contain a combination of standard key references and custom buttons (like Exit).

So the 3rd file might look something like:

101= ck_esc
201= sk_q
202 = sk_w
203 = sk_e
301 = ck_space

Here 'ck' is custom-key and 'sk' is standard key, each defined in their own files. sk_q refers to the letter that normally appears in the 'Q' position on an English keyboard (on some keyboards z and y are swapped or whatever).

The numbers 1001, links to a layout file where the exact coordinates are defined, along the lines that you mentioned. There can be several such 'lines' in a single keyboard, grouping the numbers in 100s just makes it easier to keep them organised.

Does that make sense?

- Henrik


--
Ubuntu-accessibility mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-accessibility

Reply via email to