1. xemacs
  2. xemacs-beta

Commits

cvs  committed 9f59509

Import from CVS: tag r20-1b10

  • Participants
  • Parent commits f109f7d
  • Branches default
  • Tags r20-1b10

Comments (0)

Files changed (239)

File BUGS

View file
 (3) By hand.  Do
     cat info/xemacs* | more "+/^File: xemacs.info,  Node: Bugs,"
 
+
+Part II of the XEmacs FAQ, available in a manner similar to the above,
+or via the world wide web, contains extensive information on how to
+track down and report bugs.
+
+	http://www.xemacs.org/faq/

File CHANGES-beta

View file
 							-*- indented-text -*-
+to 20.1 beta10
+-- custom-1.68 [Beyond 19.15]
+-- W3-3.0.75
+-- Documentation updates
+-- cc-mode-4.388
+-- Custom-1.67
+-- EFS fixes courtesy of Michael Sperber
+-- time.el-1.11
+-- Various cursor glitch patches courtesy of Darrell Kindred
+-- Irix -rpath support courtesy of Darrell Kindred
+-- Miscellaneous bug fixes
+-- EFS synch to 19.15 for default-dir.el
+-- hm--html-mode-5.5
+-- VM-6.22
+-- Gnus-5.4.37
+
 to 20.1 beta9
 -- VM-6.21
 -- tm-7.106
 -- 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

File ChangeLog

View file
+Thu Mar 27 18:24:19 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 20.1-b10 is released.
+
+Wed Mar 26 22:31:10 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* Remove vms top-level directory.
+	
+	* XEmacs 19.15 final released to beta testers.
+
+Tue Mar 25 19:13:27 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 19.15 prefinal released to beta testers.
+
+Mon Mar 24 12:28:17 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* configure.in (--debug): Correct documentation.
+
+Sun Mar 23 17:24:38 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 19.15-b104 is released.
+
+Sat Mar 22 19:56:36 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* etc/sgml/CATALOG: Default to html-3.2final.
+
+Sat Mar 22 17:55:15 1997  Darrell Kindred  <dkindred@cmu.edu>
+
+	* configure.in (beta): Add configure support for the -rpath flag
+	for IRIX analogous to the Solaris "-R".
+
+Sat Mar 22 16:47:08 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* info/dir (Packages): Add HM-HTML-Mode to menu.
+
+Sat Mar 22 21:27:41 1997  Tomasz J. Cholewo  <t.cholewo@ieee.org>
+
+        * configure.in: Echo only current configuration using 'tee -a'.
+
 Fri Mar 21 21:26:01 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* XEmacs-19.15-b103 is released.

File PROBLEMS

View file
 The is seen when installing the Big Brother Data Base (bbdb) which
 includes an outdated copy of mail-abbrevs.el.  Remove the copy that
 comes with bbdb and use the one that comes with XEmacs.
+
+* Linking with -rpath on IRIX.
+
+Darrell Kindred <dkindred@cmu.edu> writes:
+There are a couple of problems [with use of -rpath with Irix ld], though:
+
+  1. The ld in IRIX 5.3 ignores all but the last -rpath
+     spec, so the patched configure spits out a warning
+     if --x-libraries or --site-runtime-libraries are
+     specified under irix 5.x, and it only adds -rpath 
+     entries for the --site-runtime-libraries.  This bug was
+     fixed sometime between 5.3 and 6.2.
+
+  2. IRIX gcc 2.7.2 doesn't accept -rpath directly, so
+     it would have to be prefixed by -Xlinker or "-Wl,".
+     This would be fine, except that configure compiles with
+        ${CC-cc} $CFLAGS $LDFLAGS ...
+     rather than quoting $LDFLAGS with prefix-args, like
+     src/Makefile does.  So if you specify --x-libraries
+     or --site-runtime-libraries, you must use --use-gcc=no,
+     or configure will fail.
+
+* On Irix 5.x and 6.x, the dumped XEmacs (xemacs) core dumps when executed 
+  on another machine, or after newer SGI IRIX patches have been installed.
+
+The xemacs binary must be executed with the same "libc.so" file which was used 
+when the xemacs binary was dumped.  Some SGI IRIX patches update this file.
+Make sure that all machines using the xemacs binary are using the same
+set of IRIX patches.  If xemacs core dumps after a patch upgrade then you 
+will have to redump it from temacs.
+
+* xemacs: can't resolve symbol '__malloc_hook'
+
+This is a Linux problem where you've compiled the XEmacs binary on a libc
+5.4 with version higher than 5.4.19 and attempted to run the binary against
+an earlier version.  The solution is to upgrade your old library.
+
+* VM appears to hang in large folders
+
+This is normal (trust us) when upgrading to VM-6.22 from earlier versions.
+Let VM finish what it is doing and all will be well.

File configure

View file
 Debugging options:
 
 --debug			Compile with support for debugging XEmacs.
-			(Causes code-size increase but no loss of speed.)
+			(Causes code-size increase and little loss of speed.)
 --error-checking=TYPE[,TYPE]...
 			Compile with internal error-checking added.
 			Causes noticeable loss of speed.  Valid types
   with_toolbars='yes'
 fi
 
+runtime_arg="-R${dash_r_space}"
+
 case "${canonical}" in
-  *-sun-solaris* | *-sun-sunos5* ) add_runtime_flag=yes ;;
+  *-sun-solaris* | *-sun-sunos5* ) 
+    add_runtime_flag=yes ;;
+  *-sgi-irix5.* )
+    # In the IRIX 5.3 ld, only the last -rpath arg has any effect.  This is 
+    # fundamentaly incompatible with having separate LD_SWITCH_X_SITE
+    # and LD_SWITCH_SITE variables.  Fortunately, SGI fixed this by 6.2.
+    if [ -n "${x_libraries}" ] || [ -n "${site_runtime_libraries}" ]; then
+      (echo "WARNING: The IRIX 5 ld ignores all but the last -rpath argument,";
+       echo "         so if you need to specify more than one additional";
+       echo "         runtime library directory, you will have to do so";
+       echo "         manually by setting the environment variable";
+       echo "         LD_SWITCH_SITE to '-rpath <path>' before running";
+       echo "         configure.  If you have only one additional directory,"
+       echo "         you can specify it with --site-runtime-libraries.") >&2
+    fi
+    runtime_arg="-rpath " ;;
+  *-sgi-irix* )
+    # Note that IRIX gcc (as of 2.7.2) doesn't accept -rpath, so
+    # using it can cause trouble.  Specifying --use-gcc=no will work 
+    # around this, but the real problem is that configure uses $LDFLAGS 
+    # as arguments to $(CC), instead of using prefix-args like the
+    # src/Makefile does.
+    add_runtime_flag=yes;
+    runtime_arg="-rpath " ;;
 esac
 
 if test -n "${x_libraries}" ; then
-  if test "${add_runtime_flag}" ; then
-    LD_SWITCH_X_SITE="-L${x_libraries} -R${dash_r_space}${x_libraries}"
+    if test "${add_runtime_flag}" = "yes" ; then
+	LD_SWITCH_X_SITE="-L${x_libraries} ${runtime_arg}${x_libraries}"
   else
     LD_SWITCH_X_SITE="-L${x_libraries}"
   fi
   for arg in ${site_runtime_libraries}
   do
     LD_SWITCH_SITE="${LD_SWITCH_SITE} -L${arg}"
