This article is from the Electronic and Computer Music FAQ, by Craig Latta Craig.Latta@NetJam.ORG with numerous contributions by others.
There is a set of Emacs-Lisp ("elisp") code, called
"ange-ftp.el", which makes 'ftp' use transparent within GNU Emacs (GNU
Emacs is available via anonymous ftp from prep.ai.mit.EDU). This
package attempts to make accessing files and directories using FTP
from within GNU Emacs as simple and transparent as possible. A subset
of the common file-handling routines are extended to interact with
FTP. Using these routines, I can read remote files as I would any
local file, without having to write it locally to disk. This is is
especially useful since the document is dynamic (hopefully
The routines are available via anonymous ftp (naturally!) as
(incidentally, if you already had "ange-ftp.el", you could paste the
above line in response to Emacs' 'copy-file', stick "/anonyous@" in
front of it, and copy the file.) My current version is dated 22
Another useful bit of elisp is "context.el". It saves the
Emacs buffer list and window configuration between editing sessions.
So, one can have several buffers, with several files open (as I
usually do), quit and restart Emacs, and have the state preserved,
cursor locations and windows included. Happily, it works well with
"ange-ftp.el", so that even remote files are restored (after possibly
having to prompt for passwords). "context.el" is also available via
anonymous ftp from tut.cis.ohio-state.EDU, as
/gnu/emacs/elisp-archive/as-is/context.el.Z. Also look for
"tree-dired.el" which provides for hierarchical directory editing.
Incidentally, it was very easy to produce references for the
above tools, thanks to another tool called "archie", developed at
McGill University. Dubbed a "resource discovery tool" by its authors,
it comes in very handy when one knows what tools are needed but not
their availability. Archie consists of a server for this information
(basically from a database of directory trees from "all known"
anonymous ftp sites, updated once per month), and a client, which may
be run via 'telnet' from the server machine itself (frowned upon...),
or from a standalone client available from that machine (...highly
encouraged, for the considerable host load win). Some clients even
perform ftp tasks based on user response to search results. There are
clients available for dumb and X terminals, and, of course, Emacs.
Poke around archie.mcgill.ca for a client and documentation.