]> TLD Linux GIT Repositories - rc-scripts.git/blob - lang.sh
- merged changes from PLD, all TLD changes and fixes are kept
[rc-scripts.git] / lang.sh
1 #!/bin/sh
2
3 [ ! -f /etc/sysconfig/i18n -a ! -f /etc/locale.conf ] && exit
4
5         ORG_LANG=$LANG
6         ORG_LC_ADDRESS=$LC_ADDRESS
7         ORG_LC_COLLATE=$LC_COLLATE
8         ORG_LC_CTYPE=$LC_CTYPE
9         ORG_LC_IDENTIFICATION=$LC_IDENTIFICATION
10         ORG_LC_MEASUREMENT=$LC_MEASUREMENT
11         ORG_LC_MESSAGES=$LC_MESSAGES
12         ORG_LC_MONETARY=$LC_MONETARY
13         ORG_LC_NAME=$LC_NAME
14         ORG_LC_NUMERIC=$LC_NUMERIC
15         ORG_LC_PAPER=$LC_PAPER
16         ORG_LC_TELEPHONE=$LC_TELEPHONE
17         ORG_LC_TIME=$LC_TIME
18         ORG_LC_ALL=$LC_ALL
19         ORG_LANGUAGE=$LANGUAGE
20
21 [ -f /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n
22 [ -f /etc/locale.conf ] && . /etc/locale.conf
23
24         # we prefer session settings (that came from ssh for example)
25         # instead of system one
26
27         LANG=${ORG_LANG:-$LANG}
28         LC_ADDRESS=${ORG_LC_ADDRESS:-$LC_ADDRESS}
29         LC_COLLATE=${ORG_LC_COLLATE:-$LC_COLLATE}
30         LC_CTYPE=${ORG_LC_CTYPE:-$LC_CTYPE}
31         LC_IDENTIFICATION=${ORG_LC_IDENTIFICATION:-$LC_IDENTIFICATION}
32         LC_MEASUREMENT=${ORG_LC_MEASUREMENT:-$LC_MEASUREMENT}
33         LC_MESSAGES=${ORG_LC_MESSAGES:-$LC_MESSAGES}
34         LC_MONETARY=${ORG_LC_MONETARY:-$LC_MONETARY}
35         LC_NAME=${ORG_LC_NAME:-$LC_NAME}
36         LC_NUMERIC=${ORG_LC_NUMERIC:-$LC_NUMERIC}
37         LC_PAPER=${ORG_LC_PAPER:-$LC_PAPER}
38         LC_TELEPHONE=${ORG_LC_TELEPHONE:-$LC_TELEPHONE}
39         LC_TIME=${ORG_LC_TIME:-$LC_TIME}
40         LC_ALL=${ORG_LC_ALL:-$LC_ALL}
41         LANGUAGE=${ORG_LANGUAGE:-$LANGUAGE}
42
43 unset ORG_LANG ORG_LC_ADDRESS ORG_LC_COLLATE ORG_LC_CTYPE ORG_LC_IDENTIFICATION ORG_LC_MEASUREMENT \
44         ORG_LC_MESSAGES ORG_LC_MONETARY ORG_LC_NAME ORG_LC_NUMERIC ORG_LC_PAPER ORG_LC_TELEPHONE \
45         ORG_LC_TIME ORG_LC_ALL ORG_LANGUAGE
46
47         [ "$LANG" ] && export LANG || unset LANG
48         [ "$LC_ADDRESS" ] && export LC_ADDRESS || unset LC_ADDRESS
49         [ "$LC_COLLATE" ] && export LC_COLLATE || unset LC_COLLATE
50         [ "$LC_CTYPE" ] && export LC_CTYPE || unset LC_CTYPE
51         [ "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION || unset LC_IDENTIFICATION
52         [ "$LC_MEASUREMENT" ] && export LC_MEASUREMENT || unset LC_MEASUREMENT
53         [ "$LC_MESSAGES" ] && export LC_MESSAGES || unset LC_MESSAGES
54         [ "$LC_MONETARY" ] && export LC_MONETARY || unset LC_MONETARY
55         [ "$LC_NAME" ] && export LC_NAME || unset LC_NAME
56         [ "$LC_NUMERIC" ] && export LC_NUMERIC || unset LC_NUMERIC
57         [ "$LC_PAPER" ] && export LC_PAPER || unset LC_PAPER
58         [ "$LC_TELEPHONE" ] && export LC_TELEPHONE || unset LC_TELEPHONE
59         [ "$LC_TIME" ] && export LC_TIME || unset LC_TIME
60         [ "$LC_ALL" ] && export LC_ALL || unset LC_ALL
61         [ "$LANGUAGE" ] && export LANGUAGE || unset LANGUAGE
62
63 [ "$LINGUAS" ]  && export LINGUAS
64 [ "$_XKB_CHARSET" ]     && export _XKB_CHARSET
65 [ "$INPUTRC" ]  && export INPUTRC
66
67         if [ "$LESSCHARSET" ]; then
68                 export LESSCHARSET
69         elif [ "$TERM" = "linux-lat" ]; then
70                 LESSCHARSET=latin1
71                 export LESSCHARSET
72         fi