-    LD_SWITCH_SITE="${LD_SWITCH_SITE} -R${dash_r_space}${arg}"
+    LD_SWITCH_SITE="${LD_SWITCH_SITE} ${runtime_arg}${arg}"
   done
 fi
 if test -n "${site_includes}" ; then
 CPP=`eval "echo $CPP"`
 eval `${CPP} -Isrc ${tempcname} \
        | grep 'configure___' \
-       | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
+       | sed -n -e 's/^configure___ \(^=*=\)\(.*\)$/\1"\2"/p'`
 if test "x$SPECIFIED_CFLAGS" = x ; then
   eval `${CPP} -Isrc -DTHIS_IS_CONFIGURE ${tempcname} \
 	 | grep 'configure___' \
-	 | sed -n -e 's/^configure___ \([^=]*=\)\(.*\)$/\1"\2"/p'`
+	 | sed -n -e 's/^configure___ \(^=*=\)\(.*\)$/\1"\2"/p'`
 else
   REAL_CFLAGS="$CFLAGS"
 fi
 
 #### Add the libraries to LIBS and check for some functions.
 
-
+]
 CPPFLAGS="${C_SWITCH_SITE} $c_switch_system $c_switch_machine $c_switch_x_system $CPPFLAGS"
 DEFS="${C_SWITCH_SITE} $c_switch_system $c_switch_machine $c_switch_x_system $DEFS"
 LIBS="${LD_SWITCH_SITE} $ld_switch_x_system $libsrc_libs $LIBS"
     case "${arg}" in
 	-L*) if test -f `echo "${arg}/libtt.a" | sed 's/^\-L//'` ; then
 		 dash_r=''
-		 if test -n "${add_runtime_flag}" ; then
-		     dash_r=`echo ${arg} | sed "s/^-L/-R${dash_r_space}/"`
+		 if  "${add_runtime_flag}" = "yes" ; then
+		     dash_r=`echo ${arg} | sed "s/^-L */${runtime_arg}/"`
 		 fi
 		 LD_SWITCH_X_SITE="${LD_SWITCH_X_SITE} ${arg} ${dash_r}"
 	     fi
 
 
 
+echo "$0 $configure_args" >> Installation
+# Start stdout redirection to '| tee -a Installation'
+(
 echo "
 
 Configured for \`${canonical}'.
   Should XEmacs use the relocating allocator for buffers? ${rel_alloc}
   What window system should XEmacs use?                   ${window_system}${x_includes+
   Where do we find X Windows header files?                }${x_includes}${x_libraries+
-  Where do we find X Windows libraries?                   }${x_libraries}" >> Installation
+  Where do we find X Windows libraries?                   }${x_libraries}"
 
 if test -n "$site_includes"; then
-  echo "  Additional header files:                                ${site_includes}" >> Installation
+  echo "  Additional header files:                                ${site_includes}"
 fi
 
 if test -n "$site_libraries" -a -n "$site_runtime_libraries"; then
-  echo "  Additional libraries:                                   ${site_libraries} ${site_runtime_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_libraries} ${site_runtime_libraries}"
 elif test -n "$site_libraries"; then
-  echo "  Additional libraries:                                   ${site_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_libraries}"
 elif test -n "$site_runtime_libraries"; then
-  echo "  Additional libraries:                                   ${site_runtime_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_runtime_libraries}"
 fi
 if test "$with_wnn"; then
-  echo "  Finding WNN includes with:                              ${wnn_includes}" >> Installation
-  echo "  Loading WNN libs with:                                  ${wnn_libraries}" >> Installation
-fi
-test "$with_socks" = yes && echo "  Compiling in support for SOCKS." >> Installation
-test "$with_term"  = yes && echo "  Compiling in support for TERM." >> Installation
-test "$with_xauth" = yes && echo "  Compiling in support for XAUTH." >> Installation
-test "$with_xpm"   = yes && echo "  Compiling in support for XPM." >> Installation
+  echo "  Finding WNN includes with:                              ${wnn_includes}"
+  echo "  Loading WNN libs with:                                  ${wnn_libraries}"
+fi
+test "$with_socks" = yes && echo "  Compiling in support for SOCKS."
+test "$with_term"  = yes && echo "  Compiling in support for TERM."
+test "$with_xauth" = yes && echo "  Compiling in support for XAUTH."
+test "$with_xpm"   = yes && echo "  Compiling in support for XPM."
 if test "$with_xmu" != yes -a "$window_system" != none; then
-  echo "  No Xmu; substituting equivalent routines." >> Installation
-fi
-test "$with_xface" = yes && echo "  Compiling in support for X-Face headers." >> Installation
-test "$with_gif"   = yes && echo "  Compiling in support for GIF image conversion." >> Installation
-test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image conversion." >> Installation
+  echo "  No Xmu; substituting equivalent routines."
+fi
+test "$with_xface" = yes && echo "  Compiling in support for X-Face headers."
+test "$with_gif"   = yes && echo "  Compiling in support for GIF image conversion."
+test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image conversion."
 if test "$with_png"   = yes -o "$with_png" = gnuz; then
-  echo "  Compiling in support for PNG image conversion." >> Installation
+  echo "  Compiling in support for PNG image conversion."
 fi
 if test "$with_png" = gnuz; then
-  echo "  (Using -lgz instead of -lz.)" >> Installation
-fi
-test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image conversion (not implemented)." >> Installation
-test "$with_epoch" = yes && echo "  Compiling in extra Epoch compatibility." >> Installation
-
-test "$with_sound" = nas    && echo "  Compiling in network sound support." >> Installation
-test "$with_sound" = native && echo "  Compiling in native sound support." >> Installation
-test "$with_sound" = both   && echo "  Compiling in both network and native sound support." >> Installation
-test "$old_nas"    = true   && echo "        nas library lacks error trapping, will play synchronously" >> Installation
-
-test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB." >> Installation
-test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM." >> Installation
-test "$with_database_gnudbm" = yes && echo "  Compiling in support for GNU DBM." >> Installation
-
-test "$with_ncurses"  = yes && echo "  Compiling in support for ncurses." >> Installation
-test "$with_socks"    = yes && echo "  Compiling in support for SOCKS." >> Installation
-
-test "$with_mule"     = yes && echo "  Compiling in Mule (multi-lingual) support." >> Installation
-test "$with_xim"      != no && echo "  Compiling in XIM (X11R5+ I18N input method) support." >> Installation
-test "$with_xim" = motif    && echo "    Using Motif to provide XIM support." >> Installation
-test "$with_xim" = xlib     && echo "    Using raw Xlib to provide XIM support." >> Installation
-test "$with_canna"    = yes && echo "  Compiling in support for Canna on Mule." >> Installation
-test "$with_wnn"      = yes && echo "  Compiling in support for WNN on Mule." >> Installation
-test "$with_wnn6"     = yes && echo "  WNN support for version 6." >> Installation
-test "$with_i18n3"    = yes && echo "  Compiling in I18N support, level 3 (doesn't currently work)." >> Installation
-
-test "$with_cde"      = yes && echo "  Compiling in support for CDE." >> Installation
-test "$with_tooltalk" = yes && echo "  Compiling in support for ToolTalk." >> Installation
-test "$with_offix"    = yes && echo "  Compiling in support for OffiX." >> Installation
-test "$with_mocklisp" = yes && echo "  Compiling in support for Mocklisp." >> Installation
-test "$with_sparcworks" = yes && echo "  Compiling in support for SparcWorks." >> Installation
-test "$with_energize" = yes && echo "  Compiling in support for Lucid Energize (doesn't currently work)." >> Installation
-test "$with_menubars" = "lucid" && echo "  Using the Lucid menubar." >> Installation
+  echo "  (Using -lgz instead of -lz.)"
+fi
+test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image conversion (not implemented)."
+test "$with_epoch" = yes && echo "  Compiling in extra Epoch compatibility."
+
+test "$with_sound" = nas    && echo "  Compiling in network sound support."
+test "$with_sound" = native && echo "  Compiling in native sound support."
+test "$with_sound" = both   && echo "  Compiling in both network and native sound support."
+test "$old_nas"    = true   && echo "        nas library lacks error trapping, will play synchronously"
+
+test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB."
+test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM."
+test "$with_database_gnudbm" = yes && echo "  Compiling in support for GNU DBM."
+
+test "$with_ncurses"  = yes && echo "  Compiling in support for ncurses."
+test "$with_socks"    = yes && echo "  Compiling in support for SOCKS."
+
+test "$with_mule"     = yes && echo "  Compiling in Mule (multi-lingual) support."
+test "$with_xim"      != no && echo "  Compiling in XIM (X11R5+ I18N input method) support."
+test "$with_xim" = motif    && echo "    Using Motif to provide XIM support."
+test "$with_xim" = xlib     && echo "    Using raw Xlib to provide XIM support."
+test "$with_canna"    = yes && echo "  Compiling in support for Canna on Mule."
+test "$with_wnn"      = yes && echo "  Compiling in support for WNN on Mule."
+test "$with_wnn6"     = yes && echo "  WNN support for version 6."
+test "$with_i18n3"    = yes && echo "  Compiling in I18N support, level 3 (doesn't currently work)."
+
+test "$with_cde"      = yes && echo "  Compiling in support for CDE."
+test "$with_tooltalk" = yes && echo "  Compiling in support for ToolTalk."
+test "$with_offix"    = yes && echo "  Compiling in support for OffiX."
+test "$with_mocklisp" = yes && echo "  Compiling in support for Mocklisp."
+test "$with_sparcworks" = yes && echo "  Compiling in support for SparcWorks."
+test "$with_energize" = yes && echo "  Compiling in support for Lucid Energize (doesn't currently work)."
+test "$with_menubars" = "lucid" && echo "  Using the Lucid menubar."
 if test "$with_menubars" = "motif"; then
-  echo "  Using the Motif menubar." >> Installation
-  echo " *WARNING*  The Motif menubar is currently buggy.  We recommend" >> Installation
-  echo "            that you use the Lucid menubar instead.  Re-run" >> Installation
-  echo "            configure with --with-menubars='lucid'." >> Installation
-fi
-test "$with_scrollbars" = lucid  && echo "  Using the Lucid scrollbar." >> Installation
-test "$with_scrollbars" = motif  && echo "  Using the Motif scrollbar." >> Installation
-test "$with_scrollbars" = athena && echo "  Using the Athena scrollbar." >> Installation
-test "$with_scrollbars" = athena3d && echo "  Using the Athena-3d scrollbar." >> Installation
-test "$with_dialogs"    = motif  && echo "  Using the Motif dialog boxes." >> Installation
-test "$with_dialogs"    = athena && echo "  Using the Athena dialog boxes." >> Installation
-test "$with_dialogs"    = athena3d && echo "  Using the Athena-3d dialog boxes." >> Installation
-
-test "${use_union_type}"     = yes && echo "  Using the union type for Lisp_Objects." >> Installation
-test "${debug}"              = yes && echo "  Compiling in extra code for debugging." >> Installation
-test "${memory_usage_stats}" = yes && echo "  Compiling in code for checking XEmacs memory usage." >> Installation
-test "$usage_tracking"       = yes && echo "  Compiling with usage tracking active (Sun internal)." >> Installation
-echo " >> Installation
-"
-
-test -r Installation && cat Installation
+  echo "  Using the Motif menubar."
+  echo " *WARNING*  The Motif menubar is currently buggy.  We recommend"
+  echo "            that you use the Lucid menubar instead.  Re-run"
+  echo "            configure with --with-menubars='lucid'."
+fi
+test "$with_scrollbars" = lucid  && echo "  Using the Lucid scrollbar."
+test "$with_scrollbars" = motif  && echo "  Using the Motif scrollbar."
+test "$with_scrollbars" = athena && echo "  Using the Athena scrollbar."
+test "$with_scrollbars" = athena3d && echo "  Using the Athena-3d scrollbar."
+test "$with_dialogs"    = motif  && echo "  Using the Motif dialog boxes."
+test "$with_dialogs"    = athena && echo "  Using the Athena dialog boxes."
+test "$with_dialogs"    = athena3d && echo "  Using the Athena-3d dialog boxes."
+
+test "${use_union_type}"     = yes && echo "  Using the union type for Lisp_Objects."
+test "${debug}"              = yes && echo "  Compiling in extra code for debugging."
+test "${memory_usage_stats}" = yes && echo "  Compiling in code for checking XEmacs memory usage."
+test "$usage_tracking"       = yes && echo "  Compiling with usage tracking active (Sun internal)."
+) | tee -a Installation
+echo " | tee -a Installation
+"
 
  
 # Remove any trailing slashes in these variables.

File configure.in

View file
 Debugging options:
 
 --debug			Compile with support for debugging XEmacs.
-			(Causes code-size increase but no loss of speed.)
+			(Causes code-size increase and little loss of speed.)
 --error-checking=TYPE[,TYPE]...
 			Compile with internal error-checking added.
 			Causes noticeable loss of speed.  Valid types
   with_toolbars='yes'
 fi
 [
+runtime_arg="-R${dash_r_space}"
+
 case "${canonical}" in
-  *-sun-solaris* | *-sun-sunos5* ) add_runtime_flag=yes ;;
+  *-sun-solaris* | *-sun-sunos5* ) 
+    add_runtime_flag=yes ;;
+  *-sgi-irix5.* )
+    # In the IRIX 5.3 ld, only the last -rpath arg has any effect.  This is 
+    # fundamentaly incompatible with having separate LD_SWITCH_X_SITE
+    # and LD_SWITCH_SITE variables.  Fortunately, SGI fixed this by 6.2.
+    if [ -n "${x_libraries}" ] || [ -n "${site_runtime_libraries}" ]; then
+      (echo "WARNING: The IRIX 5 ld ignores all but the last -rpath argument,";
+       echo "         so if you need to specify more than one additional";
+       echo "         runtime library directory, you will have to do so";
+       echo "         manually by setting the environment variable";
+       echo "         LD_SWITCH_SITE to '-rpath <path>' before running";
+       echo "         configure.  If you have only one additional directory,"
+       echo "         you can specify it with --site-runtime-libraries.") >&2
+    fi
+    runtime_arg="-rpath " ;;
+  *-sgi-irix* )
+    # Note that IRIX gcc (as of 2.7.2) doesn't accept -rpath, so
+    # using it can cause trouble.  Specifying --use-gcc=no will work 
+    # around this, but the real problem is that configure uses $LDFLAGS 
+    # as arguments to $(CC), instead of using prefix-args like the
+    # src/Makefile does.
+    add_runtime_flag=yes;
+    runtime_arg="-rpath " ;;
 esac
 
 if test -n "${x_libraries}" ; then
-  if test "${add_runtime_flag}" ; then
-    LD_SWITCH_X_SITE="-L${x_libraries} -R${dash_r_space}${x_libraries}"
+    if test "${add_runtime_flag}" = "yes" ]; then
+	LD_SWITCH_X_SITE="-L${x_libraries} ${runtime_arg}${x_libraries}"
   else
     LD_SWITCH_X_SITE="-L${x_libraries}"
   fi
   for arg in ${site_runtime_libraries}
   do
     LD_SWITCH_SITE="${LD_SWITCH_SITE} -L${arg}"
-    LD_SWITCH_SITE="${LD_SWITCH_SITE} -R${dash_r_space}${arg}"
+    LD_SWITCH_SITE="${LD_SWITCH_SITE} ${runtime_arg}${arg}"
   done
 fi
 if test -n "${site_includes}" ; then
     case "${arg}" in
 	-L*) if test -f `echo "${arg}/libtt.a" | sed 's/^\-L//'` ; then
 		 dash_r=''
-		 if test -n "${add_runtime_flag}" ; then
-		     dash_r=`echo ${arg} | sed "s/^-L/-R${dash_r_space}/"`
+		 if [ "${add_runtime_flag}" = "yes" ]; then
+		     dash_r=`echo ${arg} | sed "s/^-L */${runtime_arg}/"`
 		 fi
 		 LD_SWITCH_X_SITE="${LD_SWITCH_X_SITE} ${arg} ${dash_r}"
 	     fi
 dnl #                     Report on what we decided to do                      #
 dnl ############################################################################
 
+echo "$0 $configure_args" >> Installation
+# Start stdout redirection to '| tee -a Installation'
+(
 echo "
 
 Configured for \`${canonical}'.
   Should XEmacs use the relocating allocator for buffers? ${rel_alloc}
   What window system should XEmacs use?                   ${window_system}${x_includes+
   Where do we find X Windows header files?                }${x_includes}${x_libraries+
-  Where do we find X Windows libraries?                   }${x_libraries}" >> Installation
+  Where do we find X Windows libraries?                   }${x_libraries}"
 
 if test -n "$site_includes"; then
-  echo "  Additional header files:                                ${site_includes}" >> Installation
+  echo "  Additional header files:                                ${site_includes}"
 fi
 
 if test -n "$site_libraries" -a -n "$site_runtime_libraries"; then
-  echo "  Additional libraries:                                   ${site_libraries} ${site_runtime_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_libraries} ${site_runtime_libraries}"
 elif test -n "$site_libraries"; then
-  echo "  Additional libraries:                                   ${site_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_libraries}"
 elif test -n "$site_runtime_libraries"; then
-  echo "  Additional libraries:                                   ${site_runtime_libraries}" >> Installation
+  echo "  Additional libraries:                                   ${site_runtime_libraries}"
 fi
 if test "$with_wnn"; then
-  echo "  Finding WNN includes with:                              ${wnn_includes}" >> Installation
-  echo "  Loading WNN libs with:                                  ${wnn_libraries}" >> Installation
+  echo "  Finding WNN includes with:                              ${wnn_includes}"
+  echo "  Loading WNN libs with:                                  ${wnn_libraries}"
 fi
-test "$with_socks" = yes && echo "  Compiling in support for SOCKS." >> Installation
-test "$with_term"  = yes && echo "  Compiling in support for TERM." >> Installation
-test "$with_xauth" = yes && echo "  Compiling in support for XAUTH." >> Installation
-test "$with_xpm"   = yes && echo "  Compiling in support for XPM." >> Installation
+test "$with_socks" = yes && echo "  Compiling in support for SOCKS."
+test "$with_term"  = yes && echo "  Compiling in support for TERM."
+test "$with_xauth" = yes && echo "  Compiling in support for XAUTH."
+test "$with_xpm"   = yes && echo "  Compiling in support for XPM."
 if test "$with_xmu" != yes -a "$window_system" != none; then
-  echo "  No Xmu; substituting equivalent routines." >> Installation
+  echo "  No Xmu; substituting equivalent routines."
 fi
-test "$with_xface" = yes && echo "  Compiling in support for X-Face headers." >> Installation
-test "$with_gif"   = yes && echo "  Compiling in support for GIF image conversion." >> Installation
-test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image conversion." >> Installation
+test "$with_xface" = yes && echo "  Compiling in support for X-Face headers."
+test "$with_gif"   = yes && echo "  Compiling in support for GIF image conversion."
+test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image conversion."
 if test "$with_png"   = yes -o "$with_png" = gnuz; then
-  echo "  Compiling in support for PNG image conversion." >> Installation
+  echo "  Compiling in support for PNG image conversion."
 fi
 if test "$with_png" = gnuz; then
-  echo "  (Using -lgz instead of -lz.)" >> Installation
+  echo "  (Using -lgz instead of -lz.)"
 fi
-test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image conversion (not implemented)." >> Installation
-test "$with_epoch" = yes && echo "  Compiling in extra Epoch compatibility." >> Installation
-
-test "$with_sound" = nas    && echo "  Compiling in network sound support." >> Installation
-test "$with_sound" = native && echo "  Compiling in native sound support." >> Installation
-test "$with_sound" = both   && echo "  Compiling in both network and native sound support." >> Installation
-test "$old_nas"    = true   && echo "        nas library lacks error trapping, will play synchronously" >> Installation
-
-test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB." >> Installation
-test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM." >> Installation
-test "$with_database_gnudbm" = yes && echo "  Compiling in support for GNU DBM." >> Installation
-
-test "$with_ncurses"  = yes && echo "  Compiling in support for ncurses." >> Installation
-test "$with_socks"    = yes && echo "  Compiling in support for SOCKS." >> Installation
-
-test "$with_mule"     = yes && echo "  Compiling in Mule (multi-lingual) support." >> Installation
-test "$with_xim"      != no && echo "  Compiling in XIM (X11R5+ I18N input method) support." >> Installation
-test "$with_xim" = motif    && echo "    Using Motif to provide XIM support." >> Installation
-test "$with_xim" = xlib     && echo "    Using raw Xlib to provide XIM support." >> Installation
-test "$with_canna"    = yes && echo "  Compiling in support for Canna on Mule." >> Installation
-test "$with_wnn"      = yes && echo "  Compiling in support for WNN on Mule." >> Installation
-test "$with_wnn6"     = yes && echo "  WNN support for version 6." >> Installation
-test "$with_i18n3"    = yes && echo "  Compiling in I18N support, level 3 (doesn't currently work)." >> Installation
-
-test "$with_cde"      = yes && echo "  Compiling in support for CDE." >> Installation
-test "$with_tooltalk" = yes && echo "  Compiling in support for ToolTalk." >> Installation
-test "$with_offix"    = yes && echo "  Compiling in support for OffiX." >> Installation
-test "$with_mocklisp" = yes && echo "  Compiling in support for Mocklisp." >> Installation
-test "$with_sparcworks" = yes && echo "  Compiling in support for SparcWorks." >> Installation
-test "$with_energize" = yes && echo "  Compiling in support for Lucid Energize (doesn't currently work)." >> Installation
-test "$with_menubars" = "lucid" && echo "  Using the Lucid menubar." >> Installation
+test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image conversion (not implemented)."
+test "$with_epoch" = yes && echo "  Compiling in extra Epoch compatibility."
+
+test "$with_sound" = nas    && echo "  Compiling in network sound support."
+test "$with_sound" = native && echo "  Compiling in native sound support."
+test "$with_sound" = both   && echo "  Compiling in both network and native sound support."
+test "$old_nas"    = true   && echo "        nas library lacks error trapping, will play synchronously"
+
+test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB."
+test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM."
+test "$with_database_gnudbm" = yes && echo "  Compiling in support for GNU DBM."
+
+test "$with_ncurses"  = yes && echo "  Compiling in support for ncurses."
+test "$with_socks"    = yes && echo "  Compiling in support for SOCKS."
+
+test "$with_mule"     = yes && echo "  Compiling in Mule (multi-lingual) support."
+test "$with_xim"      != no && echo "  Compiling in XIM (X11R5+ I18N input method) support."
+test "$with_xim" = motif    && echo "    Using Motif to provide XIM support."
+test "$with_xim" = xlib     && echo "    Using raw Xlib to provide XIM support."
+test "$with_canna"    = yes && echo "  Compiling in support for Canna on Mule."
+test "$with_wnn"      = yes && echo "  Compiling in support for WNN on Mule."
+test "$with_wnn6"     = yes && echo "  WNN support for version 6."
+test "$with_i18n3"    = yes && echo "  Compiling in I18N support, level 3 (doesn't currently work)."
+
+test "$with_cde"      = yes && echo "  Compiling in support for CDE."
+test "$with_tooltalk" = yes && echo "  Compiling in support for ToolTalk."
+test "$with_offix"    = yes && echo "  Compiling in support for OffiX."
+test "$with_mocklisp" = yes && echo "  Compiling in support for Mocklisp."
+test "$with_sparcworks" = yes && echo "  Compiling in support for SparcWorks."
+test "$with_energize" = yes && echo "  Compiling in support for Lucid Energize (doesn't currently work)."
+test "$with_menubars" = "lucid" && echo "  Using the Lucid menubar."
 if test "$with_menubars" = "motif"; then
-  echo "  Using the Motif menubar." >> Installation
-  echo " *WARNING*  The Motif menubar is currently buggy.  We recommend" >> Installation
-  echo "            that you use the Lucid menubar instead.  Re-run" >> Installation
-  echo "            configure with --with-menubars='lucid'." >> Installation
+  echo "  Using the Motif menubar."
+  echo " *WARNING*  The Motif menubar is currently buggy.  We recommend"
+  echo "            that you use the Lucid menubar instead.  Re-run"
+  echo "            configure with --with-menubars='lucid'."
 fi
-test "$with_scrollbars" = lucid  && echo "  Using the Lucid scrollbar." >> Installation
-test "$with_scrollbars" = motif  && echo "  Using the Motif scrollbar." >> Installation
-test "$with_scrollbars" = athena && echo "  Using the Athena scrollbar." >> Installation
-test "$with_scrollbars" = athena3d && echo "  Using the Athena-3d scrollbar." >> Installation
-test "$with_dialogs"    = motif  && echo "  Using the Motif dialog boxes." >> Installation
-test "$with_dialogs"    = athena && echo "  Using the Athena dialog boxes." >> Installation
-test "$with_dialogs"    = athena3d && echo "  Using the Athena-3d dialog boxes." >> Installation
-
-test "${use_union_type}"     = yes && echo "  Using the union type for Lisp_Objects." >> Installation
-test "${debug}"              = yes && echo "  Compiling in extra code for debugging." >> Installation
-test "${memory_usage_stats}" = yes && echo "  Compiling in code for checking XEmacs memory usage." >> Installation
-test "$usage_tracking"       = yes && echo "  Compiling with usage tracking active (Sun internal)." >> Installation
-echo " >> Installation
+test "$with_scrollbars" = lucid  && echo "  Using the Lucid scrollbar."
+test "$with_scrollbars" = motif  && echo "  Using the Motif scrollbar."
+test "$with_scrollbars" = athena && echo "  Using the Athena scrollbar."
+test "$with_scrollbars" = athena3d && echo "  Using the Athena-3d scrollbar."
+test "$with_dialogs"    = motif  && echo "  Using the Motif dialog boxes."
+test "$with_dialogs"    = athena && echo "  Using the Athena dialog boxes."
+test "$with_dialogs"    = athena3d && echo "  Using the Athena-3d dialog boxes."
+
+test "${use_union_type}"     = yes && echo "  Using the union type for Lisp_Objects."
+test "${debug}"              = yes && echo "  Compiling in extra code for debugging."
+test "${memory_usage_stats}" = yes && echo "  Compiling in code for checking XEmacs memory usage."
+test "$usage_tracking"       = yes && echo "  Compiling with usage tracking active (Sun internal)."
+) | tee -a Installation
+echo " | tee -a Installation
 "
-
-test -r Installation && cat Installation
 dnl ############################################################################
 dnl #                                Now generate!                             #
 dnl ############################################################################

File etc/FTP

View file
 								-*- text -*-
 
-	   XEmacs availability information.  Last Modified: 10-feb-96.
+	   XEmacs availability information.  Last Modified: 25-Mar-1997.
 
 XEmacs is available via anonymous FTP from ftp.xemacs.org (128.174.252.16)
 in the directory /pub/xemacs/.
 ftp.xemacs.org is the primary distribution point, but you may find
 copies of it at other sites as well.  Some sites to try include:
 
-	ftp.ai.mit.edu:/pub/xemacs/
-	ftp.uu.net:/systems/gnu/xemacs/
-	ftp.sunet.se:/pub/gnu/xemacs/
-	ftp.cenatls.cena.dgac.fr:/pub/Emacs/xemacs/
-	liasun3.epfl.ch:/pub/gnu/xemacs/
-	ftp.th-darmstadt.de:/pub/editors/xemacs/
-	audrey.levels.unisa.edu.au:/xemacs/
-	sunsite.doc.ic.ac.uk:/gnu/xemacs/
-	uiarchive.cso.uiuc.edu:/pub/packages/xemacs/
-	ftp.technion.ac.il:/pub/unsupported/gnu/xemacs/
-	thphys.irb.hr:/pub/xemacs/
+	ftp://ftp.ai.mit.edu:/pub/xemacs/
+	ftp://ftp-digital.cern.ch:/pub/beta/xemacs-20.0/
+	ftp://ftp.uu.net:/systems/gnu/xemacs/
+	ftp://ftp.sunet.se:/pub/gnu/xemacs/
+	ftp://tp.cenatls.cena.dgac.fr:/pub/Emacs/xemacs/
+	ftp://ftp.th-darmstadt.de:/pub/editors/xemacs/
+	ftp://sunsite.doc.ic.ac.uk:/gnu/xemacs/
+	ftp://ftp.ibp.fr:/pub/emacs/xemacs/
+	ftp://uiarchive.cso.uiuc.edu:/pub/packages/xemacs/
+	ftp://ftp.technion.ac.il:/pub/unsupported/gnu/xemacs/
+	ftp://thphys.irb.hr:/pub/xemacs/
+	ftp://sunsite.cnlab-switch.ch/mirror/xemacs/
+	ftp://ftp.unicamp.br:/pub/xemacs/r20.0/
+	ftp://ftp.usyd.edu.au:/pub/Xemacs/
+	ftp://ftp.lab.kdd.co.jp/xemacs/
+	ftp://SunSITE.sut.ac.jp/pub/archives/xemacs/
+
 
 The most up-to-date list of distribution sites can always be found on
 the XEmacs WWW page, http://www.xemacs.org/.  Try to pick a site

File etc/NEWS

View file
 
 New users should look at the next section on "Using Outline Mode".  You will
 be more efficient when you can navigate quickly through this file.  Users
-interested in some of the details of how XEmacs differs from FSF GNU Emacs
+interested in some of the details of how XEmacs differs from GNU Emacs
 should read the section "What's Different?".  Users who would to know which
 capabilities have been introduced in each release should look at the
 appropriate subsection of the "XEmacs Release Notes."
 ===================
 
 
-** Differences between XEmacs and FSF GNU Emacs 19
+** Differences between XEmacs and GNU Emacs 19
 ==================================================
 In XEmacs 20, characters are first-class objects.  Characters can be
 converted to integers, but are not integers.  FSF 19, XEmacs 19, and Mule
 In XEmacs, keymaps are first-class opaque objects.  FSF 19 represents them as
 complicated combinations of association lists and vectors.  If you use the
 advertised functional interface to manipulation of keymaps, the same code
-will work in XEmacs, Emacs 18, and FSF GNU Emacs 19; if your code depends
+will work in XEmacs, Emacs 18, and GNU Emacs 19; if your code depends
 on the underlying implementation of keymaps, it will not.
 
 XEmacs uses "extents" to represent all non-textual aspects of buffers;
 -- The `face' property of extents and text properties can now
    be a list.
 
