Wiem bardzo dobrze, że aby zastąpić ustawienia regionalne, możemy użyć LC_ALL
wcześniejszej komendy, którą chcemy uruchomić. Wiem również, że C
używa domyślnych ustawień regionalnych systemu. Ale co to C
oznacza?
Wiem bardzo dobrze, że aby zastąpić ustawienia regionalne, możemy użyć LC_ALL
wcześniejszej komendy, którą chcemy uruchomić. Wiem również, że C
używa domyślnych ustawień regionalnych systemu. Ale co to C
oznacza?
Odpowiedzi:
Jedyną solidną wskazówką, jaką mogłem uzyskać, była dokumentacja Slackware napisana przez wielkiego Patricka Volkerdinga. W pliku /etc/profile.d/lang.sh
umieścił następujący komentarz:
# 'C' is the old Slackware (and UNIX) default, which is 127-bit ASCII
# with a charmap setting of ANSI_X3.4-1968. These days, it's better to
# use en_US.UTF-8 or another modern $LANG setting (or at least en_US)
# to support extended character sets.
#export LANG=C
Nie zdradzając, co tak naprawdę oznacza „C”, ale zgaduję, że „C” jest aliasem dla tego bardzo najniższego i najbezpieczniejszego poziomu lokalizacji ... Wiem niezbyt zadowalające :(.
Aby zobaczyć ten komentarz dla siebie w pakiecie Slackware, spróbuj wykonać następujące czynności:
wget http://slackware.osuosl.org/slackware-14.2/source/a/etc/_etc.tar.gz
tar -zxvf _etc.tar.gz etc/profile.d/lang.sh.new --strip-components 2
A następnie otwórz plik za lang.sh.new
pomocą ulubionego edytora tekstu ...
C
oznacza język programowania C. Jest to synonim POSIX
lokalizacji.
Zobacz http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html#tag_07_02
Ustawienia regionalne POSIX można określić, przypisując do odpowiednich zmiennych środowiskowych wartości „C” lub „POSIX”.
gettext
było w języku C. Nie dotyczy to również „domyślnych ustawień regionalnych systemu”, ale „domyślnych ustawień regionalnych każdej aplikacji”. Deweloper może używać innych ustawień narodowych / źródłowych niż en_US
lub en
. Może to być arabski, chiński, francuski, niemiecki, japoński ... to nie ma znaczenia.