> Yes. Despite `file-remote-p'[1] being available, many packages are
> hard-coded to the knowledge of FTP-style paths.

VC did (in Emacs-20) and ediff still does.
Which others ?

> Yes. Especially because, for example, VC will refuse to operate on a FTP
> file path (because it can't), while TRAMP supports this.

This was a bug in VC and will be fixed in the next Emacs release.

> [1]  Which /isn't/ a file operation, dammit, but a hard-coded function
>      that *knows* about EFS or Ange-FTP.[2]

Indeed, and a braindead one because it doesn't really say what the
caller needs to know.  VC used it to know whether running commands
in those directories would do the right thing, while ediff uses it just
to know whether access is fast (i.e. it's an "optimisation").

> [2]  My hack makes this a file operation (yay), in the hope that I can
>      convince the XEmacs beta team about it...  and that someone can let
>      me know how to get the same thing done with Emacs.

I think it's the wrong solution.  I can't think of a good reason
why a package would need to know whether a file is remote or not.
It generally needs to know something else (which might be related
to whether or not it's remote).
It's just like using (if window-system (font-lock-mode 1)).

As for the issue of ambiguous file names between Ange-FTP and Tramp, it's
irrelevant since as you say the only problem with it is that it "Force EFS
or Ange-FTP to be loaded before Tramp is" but as I pointed out, Ange-FTP is
always pre-installed anyway.  So it's only an EFS problem.

Interestingly, IIRC there is also a dependency between Tramp and jka-compr
where jka-compr needs to be installed after Tramp.
But I should also point out that the dependency is not about what is loaded
when but what is installed in `file-name-handler-alist' when.  Ange-FTP
is not pre-loaded, but only pre-installed.  My site-start.el does the
same with Tramp.


        Stefan

Reply via email to