+2007-12-02 Karl Fogel <kfogel@red-bean.com>
+
+ * saveplace.el (save-place-alist-to-file): Set
+ coding-system-for-write once and refer to it throughout.
+ Based on a patch by David Reitter <dreitter{_AT_}inf.ed.ac.uk>.
+
2007-12-02 Karl Fogel <kfogel@red-bean.com>
* saveplace.el (save-place-alist-to-file): Use `utf-8' coding
(setq save-place-alist (cdr save-place-alist)))))
(defun save-place-alist-to-file ()
- (let ((file (expand-file-name save-place-file)))
+ (let ((file (expand-file-name save-place-file))
+ (coding-system-for-write 'utf-8))
(save-excursion
(unless save-place-quiet
(message "Saving places to %s..." file))
(delete-region (point-min) (point-max))
(when save-place-forget-unreadable-files
(save-place-forget-unreadable-files))
- (insert ";;; -*- coding: utf-8 -*-\n")
+ (insert (format ";;; -*- coding: %s -*-\n"
+ (symbol-name coding-system-for-write)))
(let ((print-length nil)
(print-level nil))
(print save-place-alist (current-buffer)))
t))))
(condition-case nil
;; Don't use write-file; we don't want this buffer to visit it.
- (let ((coding-system-for-write 'utf-8))
- (write-region (point-min) (point-max) file))
+ (write-region (point-min) (point-max) file)
(file-error (message "Can't write %s" file)))
(kill-buffer (current-buffer))
(unless save-place-quiet