Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Mar 2010 05:22:33 -0800
From:      Steven Noonan <steven@uplinklabs.net>
To:        Hans Petter Selasky <hselasky@c2i.net>
Cc:        freebsd-usb@freebsd.org
Subject:   Re: usb/144414: Apple "Fn" key doesn't work properly
Message-ID:  <f488382f1003140622j77826a8ewf5a6dfdf75a837c8@mail.gmail.com>
In-Reply-To: <201003141201.03617.hselasky@c2i.net>
References:  <201003141030.o2EAU40v018339@freefall.freebsd.org> <201003141201.03617.hselasky@c2i.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Mar 14, 2010 at 3:01 AM, Hans Petter Selasky <hselasky@c2i.net> wro=
te:
> On Sunday 14 March 2010 11:30:04 Steven Noonan wrote:
>> The following reply was made to PR usb/144414; it has been noted by GNAT=
S.
>>
>> From: Steven Noonan <steven@uplinklabs.net>
>> To: perryh@pluto.rain.com
>> Cc: freebsd-usb@freebsd.org, freebsd-gnats-submit@freebsd.org
>> Subject: Re: usb/144414: Apple "Fn" key doesn't work properly
>> Date: Sun, 14 Mar 2010 03:26:19 -0700
>>
>> =C2=A0On Thu, Mar 4, 2010 at 12:01 AM, Steven Noonan <steven@uplinklabs.=
net>
>> =C2=A0wrot=3D
>>
>> =C2=A0e:
>> =C2=A0> On Wed, Mar 3, 2010 at 11:00 PM, Steven Noonan <steven@uplinklab=
s.net>
>> =C2=A0> wr=3D
>>
>> =C2=A0ote:
>> =C2=A0>> On Wed, Mar 3, 2010 at 10:36 PM, =3DC2=3DA0<perryh@pluto.rain.c=
om> wrote:
>> =C2=A0>>> Steven Noonan <steven@uplinklabs.net> wrote:
>> =C2=A0>>>> Interestingly, my tilde key doesn't work either (though the k=
ey
>> =C2=A0>>>> press is detected, no character shows when the key is pressed=
).
>> =C2=A0>>>
>> =C2=A0>>> Any chance it is configured as a "dead" key? =3DC2=3DA0If you =
press
>> =C2=A0>>> tilde followed by n do you get an n with a tilde over it?
>> =C2=A0>>
>> =C2=A0>> Nope. It simply does nothing in the console.
>> =C2=A0>>
>> =C2=A0>> But in X11, it does something very odd. Shift+Tilde Key gives m=
e '>',
>> =C2=A0>> and Tilde Key gives me '<'. And Alt+Tilde gives me... What? I d=
on't
>> =C2=A0>> even know what action. It's grabbing some arbitrary command in =
my
>> =C2=A0>> .bash_history. It gave me the first item in my .bash_history th=
e first
>> =C2=A0>> time I tried it. Then I tried an arbitrary command ("echo"), an=
d then
>> =C2=A0>> Alt+Tilde gave me the second command in my .bash_history. Whaa?
>>
>> =C2=A0Any more ideas/news on this from anyone?
>>
>> =C2=A0The tilde key thing is especially irritating.
>>
>
> static uint8_t
> ukbd_apple_swap(uint8_t keycode) {
> =C2=A0 =C2=A0 =C2=A0 =C2=A0switch (keycode) {
> =C2=A0 =C2=A0 =C2=A0 =C2=A0case 0x35: return 0x64;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0case 0x64: return 0x35;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0default: return keycode;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0}
> }
>
> Can you try to change the function above in ukbd.c to only return keycode=
? Any
> difference?
>

Yep, commenting the two case lines brought my tilde key back. Any idea
what the ukbd_apple_swap() function was _supposed_ to be doing?

Also, there's only one thing left (input-wise) that I can't get to
work, and that's the 'delete' key (Fn+Backspace). I'm pretty certain
that it's not a problem with Fn+Backspace failing to map to Delete,
because my non-Mac i386 box has the same problem.

Everything I read online keeps saying to muck with an .inputrc file
(for bash, anyway), but I haven't been able to get it to work. Places
I've looked have said to add this to .inputrc:

"\e[3~": delete-char

But this seems to have no effect (and I tried bind -f .inputrc in case
my INPUTRC environment variable wasn't working). Is there something
FreeBSD-specific I'm not seeing, or what?

- Steven



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f488382f1003140622j77826a8ewf5a6dfdf75a837c8>