Because of errors in syntax (mainly using bash syntax in a [t]csh script) parts of lang.csh that are supposed to send ESC(K to the terminal if the character set is non-default fail to execute. Even if these would be correct then the echo statement is also wrong sending this sequence to /proc/$$/fd/0 which does not exist in current versions of the kernel. As the result of those erros appropriate font/mapping is not activated at logon when using iso-02 (and possibly other charsets) even with everything set up correctly in /etc/sysconfig/i18n.
Hm, yes, the case statement was wrong. /proc/$$/fd does work in recent kernels, or are you talking about 2.3.99+? The issue is, tcsh's file descriptors seem to start at 15... Fixed in initscripts-5.10-1.
The echo was redirected to /proc/$$/fd/0 which does not exist in the distributed kernel. /proc/$$/fd/ exist. However, maybe I'm wrong and the fact that 0 doesn't show to ls doesn't mean that it's not available for writing. Also, I think that -e option on the echo is not working (it is specified in the manual, but echo ignores it and echoes "-e") and I'm not sure if the redirects in the if statement enclosed within this case statement would work in tcsh. AFAIK in tcsh it is not possible to redirect stderr separatelly from stdout.
/proc/$$/0 doesn't seem to exist under tcsh; the file descriptors start at 15, 16, 17, and so on. In the new initscripts package, we use /bin/echo and use the included 'consoletype' program to determine whether we're on a tty.
You are right, however lang.csh runs under tcsh. ;-) Please consider updating that as an update to 6.2 because this causes a lot of confusion for users in Poland who tend to use ISO-8859-2 charsets/mappings. I have spoken with many people here who complained about not being able to make console behave correctly with ISO-8859-2 charset. People are even installing additional packages - like iso2console - to get their consoles to display their national chars correctly. And I was able to get everything to work just by correcting my lang.csh. Anyway - thank you for your time!