1. xemacs
  2. XEmacs

Commits

cvs  committed 8619ce7

Import from CVS: tag r20-1b9

  • Participants
  • Parent commits 2ec2fe4
  • Branches default
  • Tags r20-1b9

Comments (0)

Files changed (214)

File CHANGES-beta

View file
 							-*- indented-text -*-
+to 20.1 beta9
+-- VM-6.21
+-- tm-7.106
+-- Garbage Collection patches courtesy of David Moore
+-- time.el update
+-- minor build tweaks
+-- EFS integration/bug fix patches courtesy of Michael Sperber
+-- MULE safe char-before added
+-- preceding-char, following-char are obsolete and broken, do not use them
+-- user-mail-address now uses the function
+-- miscellaneous bug fixes
+-- Egg patches courtesy of Jareth Hein
+-- corrections to lib-src script setup in --srcdir configuration
+-- itimer.el-1.05
+-- hyperbole-4.023
+-- cc-mode.el-4.387
+-- floating-toolbar.el-1.02
+-- balloon-help.el-1.05
+-- W3-3.0.71
+-- VM-6.20
+-- Custom-1.65
+-- Gnus-5.4.33
+-- strip unimplemented subwindows subr code
+-- GIF correction courtesy Darrell Kindred
+
 to 20.1 beta8
 -- GIF crash fix courtesy of David Moore
 -- Fix for problem dumping comint with sparcworks

File ChangeLog

View file
+Fri Mar 21 21:26:01 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs-19.15-b103 is released.
+	* XEmacs-20.0-b9 is released.
+
+	* Makefile.in (top_distclean): Add `Installation' to distclean
+	rule.
+
+Fri Mar 21 20:05:29 1997  Darrell Kindred  <dkindred@cmu.edu>
+
+	* Makefile.in (autoloads): Pass $(MAKE) to update-elc.sh and
+	update-autoloads.sh.
+
+Thu Mar 20 20:14:16 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs-19.15-b102 is released.
+
+Tue Mar 18 21:52:36 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs-19.15-b101 is released.
+
 Mon Mar 17 19:09:29 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* XEmacs-20.1-b8 is released.

File Makefile.in

View file
 # Build XEmacs and recompile out-of-date and missing .elc files along
 # the way.
 all-elc all-elcs:  src/paths.h src/Emacs.ad.h lib-src lwlib dump-elcs src
-	sh ${srcdir}/lib-src/update-elc.sh
+	MAKE='$(MAKE)' sh ${srcdir}/lib-src/update-elc.sh
 
 # Sub-target for all-elc.
 dump-elc dump-elcs:  FRC.dump-elcs
 		CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}'
 
 autoloads:	src
-	sh ${srcdir}/lib-src/update-autoloads.sh
+	MAKE='$(MAKE)' sh ${srcdir}/lib-src/update-autoloads.sh
 
 # We force the rebuilding of src/paths.h because the user might give
 # different values for the various directories.  Since we use
 ###      `make distclean' should leave only the files that were in the
 ###      distribution.
 top_distclean=\
-	rm -f config.status config-tmp-* build-install ; \
+	rm -f config.status config-tmp-* build-install Installation ; \
 	rm -f Makefile ${SUBDIR_MAKEFILES}; \
 	(cd lock && rm -f *)
 

File configure

View file
   with_tooltalk='yes'
 fi
 
+# having CDE requires Motif
+if test "${with_cde}" = "yes" ; then
+  motif_libs="-lXm -lXt"
+fi
+
 #
 # See if we can find OffiX.
 #
 # set defaults for finding WNN includes and libs
 #
 if test "${with_wnn}" = "yes" ; then
-  for arg in "-I${wnn_includes}" "-I/usr/X11R6/include"
+  for arg in "-I${wnn_includes}" "-I/usr/X11R6/include/wnn" "-I/usr/include/wnn"
   do
     if test -f `echo "${arg}/wnnerror.h" | sed 's/^\-I//'` ; then
       C_SWITCH_SITE="${C_SWITCH_SITE} ${arg}"
       wnn_includes=${arg}
     fi
   done
-  for arg in "-L${wnn_libraries}" "-I/usr/X11R6/lib"
+  for arg in "-L${wnn_libraries}" "-L/usr/X11R6/lib" "-L/usr/lib"
   do
     if test -f `echo "${arg}/libwnn.a" | sed 's/^\-L//'` ; then
       LD_SWITCH_SITE="${LD_SWITCH_SITE} ${arg}"
       canna_includes=${arg}
     fi
   done
-  for arg in "-L${canna_libraries}" "-I/usr/X11R6/lib"
+  for arg in "-L${canna_libraries}" "-L/usr/X11R6/lib"
   do
     if test -f `echo "${arg}/libcanna.a" | sed 's/^\-L//'` ; then
       LD_SWITCH_SITE="${LD_SWITCH_SITE} ${arg}"

File configure.in

View file
   with_tooltalk='yes'
 fi
 
+# having CDE requires Motif
+if test "${with_cde}" = "yes" ; then
+  motif_libs="-lXm -lXt"
+fi
+
 #
 # See if we can find OffiX.
 #
 # set defaults for finding WNN includes and libs
 #
 if test "${with_wnn}" = "yes" ; then
-  for arg in "-I${wnn_includes}" "-I/usr/X11R6/include"
+  for arg in "-I${wnn_includes}" "-I/usr/X11R6/include/wnn" "-I/usr/include/wnn"
   do
     if test -f `echo "${arg}/wnnerror.h" | sed 's/^\-I//'` ; then
       C_SWITCH_SITE="${C_SWITCH_SITE} ${arg}"
       wnn_includes=${arg}
     fi
   done
-  for arg in "-L${wnn_libraries}" "-I/usr/X11R6/lib"
+  for arg in "-L${wnn_libraries}" "-L/usr/X11R6/lib" "-L/usr/lib"
   do
     if test -f `echo "${arg}/libwnn.a" | sed 's/^\-L//'` ; then
       LD_SWITCH_SITE="${LD_SWITCH_SITE} ${arg}"
       canna_includes=${arg}
     fi
   done
-  for arg in "-L${canna_libraries}" "-I/usr/X11R6/lib"
+  for arg in "-L${canna_libraries}" "-L/usr/X11R6/lib"
   do
     if test -f `echo "${arg}/libcanna.a" | sed 's/^\-L//'` ; then
       LD_SWITCH_SITE="${LD_SWITCH_SITE} ${arg}"

File etc/SERVICE

View file
 ** Please keep the entries in this file alphabetical **
 
 
