GNU bug report logs -
#62528
28.2; Emacsclient doesn't use COLORTERM
Previous Next
Reported by: Vojtěch Balák <vojtech <at> balak.me>
Date: Wed, 29 Mar 2023 16:59:02 UTC
Severity: normal
Found in version 28.2
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
>>>>> On Thu, 30 Mar 2023 12:34:39 +0300, Eli Zaretskii <eliz <at> gnu.org> said:
>> From: Robert Pluim <rpluim <at> gmail.com>
>> Cc: Vojtěch Balák <vojtech <at> balak.me>,
>> 62528 <at> debbugs.gnu.org
>> Date: Thu, 30 Mar 2023 10:59:32 +0200
>>
>> >>>>> On Thu, 30 Mar 2023 09:49:56 +0200, Vojtěch Balák <vojtech <at> balak.me> said:
>>
>> >> COLORTERM should be in the environment of emacs when it starts, not in
>> >> the environment of emacsclient.
>>
>> Thatʼs because we look it up using `getenv' in init_tty. If we used
>> `egetenv' instead, then we could honour the value of "COLORTERM" sent
>> by emacsclient.
Eli> But egetenv would be wrong here, because it looks in
Eli> process-environment.
Well yes, thatʼs the whole point
Eli> This is _exactly_ the issue here: emacsclient puts the environment of
Eli> the parent shell into process-environment, so that it could be
Eli> inherited by sub-processes, but Emacs itself should _not_ be sensitive
Eli> to the environment it prepares for sub-processes.
Normally Iʼd agree with you, but this a grey area: weʼre creating a
new frame, so having its characteristics depend on information sent by
emacsclient makes sense, especially since server.el already goes to
the trouble of ensuring that emacsclientʼs value of COLORTERM is
inherited.
Would you accept a compromise where we check `getenv', and if the
value is empty, check `egetenv'?
Robert
--
This bug report was last modified 2 years and 47 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.