--- The `mouse-face' property from FSF GNU Emacs is now supported.
+-- The `mouse-face' property from GNU Emacs is now supported.
    It supersedes the `highlight' property.
 
--- `enriched' and `facemenu' packages from FSF GNU Emacs have been ported.
+-- `enriched' and `facemenu' packages from GNU Emacs have been ported.
 
 -- New functions for easier creation of dialog boxes:
    `get-dialog-box-response', `message-box', and `message-or-box'.
 *** Keymaps
 -----------
 
-The FSF GNU Emacs concept of `function-key-map' is now partially
+The GNU Emacs concept of `function-key-map' is now partially
 implemented.  This allows conversion of function-key escape sequences
 such as `ESC [ 1 1 ~' into an equivalent human-readable keysym such as
 `F1'.  This work will be completed in 19.14.  The function-key map is
 can now easily specify an action to be invoked on single-click
 (i.e. down-up without appreciable motion), double-click, drag-up, etc.
 
-Some code from FSF GNU Emacs has been ported over, generalizing some of
+Some code from GNU Emacs has been ported over, generalizing some of
 the X-specific mouse stuff.
 
 ** INCOMPATIBLE CHANGE **: The function `set-mouse-position' accepts

File etc/jareth.xpm.Z

Binary file added.

File etc/jarethm.xpm.Z

Binary file added.

File etc/sample.emacs

View file
     )
   )
 
+;;; ********************
+;;; Load the default-dir.el package which installs fancy handling
+;;;  of the initial contents in the minibuffer when reading
+;;; file names.
+
+(if (and running-xemacs
+	 (or (and (= emacs-major-version 20) (>= emacs-minor-version 1))
+	     (and (= emacs-major-version 19) (>= emacs-minor-version 15))))
+    (require 'default-dir))
 
 ;;; ********************
 ;;; Load the auto-save.el package, which lets you put all of your autosave

File etc/sgml/CATALOG

View file
 PUBLIC "-//Microsoft//DTD Internet Explorer 3.0 Tables//EN"     ie3tables.dtd
 PUBLIC "-//Microsoft//DTD Internet Explorer 3.0 HTML//EN"       ie30.dtd
 PUBLIC "+//Silmaril//DTD HTML Pro v0r11 19970101//EN"	htmlpro.dtd
-DOCTYPE HTML						html.dtd
+DOCTYPE HTML						html-3.2f.dtd
 DOCTYPE HTML-3						html-3.dtd

File etc/w3/stylesheet

View file
 
        p  { display: block }
  pre,xmp  { display: block; white-space: pre; }
-blockquote{ display: block; margin-left: 5; margin-right: 5; }
+blockquote{ display: block; margin-left: 5em; margin-right: 5em; }
 
 /*
 ** How to draw form elements.
       dir { display: block;     }
      menu { display: block;     }
        dt { font-weight: bold; display: list-item }
-       dd { display: list-item; margin-left: 5; }
-       li { display: list-item; margin-left: 5; }
+       dd { display: list-item; margin-left: 5em; }
+       li { display: list-item; margin-left: 5em; }
     ul li { list-style: circle; }
     ol li { list-style: decimal; }
 

File etc/xemacs-white.xpm

Removed
Old image

File etc/xemacs.xpm

View file
Old
Old image
New
New image

File info/dir

View file
 * CL::		A Common Lisp compatibility package for Emacs-Lisp.
 * Custom::	Customization Library for Emacs
 * Ediff::	A Visual Interface to Unix Diff and Patch Utilities.
+* EFS::		Transparent remote file access via FTP
 * External-Widget::
 		Use XEmacs as a text widget inside of another program.
 * Forms::	A package for editing databases by filling in forms.
 * Gnus::	A netnews and mail reader for XEmacs.
+* HM--HTML-Mode::  HTML Editing Mode.
 * Hyperbole::	A programmable information management and hypertext system.
 * ILISP::	Multi-dialect inferior LISP interface.
 * Ispell::	Interactive spelling corrector.

File lib-src/ChangeLog

View file
+Sun Mar 23 15:57:19 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* update-elc.sh (make_special_commands): Use target of x20 for efs.
+
 Wed Mar 19 10:38:04 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* Makefile.in.in (SCRIPTS): Link gzip-el.sh in --srcdir

File lib-src/emacsserver.c

View file
 #if ! defined (HAVE_SYSVIPC)
 /* BSD code is very different from SYSV IPC code */
 
+#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
 #include <sys/types.h>
 #include <sys/file.h>
 #include <sys/signal.h>
 #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
 #make_special vm
 #make_special ediff elc
 #make_special viper elc
-make_special efs
+make_special efs x20
 make_special gnus  some
 make_special w3 xemacs-w3
 make_special hyperbole elc

File lisp/ChangeLog

View file
+Fri Jul 19 12:01:51 1996  Christoph Wedler  <wedler@fmi.uni-passau.de>
+
+	* packages/info.el (Info-elisp-ref): Look first in lispref, then
+	elisp.
+
+	* packages/func-menu.el (fume-function-name-regexp-bibtex): `,'
+	isn't allowed.
+
+	* packages/etags.el (list-tags): Interactive argument should be an
+	existing file name.
+
+Wed Mar 26 22:33:40 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* Remove ns lisp directory.
+	* Remove vms lisp directory.
+
+Tue Mar 25 12:22:57 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* prim/files.el (file-remote-p): Update doc string.
+
+	* packages/terminal.el (te-stty-string): Fix definition for Linux.
+
+Mon Mar 24 23:43:53 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* prim/files.el (file-remote-p): Correct documentation and allow
+	for `allow-remote-paths' to control loading of efs.
+
+Sun Mar 23 16:58:08 1997  Tomasz J. Cholewo  <t.cholewo@ieee.org>
+
+	* packages/etags.el (with-caps-disable-folding): New macro.
+	(find-tag-internal): Use it.
+	(tags-search): Use it.
+	(tags-query-replace): Use it.  Case bug corrected.
+
+Mon Mar 24 00:47:38 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* x11/x-menubar.el (popup-mode-menu): Change guard when stripping
+	keywords to be more robust.
+
+Sun Mar 23 00:26:53 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* prim/startup.el (splash-hack-version-string): Correct for case
+	of hosts with '-' in the names.
+
+Sat Mar 22 14:25:47 1997  Tomasz J. Cholewo  <t.cholewo@ieee.org>
+
+	* modes/sendmail.el (user-mail-address): Require cus-edit.
+	Fix when scope.
+
+Sat Mar 22 14:25:47 1997  Tomasz J. Cholewo  <t.cholewo@ieee.org>
+
+	* calendar/diary-lib.el (diary-countdown): New function.
+	(fancy-diary-display): Use modeline-buffer-identification.
+
+	* calendar/appt.el (appt-diary-entries): Do not display diary.
+	(appt-check): Display diary buffer at midnight.  
+	
 Fri Mar 21 19:16:46 1997  Steven L Baur  <steve@altair.xemacs.org>
 
 	* mule/mule-coding.el (enable-multibyte-characters): MULE
-	compatabile variable.
+	compatible variable.
 
 Thu Mar 20 13:28:17 1997  Steven L Baur  <steve@altair.xemacs.org>
 

File lisp/README

View file
 			loads a file named $TERM.el from this directory, if
 			that file exists.
 
-	vms		VMS-specific code.
+	vms		VMS-specific code. (Not functional)
 
 	x11		X Window System-specific code.
 
 
 Some packages are fairly large; those have been given their own	directories:
 
+	auctex		A package for editing TeX documents.
+
 	bytecomp	The XEmacs-lisp compiler.
 
 	calendar	A calendar and appointment manager.
 
+	cl		Common Lisp compatibility code.
+
 	comint		General code for interacting with inferior processes,
 			like shell buffers and lisp interpreters.
 
-	dired		The directory editor.
+	custom		User environment customization code.
 
 	edebug		A source-level debugger for Elisp.
 
 	ediff		A comprehensive visual interface to diff and patch.
 
+	efs		The directory editor, remote FTP frontend.
+
+	egg		MULE Input Method.
+
 	electric	The "electric" commands; these implement temporary
 			windows for help, list-buffers, etc.
 
 	eterm		A merge of the comint shell mode with an
 			ANSI-compatible terminal-emulator.
 
-	gnus		An NNTP-based newsreader; version 3.14.
+	gnus		A network news and mail reader.
 
 	hm--html-menus	Menu interface to html-mode.
 
 	ilisp		A comint-based package for interacting with inferior
 			lisp processes.
 
+	iso		ISO Latin language support.
+
+	its		MULE Input Method.
+
+	locale		IE18N stuff.
+
+	mailcrypt	Package for dealing with PGP encrypted messages.
+
+	mel		MIME encoding library (part of the Tools for MIME).
+
 	mh-e		An interface to the MH-E mail handling system.
 
+	mu		Message Utilities library (part of the Tools for
+			MIME).
+
+	mule		Multi-lingual extensions for XEmacs.
+
+	ns		NeXTStep support.
+
 	oobr		An Object-Oriented class browser.
 
 	pcl-cvs		An interface to the Concurrent Version System.
 
+	psgml		General purpose SGML editing support with extra
+			support for editing HTML.
+
+	quail		MULE Input Method.
+
 	rmail		A BABYL-format mail reader.
 
 	sunpro		Additional code for interfacing with SunPro products.
 
+	tl		Tiny Library (Part of the Tools for MIME).
+
+	tm		Tools for MIME.  MIME support for emacs lisp based
+			news and mail readers.
+
 	tooltalk	An inteface to the ToolTalk communication protocol.
 
 	viper		A full-featured VI emulator.
 
 	vm		View Mail, an UNIX-format alternative to RMAIL.
 
-	url		A Uniform Resource Locator retrieval tool.
-
 	w3		A World Wide Web interface.

File lisp/calendar/appt.el

View file
 ;;; 29-nov-89	created by Neil Mager <neilm@juliet.ll.mit.edu>.
 ;;; 23-feb-91	hacked upon by Jamie Zawinski <jwz@lucid.com>.
 ;;;  1-apr-91	some more.
-;;; 12-jul-95   updated for XEmacs 19.12 by Greg Veres <gveres@cgl.uwaterloo.ca>
+;;; 12-jul-95   updated for XEmacs 19.12 by Greg Veres 
+;;;             <gveres@cgl.uwaterloo.ca>
+;;; 21-mar-97   better support for fancy diary display by Tomasz J. Cholewo 
+;;;             <t.cholewo@ieee.org>
 ;;;
 ;; appt.el - visible and/or audible notification of
 ;;           appointments from ~/diary file generated from
 ;;;
 ;;; This also interacts correctly with Benjamin Pierce's reportmail.el package.
 ;;;
-;;; Brief internal description - Skip this if your not interested!
+;;; Brief internal description - Skip this if you are not interested!
 ;;;
 ;;; The function appt-initialize invokes 'diary' to get a list of today's
 ;;; appointments, and parses the lines beginning with date descriptions.
 ;;;
 ;;; TO DO:
 ;;;
-;;;  o  multiple adjascent appointments are not handled gracefully.  If there 
+;;;  o  multiple adjacent appointments are not handled gracefully.  If there 
 ;;;     is an appointment at 3:30 and another at 3:35, and you have set things
 ;;;     up so that you get a notification twenty minutes before each appt,
 ;;;     then a notification should come at 3:10 for the first appt, and at
 ;;; Internal stuff
 
 (defun appt-convert-time (time2conv)
-  " Convert hour:min[am/pm] format to minutes from midnight."
+  "Convert hour:min[am/pm] format to minutes from midnight."
   (cond ((string-match "^[ \t]*midni\\(ght\\|te\\)[ \t]*\\'" time2conv)
 	 0)
 	((string-match "^[ \t]*noon[ \t]*\\'" time2conv)
 	   (+ (* hr 60) min)))))
 
 
-(defun appt-current-time-in-seconds ()
-  "returns the current time in seconds since midnight."
+(defun appt-current-time-in-minutes ()
+  "Returns the current time in minutes since midnight."
   (let* ((str (current-time-string))
 	 (hour (string-to-int (substring str 11 13)))
 	 (min  (string-to-int (substring str 14 16))))
 	  (< (car (car x)) (car (car y)))))))
 
 (defun appt-diary-entries ()
+  "Return an updated list of appointments for today."
   (let ((list-diary-entries-hook '(appt-make-list))
-	(diary-display-hook nil)
+	(diary-display-hook 'ignore)
 	(diary-list-include-blanks nil))
     ;; this will set appt-time-msg-list.
     (diary 1)
     appt-time-msg-list))
 
 (defun appt-initialize ()
-  " Read your `diary-file' and remember today's appointments.  Call this from 
+  "Read your `diary-file' and remember today's appointments.  Call this from 
  your .emacs file, or any time you want your .diary file re-read (this happens 
- automatically at midnight to move to notice the next day's appointments).
+ automatically at midnight to notice the next day's appointments).
  
  The time must be at the beginning of a line for it to be put in the 
  appointments list.
 	      (append (nreverse new-appts) appt-time-msg-list))))
   (setq appt-time-msg-list (appt-sort-list appt-time-msg-list))
   ;;
-  ;; Get the current time and convert it to minutes from midnight. ie. 12:01am
-  ;; = 1, midnight = 0, so that the elements in the list that are earlier than
-  ;; the present time can be removed.
+  ;; Get the current time and convert it to minutes from midnight, i.e.,
+  ;; 12:01am = 1, midnight = 0, so that the elements in the list that
+  ;; are earlier than the present time can be removed.
   ;;
-  (let ((cur-comp-time (appt-current-time-in-seconds))
+  (let ((cur-comp-time (appt-current-time-in-minutes))
 	(appt-comp-time (car (car (car appt-time-msg-list)))))
     (while (and appt-time-msg-list (< appt-comp-time cur-comp-time))
       (setq appt-time-msg-list (cdr appt-time-msg-list)) 
   (if appt-issue-message
    (let ((min-to-app -1))
      ;; Get the current time and convert it to minutes
-     ;; from midnight. ie. 12:01am = 1, midnight = 0.
-     (let* ((cur-comp-time (appt-current-time-in-seconds))
+     ;; from midnight, i.e., 12:01am = 1, midnight = 0.
+     (let* ((cur-comp-time (appt-current-time-in-minutes))
 	    ;; If the current time is the same as the tick, just return.
 	    ;; This means that this function has been called more than once
 	    ;; in the current minute, which is not useful.
        ;;
        ;; If it is now the next day (we have crossed midnight since the last
        ;; time this was called) then we should update our appointments to
-       ;; today's list.
-       (if turnover-p (appt-diary-entries))
+       ;; today's list.  Show the diary entries (tjc).
+       (if turnover-p (diary 1))
        ;;
        ;; Get the first time off of the list and calculate the number
        ;; of minutes until the appointment.

File lisp/calendar/diary-lib.el

View file
     (save-excursion;; Prepare the fancy diary buffer.
       (set-buffer (get-buffer-create fancy-diary-buffer))
       (setq buffer-read-only nil)
-      (make-local-variable 'mode-line-format)
-      (calendar-set-mode-line "Diary Entries")
+      (setq modeline-buffer-identification '("Diary Entries"))
       (erase-buffer)
       (let ((entry-list diary-entries-list)
             (holiday-list)
                   order of the parameters should be changed to D1, M1, Y1,
                   D2, M2, Y2.)
 
+      %%(diary-countdown BEFORE AFTER M1 D1 Y1) text
+                  Entry will appear on dates between BEFORE days before
+                  and AFTER days after specified date.  (If
+                  `european-calendar-style' is t, the order of the
+                  parameters should be changed to BEFORE, AFTER, D1, M1,
+                  Y1.)
+
       %%(diary-anniversary MONTH DAY YEAR) text
                   Entry will appear on anniversary dates of MONTH DAY, YEAR.
                   (If `european-calendar-style' is t, the order of the
 (defun diary-block (m1 d1 y1 m2 d2 y2)
   "Block diary entry.
 Entry applies if date is between two dates.  Order of the parameters is
-M1, D1, Y1, M2, D2, Y2 `european-calendar-style' is nil, and
+M1, D1, Y1, M2, D2, Y2 if `european-calendar-style' is nil, and
 D1, M1, Y1, D2, M2, Y2 if `european-calendar-style' is t."
   (let ((date1 (calendar-absolute-from-gregorian
                 (if european-calendar-style
     (if (and (<= date1 d) (<= d date2))
         entry)))
 
+(defun diary-countdown (before after m1 d1 y1)
+  "Countdown diary entry.
+Entry applies if date is between BEFORE days before and AFTER days after
+specified date.  Order of the parameters is BEFORE, AFTER, M1, D1, Y1 if
+`european-calendar-style' is nil, and BEFORE, AFTER, D1, M1, Y1 if
+`european-calendar-style' is t."
+  (let* ((date1 (calendar-absolute-from-gregorian
+                 (if european-calendar-style
+                     (list d1 m1 y1)
+                   (list m1 d1 y1))))
+         (d (calendar-absolute-from-gregorian date))
+         (diff (- d date1)))
+    (cond
+     ((and (<= (- before) diff) (< diff 0))
+      (concat (format "It is %d day%s before " 
+                      (- diff) (if (= diff -1) "" "s")) entry))
+     ((= diff 0) (concat (format "TODAY: " diff) entry))
+     ((and (<= diff after) (> diff 0)) 
+      (concat (format "It is %d day%s after " 
+                      diff (if (= diff 1) "" "s")) entry))
+     (t nil))))
+
 (defun diary-float (month dayname n)
   "Floating diary entry--entry applies if date is the nth dayname of month.
 Parameters are MONTH, DAYNAME, N.  MONTH can be a list of months, the constant

File lisp/custom/ChangeLog

View file
+Thu Mar 27 19:31:40 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* Version 1.68 released.
+
+Thu Mar 27 18:50:16 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* widget.el (:active): New keywords.
+	(:inactive): Ditto.
+	(:activate): Ditto.
+	(:deactivate): Ditto.
+
+	* wid-edit.el (widget-inactive-face): new face.
+	(widget-specify-inactive): New function.
+	(widget-overlay-inactive): Ditto.
+	(widget-specify-active): Ditto.
+	(widget-apply-action): Ditto.
+	(widget-field-activate): Use it.
+	(widget-button-click): Ditto.
+	(widget-button1-click): Ditto.
+	(widget-button-press): Ditto.
+	(widget-gui-action): Ditto.
+	(default): Use new keywords.
+	(widget-default-active): New function.
+	(widget-default-deactivate): Ditto.
+	(widget-checkbox-action): New function.
+	(checkbox): Use it.
+	(widget-checklist-add-item): Initialize active state.
+	(widget-radio-add-item): Ditto.
+	(widget-radio-value-set): Ditto.
+	(widget-radio-action): Ditto.
+
+	* widget.texi (Widget Properties): Document the new keywords. 
+
+Mon Mar 24 18:36:15 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* Version 1.67 released.
+
+Mon Mar 24 18:19:05 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* cus-edit.el (custom-save-all): Added autoload.
+
+	* Version 1.66 released.
+
+Mon Mar 24 18:09:04 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* wid-edit.el (widget-default-delete): Added workaround for bug
+	with empty `:format'.
+
+Thu Mar 20 12:33:59 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* custom.texi (The Init File): Explain that `custom-file' is not
+	automatically loaded.
+
 Tue Mar 18 14:42:31 1997  Per Abrahamsen  <abraham@dina.kvl.dk>
 
 	* Version 1.65 released.

File lisp/custom/cus-edit.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.65
+;; Version: 1.68
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
   (custom-mode)
   (widget-insert "This is a customization buffer.
 Push RET or click mouse-2 on the word ")
+  ;; (put-text-property 1 2 'start-open nil)
   (widget-create 'info-link 
 		 :tag "help"
 		 :help-echo "Read the online help."
       (unless (eolp)
 	(princ "\n")))))
 
+;;;###autoload
 (defun custom-save-all ()
   "Save all customizations in `custom-file'."
   (custom-save-variables)

File lisp/custom/cus-face.el

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

File lisp/custom/custom.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, faces
-;; Version: 1.65
+;; Version: 1.68
 ;; 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.65
+;; Version: 1.68
 ;; 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.65
+;; Version: 1.68
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
   (autoload 'pp-to-string "pp")
   (autoload 'Info-goto-node "info")
 
+  (when (string-match "XEmacs" emacs-version)
+    (require 'overlay))
+  
   (if (string-match "XEmacs" emacs-version)
       ;; XEmacs spell `intangible' as `atomic'.
       (defun widget-make-intangible (from to side)
        (goto-char (point-max))
        result)))
 
+(defface widget-inactive-face '((((class grayscale color)
+				  (background dark))
+				 (:foreground "light gray"))
+				(((class grayscale color)
+				  (background light))
+				 (:foreground "dark gray"))
+				(t 
+				 (:italic t)))
+  "Face used for inactive widgets."
+  :group 'widgets)
+
+(defun widget-specify-inactive (widget from to)
+  "Make WIDGET inactive for user modifications."
+  (unless (widget-get widget :inactive)
+    (let ((overlay (make-overlay from to nil t nil)))
+      (overlay-put overlay 'face 'widget-inactive-face)
+      (overlay-put overlay 'evaporate 't)
+      (overlay-put overlay (if (string-match "XEmacs" emacs-version)
+			       'read-only
+			     'modification-hooks) '(widget-overlay-inactive))
+      (widget-put widget :inactive overlay))))
+
+(defun widget-overlay-inactive (&rest junk)
+  "Ignoring the arguments, signal an error."
+  (unless inhibit-read-only
+    (error "Attempt to modify inactive widget")))
+
+
+(defun widget-specify-active (widget)
+  "Make WIDGET active for user modifications."
+  (let ((inactive (widget-get widget :inactive)))
+    (when inactive
+      (delete-overlay inactive)
+      (widget-put widget :inactive nil))))
+
 ;;; Widget Properties.
 
 (defsubst widget-type (widget)
 	 (cons (list (car vals)) (cdr vals)))
 	(t nil)))
 
+(defun widget-apply-action (widget &optional event)
+  "Apply :action in WIDGET in response to EVENT."
+  (if (widget-apply widget :active)
+      (widget-apply widget :action event)
+    (error "Attempt to perform action on inactive widget")))
+    
 ;;; Glyphs.
 
 (defcustom widget-glyph-directory (concat data-directory "custom/")
   (interactive "@d")
   (let ((field (get-text-property pos 'field)))
     (if field
-	(widget-apply field :action event)
+	(widget-apply-action field event)
       (call-interactively
        (lookup-key widget-global-map (this-command-keys))))))
 
 	      (event-glyph event))
 	 (let ((widget (glyph-property (event-glyph event) 'widget)))
 	   (if widget
-	       (widget-apply widget :action event)
+	       (widget-apply-action widget event)
 	     (message "You clicked on a glyph."))))
 	((event-point event)
 	 (let ((button (get-text-property (event-point event) 'button)))
 	   (if button
-	       (widget-apply button :action event)
+	       (widget-apply-action button event)
 	     (call-interactively 
 	      (or (lookup-key widget-global-map [ button2 ])
 		  (lookup-key widget-global-map [ down-mouse-2 ])
 	   (event-glyph event))
       (let ((widget (glyph-property (event-glyph event) 'widget)))
 	(if widget
-	    (widget-apply widget :action event)
+	    (widget-apply-action widget event)
 	  (message "You clicked on a glyph.")))
     (call-interactively (lookup-key widget-global-map (this-command-keys)))))
 
   (interactive "@d")
   (let ((button (get-text-property pos 'button)))
     (if button
-	(widget-apply button :action event)
+	(widget-apply-action button event)
       (let ((command (lookup-key widget-global-map (this-command-keys))))
 	(when (commandp command)
 	  (call-interactively command))))))
   :value-inline 'widget-default-value-inline
   :menu-tag-get 'widget-default-menu-tag-get
   :validate (lambda (widget) nil)
+  :active 'widget-default-active
+  :activate 'widget-specify-active
+  :deactivate 'widget-default-deactivate
   :action 'widget-default-action
   :notify 'widget-default-notify)
 
 	(inhibit-read-only t)
 	after-change-functions)
     (widget-apply widget :value-delete)
-    (delete-region from to)
+    (when (< from to)
+      ;; Kludge: this doesn't need to be true for empty formats.
+      (delete-region from to))
     (set-marker from nil)
     (set-marker to nil)))
 
       (widget-get widget :tag)
       (widget-princ-to-string (widget-get widget :value))))
 
+(defun widget-default-active (widget)
+  "Return t iff this widget active (user modifiable)."
+  (and (not (widget-get widget :inactive))
+       (let ((parent (widget-get widget :parent)))
+	 (or (null parent) 
+	     (widget-apply parent :active)))))
+
+(defun widget-default-deactivate (widget)
+  "Make WIDGET inactive for user modifications."
+  (widget-specify-inactive widget
+			   (widget-get widget :from)
+			   (widget-get widget :to)))
+
 (defun widget-default-action (widget &optional event)
   ;; Notify the parent when a widget change
   (let ((parent (widget-get widget :parent)))
 
 (defun widget-gui-action (widget)
   "Apply :action for WIDGET."
-  (widget-apply widget :action (this-command-keys)))
+  (widget-apply-action widget (this-command-keys)))
 
 ;;; The `link' Widget.
 
   :on "[X]"
   :on-glyph "check1"
   :off "[ ]"
-  :off-glyph "check0")
+  :off-glyph "check0"
+  :action 'widget-checkbox-action)
+
+(defun widget-checkbox-action (widget &optional event)
+  "Toggle checkbox, notify parent, and set active state of sibling."
+  (widget-toggle-action widget event)
+  (let ((sibling (widget-get-sibling widget)))
+    (when sibling
+      (if (widget-value widget)
+	  (widget-apply sibling :activate)
+	(widget-apply sibling :deactivate)))))
 
 ;;; The `checklist' Widget.
 
 	       ((eq escape ?v)
 		(setq child
 		      (cond ((not chosen)
-			     (widget-create-child widget type))
+			     (let ((child (widget-create-child widget type)))
+			       (widget-apply child :deactivate)
+			       child))
 			    ((widget-get type :inline)
 			     (widget-create-child-value
 			      widget type (cdr chosen)))
 		(setq child (if chosen
 				(widget-create-child-value
 				 widget type value)
-			      (widget-create-child widget type))))
+			      (widget-create-child widget type)))
+		(unless chosen 
+		  (widget-apply child :deactivate)))
 	       (t 
 		(error "Unknown escape `%c'" escape)))))
      ;; Update properties.
 			 (widget-apply current :match value))))
 	(widget-value-set button match)
 	(if match 
-	    (widget-value-set current value))
+	    (progn 
+	      (widget-value-set current value)
+	      (widget-apply current :activate))
+	  (widget-apply current :deactivate))
 	(setq found (or found match))))))
 
 (defun widget-radio-validate (widget)
 	      children (cdr children))
 	(let* ((button (widget-get current :button)))
 	  (cond ((eq child button)
-		 (widget-value-set button t))
+		 (widget-value-set button t)
+		 (widget-apply current :activate))
 		((widget-value button)
-		 (widget-value-set button nil)))))))
+		 (widget-value-set button nil)
+		 (widget-apply current :deactivate)))))))
   ;; Pass notification to parent.
   (widget-apply widget :notify child event))
 
 	    (setq children (cdr children)))
 	  (setcdr children (cons child (cdr children)))))))
   (widget-setup)
