Turns out this is a different issue. A remote file name such as /ssh:tlok.local:/Users/shipmints/ opens a shell with ssh just fine. BUT the buffer's default-directory is set to /Users/shipmints and does not retain its remote form. That causes file-remote-p to think it's a local directory (which it is). But the buffer remains under Tramp management, so it's a bit wonky. Perhaps there's a better way to ask if a connection is alive for the buffer.
Checking into this deeper, it looks like comint's ansi-osc-directory-tracker resets default-directory and might need some assistance to know it's in a buffer under Tramp management. It simply calls cd-absolute which knows nothing of the originating Tramp remote file format. I will try advising ansi-osc-directory-tracker, and if that works, perhaps I'll submit a patch to make a permanent change. Unless someone else has better ideas on how to handle this? It doesn't seem like I could be the first to notice this issue considering how widely used Tramp is. -Stephane On Sat, Feb 8, 2025 at 1:28 PM Ship Mints <[email protected]> wrote: > This form reports t only on the Emacs instance where the Tramp connection > was established but not in sister Emacs sessions that share the connection. > > (file-remote-p default-directory nil 'connected) > > Perhaps I'm doing something wrong but I expected this to work. > > -Stephane >
