GNU bug report logs - #57556
28.1; Eshell not finding executables in PATH when tramp-integration loaded

Previous Next

Package: emacs;

Reported by: Colton Lewis <coltonlewis <at> google.com>

Date: Sat, 3 Sep 2022 05:04:02 UTC

Severity: normal

Found in version 28.1

Fixed in version 28.3

Done: Michael Albinus <michael.albinus <at> gmx.de>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Jim Porter <jporterbugs <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 57556 <at> debbugs.gnu.org
Subject: bug#57556: 28.1; Eshell not finding executables in PATH when tramp-integration loaded
Date: Fri, 14 Oct 2022 13:53:33 -0700
[Message part 1 (text/plain, inline)]
On 10/14/2022 5:27 AM, Michael Albinus wrote:
> Jim Porter <jporterbugs <at> gmail.com> writes:
> 
> Hi Jim,
> 
> All patches look OK to me (patch 0002 in the newer version). Just two
> minor nits:
> 
>> [6. text/plain; 0005-Allow-setting-the-values-of-variable-aliases-in-Eshe.patch]
>>
>> +You can set variables in a few different ways.  To set a Lisp
>> +variable, you can use the command @samp{setq @var{name} @var{value}},
>> +which works much like its Lisp counterpart.  To set an environment
>> +variable, use @samp{export @var{NAME}=@var{value}}. You can also use
>> +@samp{set @var{name} @var{value}}, which sets a Lisp variable if
>> +@var{name} is a symbol, or an environment variable if @var{name} is a
>> +string.  Finally, you can temporarily set environment variables for a
>> +single command with @samp{@var{NAME}=@var{value} @var{command}
>> +@dots{}}. This is equivalent to:
>> +
>> +@example
>> +@{
>> +  set @var{NAME} @var{value}
>> +  @var{command} @dots{}
>> +@}
>> +@end example
> 
> @var{} produces already capital letters, so you are more consistent with
> @var{name}.

My intent was to make that display as all-caps in the HTML documentation 
as well. In that excerpt, 'NAME' should always be an environment 
variable, so I used the capitalization conventions that env vars usually 
use. 'name', on the other hand, could be a Lisp variable or an env var.

I adjusted these docs a bit since they seemed unclear to me on a second 
reading (see attached), but kept the all-caps NAME for env vars. If you 
still think that's wrong, I'll change it to lower-case before merging.

>> [7. text/plain; 0006-Improve-handling-of-PATH-in-Eshell-for-remote-direct.patch]
>>
>> +@vindex $PATH
>> +@item $PATH
>> +This specifies the directories to search for executable programs as a
>> +string, separated by @code{":"} for Unix and GNU systems, and
>> +@code{";"} for MS systems.  This variable is connection-aware, so when
>> +the current directory on a remote host, it will automatically update
>> +to reflect the search path on that host.
> 
> "... when the current directory is on a remote host ..."
> 
> Perhaps you could also say, that when the current directory changes back
> to the local host, $PATH is also updated respectively.

I reworked this to make it clearer that the value is updated *every* 
time you 'cd' into a different host (including from one remote host to 
another) and also added a cross-reference to the Remote Files section of 
the Emacs manual.
[0005-Allow-setting-the-values-of-variable-aliases-in-Eshe.patch (text/plain, attachment)]
[0006-Improve-handling-of-PATH-in-Eshell-for-remote-direct.patch (text/plain, attachment)]

This bug report was last modified 2 years and 215 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.