Hi, it appears that the UK keymap for the console in Gentoo Linux doesn't work at all properly. Configuration: In /etc/rc.conf, KEYMAP="uk" and no CHAR translation. Obviously, the init script is using 'loadkeys' to load the keymap, as it should. Symptoms: * The pound sterling sign (Shift + 3) does not work. Every other character, to the best of my knowledge, does. Instead it generates a "u" with an acute accent. * You're going to love this one: the above behaviour is consistent on vc/1. Now, I switch over to vc/2 which is waiting for a login. I try typing some chars other than a pound sterling sign, then use Backspace (Rubout) key to delete them fine. Now, I press Shift + 3 for a pound sterling sign. Nothing happens. After that, other characters generate properly but /get this/: now when I press Backspace to delete them I get: (1) an "e" with an umlaut + (2) an "a" with an acute accent + (3) an "e" with an umlaut again! Pressing Backspace after that does exacly the same thing. Now I press Enter to get through the invalid login attempt. I now login properly, and when reaching the prompt do not try to press Shift + 3 again. Hey, now Backspace is working properly again. * And the killer: The above doesn't happen on vc/1, I get a "u" with an acute accent every time for Shift + 3 on vc/1, regardless. Further info: Needless to say, this is a matter of grave concern! I have three Gentoo installations of varying vintages on varying types of PC and it happens on all of them. I'm booting up a 1.4_rc1 CD on a Compaq Proliant ML350 server and it happens on that. I boot from a 1.2 CD or 1.4_rc1 CD on any PC and set the keyboard to UK and it happens :-( US keyboard setting works just fine. I've tried fiddling with the /usr/share/keymaps/i386/qwerty/uk.map.gz (which seems OK) and no joy. I've tried playing with /etc/inputrc (changing meta options and so forth) and it just makes matters worse. It ocurred to me that I've /never/ needed to enter a pound sign in the console before really (use the # for commenting mainly which is a different key) and that us UK users have probably missed this the whole time. This seems to be backed up by the forum thread I created, where another UK resident chimed in, thinking he wasn't affected, then later realised he was. http://forums.gentoo.org/viewtopic.php?t=21406 XFree is not affected at all.
Stefan, you're British, you have a look :P
I also have this problem. If you use vim and make a file in the console with <shift>-3 in it. The console shows u accute, both in vim and cat <file> But if you read the file in X using cat, etc. you see the pound sign. This means that the problem is with the fonts not the keymap. Will search further, Stefan
Right, I have found the following: By setting CONSOLETRANSLATION="8859-1_to_uni" in /etc/rc.conf you get the pound sign back in the console once you log in. Other setting may work better, but this one works fine for me. The other login bug is a bit more difficult, I'll keep looking, Me
Did this work for you, a reply may help me fix this problem! Are you there?
> Did this work for you, a reply may help me fix this problem! Yes it did (sort of), and indeed it would respectively! Right, as you say it resolves the issue in so far as the pound sign will be displayed *after* you've logged in. That's nice but, for me, it's still irksome that pressing Shift + 3 still doesn't work for the login prompt. It's still pretty much the same as before: * First login prompt -> type some chars, Backspace them fine. Press Shift + 3, nothing. Now Backspace results in intermixed "e" chars with an umlaut, and spaces. * Press Enter to fail that login. It seems to "reset" things. But now (sometimes) Shift + 3 results in a hash symbol, and Backspace gets buggered up again. * The strange behaviour is always reset to the condition in the first bullet point above when a fresh login prompt appears, /before/ typing any characters. * Said behaviour seems reasonably consistent across all virtual consoles. I'm not au fait with the particulars of Linux in terms of how it decides how to map keys and display chars before a user session but, for what it's worth, my opinion is that if Linux cannot set up UK key mapping / correct character representation before logging in then it needs changing :-) Aside from that, it should at least be consistent: if it's going to be hash, then a hash it is ... but pressing Shift + 3 shouldn't result in nothing being displayed then the Backspace key going wild. Does this sort of thing happen in other distros (or *BSD)? Shall I check?
mmm, I failed to get the last email so missed your reply, sorry. The problem with gentoo is that the user has to setup all the keymap settings so there is a large scope for error. How does redhat do this, I have looked at it and it seems to have the same setup.
Stefan, good question. Right now I only have access to OpenBSD as an alternative *nix which is probably too far removed, but I intend to have a look at something like RedHat or Debian to see how things are working with those distros - hopefully quite soon.
Found the solution, here it is: 1) put in /etc/env.d/10lang the following: LANG="en_GB" 2) run env-update 3) in rc.config put CONSOLETRANSLATION="8859-1_to_uni" 4) manually emerge net-dialup/mingetty, it is masked 5) in /etc/inittab replace c1:12345:respawn:/sbin/agetty 38400 tty1 linux lines by c1:12345:respawn:/sbin/mingetty tty1 6) reboot and all will work