| 766 | | (eager desktop-restore-eager) |
|---|
| 767 | | (buf (get-buffer-create "*desktop*"))) |
|---|
| 768 | | (set-buffer buf) |
|---|
| 769 | | (erase-buffer) |
|---|
| 770 | | |
|---|
| 771 | | (insert |
|---|
| 772 | | ";; -*- mode: emacs-lisp; coding: emacs-mule; -*-\n" |
|---|
| 773 | | desktop-header |
|---|
| 774 | | ";; Created " (current-time-string) "\n" |
|---|
| 775 | | ";; Desktop file format version " desktop-file-version "\n" |
|---|
| 776 | | ";; Emacs version " emacs-version "\n\n" |
|---|
| 777 | | ";; Global section:\n") |
|---|
| 778 | | (mapc (function desktop-outvar) desktop-globals-to-save) |
|---|
| 779 | | (if (memq 'kill-ring desktop-globals-to-save) |
|---|
| | 766 | (eager desktop-restore-eager)) |
|---|
| | 767 | (with-temp-buffer |
|---|
| 781 | | "(setq kill-ring-yank-pointer (nthcdr " |
|---|
| 782 | | (int-to-string (- (length kill-ring) (length kill-ring-yank-pointer))) |
|---|
| 783 | | " kill-ring))\n")) |
|---|
| 784 | | |
|---|
| 785 | | (insert "\n;; Buffer section -- buffers listed in same order as in buffer list:\n") |
|---|
| 786 | | (mapc #'(lambda (l) |
|---|
| 787 | | (when (apply 'desktop-save-buffer-p l) |
|---|
| 788 | | (insert "(" |
|---|
| 789 | | (if (or (not (integerp eager)) |
|---|
| 790 | | (unless (zerop eager) |
|---|
| 791 | | (setq eager (1- eager)) |
|---|
| 792 | | t)) |
|---|
| 793 | | "desktop-create-buffer" |
|---|
| 794 | | "desktop-append-buffer-args") |
|---|
| 795 | | " " |
|---|
| 796 | | desktop-file-version) |
|---|
| 797 | | (mapc #'(lambda (e) |
|---|
| 798 | | (insert "\n " (desktop-value-to-string e))) |
|---|
| 799 | | l) |
|---|
| 800 | | (insert ")\n\n"))) |
|---|
| 801 | | info) |
|---|
| 802 | | (setq default-directory dirname) |
|---|
| 803 | | (let ((coding-system-for-write 'emacs-mule)) |
|---|
| 804 | | (write-region (point-min) (point-max) filename nil 'nomessage)))) |
|---|
| | 769 | ";; -*- mode: emacs-lisp; coding: emacs-mule; -*-\n" |
|---|
| | 770 | desktop-header |
|---|
| | 771 | ";; Created " (current-time-string) "\n" |
|---|
| | 772 | ";; Desktop file format version " desktop-file-version "\n" |
|---|
| | 773 | ";; Emacs version " emacs-version "\n\n" |
|---|
| | 774 | ";; Global section:\n") |
|---|
| | 775 | (mapc (function desktop-outvar) desktop-globals-to-save) |
|---|
| | 776 | (if (memq 'kill-ring desktop-globals-to-save) |
|---|
| | 777 | (insert |
|---|
| | 778 | "(setq kill-ring-yank-pointer (nthcdr " |
|---|
| | 779 | (int-to-string (- (length kill-ring) (length kill-ring-yank-pointer))) |
|---|
| | 780 | " kill-ring))\n")) |
|---|
| | 781 | |
|---|
| | 782 | (insert "\n;; Buffer section -- buffers listed in same order as in buffer list:\n") |
|---|
| | 783 | (mapc #'(lambda (l) |
|---|
| | 784 | (when (apply 'desktop-save-buffer-p l) |
|---|
| | 785 | (insert "(" |
|---|
| | 786 | (if (or (not (integerp eager)) |
|---|
| | 787 | (unless (zerop eager) |
|---|
| | 788 | (setq eager (1- eager)) |
|---|
| | 789 | t)) |
|---|
| | 790 | "desktop-create-buffer" |
|---|
| | 791 | "desktop-append-buffer-args") |
|---|
| | 792 | " " |
|---|
| | 793 | desktop-file-version) |
|---|
| | 794 | (mapc #'(lambda (e) |
|---|
| | 795 | (insert "\n " (desktop-value-to-string e))) |
|---|
| | 796 | l) |
|---|
| | 797 | (insert ")\n\n"))) |
|---|
| | 798 | info) |
|---|
| | 799 | (setq default-directory dirname) |
|---|
| | 800 | (let ((coding-system-for-write 'emacs-mule)) |
|---|
| | 801 | (write-region (point-min) (point-max) filename nil 'nomessage))))) |
|---|