CVS update by michaels xemacs/lisp ...

xemacs-cvs at xemacs.org xemacs-cvs at xemacs.org
Sat Aug 11 10:42:52 EDT 2007


  User: michaels
  Date: 07/08/11 16:42:52

  Modified:    xemacs/lisp ChangeLog startup.el
Log:
2007-08-09  Mike Sperber  <mike at xemacs.org>

	* startup.el (migrate-user-init-file): Create backup of
	`user-init-file' before migrating.
	* startup.el (maybe-migrate-user-init-file): Print
	information about backup file.
	(maybe-create-compatibility-dot-emacs): Follow above change.

Revision  Changes    Path
1.826     +8 -0      XEmacs/xemacs/lisp/ChangeLog

Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/ChangeLog,v
retrieving revision 1.825
retrieving revision 1.826
diff -u -p -r1.825 -r1.826
--- ChangeLog	2007/08/09 06:22:51	1.825
+++ ChangeLog	2007/08/11 14:42:50	1.826
@@ -1,3 +1,11 @@
+2007-08-09  Mike Sperber  <mike at xemacs.org>
+
+	* startup.el (migrate-user-init-file): Create backup of
+	`user-init-file' before migrating.
+	* startup.el (maybe-migrate-user-init-file): Print
+	information about backup file.
+	(maybe-create-compatibility-dot-emacs): Follow above change.
+
 2007-08-07  Mike Sperber  <mike at xemacs.org>
 
 	* setup-paths.el (paths-find-doc-directory):



1.60      +36 -23    XEmacs/xemacs/lisp/startup.el

Index: startup.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/startup.el,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -p -r1.59 -r1.60
--- startup.el	2007/08/02 06:37:53	1.59
+++ startup.el	2007/08/11 14:42:51	1.60
@@ -880,43 +880,56 @@ perform the migration at any time with M
 	      (yes-or-no-p-minibuf (concat "Migrate init file to "
 					   user-init-directory
 					   "? "))))
-	  (progn
-	    (migrate-user-init-file)
-	    (maybe-create-compatibility-dot-emacs))
-	(customize-save-variable 'load-home-init-file t))))
 
-(defun maybe-create-compatibility-dot-emacs ()
-  "Ask user if she wants to create a .emacs compatibility file."
-  (if (with-output-to-temp-buffer (help-buffer-name nil)
-	(progn
-	  (princ "The initialization code has now been migrated to the ")
-	  (princ user-init-directory)
-	  (princ "directory.
+	  (let ((backup (migrate-user-init-file)))
+	    (with-output-to-temp-buffer (help-buffer-name nil)
+	      (progn
+	      (princ "The initialization code has now been migrated to the ")
+	      (princ user-init-directory)
+	      (princ "directory.
 
 For backwards compatibility with, for example, older versions of XEmacs,
 XEmacs can create a special old-style .emacs file in your home
 directory which will load the relocated initialization code.")
-	  (show-temp-buffer-in-current-frame standard-output)
-	  (yes-or-no-p-minibuf "Create compatibility .emacs? ")))
+	      (if backup
+		  (progn
+		    (princ "\nMoreover, a backup of your old .emacs file was created as\n")
+		    (princ backup)
+		    (princ ".\n")))
+	      (show-temp-buffer-in-current-frame standard-output)
+	      (maybe-create-compatibility-dot-emacs))))
+	(customize-save-variable 'load-home-init-file t))))
+
+(defun maybe-create-compatibility-dot-emacs ()
+  "Ask user if she wants to create a .emacs compatibility file."
+  (if (yes-or-no-p-minibuf "Create compatibility .emacs? ")
       (create-compatibility-dot-emacs)))
 
 (defun migrate-user-init-file ()
-  "Migrate the init file from the home directory."
+  "Migrate the init file from the home directory.
+Return the name of backup file, if one was created."
   (interactive)
   (if (not (file-exists-p user-init-directory))
       (progn
 	(message "Creating %s directory..." user-init-directory)
 	(make-directory user-init-directory)))
   (message "Migrating custom file...")
-  (customize-set-value 'load-home-init-file nil)
-  (custom-migrate-custom-file (make-custom-file-name user-init-file
-						     'force-new))
-  (message "Moving init file...")
-  (let ((new-user-init-file (expand-file-name user-init-file-base
-					      user-init-directory)))
-    (rename-file user-init-file new-user-init-file)
-    (setq user-init-file new-user-init-file))
-  (message "Migration done."))
+  (let* ((backup (concat user-init-file ".backup"))
+	 (backup-p
+	  (and (not (file-exists-p backup))
+	       (progn
+		 (copy-file user-init-file backup)
+		 t))))
+    (customize-set-value 'load-home-init-file nil)
+    (custom-migrate-custom-file (make-custom-file-name user-init-file
+						       'force-new))
+    (message "Moving init file...")
+    (let ((new-user-init-file (expand-file-name user-init-file-base
+						user-init-directory)))
+      (rename-file user-init-file new-user-init-file)
+      (setq user-init-file new-user-init-file))
+    (message "Migration done.")
+    (and backup-p backup)))
 
 (defun create-compatibility-dot-emacs ()
   "Create .emacs compatibility file for migrated setup."





More information about the XEmacs-CVS mailing list