home *** CD-ROM | disk | FTP | other *** search
- (setq kill-emacs-hook
- '(save-session))
-
- ;; Record in `/.emacs-session' a command to re-visit the last file
- ;; that was being looked at.
- (defun save-session ()
- (and buffer-file-name
- (write-region
- (concat "(" (if (eq major-mode 'rmail-mode)
- "rmail"
- "find-file")
- " " (if (string= (concat (getenv "HOME") "/RMAIL")
- buffer-file-name)
- ;; Omit the file name if it is the primary rmail file
- ;; to cause the default inboxes to be used.
- ""
- (prin1-to-string buffer-file-name))
- ")\n"
- "(goto-char " (prin1-to-string (window-start)) ")\n"
- "(beginning-of-line)\n"
- "(set-window-start (selected-window) (point))\n"
- "(goto-line "
- (prin1-to-string (1+ (count-lines 1 (point))))
- ")\n")
- nil (expand-file-name "~/.emacs-session")
- ;; Don't print a message.
- nil 'lambda)))
-
- ;; Restore previous saved session, if there is one.
- (load "~/.emacs-session" t t)
-