+Altrasoft	<info@altrasoft.com>
+4880 Stevens Creek Blvd., Suite 205
+San Jose, CA  95129-1034
++1 408 243 3300
+http://www.altrasoft.com
+
+Altrasoft provides corporate-quality support, development and user
+documentation for GNU Emacs, XEmacs and InfoDock.  (InfoDock is a turnkey
+information management and software development toolset built atop emacs,
+written by one of our associates.)  Emacs distributions for a variety of
+platforms are also available, as is support for other emacs variants, such as
+those often found on PCs.
+
+Our unique focus on emacs-related work allows us to attract expert talent in
+this area to keep you on the leading edge of productivity, especially if you
+do software development work.  We do the porting, patching, coding,
+integrating, debugging, documenting and testing so that your people spend
+much more productive time on their mainline tasks.
+
+Standard support packages include help on all aspects of the packages
+supported, including all tools shipped as a standard part of the original
+package distribution.  In general, we want to give you an unbelievably strong
+level of support, so where we can, we will also answer questions concerning
+any add-on Lisp code that is used at your site.  Setup and customization
+help, bug fixes, and announcements of new releases are, of course, included.
+
+Support rates start at $1,000 USD, for single user support for one year.
+Discounts are available for group contracts.  We also offer Golden Support
+contracts for those who need the absolute best in mission-critical support;
+contact us for details.  Hourly development rates and fixed bid work are
+available.
+
+Updated 20-March-1997.
+
 Joseph Arceneaux        	<jla@ai.mit.edu>
 PO Box 460633			http://www.samsara.com/~jla
 San Francisco, CA  94146-0633

File etc/time/0.xpm

View file
Old
Old image
New
New image

File etc/time/1.xpm

View file
Old
Old image
New
New image

File etc/time/2.xpm

View file
Old
Old image
New
New image

File etc/time/3.xpm

View file
Old
Old image
New
New image

File etc/time/4.xpm

View file
Old
Old image
New
New image

File etc/time/5.xpm

View file
Old
Old image
New
New image

File etc/time/6.xpm

View file
Old
Old image
New
New image

File etc/time/7.xpm

View file
Old
Old image
New
New image

File etc/time/8.xpm

View file
Old
Old image
New
New image

File etc/time/9.xpm

View file
Old
Old image
New
New image

File etc/time/am.xpm

View file
Old
Old image
New
New image

File etc/time/dp.xpm

View file
Old
Old image
New
New image

File etc/time/l-0.0.xpm

View file
Old
Old image
New
New image

File etc/time/l-0.5.xpm

View file
Old
Old image
New
New image

File etc/time/l-1.0.xpm

View file
Old
Old image
New
New image

File etc/time/l-1.5.xpm

View file
Old
Old image
New
New image

File etc/time/l-2.0.xpm

View file
Old
Old image
New
New image

File etc/time/l-2.5.xpm

View file
Old
Old image
New
New image

File etc/time/l-3.0.xpm

View file
Old
Old image
New
New image

File etc/time/l-jtl-0.0.xpm

Removed
Old image

File etc/time/l-jtl-0.5.xpm

Removed
Old image

File etc/time/l-jtl-1.0.xpm

Removed
Old image

File etc/time/l-jtl-1.5.xpm

Removed
Old image

File etc/time/l-jtl-2.0.xpm

Removed
Old image

File etc/time/l-jtl-2.5.xpm

Removed
Old image

File etc/time/l-jtl-3.0.xpm

Removed
Old image

File etc/time/pm.xpm

View file
Old
Old image
New
New image

File etc/vm/gear.xpm

View file
Old
Old image
New
New image

File lib-src/ChangeLog

View file
+Wed Mar 19 10:38:04 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* Makefile.in.in (SCRIPTS): Link gzip-el.sh in --srcdir
+	configuration.
+
+Tue Mar 18 17:49:14 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* update-elc.sh (EMACS): Removed $XEMACS backdoor.  We will make
+	the .elcs *only* with the freshly built XEmacs.
+
 Mon Mar 17 10:12:03 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* Makefile.in.in (INSTALLABLE_SCRIPTS): Add install-sid and

File lib-src/Makefile.in.in

View file
 /* Like UTILITIES, but they are not system-dependent, and should not be
    deleted by the distclean target. */
 TM_SCRIPTS=tm-au tm-file tm-html tm-image tm-mpeg tm-plain tm-ps tmdecode
-SCRIPTS= rcs2log vcdiff install-sid send-pr $(TM_SCRIPTS)
+SCRIPTS= rcs2log vcdiff gzip-el.sh install-sid send-pr $(TM_SCRIPTS)
 
 EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} ${INSTALLABLE_SCRIPTS}
 
 	${LN_S} ${srcdir}/$@ $@
 tmdecode :
 	${LN_S} ${srcdir}/$@ $@
-
+gzip-el.sh:
+	${LN_S} ${srcdir}/$@ $@
+install-sid:
+	${LN_S} ${srcdir}/$@ $@
+send-pr:
+	${LN_S} ${srcdir}/$@ $@
 
 #ifdef MOVEMAIL_NEEDS_BLESSING
 blessmail:

File lib-src/emacsserver.c

View file
 
 #include <sys/types.h>
 #include <sys/file.h>
-#include <sys/socket.h>
 #include <sys/signal.h>
 #include <sys/stat.h> /* Needed for chmod, at least on Linux */
 #include <sys/un.h>
 #include <stdio.h>
 #include <errno.h>
 #include "../src/sysproc.h" /* Needed for select */
+#ifndef SOCK_STREAM
+/* this is normally included by src/sysproc.h.  might be safe to omit
+ * it entirely.  lousy ultrix's sys/socket.h chokes if it's included
+ * twice, so we can't include unconditionally.  */
+#include <sys/socket.h>
+#endif
 
 void
 main ()

File lib-src/update-elc.sh

View file
   exit 1
 fi
 
-# Determine xemacs executable to use for compilation.
-if test -n "$XEMACS" ; then
-  EMACS="$XEMACS"
-elif test -x ./src/xemacs ; then
-  EMACS="./src/xemacs"
-elif test -x "$EMACS" ; then
-  :
-else
-  EMACS=xemacs
-fi
-case "$EMACS" in
-  */* ) : ;; # Pathname specified
-  *) # Need to find executable on PATH
-     for dir in `echo $PATH | sed 's/:/ /g'` ; do
-       if test -x "dir/xemacs" ; then
-	 EMACS="$dir/$EMACS"
-	 break
-       fi
-     done ;;
-esac
-# Canonicalize
-EMACS=`cd \`dirname $EMACS\` ; pwd | sed 's:^/tmp_mnt::'`/`basename $EMACS`
+EMACS="./src/xemacs"
 export EMACS
 
-echo "Recompiling in `pwd|sed 's:^/tmp_mnt::'`"
-echo "    with $EMACS..."
+echo " (using $EMACS)"
+
+# fuckin' sysv, man...
+if [ "`uname -r | sed 's/\(.\).*/\1/'`" -gt 4 ]; then
+  echon()
+  {    
+    /bin/echo $* '\c'
+  }
+else
+  echon()
+  {
+    echo -n $*
+  }
+fi
+
+REAL=`cd \`dirname $EMACS\` ; pwd | sed 's|^/tmp_mnt||'`/`basename $EMACS`
+BYTECOMP="$REAL -batch -q -no-site-file "
+echo "Recompiling in `pwd|sed 's|^/tmp_mnt||'`"
+echo "          with $REAL..."
+
+$EMACS -batch -q -l `pwd`/lisp/prim/cleantree -f batch-remove-old-elc lisp
 
 prune_vc="( -name SCCS -o -name RCS -o -name CVS ) -prune -o"
 
