:type 'file
:group 'save-place)
-(defcustom save-place-version-control 'nospecial
+(defcustom save-place-version-control nil
"*Controls whether to make numbered backups of master save-place file.
It can have four values: t, nil, `never', and `nospecial'. The first
three have the same meaning that they do for the variable
:type '(radio (const :tag "Unconditionally" t)
(const :tag "For VC Files" nil)
(const never)
- (const :tag "Use value of version-control" nospecial))
+ (const :tag "Use value of `version-control'" nospecial))
:group 'save-place)
(defvar save-place-loaded nil
(or save-place-loaded (load-save-place-alist-from-file))
(if buffer-file-name
(progn
- (let ((cell (assoc buffer-file-name save-place-alist)))
+ (let ((cell (assoc buffer-file-name save-place-alist))
+ (position (if (not (eq major-mode 'hexl-mode))
+ (point)
+ (1+ (hexl-current-address)))))
(if cell
- (setq save-place-alist (delq cell save-place-alist))))
- (if save-place
- (setq save-place-alist
- (cons (cons buffer-file-name
- (if (not (eq major-mode 'hexl-mode))
- (point)
- (1+ (hexl-current-address))))
- save-place-alist))))))
+ (setq save-place-alist (delq cell save-place-alist)))
+ (if (and save-place
+ (not (= position 1))) ;; Optimize out the degenerate case.
+ (setq save-place-alist
+ (cons (cons buffer-file-name position)
+ save-place-alist)))))))
(defun save-place-alist-to-file ()
(let ((file (expand-file-name save-place-file)))