diff lisp/efs/efs-plan9.el @ 22:8fc7fe29b841 r19-15b94

Import from CVS: tag r19-15b94
author cvs
date Mon, 13 Aug 2007 08:50:29 +0200
parents
children 8b8b7f3559a2 8619ce7e4c50
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/efs/efs-plan9.el	Mon Aug 13 08:50:29 2007 +0200
@@ -0,0 +1,51 @@
+;; -*-Emacs-Lisp-*-
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
+;; File:         efs-plan9.el
+;; Release:      $efs release: 1.15 $
+;; Version:      $Revision: 1.1 $
+;; RCS:          
+;; Description:  efs support for the Plan 9 FTP Server
+;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
+;; Created:      Sat Jan 22 21:26:06 1994 by sandy on ibm550
+;; Modified:     Sun Nov 27 18:41:05 1994 by sandy on gandalf
+;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+;;; This file is part of efs. See efs.el for copyright
+;;; (it's copylefted) and warrranty (there isn't one) information.
+
+;;; Works for the plan 9 server plan9.att.com. Plan 9 is an
+;;; AT&T operating system that is similar to unix.
+
+(provide 'efs-plan9)
+(require 'efs)
+
+(defconst efs-plan9-version
+  (concat (substring "$efs release: 1.15 $" 14 -2)
+	  "/"
+	  (substring "$Revision: 1.1 $" 11 -2)))
+
+(efs-defun efs-fix-dir-path plan9 (dir-path)
+  ;; Convert DIR-PATH from UN*X-ish to Plan 9. Does nothing actually.
+  ;; Avoids appending the "." that we do in unix.
+  dir-path)
+
+(efs-defun efs-allow-child-lookup plan9 (host user dir file)
+  ;; Returns t if FILE in directory DIR could possibly be a subdir
+  ;; according to its file-name syntax, and therefore a child listing should
+  ;; be attempted.
+  ;; Relies on the fact that directories can't have extensions in plan9,
+  ;; I think.
+  (and (not (and (string-equal dir "/") (string-equal file ".")))
+       (progn
+	 ;; Makes sure that this is cached, before cd'ing
+	 (efs-expand-tilde "~" 'plan9 host user)
+	 (efs-raw-send-cd host user
+			  (if (string-equal file ".")
+			      (efs-internal-file-name-nondirectory
+			       dir)
+			    (concat dir file))
+			  t))))
+
+;;; end of efs-plan9.el