-$EMACS -batch -q -l `pwd`/lisp/prim/cleantree -f batch-remove-old-elc lisp
-
 # $els  is a list of all .el  files
 # $elcs is a list of all .elc files
 els=/tmp/update-elc-1.$$ elcs=/tmp/update-elc-2.$$
 find lisp/. $prune_vc -name '*.elc' -print | sed 's/elc$/el/' | sort > $elcs
 
 
-echo "Deleting .elc files without .el files..."
+echon "Deleting .elc files without .el files..."
 comm -13 $els $elcs | sed -e '\!/vm.el!d' -e 's/el$/elc/' | \
  while read file ; do echo rm "$file" ; rm "$file" ; done
-echo "Deleting .elc files without .el files... Done"
+echo done.
 
 
 # Compute patterns to ignore when searching for files
-ignore_dirs="its quail"	# ### Not ported yet...
+ignore_dirs="quail"	# ### Not ported yet...
 
 # Only use Mule XEmacs to compile Mule-specific elisp dirs
-echo "Checking for Mule support..."
+echon "Checking for Mule support..."
 lisp_prog='(princ (featurep (quote mule)))'
 mule_p="`$EMACS -batch -no-site-file -eval \"$lisp_prog\"`"
 if test "$mule_p" = nil ; then
   echo No
-  ignore_dirs="$ignore_dirs mule"
+  ignore_dirs="$ignore_dirs its egg mule"
 elif test "$mule_p" = t; then
   echo Yes
 else
-  echo "Error determining presence of mule support"
+  echo "Error -- call Martin"
   exit 1;
 fi
 
 # with the latest version (assuming we're compiling the lisp dir of the emacs
 # we're running, which might not be the case, but often is.)
 echo "Checking the byte compiler..."
-BYTECOMP="$EMACS -batch -q -no-site-file -l bytecomp"
 $BYTECOMP -f batch-byte-recompile-directory lisp/bytecomp
 
 # Byte-compile VM first, because other packages depend on it,
 # but it depends on nothing (Kyle is like that).
 ignore_dirs="$ignore_dirs vm"
 echo "Compiling in lisp/vm";
-(cd lisp/vm && ${MAKE:-make} EMACS=$EMACS autoload)
+(cd lisp/vm && ${MAKE:-make} EMACS=$REAL autoload)
 echo "lisp/vm done."
 
 # Prepare for byte-compiling directories with directory-specific instructions
   ignore_dirs="$ignore_dirs $dir"
   make_special_commands="$make_special_commands \
 echo \"Compiling in lisp/$dir\"; \
-(cd \"lisp/$dir\" && ${MAKE:-make} EMACS=$EMACS ${1+$*}); \
+(cd \"lisp/$dir\" && ${MAKE:-make} EMACS=$REAL ${1+$*}); \
 echo \"lisp/$dir done.\";"
 }
 
 #make_special viper elc
 make_special efs
 make_special gnus  some
-make_special w3
+make_special w3 xemacs-w3
 make_special hyperbole elc
 make_special oobr HYPB_ELC='' elc
 make_special eos -k		# not stricly necessary...

File lisp/ChangeLog

View file
+Fri Mar 21 19:16:46 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* mule/mule-coding.el (enable-multibyte-characters): MULE
+	compatabile variable.
+
+Thu Mar 20 13:28:17 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* bytecomp/bytecomp.el (byte-compile-output-docform): Ebola fix.
+	(byte-compile-lambda): Ebola fix.
+
+	* prim/obsolete.el (following-char): Make this turkey obsolete.
+	(preceding-char): Ditto.  (Suggested by Richard Mlynarik).
+
+Wed Mar 19 10:12:09 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* modes/sendmail.el (sendmail-send-it): Use function for
+	user-mail-address.
+	(user-mail-address): Autoload.
+
+	* pcl-cvs/pcl-cvs.el (cvs-changelog-ours-p): Use function for
+	user-mail-address.
+
+	* prim/startup.el (load-init-file): Only set user-mail-address if
+	non-interactive.
+
+	* utils/smtpmail.el (smtpmail-send-it): Use function for
+	user-mail-address.
+	(smtpmail-via-smtp): Ditto.
+
+	* packages/add-log.el (add-log-mailing-address): Use new function
+	to obtaion email address.
+	(add-change-log-entry): Ditto.
+
+	* prim/device.el (device-pixel-depth): New alias for
+	`device-bitplanes'.
+
+	* comint/comint-xemacs.el (comint): Fix typo in defgroup.
+
+Tue Mar 18 11:16:28 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* prim/loadup.el: ls-lisp doesn't exist now.
+
+	* comint/comint-xemacs.el (comint): Touch up fixes from Per
+	Abrahamsen.
+
+	* prim/glyphs.el (subwindow-image-instance-p): Change doc string
+	to reflect unimplemented status.
+
 Mon Mar 17 15:34:06 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* comint/comint.el (comint-input-setup): Require comint-xemacs.

File lisp/bytecomp/byte-optimize.el

View file
 	   (setq op (logand op 248))
 	   (cond ((eq tem 6)
 		  (setq ptr (1+ ptr))	;offset in next byte
-		  (aref bytes ptr))
+		  ;; char-to-int to avoid downstream problems
+		  ;; caused by chars appearing where ints are
+		  ;; expected.  In bytecode the bytes in the
+		  ;; opcode string are always interpreted as ints.
+		  (char-to-int (aref bytes ptr)))
 		 ((eq tem 7)
 		  (setq ptr (1+ ptr))	;offset in next 2 bytes
 		  (+ (aref bytes ptr)
 	((and (>= op byte-rel-goto)
 	      (<= op byte-insertN))
 	 (setq ptr (1+ ptr))		;offset in next byte
-	 (aref bytes ptr))))
+	 ;; Use char-to-int to avoid downstream problems caused by
+	 ;; chars appearing where ints are expected.  In bytecode
+	 ;; the bytes in the opcode string are always interpreted as
+	 ;; ints.
+	 (char-to-int (aref bytes ptr)))))
 
 
 ;;; This de-compiler is used for inline expansion of compiled functions,

File lisp/bytecomp/bytecomp.el

View file
 		;; negate POSITION.
 		(if (and (stringp (nth (nth 1 info) form))
 			 (> (length (nth (nth 1 info) form)) 0)
-			 (eq (aref (nth (nth 1 info) form) 0) ?*))
+			 (char= (aref (nth (nth 1 info) form) 0) ?*))
 		    (setq position (- position)))))
 
 	 (if preface
 				  (prin1-to-string (car rest))))
 	      ((memq (car rest) '(t nil))
 	       (byte-compile-warn "constant in arglist: %s" (car rest)))
-	      ((and (= ?\& (aref (symbol-name (car rest)) 0))
+	      ((and (char= ?\& (aref (symbol-name (car rest)) 0))
 		    (not (memq (car rest) '(&optional &rest))))
 	       (byte-compile-warn "unrecognised `&' keyword in arglist: %s"
 				  (car rest))))

File lisp/bytecomp/disass.el

