[EMAIL PROTECTED] (Michael Sperber [Mr.  Preprocessor]) writes:

> I've always argued for putting a meta-mechanism on top of
> Tramp/EFS/ange-ftp, which would have a compositional way of specifying
> how file-name handlers are assembled, and which includes a way of
> using predicates in the manner described.

In fact the latest changes in Tramp go this way. All code integrating
ange-ftp has been moved to tramp-ftp.el. Once tramp-file-name-handler
has been chosen by find-file-name-handler, it calls
tramp-ftp-file-name-p in order to find out whether ange-ftp has to be
used, and hands over control in case of.

By this, the tight folding of ange-ftp into Tramp has been reduced to
a small interface, which could be applied for EFS as well.

A more general approach would take something similar to
file-name-handler-alist for Tramp internal use as well. Instead of
declaring a regexp for decision, there might be a function (with
filename as parameter). Something like this:

((tramp-ftp-file-name-p . tramp-ftp-file-name-handler)
 (tramp-smb-file-name-p . tramp-smb-file-name-handler))

At the beginning of tramp-file-name-handler this list is parsed, and
the respective handler is called. tramp-ftp-file-name-handler would be
a wrapping function, which calls either ange-ftp-hook-function or 
efs-file-handler-function. tramp-smb-file-name-handler is under
development for accessing SMB servers (SAMBA, or M$ operating systems).

Best regards, Michael.

PS: I guess we can shorten the distribution list of this thread to
    tramp-devel. The major issues of integrating into Emacs seem to be
    clear.



_______________________________________________
Tramp-devel mailing list
[EMAIL PROTECTED]
http://mail.nongnu.org/mailman/listinfo/tramp-devel

Reply via email to