Вызов резервного буфера в ловушках после сохранения удаляет исходный файл - PullRequest
0 голосов
/ 04 января 2012

Я пытаюсь создать резервную копию файла после сохранения и перед сохранением с помощью хуков сохранения.Вот код из .emacs

(defun force-backup-of-buffer ()                                                                                                                                                                              
    (interactive)                                                                                                                                                                                             
    (setq buffer-backed-up nil)                                                                                                                                                                               
    (backup-buffer)                                                                                                                                                                                           
)                                                                                                                                                                                                             

(add-hook 'before-save-hook  'force-backup-of-buffer)                                                                                                                                                         
 (add-hook 'after-save-hook  'force-backup-of-buffer) 

Но это приводит к удалению исходного файла.Может кто-нибудь сказать мне, почему это происходит?Моя цель - создавать два файла резервных копий каждый раз, когда я сохраняю.Я хочу использовать те же номера контроля версий, что и в emacs.Поэтому я использую резервный буфер и не пишу свой собственный хук для записи файла.

1 Ответ

1 голос
/ 04 января 2012

Проверьте документацию для backup-buffer, которая указывает на переменную make-backup-files: C-h v make-backup-files RET

По умолчанию Emacs выполняет резервное копирование, переименовывая исходный файл в имя файла резервной копии перед сохранением буфера в исходное имя файла; следовательно, ваш файл исчезает.

Я не уверен, что backup-buffer действительно предназначен для вызова в другом месте, однако, если вы установите его для резервного копирования путем копирования, вы, вероятно, будете в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...