View file
 		)
 	  (insert "\n")))))
   nil)
+
+(provide 'disass)
+
+;;; disass.el ends here

File lisp/comint/comint-xemacs.el

View file
 
 ;;; Code:
 
+(defgroup comint nil
+  "General command interpreter in a window stuff."
+  :group 'processes)
+
 (defface comint-input-face '((((class color)
 			      (background dark))
 			     (:foreground "red"))
 			    (((class color)
 			      (background light))
 			     (:foreground "blue"))
-			    (((class mono))
-			     (:bold t))
-			    (((class grayscale))
-			     (:bold t))
 			    (t 
 			     (:bold t)))
   "How to display user input for comint shells."
-  :group 'comint-input-face)
+  :group 'comint)
 
 
 

File lisp/custom/ChangeLog

View file
+Tue Mar 18 14:42:31 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* Version 1.65 released.
+
+Tue Mar 18 11:03:02 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* cus-face.el (custom-face-attributes): Removed `:invert'.
+	(custom-invert-face): Removed.
+
 Mon Mar 17 11:32:51 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
 
+	* wid-edit.el (widget-file-action): Spelling correction by Greg
+	Stark <gsstark@mit.edu>.
+
 	* Version 1.64 released.
 
 Mon Mar 17 10:43:10 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
 	* cus-edit.el (custom-group-menu-create): Split definition into
 	XEmacs and Emacs.  XEmacs uses :filter.  Emacs limits
 	`custom-menu-nesting'. 
