[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [nmh-workers] Formatting HTML to Text: netrik.

From: Robert Elz
Subject: Re: [nmh-workers] Formatting HTML to Text: netrik.
Date: Mon, 08 Jul 2019 10:43:31 +0700

    Date:        Sun, 07 Jul 2019 19:39:47 -0700
    From:        "Ronald F. Guilmette" <address@hidden>
    Message-ID:  <address@hidden>

  | I confess I have and did explicitly set within my personal .login file
  | thusly:
  |    setenv LANG en_US.UTF-8

That should be fine (I'll pass on the sanity of still using any csh
variety shell in this day and age, as that's unrelated).

  | For the rest, if you think that they are all improper,

No, as David Levine said, and I noted in my subsequent message,
I was just misinterpreting the output you supplied (as if it were
part of a .profile).

  | since I seem to be simply inheriting their
  | common and systemwide defaults for all of these things.

Not quite, since you set LANG (which is reasonable) the others
are just inheriting its value (not being set to anything different)
which it as it should be.   The systemwide defaults (if you did not
have lang set) would be "C" for everything (except LC_ALL).

  |  *I* do not even have any real clear idea of
  | what any of these envars do, or are supposed to do,

LC_CTYPE sets the character type - defines how characters are encoded
(as in UTF-8 or ISO-8859-1 or BIG5 (Chinese) etc).

LC_COLLATE defines how characters are ordered

LC_TIME says how time (of day) is represented (d/m/y m/d/y, 12 or 24 hour, etc)

LC_NUMERIC is how numbers are represented, incuding what character
is used for the "decimal point" (aka radix character) and as the
grouping character (and how many digits in a group) etc.   Also how
negative numbers are written.  That is for everything except:

LC_MONETARY does similar for numeric values that are monetary values ($3.75
etc).  That allows -3 to be how a normal negative number is represented,
where as a $3 debt might be (3) instead (the way accountants write things

LC_MESSAGES defines the language to use for messages from any utilities
that have message catalog files (essentially it gets converted to the file
name of the file which contains the strings (format strings) to be used
for messages for a particular program).

Then LANG provides a default value for all of those, and unless you need
some special effect, is generally the right thing to set to simply say
(I want French as in France, or as in Canada, or I want US English, or
British English, or Australian English) - and then you just get all of
the others being correct for that environment.   I sometimes set LANG
and then LC_TIME to a locale of my own which avoids the ambiguous x/y/z
format dates (which are used, in different ways, in most English locales)
and sets 24 hour time rather than 12 hgour am/pm which I simply prefer.

LC_ALL is an override - when set all the others get ignored, and this
one is used for everything.   It's only appropriate use is when something
needs to ignore whatever the user might have set and operate in a particular
known locale in order to work correctly - things like [a-z] in patterns
give weird results in some locales where 'z' isn't the last letter of the
alphabet (there are many such oddities around).


reply via email to

[Prev in Thread] Current Thread [Next in Thread]