aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl Fogel2007-12-02 21:24:38 +0000
committerKarl Fogel2007-12-02 21:24:38 +0000
commite1970249e4ba8e15cc8dd3ef49607da049662f0d (patch)
tree68506143fab7236ae9f3c9fcb1b0d4345661ed03
parent82115f7bfc24642253a919ec73cb3a3b19335dab (diff)
downloademacs-e1970249e4ba8e15cc8dd3ef49607da049662f0d.tar.gz
emacs-e1970249e4ba8e15cc8dd3ef49607da049662f0d.zip
* lisp/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>.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/saveplace.el9
2 files changed, 11 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 8aae3ac681f..9038d2b98dc 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,11 @@
12007-12-02 Karl Fogel <kfogel@red-bean.com> 12007-12-02 Karl Fogel <kfogel@red-bean.com>
2 2
3 * saveplace.el (save-place-alist-to-file): Set
4 coding-system-for-write once and refer to it throughout.
5 Based on a patch by David Reitter <dreitter{_AT_}inf.ed.ac.uk>.
6
72007-12-02 Karl Fogel <kfogel@red-bean.com>
8
3 * saveplace.el (save-place-alist-to-file): Use `utf-8' coding 9 * saveplace.el (save-place-alist-to-file): Use `utf-8' coding
4 system when writing, and set it in the first-line file variables. 10 system when writing, and set it in the first-line file variables.
5 Based on a patch by David Reitter <dreitter{_AT_}inf.ed.ac.uk> 11 Based on a patch by David Reitter <dreitter{_AT_}inf.ed.ac.uk>
diff --git a/lisp/saveplace.el b/lisp/saveplace.el
index 356963b8ba1..e846ea844fe 100644
--- a/lisp/saveplace.el
+++ b/lisp/saveplace.el
@@ -209,7 +209,8 @@ may have changed\) back to `save-place-alist'."
209 (setq save-place-alist (cdr save-place-alist))))) 209 (setq save-place-alist (cdr save-place-alist)))))
210 210
211(defun save-place-alist-to-file () 211(defun save-place-alist-to-file ()
212 (let ((file (expand-file-name save-place-file))) 212 (let ((file (expand-file-name save-place-file))
213 (coding-system-for-write 'utf-8))
213 (save-excursion 214 (save-excursion
214 (unless save-place-quiet 215 (unless save-place-quiet
215 (message "Saving places to %s..." file)) 216 (message "Saving places to %s..." file))
@@ -217,7 +218,8 @@ may have changed\) back to `save-place-alist'."
217 (delete-region (point-min) (point-max)) 218 (delete-region (point-min) (point-max))
218 (when save-place-forget-unreadable-files 219 (when save-place-forget-unreadable-files
219 (save-place-forget-unreadable-files)) 220 (save-place-forget-unreadable-files))
220 (insert ";;; -*- coding: utf-8 -*-\n") 221 (insert (format ";;; -*- coding: %s -*-\n"
222 (symbol-name coding-system-for-write)))
221 (let ((print-length nil) 223 (let ((print-length nil)
222 (print-level nil)) 224 (print-level nil))
223 (print save-place-alist (current-buffer))) 225 (print save-place-alist (current-buffer)))
@@ -230,8 +232,7 @@ may have changed\) back to `save-place-alist'."
230 t)))) 232 t))))
231 (condition-case nil 233 (condition-case nil
232 ;; Don't use write-file; we don't want this buffer to visit it. 234 ;; Don't use write-file; we don't want this buffer to visit it.
233 (let ((coding-system-for-write 'utf-8)) 235 (write-region (point-min) (point-max) file)
234 (write-region (point-min) (point-max) file))
235 (file-error (message "Can't write %s" file))) 236 (file-error (message "Can't write %s" file)))
236 (kill-buffer (current-buffer)) 237 (kill-buffer (current-buffer))
237 (unless save-place-quiet 238 (unless save-place-quiet