From: Stas Sergeev <stssppnn@yahoo.com>
To: linux-msdos@vger.kernel.org
Subject: Re: dosemu-1.1.3 and Cyrillic_er
Date: Thu, 25 Apr 2002 18:23:15 +0400 [thread overview]
Message-ID: <3CC81153.2070408@yahoo.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 1081 bytes --]
Hello.
Sergey Suleymanov wrote:
> Stas> altgr table is enough.
> Actually only these are needed at all. ;)
But in fact this means that the problem
is still there.
The problem is that normally altgr map is
similar to the alt map, so the special keycodes
in it are mapped as for the alt map.
But you are reserving altgr map for Cyrillic,
so it must be treated as a plain map.
And for the plain map, the BackSpace keycode
gets altered back to 8, see init_misc_plain_map()
and init_misc_shifted_map().
So I think that the real fix would be something
like the attached patch.
> Stas> Does this help? Why 127 is there?
> I presume this is ^?. Anyway, ^H also works. Thanks.
Actually I think it is a bios keycodes, so it
must be 8. Which is done with the attached patch
and no need to modify the keymaps at all.
This patch also fixes some other small
problems with ctrl and alt modifiers in
cyrillic mode.
Does this look like a correct fix to you?
And of course the root of the problem
seems to be that dosemu currently doesn't
natively support the layout switching.
[-- Attachment #2: serv_xlat.diff --]
[-- Type: text/plain, Size: 1017 bytes --]
--- src/plugin/kbd_unicode/serv_xlat.c Tue Apr 23 17:32:37 2002
+++ src/plugin/kbd_unicode/serv_xlat.c Thu Apr 25 13:53:46 2002
@@ -361,11 +361,11 @@
}
static void init_misc_altgr_map(t_keysym *rule)
{
- rule[NUM_SPACE] = KEY_SPACE;
+ init_misc_plain_map(rule);
}
static void init_misc_shift_altgr_map(t_keysym *rule)
{
- rule[NUM_SPACE] = KEY_SPACE;
+ init_misc_shifted_map(rule);
}
static void init_misc_ctrl_alt_map(t_keysym *rule)
{
@@ -1134,10 +1134,11 @@
if ((shiftstate & ANY_ALT) && (shiftstate & ANY_CTRL)) {
ch = state->rules->map.ctrl_alt[key];
}
- else if ((shiftstate & (R_ALT|ALTGR_LOCK)) && (shiftstate & ANY_SHIFT)) {
+ else if ((shiftstate & ALTGR_LOCK) && (shiftstate & ANY_SHIFT) &&
+ !(shiftstate & (ANY_CTRL | ANY_ALT))) {
ch = state->rules->map.shift_altgr[key];
}
- else if (shiftstate & (R_ALT|ALTGR_LOCK)) {
+ else if ((shiftstate & ALTGR_LOCK) && !(shiftstate & (ANY_CTRL | ANY_ALT))) {
ch = state->rules->map.altgr[key];
}
else if (shiftstate & ANY_ALT) {
next reply other threads:[~2002-04-25 14:23 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-04-25 14:23 Stas Sergeev [this message]
2002-04-26 11:18 ` dosemu-1.1.3 and Cyrillic_er Sergey Suleymanov
-- strict thread matches above, loose matches on Subject: below --
2002-04-25 19:29 Stas Sergeev
2002-04-25 21:05 ` Grigory Batalov
2002-04-24 13:13 Stas Sergeev
2002-04-24 14:05 ` Grigory Batalov
2002-04-24 14:39 ` Sergey Suleymanov
2002-04-24 19:08 ` Grigory Batalov
2002-04-24 13:13 Stas Sergeev
2002-04-24 13:02 Stas Sergeev
2002-04-24 14:15 ` Sergey Suleymanov
2002-04-23 17:15 Stas Sergeev
2002-04-24 6:10 ` Sergey Suleymanov
2002-04-24 6:38 ` Grigory Batalov
2002-04-24 9:18 ` Sergey Suleymanov
2002-04-23 15:00 Stas Sergeev
2002-04-23 11:06 Stas Sergeev
2002-04-23 11:29 ` Sergey Suleymanov
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=3CC81153.2070408@yahoo.com \
--to=stssppnn@yahoo.com \
--cc=linux-msdos@vger.kernel.org \
--cc=stas.orel@mailcity.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox