GNU bug report logs -
#79151
31.0.50; eshell does not complete filename arguments with tramp
Previous Next
Full log
View this message in rfc822 format
On 8/4/2025 2:37 AM, Daniel Mendler via Bug reports for GNU Emacs, the
Swiss army knife of text editors wrote:
> As I understand bug#65356 the problem was that file completion sets in
> in unwanted cases. Back then you pushed the 'pcomplete-remote-file-ignore'
> workaround with this comment:
>
> Let's just go with the change to add 'pcomplete-remote-file-ignore' for
> now. I'll have to think more about how Eshell can selectively ignore
> remote files correctly in all cases; there are a bunch of areas where
> Eshell could be smarter about completion already, and I have the feeling
> they'll conflict with each other if we don't plan this out carefully...
>
> But unfortunately this breaks useful behavior in many more cases which I
> care about more than occasional false completions. For me one of the
> selling points of Eshell is that I can seamlessly browse around on
> remote hosts via cd. But then file name completion refuses to work.
I think the issue there was that we were trying to avoid passing Tramp
absolute file names to external commands (which don't understand Tramp
syntax).
This area is frankly a bit convoluted, since these two commands produce
completely different results:
$ cd /ssh:somehost:~
$ cat /home/user/somefile.txt
$ *cat /home/user/somefile.txt
The first "cat" runs 'eshell/cat', which prints the contents of the file
on the local host, but the second runs "/usr/bin/cat" on somehost,
printing the contents of the file on that remote host.
Fixing that issue would make it easier to define proper semantics for
how remote file name completion works. I have a patch for this, though I
abandoned it since it wasn't a very good way to do things, and haven't
gotten far on a better implementation (though I have some notes
somewhere about what that implementation would look like).
That said, maybe we could come up with a stopgap solution for completion
in the meantime...
This bug report was last modified 2 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.