Using efs-1.6 and Lucid Emacs 19.10
hamish (hamish@bnr.ca)
Tue, 31 May 1994 13:01:00 -0400
There are a couple of problems when trying to do this.
The first (and most serious) is that Lucid Emacs 19.10 has a bug in
the find-file-name-handler function. The misplaced parenthesis below
causes find-file-name-handler to erroneously conclude that a filename
matches a pattern in file-name-handler-alist even if it doesn't match.
The following patch to Lucid Emacs 19.10 solves the problem:
-----------------------------------------------------------------
*** src/fileio.c~ Sun May 15 03:05:30 1994
--- src/fileio.c Tue May 31 11:50:08 1994
***************
*** 261,267 ****
if (STRINGP (string)
&& fast_string_match (string,
(char *) XSTRING (filename)->data,
! string_length (XSTRING (filename)) >= 0))
{
Lisp_Object handler = XCONS (elt)->cdr;
if (NILP (Fmemq (handler, inhibited_handlers)))
--- 261,267 ----
if (STRINGP (string)
&& fast_string_match (string,
(char *) XSTRING (filename)->data,
! string_length (XSTRING (filename))) >= 0)
{
Lisp_Object handler = XCONS (elt)->cdr;
if (NILP (Fmemq (handler, inhibited_handlers)))
-----------------------------------------------------------------
The second problem (I reported this earlier) is that efs-1.6 sets the
file-name-handler-alist before it has defined the functions contained
within it. If some file-related action (such as loading a file)
occurs between these two actions, an error results.
With the above patch (and a rebuilt lemacs) and the following patch,
I'm happily using efs 1.6 with Lucid Emacs 19.10.
diff --exclude=*.elc --exclude=Makefile --new-file -cr efs-1.6/efs.el efs/efs.el
*** efs-1.6/efs.el Mon Feb 21 12:13:36 1994
--- efs/efs.el Tue May 31 12:44:28 1994
***************
*** 903,909 ****
(require 'backquote)
(require 'comint)
(require 'efs-defun)
- (require 'efs-ovwrt)
(require 'efs-netrc)
(require 'efs-cu)
(autoload 'efs-report-bug "efs-report" "Submit a bug report for efs." t)
--- 903,908 ----
***************
*** 912,917 ****
--- 911,917 ----
"Login to the gateway machine and fire up an FTP client.")
(autoload 'efs-insert-directory "efs-dired" "Insert a directory listing.")
(autoload 'efs-set-mdtm-of "efs-cp-p")
+ (require 'efs-ovwrt)
;;;; ============================================================