Mercurial > emacs
comparison lisp/saveplace.el @ 86985:783469dd1f73
* lisp/saveplace.el (save-place-alist-to-file): Use `utf-8' coding system
when writing, and set it in the first-line file variables.
Based on a patch by David Reitter <dreitter{_AT_}inf.ed.ac.uk> and a
suggestion by Juanma Barranquero.
author | Karl Fogel <kfogel@red-bean.com> |
---|---|
date | Sun, 02 Dec 2007 21:15:22 +0000 |
parents | 1cd90460f988 |
children | a66a6a9bd1aa |
comparison
equal
deleted
inserted
replaced
86984:8912b1520b33 | 86985:783469dd1f73 |
---|---|
215 (message "Saving places to %s..." file)) | 215 (message "Saving places to %s..." file)) |
216 (set-buffer (get-buffer-create " *Saved Places*")) | 216 (set-buffer (get-buffer-create " *Saved Places*")) |
217 (delete-region (point-min) (point-max)) | 217 (delete-region (point-min) (point-max)) |
218 (when save-place-forget-unreadable-files | 218 (when save-place-forget-unreadable-files |
219 (save-place-forget-unreadable-files)) | 219 (save-place-forget-unreadable-files)) |
220 (insert ";;; -*- coding: utf-8 -*-\n") | |
220 (let ((print-length nil) | 221 (let ((print-length nil) |
221 (print-level nil)) | 222 (print-level nil)) |
222 (print save-place-alist (current-buffer))) | 223 (print save-place-alist (current-buffer))) |
223 (let ((version-control | 224 (let ((version-control |
224 (cond | 225 (cond |
227 ((eq 'nospecial save-place-version-control) version-control) | 228 ((eq 'nospecial save-place-version-control) version-control) |
228 (t | 229 (t |
229 t)))) | 230 t)))) |
230 (condition-case nil | 231 (condition-case nil |
231 ;; Don't use write-file; we don't want this buffer to visit it. | 232 ;; Don't use write-file; we don't want this buffer to visit it. |
232 (write-region (point-min) (point-max) file) | 233 (let ((coding-system-for-write 'utf-8)) |
234 (write-region (point-min) (point-max) file)) | |
233 (file-error (message "Can't write %s" file))) | 235 (file-error (message "Can't write %s" file))) |
234 (kill-buffer (current-buffer)) | 236 (kill-buffer (current-buffer)) |
235 (unless save-place-quiet | 237 (unless save-place-quiet |
236 (message "Saving places to %s...done" file)))))) | 238 (message "Saving places to %s...done" file)))))) |
237 | 239 |