public inbox for cygwin-xfree@sourceware.org
help / color / mirror / Atom feed
From: "Young, George" <George.Young@pco-bcp.gc.ca>
To: <cygwin-xfree@cygwin.com>
Subject: RE: Using the Canadian Multilingual Standard keyboard with WindowsXP
Date: Tue, 13 Jul 2010 19:30:00 -0000	[thread overview]
Message-ID: <6B9C55F15278D64198962D45C8AA3CCA02B4B336@BCL4EXC4.b.net> (raw)
In-Reply-To: <4C3CB352.6080605@dronecode.org.uk>

Hello Jon,

I tried the patch and am very impressed. My WinXP was set up with English-Canada and 2 keyboards, Canadian Multilingual Standard and US. When I ran the cygwin patch, it added English-US with a US Keyboard, and switched to that.

In cygwin, the RightAlt and RightControl do what they're supposed to do (almost). There still seems to be a small problem with dead key stuff. 

When I first run the cygwin server, and press the keys for dead-cedilla (RtCtrl and =) then c, it just gives c. If I then run xev and stop it, the dead keys start to work and it gives ç.

Good stuff,
George R. Young


-----Original Message-----
From: Jon TURNEY [mailto:jon.turney@dronecode.org.uk] 
Sent: July 13, 2010 2:41 PM
To: cygwin-xfree@cygwin.com
Cc: Young, George
Subject: Re: Using the Canadian Multilingual Standard keyboard with WindowsXP

On 02/07/2010 14:27, Young, George wrote:
> With WIN XP keyboard set to Canadian Multilingual Standard:
> Run xev, press Right Alt
[xev output snipped]

Thanks.  This helps a lot in understanding the problem.

There seem to be two things going on here:

1) In the Canadian Multilingual Standard layout, Ctrl-R is VK_OEM_8 (rather than the more normal VK_CONTROL) which isn't in the mapping table to ignore the VK code and use the scan code.

2) Windows generates an additional Ctrl-L key event before AltGr key event for international keyboard layouts.  There is code in the X server to try to identify and discard these extra events, but this doesn't seem to be working in your case (and there have been other reports of that)


I don't see why we can't just always load the US keyboard layout as all we care about are scan codes:  Patch to follow which adds a flag to do that and turn it on for Japanese (which already does that) and Canadian Multilingual Standard.

I've also added a keycode mapping for VK_OEM_8 in case that ever fails, and improved some logging related to the keyboard layout detection.

I've also added the multix layout to the list of autodetected layouts.


I've uploaded a build with this patch applied [1]. This seems to correctly generate ISO_Level3_Shift for AltGr and ISO_Level5_Shift for Ctrl-R in the multix layout. Perhaps you could try it out and see if it works for you?

Although I am still a bit unclear as to what exactly doesn't work for you. 
Originally you said "If the Windows keyboard is set to Canadian Multilingual Standard, cygwin doesn't get the RightAlt and RightControl inputs", whereas this xev output seems to demonstrate that the X server gets events, just not the right ones :-)

[1] ftp://cygwin.com/pub/cygwinx/XWin.20100713-git-c54fb06114a2c0f1.exe.bz2

> -----Original Message-----
> On 03/06/2010 21:17, Young, George wrote:
>> Using Windows XP and cygwin started with the command %RUN% XWin 
>> -multiwindow -clipboard -silent-dup-error -xkblayout ca -xkbvariant 
>> multix -xkbmodel pc104
>>
>> If the Windows keyboard is set to US, cygwin works fine. If the 
>> Windows keyboard is set to Canadian Multilingual Standard, cygwin 
>> doesn't get the RightAlt and RightControl inputs.
>
> I couldn't reproduce this.  Checking with xev, the right alt and right 
> control keys generate key events when the Windows keyboard layout is 
> Canadian Multilingual Standard, although it seems that right control 
> generates the same X keysym as left control with that layout for some 
> reason.
>
> Can you clarify how you are checking for the keypresses?
>
> Please attach your /var/log/XWin.0.log as well.

--
Jon TURNEY
Volunteer Cygwin/X X Server maintainer

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


  parent reply	other threads:[~2010-07-13 19:30 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-03 20:17 Using the Canadian Multilingual Standard keyboard with Windows XP Young, George
2010-07-01 14:49 ` Jon TURNEY
2010-07-02 13:27   ` Using the Canadian Multilingual Standard keyboard with WindowsXP Young, George
2010-07-13 18:41     ` Jon TURNEY
2010-07-13 18:53       ` [PATCH] Fixes for Canadian Multilingual Standard keyboard layout handling Jon TURNEY
2010-07-13 19:30       ` Young, George [this message]
2010-07-16 14:04         ` Using the Canadian Multilingual Standard keyboard with WindowsXP Jon TURNEY
2010-07-16 17:13           ` Young, George

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=6B9C55F15278D64198962D45C8AA3CCA02B4B336@BCL4EXC4.b.net \
    --to=george.young@pco-bcp.gc.ca \
    --cc=cygwin-xfree@cygwin.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).