What does C in LC_ALL=C mean?

5,076

Solution 1

The only solid hint I could was from some Slackware documentation written by the great Patrick Volkerding. In the file /etc/profile.d/lang.sh he has made the following comment:

# '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

Without giving away what the 'C' actually stands for, but I would guess that 'C' is an alias for this very lowest and safest level of locale.... Not very satisfactory I know :(.

To see this comment for yourself in the Slackware package try the following:

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

And then open the file lang.sh.new with your favoured text editor...

Solution 2

C stands for the C programming language. It is a synonym for the POSIX locale.

See http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html#tag_07_02

The POSIX locale can be specified by assigning to the appropriate environment variables the values "C" or "POSIX".

Share:
5,076

Related videos on Youtube

Sergiy Kolodyazhnyy
Author by

Sergiy Kolodyazhnyy

Updated on September 18, 2022

Comments

  • Sergiy Kolodyazhnyy
    Sergiy Kolodyazhnyy over 1 year

    I know very well that to override locale settings we can use LC_ALL prepended to the command one wants to run. I also know C uses default locale of a system. But what does C stand for ?

  • Sergiy Kolodyazhnyy
    Sergiy Kolodyazhnyy almost 8 years
    OK , so . . . .what part of that link am I supposed to read ? Edit your post please to actually cite that link properly
  • user.dz
    user.dz almost 8 years
    Same thinking, but may be due to the 1st implementation of gettext was in C language. Also not for "default locale of a system" but actually "default locale of each application". The developer can use different original/source locale than en_US or en. It could be Arabic, Chinese, French, German, Japanese... it doesn't matter.