From: Carles Pina i Estany <carles@pina.cat>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: [RFC] Different keyborad layouts
Date: Tue, 30 Sep 2008 00:51:52 +0200 [thread overview]
Message-ID: <20080929225152.GA13509@pina.cat> (raw)
In-Reply-To: <48E11DF2.3050804@nic.fi>
Hello,
On Sep/29/2008, Vesa Jääskeläinen wrote:
> Carles Pina i Estany wrote:
> > Hello,
> >
> > I was thinking how we could have different keyboard layouts and after
> > have some ideas I sent some emails to Robert about this topic (who had some
> > better ideas :-) )
> >
> > Let me to explain here some plan/design. I would like to research on it
> > after some weeks, but if we need some discussion we could have it before
> > :-)
> >
> > (this is the result of some mails with Robert, so I'm copying/pasting and
> > changing some things, if I'm wrong Robert correct me!)
> >
> > Plan:
> > - in term/i386/pc/at_keyboard.c we could have something like this:
> >
> > static char english_map[] = { x, x, x };
> > char *map = english_map;
>
> Explain this a bit more...
>
> Remember that in some keyboard you need to press combos in order to
> generate some character. Like in Finnish keyboard you press alt-gr + e
> in order to generate euro sign (or alt-gr + 5). Also there are
> multi-keypress sequences like in order to make '^' this sign you have to
> press ctrl + '^' button and when released then press space. If you
> happen to press in example 'a' after ctrl + '^' key you get 'â'. And I
> do not think this is the only keyboard with this feature. Also there is
> those dec input sequences like alt+number sequence. In example alt
> (pressed) + '6', '5' you get 'A'.
Spanish one is similar (well, vowells are easier to pronunce ;-) )
> > - have a new module with different layouts and variable hook
> >
> > - when user (or grub.cfg) change some variable (KEY_LAYOUT?), this module would
> > redefine the term/i386/pc/at_keybord.c char *map to KEY_LAYOUT_map (es_map,
> > de_map, etc.)
>
> I do not like the idea of using variable for this as it will most likely
> require loading of keymap definition form disk. So I would prefer something:
>
> insmod keymap
> keymap /boot/grub/keyboard/fi
from below problems (difficult to handle with the static char *map (that
we currenty have) plus this idea from you, my understanding is that we
should go having something like
/usr/share/keymaps/i386/qwerty/fi.kmap.gz (change your layout and
architecture, etc.)
So, the layout is not an easy char *map but it's a definition inside a
file. Maybe same one that Linux console?
> Also remember that you most likely want to play with scancodes when
> transcoding keysequences. I would propose that you convert those
> sequences to unicode so it would be easier to process. And if key is not
> possible to code as unicode then some kinda of keyevent with flag that
> this is eg. key up or something like that.
I take note.
All this "a bit more complicated case" if we want full layout in Grub.
Actually, what I miss in Grub is some characters like / ( ) = " ' < > :
; . & (I don't write texts in Grub :) )
I mean, we could:
a) do nothing (worst option?)
b) parcial implementation (still using the char *map with different
basic layouts)
c) full implementation, like Linux console
Do you have some strong opinion about what to do? I guess that c) is
better, do we need it?
Anyway, next days I will study how the Linux keymaps are working and are
handled.
--
Carles Pina i Estany GPG id: 0x17756391
http://pinux.info
next prev parent reply other threads:[~2008-09-29 22:52 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-28 21:58 [RFC] Different keyborad layouts Carles Pina i Estany
2008-09-29 18:26 ` Vesa Jääskeläinen
2008-09-29 22:51 ` Carles Pina i Estany [this message]
2008-10-05 11:05 ` Robert Millan
2008-10-05 11:40 ` Vesa Jääskeläinen
2008-10-05 11:46 ` Vesa Jääskeläinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080929225152.GA13509@pina.cat \
--to=carles@pina.cat \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.