-	(custom-menu-create): Do noy limit `custom-menu-nesting' here. 
+	(custom-menu-create): Do not limit `custom-menu-nesting' here. 
 	(custom-menu-update): Removed XEmacs support.
 
 	* custom.el (custom-help-menu): Use `custom-menu-create' in XEmacs

File lisp/custom/cus-edit.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
     (defun custom-group-menu-create (widget symbol)
       "Ignoring WIDGET, create a menu entry for customization group SYMBOL."
       `( ,(custom-unlispify-menu-entry symbol t)
-	  :filter (lambda (&rest junk)
-		    (cdr (custom-menu-create ',symbol)))))
+	 :filter (lambda (&rest junk)
+		   (cdr (custom-menu-create ',symbol)))))
   ;; But emacs can't.
   (defun custom-group-menu-create (widget symbol)
     "Ignoring WIDGET, create a menu entry for customization group SYMBOL."

File lisp/custom/cus-face.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
        ;; Too hard to do right on XEmacs.
        (defalias 'initialize-face-resources 'ignore)))
 
-(if (string-match "XEmacs" emacs-version)
-    ;; Xemacs.
-    (defun custom-invert-face (face &optional frame)
-      "Swap the foreground and background colors of face FACE.
-If the colors are not specified in the face, use the default colors."
-      (interactive (list (read-face-name "Reverse face: ")))
-      (let ((fg (color-name (face-foreground face frame) frame))
-	    (bg (color-name (face-background face frame) frame)))
-	(set-face-foreground face bg frame)
-	(set-face-background face fg frame)))
-  ;; Emacs.
-  (defun custom-invert-face (face &optional frame)
-    "Swap the foreground and background colors of face FACE.
-If the colors are not specified in the face, use the default colors."
-    (interactive (list (read-face-name "Reverse face: ")))
-    (let ((fg (or (face-foreground face frame)
-		  (face-foreground 'default frame)
-		  (frame-property (or frame (selected-frame))
-				  'foreground-color)
-		  "black"))
-	  (bg (or (face-background face frame)
-		  (face-background 'default frame)
-		  (frame-property (or frame (selected-frame))
-				  'background-color)
-		  "white")))
-      (set-face-foreground face bg frame)
-      (set-face-background face fg frame))))
+;;(if (string-match "XEmacs" emacs-version)
+;;    ;; Xemacs.
+;;    (defun custom-invert-face (face &optional frame)
+;;      "Swap the foreground and background colors of face FACE.
+;;If the colors are not specified in the face, use the default colors."
+;;      (interactive (list (read-face-name "Reverse face: ")))
+;;      (let ((fg (color-name (face-foreground face frame) frame))
+;;	    (bg (color-name (face-background face frame) frame)))
+;;	(set-face-foreground face bg frame)
+;;	(set-face-background face fg frame)))
+;;  ;; Emacs.
+;;  (defun custom-invert-face (face &optional frame)
+;;    "Swap the foreground and background colors of face FACE.
+;;If the colors are not specified in the face, use the default colors."
+;;    (interactive (list (read-face-name "Reverse face: ")))
+;;    (let ((fg (or (face-foreground face frame)
+;;		  (face-foreground 'default frame)
+;;		  (frame-property (or frame (selected-frame))
+;;				  'foreground-color)
+;;		  "black"))
+;;	  (bg (or (face-background face frame)
+;;		  (face-background 'default frame)
+;;		  (frame-property (or frame (selected-frame))
+;;				  'background-color)
+;;		  "white")))
+;;      (set-face-foreground face bg frame)
+;;      (set-face-background face fg frame))))
 
 (defcustom custom-background-mode nil
   "The brightness of the background.
 			:value "white"
 			:help-echo "Set background color.")
 		 set-face-background)
-    (:invert (const :format "Invert Face\n" 
-		    :sibling-args (:help-echo "\
-Reverse the foreground and background color.
-If you haven't specified them for the face, the default colors will be used.")
-		    t)
-	     (lambda (face value &optional frame)
-	       ;; We don't use VALUE.
-	       (custom-invert-face face frame)))
+    ;;    (:invert (const :format "Invert Face\n" 
+    ;;		    :sibling-args (:help-echo "
+    ;;Reverse the foreground and background color.
+    ;;If you haven't specified them for the face, the default colors will be used.")
+    ;;		    t)
+    ;;	     (lambda (face value &optional frame)
+    ;;	       ;; We don't use VALUE.
+    ;;	       (custom-invert-face face frame)))
     (:stipple (editable-field :format "Stipple: %v"
 			      :help-echo "Name of background bitmap file.")
 	      set-face-stipple))

File lisp/custom/custom.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

File lisp/custom/wid-browse.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: extensions
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

File lisp/custom/wid-edit.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: extensions
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
 	 (file (file-name-nondirectory value))
 	 (menu-tag (widget-apply widget :menu-tag-get))
 	 (must-match (widget-get widget :must-match))
-	 (answer (read-file-name (concat menu-tag ": (defalt `" value "') ")
+	 (answer (read-file-name (concat menu-tag ": (default `" value "') ")
 				 dir nil must-match file)))
     (widget-value-set widget (abbreviate-file-name answer))
     (widget-apply widget :notify widget event)

File lisp/custom/widget-example.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 (require 'widget)

File lisp/custom/widget.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.64
+;; Version: 1.65
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:

File lisp/efs/Makefile

View file
 #
 # File:         Makefile
 # Release:      $efs release: 1.15 $
-# Version:      $Revision: 1.3 $
+# Version:      $Revision: 1.4 $
 # RCS:
 # Description:  Makefile for byte-compiling efs and dired.
 # Author:       Andy Norman, HPLabs, Bristol, UK.
 COREOBJS = efs-defun.elc efs-ovwrt.elc efs-fnh.elc efs-cu.elc efs-netrc.elc \
            efs.elc efs-dired.elc efs-report.elc \
            efs-cp-p.elc
+CORESRC = efs-defun.el efs-ovwrt.el efs-fnh.el efs-cu.el efs-netrc.el \
+          efs.el efs-dired.el efs-report.el \
+          efs-cp-p.el \
+	  efs-dump.el
 DOBJS = default-dir.elc dired.elc dired-mob.elc dired-oas.elc \
         dired-rgxp.elc dired-shell.elc dired-vir.elc dired-xy.elc \
         dired-grep.elc dired-uu.elc \
         dired-cmpr.elc dired-diff.elc dired-help.elc dired-sex.elc
+DSRC = default-dir.el dired.el dired-mob.el dired-oas.el \
+       dired-rgxp.el dired-shell.el dired-vir.el dired-xy.el \
+       dired-grep.el dired-uu.el \
+       dired-cmpr.el dired-diff.el dired-help.el dired-sex.el
 EFSOBJS = $(COREOBJS) efs-auto.elc \
           efs-cms.elc efs-cms-knet.elc efs-dos-distinct.elc efs-nos-ve.elc \
           efs-gwp.elc efs-kerberos.elc efs-hell.elc efs-ka9q.elc \
           efs-pc.elc efs-ti-explorer.elc efs-ti-twenex.elc \
           efs-tops-20.elc efs-dl.elc efs-guardian.elc efs-coke.elc \
           efs-vms.elc efs-vos.elc efs-plan9.elc efs-ms-unix.elc
+EFSSRC = $(CORESRC) efs-auto.el \
+          efs-cms.el efs-cms-knet.el efs-dos-distinct.el efs-nos-ve.el \
+          efs-gwp.el efs-kerberos.el efs-hell.el efs-ka9q.el \
+          efs-mpe.el efs-mts.el efs-mvs.el efs-netware.el \
+          efs-pc.el efs-ti-explorer.el efs-ti-twenex.el \
+          efs-tops-20.el efs-dl.el efs-guardian.el efs-coke.el \
+          efs-vms.el efs-vos.el efs-plan9.el efs-ms-unix.el
 VMOBJS = efs-vm.elc
+VMSRC = efs-vm.el
+DUMPSRC = efs-dump.el
 GEOBJS = dired-fsf.elc dired-mule.elc efs-dired-mule.elc \
 	 passwd.elc diff.elc auto-save.elc
+GESRC = dired-fsf.el dired-mule.el efs-dired-mule.el \
+	passwd.el diff.el auto-save.el
 XEOBJS = dired-faces.elc dired-xemacs.elc
+XESRC = dired-faces.el dired-xemacs.el
 OBJS = $(DOBJS) $(EFSOBJS) $(VMOBJS) $(GEOBJS) $(XEOBJS) \
        efs-18.elc efs-19.elc efs-19.23.elc \
        efs-l19.11.elc efs-x19.15.elc \
 # backward compatibility files
 fn-handler.elc: fn-handler.el
 emacs-19.elc: emacs-19.el
+# auto-save package
+auto-save.elc: auto-save.el
 
 # Core targets
 core: $(COREOBJS)
 efs: $(EFSOBJS)
 dired: $(DOBJS)
 all: $(OBJS)
+info: efs.info
 
 # Making for a specific emacs version
 18: emacs-19.elc fn-handler.elc efs dired efs-18.elc dired-mule.elc \
 	@echo "Installing in $(LISPDIR)..."
 	@ls -C `ls *.el 2>&1 | grep -v "fixup"` 2> /dev/null
 	cp `ls *.el | grep -v "fixup"` $(LISPDIR)
+install_xemacs:
+	@echo "Installing source in $(LISPDIR)..."
+	cp $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el $(LISPDIR)
+	cp $(DUMPSRC) $(LISPDIR)
+	cp Makefile README fixup.el $(LISPDIR)
+diff_xemacs:
+	for f in $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el \
+	         $(DUMPSRC) Makefile README fixup.el; do \
+		if [ -e $(LISPDIR)/$$f ]; \
+		then\
+		  diff -c $(LISPDIR)/$$f $$f; \
+		else \
+		  diff -c /dev/null $$f; \
+		fi \
+	done
 install_all: install_src install
 clean:
 	rm -f $(OBJS)

File lisp/efs/default-dir.el

View file
 ;;
 ;; File:         default-dir.el
 ;; RCS:
-;; Version:      $Revision: 1.3 $
+;; Version:      $Revision: 1.4 $
 ;; Description:  Defines the function default-directory, for fancy handling
 ;;               of the initial contents in the minibuffer when reading
 ;;               file names.
 
 ;;; Overloads
 
-(if (or (featurep 'mule)
-	(boundp 'MULE))
-    (progn
+(cond
+ ((or (featurep 'mule)
+      (boundp 'MULE))
       
-      (defun default-dir-find-file (file &optional coding-system)
-	"Documented as original"
-	(interactive   
-	 (list
-	  (expand-file-name
-	   (read-file-name "Find file: " (default-directory)))
-	  (and current-prefix-arg
-	       (read-coding-system "Coding-system: "))))
-	(default-dir-real-find-file file coding-system))
+  (defun default-dir-find-file (file &optional coding-system)
+    "Documented as original"
+    (interactive   
+     (list
+      (expand-file-name
+       (read-file-name "Find file: " (default-directory)))
+      (and current-prefix-arg
+	   (read-coding-system "Coding-system: "))))
+    (default-dir-real-find-file file coding-system))
 
-      (defun default-dir-find-file-other-window (file &optional coding-system)
-	"Documented as original"
-	(interactive
-	 (list
-	  (expand-file-name
-	   (read-file-name "Find file in other window: " (default-directory)))
-	  (and current-prefix-arg
-	       (read-coding-system "Coding-system: "))))
-	(default-dir-real-find-file-other-window file coding-system))
+  (defun default-dir-find-file-other-window (file &optional coding-system)
+    "Documented as original"
+    (interactive
+     (list
+      (expand-file-name
+       (read-file-name "Find file in other window: " (default-directory)))
+      (and current-prefix-arg
+	   (read-coding-system "Coding-system: "))))
+    (default-dir-real-find-file-other-window file coding-system))
 
-      (defun default-dir-find-file-read-only (file &optional coding-system)
-	"Documented as original"
-	(interactive
-	 (list
-	  (expand-file-name
-	   (read-file-name "Find file read-only: " (default-directory) nil t))
-	  (and current-prefix-arg
-	       (read-coding-system "Coding-system: "))))
-	(default-dir-real-find-file-read-only file coding-system))
+  (defun default-dir-find-file-read-only (file &optional coding-system)
+    "Documented as original"
+    (interactive
+     (list
+      (expand-file-name
+       (read-file-name "Find file read-only: " (default-directory) nil t))
+      (and current-prefix-arg
+	   (read-coding-system "Coding-system: "))))
+    (default-dir-real-find-file-read-only file coding-system))
 
-      (if (fboundp 'find-file-read-only-other-window)
-	  (progn
-	    (defun default-dir-find-file-read-only-other-window
-	      (file &optional coding-system)
-	      "Documented as original"
-	      (interactive
-	       (list
-		(expand-file-name
-		 (read-file-name
-		  "Find file read-only in other window: "
-		  (default-directory) nil t))
-		(and current-prefix-arg
-		     (read-coding-system "Coding-system: "))))
-	      (default-dir-real-find-file-read-only-other-window file
-		coding-system))))
+  (if (fboundp 'find-file-read-only-other-window)
+      (progn
+	(defun default-dir-find-file-read-only-other-window
+	  (file &optional coding-system)
+	  "Documented as original"
+	  (interactive
+	   (list
+	    (expand-file-name
+	     (read-file-name
+	      "Find file read-only in other window: "
+	      (default-directory) nil t))
+	    (and current-prefix-arg
+		 (read-coding-system "Coding-system: "))))
+	  (default-dir-real-find-file-read-only-other-window file
+	    coding-system))))
 
-      (if (fboundp 'find-file-other-frame)
-	  (progn
-	    (defun default-dir-find-file-other-frame
-	      (file &optional coding-system)
-	      "Documented as original"
-	      (interactive
-	       (list
-		(expand-file-name
-		 (read-file-name "Find file in other frame: "
-				 (default-directory)))
-		(and current-prefix-arg
-		     (read-coding-system "Coding-system: "))))
-	      (default-dir-real-find-file-other-frame file
-		coding-system))))
+  (if (fboundp 'find-file-other-frame)
+      (progn
+	(defun default-dir-find-file-other-frame
+	  (file &optional coding-system)
+	  "Documented as original"
+	  (interactive
+	   (list
+	    (expand-file-name
+	     (read-file-name "Find file in other frame: "
+			     (default-directory)))
+	    (and current-prefix-arg
+		 (read-coding-system "Coding-system: "))))
+	  (default-dir-real-find-file-other-frame file
+	    coding-system))))
+
+  (if (fboundp 'find-file-read-only-other-frame)
+      (progn
+	(defun default-dir-find-file-read-only-other-frame
+	  (file &optional coding-system)
+	  "Documented as original"
+	  (interactive
+	   (list
+	    (expand-file-name
+	     (read-file-name "Find file read-only in other frame: "
+			     (default-directory) nil t))
+	    (and current-prefix-arg
+		 (read-coding-system "Coding-system: "))))
+	  (default-dir-real-find-file-read-only-other-frame file
+	    coding-system)))))
+
+ (default-dir-find-file-takes-coding-system
+   ;; This lossage is due to the fact that XEmacs 20.x without mule
+   ;; still accepts an optional argument for find-file related
+   ;; functions.  Things like advice.el insist on passing nil for
+   ;; optional arguments, and the interaction screws things up.
+   ;; Therefore these functions accept an optional dummy coding-system
+   ;; argument.
+
+   (defun default-dir-find-file (file &optional coding-system)
+     "Documented as original"
+     (interactive
+      (list
+       (expand-file-name
+	(read-file-name "Find file: " (default-directory)))))
+     (default-dir-real-find-file file coding-system))
   
-      (if (fboundp 'find-file-read-only-other-frame)
-	  (progn
-	    (defun default-dir-find-file-read-only-other-frame
-	      (file &optional coding-system)
-	      "Documented as original"
-	      (interactive
-	       (list
-		(expand-file-name
-		 (read-file-name "Find file read-only in other frame: "
-				 (default-directory) nil t))
-		(and current-prefix-arg
-		     (read-coding-system "Coding-system: "))))
-	      (default-dir-real-find-file-read-only-other-frame file
-		coding-system)))))
+   (defun default-dir-find-file-other-window (file &optional coding-system)
+     "Documented as original"
+     (interactive
+      (list
+       (expand-file-name
+	(read-file-name "Find file in other window: " (default-directory)))))
+     (default-dir-real-find-file-other-window file coding-system))
 
+   (defun default-dir-find-file-read-only (file &optional coding-system)
+     "Documented as original"
+     (interactive
+      (list
+       (expand-file-name
+	(read-file-name "Find file read-only: " (default-directory) nil t))))
+     (default-dir-real-find-file-read-only file coding-system))
+  
+   (if (fboundp 'find-file-read-only-other-window)
+       (progn
+	 (defun default-dir-find-file-read-only-other-window
+	   (file  &optional coding-system)
+	   "Documented as original"
+	   (interactive
+	    (list
+	     (expand-file-name
+	      (read-file-name
+	       "Find file read-only in other window: "
+	       (default-directory) nil t))))
+	   (default-dir-real-find-file-read-only-other-window file))))
+
+   (if (fboundp 'find-file-other-frame)
+       (progn
+	 (defun default-dir-find-file-other-frame
+	   (file  &optional coding-system)
+	   "Documented as original"
+	   (interactive
+	    (list
+	     (expand-file-name
+	      (read-file-name "Find file in other frame: "
+			      (default-directory)))))
+	   (default-dir-real-find-file-other-frame file))))
+
+   (if (fboundp 'find-file-read-only-other-frame)
+       (progn
+	 (defun default-dir-find-file-read-only-other-frame
+	   (file &optional coding-system)
+	   "Documented as original"
+	   (interactive
+	    (list
+	     (expand-file-name
+	      (read-file-name "Find file read-only in other frame: "
+			      (default-directory) nil t))))
+	   (default-dir-real-find-file-read-only-other-frame file)))))
+
+ (t
   (defun default-dir-find-file (file)
     "Documented as original"
     (interactive
 	    (expand-file-name
 	     (read-file-name "Find file read-only in other frame: "
 			     (default-directory) nil t))))
-	  (default-dir-real-find-file-read-only-other-frame file)))))
+	  (default-dir-real-find-file-read-only-other-frame file))))))
+
+
 
 (efs-overwrite-fn "default-dir" 'find-file 'default-dir-find-file)
 (efs-overwrite-fn "default-dir" 'find-file-other-window
 
 (efs-overwrite-fn "default-dir" 'shell-command 'default-dir-shell-command)
 
-;; Is advice about?
-(if (featurep 'advice)
-    (defadvice cd (before default-dir-cd activate compile)
-      (interactive
-       (list
-	(expand-file-name
-	 (read-file-name "Change default directory: " (default-directory))))))
+(defun default-dir-cd (dir)
+  "Documented as original"
+  (interactive
+   (list
+    (expand-file-name
+     (read-file-name "Change default directory: " (default-directory)))))
+  (default-dir-real-cd dir))
 
-  (defun default-dir-cd (dir)
-    "Documented as original"
-    (interactive
-     (list
-      (expand-file-name
-       (read-file-name "Change default directory: " (default-directory)))))
-    (default-dir-real-cd dir))
-  
-  (efs-overwrite-fn "default-dir" 'cd 'default-dir-cd))
+(efs-overwrite-fn "default-dir" 'cd 'default-dir-cd)
 
 (defun default-dir-set-visited-file-name (filename)
   "Documented as original"

File lisp/efs/dired-faces.el

View file
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;
 ;; File:          dired-faces.el
-;; Dired Version: $Revision: 1.1 $
+;; Dired Version: $Revision: 1.2 $
 ;; RCS:
 ;; Description:   rudimentary face customization support for dired
 ;; Author:        Mike Sperber <sperber@informatik.uni-tuebingen.de>
   "Face used for interactive permissions."
   :group 'dired)
 
-(defface dired-face-deleted '((((class color))
-			       (:foreground "yellow3"))
-			      (t (:reverse t)))
-  "Face used to indicate deleted files."
-  :group 'dired)
-
 (defface dired-face-socket '((((class color))
 			      (:foreground "magenta"))
 			     (t (:bold nil)))

File lisp/efs/dired-shell.el

View file
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;
 ;; File:          dired-shell.el
-;; Dired Version: $Revision: 1.1 $
+;; Dired Version: $Revision: 1.2 $
 ;; RCS:
 ;; Description:   Commands for running shell commands on marked files.
 ;;
 ;;; Variables
 
 (defvar dired-postscript-print-command
-  (concat
-   (if (boundp 'lpr-command)
-       lpr-command
-     (if (memq system-type
-	       '(usg-unix-v hpux silicon-graphics-unix))
-	 "lp"
-       "lpr"))
-   (if (and (boundp 'lpr-switches) lpr-switches)
-       (concat " "
-	       (mapconcat 'identity lpr-switches " ")
-	       " ")
-     " "))
-  "Command to print a postscript file.")
+  (condition-case nil
+      (progn
+	(require 'ps-print)
+	(concat ps-lpr-command
+		" "
+		(ps-flatten-list (mapcar 'ps-eval-switch ps-lpr-switches))))
+    (error
+     (concat
+      (if (boundp 'lpr-command)
+	  lpr-command
+	(if (memq system-type
+		  '(usg-unix-v hpux silicon-graphics-unix))
+	    "lp"
+	  "lpr"))
+      (if (and (boundp 'lpr-switches) lpr-switches)
+	  (concat " "
+		  (mapconcat 'identity lpr-switches " ")
+		  " ")
+	" "))))
+     "Command to print a postscript file.")
 
-(defvar dired-text-print-command (concat dired-postscript-print-command " -p")
+(defvar dired-text-print-command (concat dired-postscript-print-command "-p ")
   "Command to print a text file.")
 
 (defvar dired-print-program-alist

File lisp/efs/dired-xemacs.el

View file
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;
 ;; File:          dired-xemacs.el
-;; Dired Version: $Revision: 1.2 $
+;; Dired Version: $Revision: 1.3 $
 ;; RCS:
 ;; Description:   dired functions for XEmacs
 ;; Author:        Mike Sperber <sperber@informatik.uni-tuebingen.de>
   "Installs the Dired menu at the menubar."
   (if (null dired-help-menu)
       (dired-setup-menus))
-  (if current-menubar
+  (if (and (featurep 'menubar) current-menubar)
       (progn
 	(let ((buffer-menubar (copy-sequence current-menubar)))
 	  (delete (assoc "Edit" buffer-menubar) buffer-menubar)

File lisp/efs/dired.el

View file
 ;;
 ;; File:          dired.el
 ;; RCS:           
-;; Dired Version: $Revision: 1.3 $
+;; Dired Version: $Revision: 1.4 $
 ;; Description:   The DIRectory EDitor is for manipulating, and running
 ;;                commands on files in a directory.
 ;; Authors:       FSF,
 
 ;;; Dired Version
 
-(defconst dired-version (substring "$Revision: 1.3 $" 11 -2)
+(defconst dired-version (substring "$Revision: 1.4 $" 11 -2)
   "The revision number of Tree Dired (as a string).
 
 Don't forget to mention this when reporting bugs to:
    ((< ver 18)
     (error "dired does not work with emacs version %s" emacs-version))))
 
-;; Load default-dir last, because we want its interactive specs.
-(require 'default-dir)
-
+;; We duplicate default-dir stuff to avoid its overwrites unless
+;; they are explicitly requested.
+
+(defvar default-directory-function nil
+  "A function to call to compute the default-directory for the current buffer.
+If this is nil, the function default-directory will return the value of the
+variable default-directory.
+Buffer local.")
+(make-variable-buffer-local 'default-directory-function)
+
+(defun default-directory ()
+  " Returns the default-directory for the current buffer.
+Will use the variable default-directory-function if it non-nil."
+  (if default-directory-function
+      (funcall default-directory-function)
+    (if (string-match "Lucid" emacs-version)
+	(abbreviate-file-name default-directory t)
+      (abbreviate-file-name default-directory))))
 
 ;;;;----------------------------------------------------------------
 ;;;; Customizable variables
  
  For example:
  
-   \(setq dired-compresssion-method-alist
+   \(setq dired-compression-method-alist
          \(cons '\(frobnicate \".frob\" \(\"frob\"\) \(\"frob\" \"-d\"\) \"-f\"\)
                dired-compression-method-alist\)\)
    => \(\(frobnicate \".frob\" \(\"frob\"\) \(\"frob\" \"-d\"\)\) 
 ;;;###autoload
 (defvar dired-chown-program
   (if (memq system-type '(hpux dgux usg-unix-v)) "chown" "/etc/chown")
-  "*Name of chown command (usully `chown' or `/etc/chown').")
+  "*Name of chown command (usually `chown' or `/etc/chown').")
 
 ;;;###autoload
 (defvar dired-gnutar-program nil
 Optional CHAR indicates a marker character to use."
   (let (buffer-read-only)
     (if (memq (or char dired-marker-char) '(?\  ?\n ?\r))
-	(error "Invalid marker charcter %c" dired-marker-char))
+	(error "Invalid marker character %c" dired-marker-char))
     (or char (setq char dired-marker-char))
     (dired-repeat-over-lines
      arg

File lisp/efs/efs-auto.el

View file
 ;;
 ;; File:         efs-auto.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  Simple way of autoloading efs
 ;; Author:       Andy Norman, Dawn
 ;; Created:      Thu Sep 24 09:50:08 1992
-;; Modified:     Sun Nov 27 11:45:28 1994 by sandy on gandalf
 ;; Language:     Emacs-Lisp
 ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (defconst efs-auto-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 ;;; Interactive functions that should be accessible from here.
 

File lisp/efs/efs-cms-knet.el

View file
 ;;
 ;; File:         efs-cms-knet.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  CMS support for efs using KNET/VM server
 ;; Authors:	 Sandy Rutherford <sandy@ibm550.sissa.it>
 (defconst efs-cms-knet-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 ;;;; ------------------------------------------------------------
 ;;;; CMS support for KNET-VM server

File lisp/efs/efs-cp-p.el

View file
 ;;
 ;; File:         efs-cp-p.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  Support for preserving file modtimes with copies. i.e. cp -p
 ;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
 (defconst efs-cp-p-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (defvar efs-local-timezone nil)
 ;; cache.

File lisp/efs/efs-cu.el

View file
 ;;
 ;; File:         efs-cu.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.3 $
+;; Version:      $Revision: 1.4 $
 ;; RCS:          
 ;; Description:  Common utilities needed by efs files.
 ;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
 ;;;; Use configuration variables.
 ;;;; ------------------------------------------------------------
 
-(defvar efs-default-user nil
+(defvar efs-default-user "anonymous"
   "*User name to use when none is specied in a pathname.
 
 If a string, than this string is used as the default user name.
 (defconst efs-cu-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.3 $" 11 -2)))
+	  (substring "$Revision: 1.4 $" 11 -2)))
 
 (defconst efs-case-insensitive-host-types
   '(vms cms mts ti-twenex ti-explorer dos mvs tops-20 mpe ka9q dos-distinct
   (substring efs-path-user-at-host-format 3)
   "Format to return `host:' strings for completion in root directory.")
 
+;;;###autoload
 (defvar efs-path-root-regexp "^/[^/:]+:"
   "Regexp to match the `/user@host:' root of an efs full path.")
 
 (defun efs-code-string (string)
   ;; Encode a string, using `efs-passwd-seed'. This is nil-potent,
   ;; meaning applying it twice decodes.
-  (if (and (fboundp 'int-char) (fboundp 'char-int))
+  (if (and (fboundp 'int-to-char) (fboundp 'char-to-int))
       (mapconcat
        (function
 	(lambda (c)
 	  (char-to-string
-	   (int-char (logxor (efs-get-passwd-seed) (char-int c))))))
+	   (int-to-char (logxor (efs-get-passwd-seed) (char-to-int c))))))
        string "")
     (mapconcat
      (function

File lisp/efs/efs-defun.el

View file
 ;;
 ;; File:         efs-defun.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  efs-defun allows for OS-dependent coding of functions
 ;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
 (defconst efs-defun-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (defconst efs-key-obarray (make-vector 7 0))
 

File lisp/efs/efs-dump.el

View file
+;; -*-Emacs-Lisp-*-
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
+;; File:         efs-dump.el
+;; Release:      $efs release: 1.15 $
+;; Version:      $Revision: 1.1 $
+;; RCS:
+;; Description:  Install a bare-bones EFS hook into file-name-handler-alist
+;;               for dumping
+;; Author:       Mike Sperber <sperber@informatik.uni-tuebingen.de>
+;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+;;;###autoload
+(setq file-name-handler-alist
+      (cons
+       (cons efs-path-root-regexp 'efs-file-handler-function)
+       file-name-handler-alist))

File lisp/efs/efs-gwp.el

View file
 ;;
 ;; File:         efs-gwp.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  Support for efs to use an interactive gateway.
 ;; Author:       Andy Norman, Dawn
 (defconst efs-gwp-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (defvar efs-gwp-running t)
 (defvar efs-gwp-status nil)

File lisp/efs/efs-ms-unix.el

View file
 ;;
 ;; File:         efs-ms-unix.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  efs support for the Microsoft PC FTP server in unix mode.
 ;; Author:       Sandy Rutherford <sandy@tsmi19.sissa.it>
 (defconst efs-ms-unix-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (defvar efs-ms-unix-month-and-time-regexp
   (concat

File lisp/efs/efs-netrc.el

View file
 ;;
 ;; File:         efs-netrc.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  Parses ~/.netrc file, and does completion in /.
 ;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
 ;; Created:      Fri Jan 28 19:32:47 1994 by sandy on ibm550
-;; Modified:     Sun Nov 27 18:38:50 1994 by sandy on gandalf
 ;; Language:     Emacs-Lisp
 ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (defconst efs-netrc-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 ;; Make the byte compiler happy.
 (defvar dired-directory)
 ;;;; Host / User / Account mapping support.
 ;;;; ------------------------------------------------------------
 
+;;;###autoload
 (defun efs-set-passwd (host user passwd)
   "For a given HOST and USER, set or change the associated PASSWORD."
   (interactive (list (read-string "Host: ")
 	  (list nil)
 	res))))
 
+;;;###autoload
 (defun efs-root-file-name-all-completions (file dir)
   ;; Generates all completions in the root directory.
   (let ((file-name-handler-alist (efs-file-name-handler-alist-sans-fn
 	   (file-name-all-completions file dir))))
 
 
+;;;###autoload
 (defun efs-root-file-name-completion (file dir)
   ;; Calculates completions in the root directory to include remote hosts.
   (let ((file-name-handler-alist (efs-file-name-handler-alist-sans-fn

File lisp/efs/efs-ovwrt.el

View file
 ;;
 ;; File:         efs-ovwrt.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:
 ;; Description:  Utilities for overwriting functions with new definitions.
 ;; Author:       Andy Norman <ange@hplb.hpl.hp.com>
-;; Modified:     Sun Nov 27 18:40:20 1994 by sandy on gandalf
 ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (defconst efs-ovwrt-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (defvar efs-overwrite-fmt
   "Note: This function has been modified to work with %s.")
     ;; later after some other code has been loaded on top of our stuff.
     
     (or (fboundp saved)
-	(progn
+	(let ((advised-p (and (featurep 'advice)
+			      (ad-is-advised fun))))
+	  (if advised-p (ad-deactivate fun))
 	  (fset saved (symbol-function fun))
-	  (fset fun new)))
+	  (fset fun new)
+	  (if advised-p (ad-activate fun))))
     
     ;; Rewrite the doc string on the new function.  This should
     ;; be done every time the file is loaded (or a function is redefined),

File lisp/efs/efs-pc.el

View file
 ;;
 ;; File:         efs-pc.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  PC support for efs
 ;; Author:       Sandy Rutherford <sandy@tsmi19.sissa.it>
 (defconst efs-pc-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 ;;;-----------------------------------------------------------------
 ;;; PC support for efs
 	;; Neither DOS nor OS/2 allows us to end the name of a directory
 	;; with an "\".
 	;; Adding *.* to the end also allows us to distinguish plain files from
-	;; directries.  All DOS servers seem to understand this except
+	;; directories.  All DOS servers seem to understand this except
 	;; Frontier Technologies' super-tcp server.
 	((string-match "/$" dir-path)
 	 (concat (efs-fix-pc-path dir-path) "*.*"))

File lisp/efs/efs-plan9.el

View file
 ;;
 ;; File:         efs-plan9.el
 ;; Release:      $efs release: 1.15 $
-;; Version:      $Revision: 1.1 $
+;; Version:      $Revision: 1.2 $
 ;; RCS:          
 ;; Description:  efs support for the Plan 9 FTP Server
 ;; Author:       Sandy Rutherford <sandy@ibm550.sissa.it>
 (defconst efs-plan9-version
   (concat (substring "$efs release: 1.15 $" 14 -2)
 	  "/"
-	  (substring "$Revision: 1.1 $" 11 -2)))
+	  (substring "$Revision: 1.2 $" 11 -2)))
 
 (efs-defun efs-fix-dir-path plan9 (dir-path)
   ;; Convert DIR-PATH from UN*X-ish to Plan 9. Does nothing actually.

File lisp/efs/efs-report.el

View file