Re: [PATCH] kbd: (#7063) make CapsLock work as expected even for non-ASCII

From: Samuel Thibault
Date: Mon Nov 16 2009 - 14:39:40 EST


Alexey Dobriyan, le Mon 16 Nov 2009 16:51:15 +0300, a écrit :
> Steps to reproduce:
>
> [log into console (not xterm)]
> [load non-trivial keymap]
> [turn on CapsLock]
> [type something]
>
> Symbols won't be capital despite CapsLock and despite Shift+* working
> as expected.

Fix your keymap, it should use KT_LETTER instead of KT_LATIN.

> Note: patch relies on keymap being consistent wrt SMALL/CAPITAL symbols.

And that's not true for a lot of keyboard symbols. Strictly speaking,
caps lock is caps lock, not shift lock. If you really want a shift
lock, then set your caps lock key to produce shift lock. Applying your
patch would turn the existing capslock behavior into shift lock, we
_don't_ want that.

> Though extracting SMALL <=> CAPITAL mapping from unicode tables and
> putting it into kernel may be more correct.

That's what console-setup does by using various symbol levels and it
just _works_. One issue however is that then the capslock keyboard
led doesn't light up while in caps mode. Maybe we should rethink the
interface to light keyboard leds instead.

Nacked-By: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/