home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
boot
/
i386
/
rescue
/
etc
/
profile.d
/
lang.csh
< prev
next >
Wrap
Text File
|
2006-11-29
|
2KB
|
85 lines
#
# lang.csh: Set interactive language environment
#
# Used configuration files:
#
# /etc/sysconfig/language
# $HOME/.i18n
#
#
# Already done by the remote SSH side
#
if ( ${?SSH_SENDS_LOCALE} ) goto end
#
# Get the system and after that the users configuration
#
if ( -s /etc/sysconfig/language ) then
eval `sed -n \
-e 's/^RC_\(\(LANG\|LC_[A-Z_]\+\)\)=/set \1=/p' \
-e 's/^\(ROOT_USES_LANG\)=/set \1=/p' \
< /etc/sysconfig/language`
if ( "$uid" != 0 ) set ROOT_USES_LANG=yes
endif
if ( -s $HOME/.i18n ) then
eval `sed -n \
-e 's/^\(\(LANG\|LC_[A-Z_]\+\)\)=/set \1=/p' \
< $HOME/.i18n
endif
#
# Handle all LC and the LANG variable
#
foreach lc (LANG LC_CTYPE LC_NUMERIC LC_TIME \
LC_COLLATE LC_MONETARY LC_MESSAGES \
LC_PAPER LC_NAME LC_ADDRESS \
LC_TELEPHONE LC_MEASUREMENT \
LC_IDENTIFICATION LC_ALL)
eval set val=\${\?$lc}
if ( $val == 0 ) continue
eval set val=\$$lc
if ( "$ROOT_USES_LANG" == "yes" ) then
if ( ${%val} == 0 ) then
eval unsetenv $lc
eval unset $lc
else
eval setenv $lc $val
endif
else if ( "$ROOT_USES_LANG" == "ctype" ) then
if ( "$lc" == "LANG" ) continue
if ( "$lc" == "LC_CTYPE" ) then
setenv LC_CTYPE $LANG
setenv LANG POSIX
else
eval unsetenv $lc
eval unset $lc
endif
else
if ( "$lc" == "LANG" ) then
setenv LANG POSIX
else
eval unsetenv $lc
eval unset $lc
endif
endif
end
#
# Special LC_ALL handling because the LC_ALL
# overwrites all LC but not the LANG variable
#
if ( ${?LC_ALL} ) then
if ( ${%LC_ALL} > 0 && "$LC_ALL" != "$LANG" ) then
setenv LC_ALL $LC_ALL
else
unsetenv LC_ALL
unset LC_ALL
endif
endif
unset ROOT_USES_LANG lc val
end:
#
# end of lang.sh