-  (widget-apply widget :notify widget))
+ widget (widget-apply widget :notify widget))
 
 (defun widget-editable-list-delete-at (widget child)
   ;; Delete child from list of children.

File lisp/custom/widget-example.el

View file
 ;;
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.65
+;; Version: 1.68
 ;; 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.65
+;; Version: 1.68
 ;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
 
 ;;; Commentary:
 	     (set (car keywords) (car keywords)))
 	 (setq keywords (cdr keywords)))))))
 
-(define-widget-keywords :sibling-args :delete-button-args
+(define-widget-keywords :deactivate :active :inactive :activate
+  :sibling-args :delete-button-args
   :insert-button-args :append-button-args :button-args 
   :tag-glyph :off-glyph :on-glyph :valid-regexp
   :secret :sample-face :sample-face-get :case-fold :widget-doc 

File lisp/efs/Makefile

View file
 #
 # File:         Makefile
 # Release:      $efs release: 1.15 $
-# Version:      $Revision: 1.4 $
+# Version:      $Revision: 1.5 $
 # RCS:
 # Description:  Makefile for byte-compiling efs and dired.
 # Author:       Andy Norman, HPLabs, Bristol, UK.
 #             19.1 and 19.22, inclusive.
 #      19.23  for version 19.23 and later of the original GNU Emacs from FSF
 #      l19.11 for XEmacs 19.11 trhu 19.14
-#      x19.15 for XEmacs 19.15 and later
+#      x19.15 for XEmacs 19.15
+#      x20    for XEmacs 20.1 and later
 #    LISPDIR should be the directory in which you want the .elc
 #      files installed.
 #    BDIR should be the directory containing the .elc files for the
 #             19.22, inclusive
 #    19.23  for the original GNU Emacs from FSF, version 19.23 and later.
 #    l19.11 for Lucid XEmacs 19.11 thru 19.14
-#    x19.15 for XEmacs 19.15 and later
+#    x19.15 for XEmacs 19.15
+#    x20    for XEmacs 20.1 and later
 #
 #    If you have set the VERSION variable correctly, then typing just    
 #    make will suffice.
 CWD=`pwd`
 # Directory in which to install the lisp files
 LISPDIR=
+# Directory in which to install the info files
+INFODIR=
+# Directory in which to install the Texinfo file
+TEXIDIR=
 # Directory containing byte-compiler.  This is used by fixup.el
 BDIR=
 # Directory containing VM's .elc files.
           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
+MULEOBJS = dired-mule.elc efs-dired-mule.elc
+MULESRC = dired-mule.el efs-dired-mule.el
+GEOBJS = dired-fsf.elc \
+	 passwd.elc diff.elc auto-save.elc \
+	 $(MULEOBJS)
+GESRC = dired-fsf.el \
+	passwd.el diff.el auto-save.el \
+	$(MULESRC)
+XEOBJS = dired-faces.elc dired-xemacs.elc \
+	$(VMOBJS)
+XESRC = dired-faces.el dired-xemacs.el \
+	$(VMSRC) $(MULESRC)
 OBJS = $(DOBJS) $(EFSOBJS) $(VMOBJS) $(GEOBJS) $(XEOBJS) \
        efs-18.elc efs-19.elc efs-19.23.elc \
        efs-l19.11.elc efs-x19.15.elc \
 19.23: efs dired efs-19.23.elc $(GEOBJS)
 l19.11: efs dired efs-l19.11.elc $(XEOBJS)
 x19.15: efs dired efs-x19.15.elc $(XEOBJS)
+x20: efs dired efs-x19.15.elc $(XEOBJS) $(MULEOBJS)
 
 # Installation
 install:
 	@echo "Installing in $(LISPDIR)..."
-	@ls -C *.elc
 	cp *.elc $(LISPDIR)
+	cp efs.info $(INFODIR)
 install_src:
 	@echo "Installing in $(LISPDIR)..."
-	@ls -C `ls *.el 2>&1 | grep -v "fixup"` 2> /dev/null
 	cp `ls *.el | grep -v "fixup"` $(LISPDIR)
+	cp efs.texi $(TEXIDIR)
 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)
+	cp efs.texi $(TEXIDIR)
 diff_xemacs:
 	for f in $(EFSSRC) $(DSRC) $(XESRC) efs-x19.15.el \
-	         $(DUMPSRC) Makefile README fixup.el; do \
+	         Makefile README fixup.el; do \
 		if [ -e $(LISPDIR)/$$f ]; \
 		then\
 		  diff -c $(LISPDIR)/$$f $$f; \

File lisp/efs/default-dir.el

View file
 ;;
 ;; File:         default-dir.el
 ;; RCS:
-;; Version:      $Revision: 1.4 $
+;; Version:      #Revision: 1.5 $
 ;; Description:  Defines the function default-directory, for fancy handling
 ;;               of the initial contents in the minibuffer when reading
 ;;               file names.
 	((>= (string-to-int (substring emacs-version 0 2)) 19) 'fsf-19)
 	(t 'fsf-18)))
 
+(defconst default-dir-find-file-takes-coding-system
+  (and (eq default-dir-emacs-variant 'xemacs)
+       (>= (string-to-int (substring emacs-version 0 2)) 20)))
+
 ;;;###autoload
 (defvar default-directory-function nil
   "A function to call to compute the default-directory for the current buffer.
 (cond
  ((or (featurep 'mule)
       (boundp 'MULE))
-      
+
   (defun default-dir-find-file (file &optional coding-system)
     "Documented as original"
     (interactive   
 		 (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
    ;; 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))
+     (default-dir-real-find-file file))
   
    (defun default-dir-find-file-other-window (file &optional coding-system)
      "Documented as original"
       (list
        (expand-file-name
 	(read-file-name "Find file in other window: " (default-directory)))))
-     (default-dir-real-find-file-other-window file coding-system))
+     (default-dir-real-find-file-other-window file))
 
-   (defun default-dir-find-file-read-only (file &optional coding-system)
+   (defun default-dir-find-file-read-only (file  &optional coding-system)
      "Documented as original"
      (interactive
       (list
        (expand-file-name
<