emacs-devel
[Top][All Lists]
Advanced

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

Re: environment variable don't get coding conversion


From: Kenichi Handa
Subject: Re: environment variable don't get coding conversion
Date: Mon, 27 Jan 2003 11:48:26 +0900 (JST)
User-agent: SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/21.2.92 (sparc-sun-solaris2.6) MULE/5.0 (SAKAKI)

In article <address@hidden>, address@hidden (Kai Großjohann) writes:
> "Ehud Karni" <address@hidden> writes:
>>  I agree that to use non-ASCII environment variable name is not
>>  practical, so this problem is not really important, but the non-ASCII
>>  values are used a lot, and the practical way for ISO-8859-x is to
>>  have them in unibyte.

> I guess the most important question is: which coding system is used
> for values of environment variables?  Emacs already has a number of
> different coding systems; it's not clear to me which one of them, if
> any, is appropriate for environment variables.
> process-coding-system?  file-name-coding-system?

We must decode them by the locale-coding-system at startup
time.  But, we have to check the values of LC_ALL, LC_CTYPE,
or LANG on encoding.  Those values may be changed by a user
by M-x setenv or by the direct modification of
process-environment (in the case that it is kept exposed).

> And what happens if you do (setenv foo bar) and bar is a string which
> can't be encoded in the coding system specified for environment
> variables?

We can signal an error.  Or, it may be ok to force encoding
it by the locale coding system (usually results in "????"),
and use the result blindly because such an env. variable is
anyway not usable in a subprocess.

---
Ken'ichi HANDA
address@hidden





reply via email to

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