第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何控制Emacs如何制作備份文件?

如何控制Emacs如何制作備份文件?

米琪卡哇伊 2020-02-03 14:26:42
Emacs將備份文件命名為foo~無(wú)處不在,我不希望記住刪除它們。另外,如果我編輯的文件在文件系統(tǒng)中的其他位置具有硬鏈接,則在完成編輯后,硬鏈接會(huì)指向備份,這會(huì)造成混亂和麻煩。如何刪除這些備份文件,或者將它們放到同一目錄之外的其他地方?
查看完整描述

3 回答

?
幕布斯7119047

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊

Emacs備份/自動(dòng)保存文件可能非常有用。但是這些功能令人困惑。


備份文件


備份文件的末尾有波浪號(hào)(~或~9~),應(yīng)寫入用戶主目錄。如果make-backup-files為非零,則Emacs首次從緩沖區(qū)保存文件時(shí)會(huì)自動(dòng)創(chuàng)建原始文件的備份。如果您正在編輯新文件,Emacs將在您第二次保存文件時(shí)創(chuàng)建備份。


無(wú)論您保存文件多少次,備份都不會(huì)更改。如果您殺死緩沖區(qū),然后再次訪問(wèn)該文件,或者下次啟動(dòng)新的Emacs會(huì)話,將創(chuàng)建一個(gè)新的備份文件。新備份反映了重新打開后或編輯會(huì)話開始時(shí)文件的內(nèi)容。但是現(xiàn)有備份不會(huì)再被觸及。因此,我發(fā)現(xiàn)創(chuàng)建編號(hào)備份很有用(請(qǐng)參見下面的配置)。


要顯式創(chuàng)建備份,請(qǐng)?jiān)谇熬Y參數(shù)中使用save-buffer(C-x C-s)。


diff-backup并dired-diff-backup比較了其備份或反之亦然文件。但是沒(méi)有還原備份文件的功能。例如,在Windows下,還原備份文件


C:\Users\USERNAME\.emacs.d\backups\!drive_c!Users!USERNAME!.emacs.el.~7~

它必須手動(dòng)復(fù)制為


C:\Users\USERNAME\.emacs.el

自動(dòng)保存文件


自動(dòng)保存文件使用井號(hào)(#),并且應(yīng)在項(xiàng)目目錄中本地寫入(以及實(shí)際文件)。原因是自動(dòng)保存文件只是Emacs創(chuàng)建的臨時(shí)文件,直到再次保存文件為止(例如,急于遵從)。


在用戶按下C-x C-s(save-buffer)保存文件之前,Emacs會(huì)基于計(jì)數(shù)擊鍵(auto-save-interval)或停止鍵入(auto-save-timeout)時(shí)自動(dòng)保存文件。

Emacs崩潰時(shí)也會(huì)自動(dòng)保存,包括使用shell命令殺死Emacs作業(yè)。

用戶保存文件時(shí),將刪除自動(dòng)保存的版本。但是,當(dāng)用戶不保存而退出文件,Emacs或X會(huì)話崩潰時(shí),自動(dòng)保存的文件仍然存在。


使用revert-buffer或recover-file恢復(fù)自動(dòng)保存文件。注意,Emacs在名為?/ .emacs.d / auto-save-list的文件中記錄了中斷的會(huì)話,以供以后恢復(fù)。該recover-session功能將使用此信息。


從自動(dòng)保存的字段中恢復(fù)的首選方法是M-x revert-buffer RET。Emacs將詢問(wèn)“最近是否已自動(dòng)保存緩沖區(qū)。要從自動(dòng)保存文件還原嗎?” 或“是否要從文件FILENAME還原緩沖區(qū)?”。如果是后者,則沒(méi)有自動(dòng)保存文件。例如,由于您在輸入其他auto-save-intervall擊鍵之前已經(jīng)保存了,在這種情況下Emacs刪除了自動(dòng)保存文件。


默認(rèn)情況下,自動(dòng)保存已被禁用,因?yàn)檫B接到速度較慢的計(jì)算機(jī)時(shí)它會(huì)減慢編輯速度,并且許多文件包含敏感數(shù)據(jù)。


組態(tài)


這是恕我直言最有效的配置:


(defvar --backup-directory (concat user-emacs-directory "backups"))

(if (not (file-exists-p --backup-directory))

        (make-directory --backup-directory t))

(setq backup-directory-alist `(("." . ,--backup-directory)))

(setq make-backup-files t               ; backup of a file the first time it is saved.

      backup-by-copying t               ; don't clobber symlinks

      version-control t                 ; version numbers for backup files

      delete-old-versions t             ; delete excess backup files silently

      delete-by-moving-to-trash t

      kept-old-versions 6               ; oldest versions to keep when a new numbered backup is made (default: 2)

      kept-new-versions 9               ; newest versions to keep when a new numbered backup is made (default: 2)

      auto-save-default t               ; auto-save every buffer that visits a file

      auto-save-timeout 20              ; number of seconds idle time before auto-save (default: 30)

      auto-save-interval 200            ; number of keystrokes between auto-saves (default: 300)

      )

敏感數(shù)據(jù)


另一個(gè)問(wèn)題是您不希望Emacs傳播帶有敏感數(shù)據(jù)的文件副本。逐個(gè)文件使用此模式。由于這是次要模式,出于我的目的,我將其重命名sensitive-minor-mode。


要為所有.vcf和.gpg文件啟用它,請(qǐng)?jiān)谀?emacs中使用類似以下內(nèi)容的代碼:


(setq auto-mode-alist

      (append

       (list

        '("\\.\\(vcf\\|gpg\\)$" . sensitive-minor-mode)

        )

       auto-mode-alist))

或者,要僅保護(hù)某些文件(例如某些.txt文件),請(qǐng)使用以下行


// -*-mode:asciidoc; mode:sensitive-minor; fill-column:132-*-

在文件中。


查看完整回答
反對(duì) 回復(fù) 2020-02-03
?
PIPIONE

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超9個(gè)贊

該接受的答案是好的,但它可以通過(guò)額外得到很大的提高上備份 每一個(gè)保存和備份版本的文件。


首先,如接受的答案中所述的基本設(shè)置:


(setq version-control t     ;; Use version numbers for backups.

      kept-new-versions 10  ;; Number of newest versions to keep.

      kept-old-versions 0   ;; Number of oldest versions to keep.

      delete-old-versions t ;; Don't ask to delete excess backup versions.

      backup-by-copying t)  ;; Copy all files, don't rename them.

接下來(lái),還要備份版本控制的文件,Emacs默認(rèn)不會(huì)備份這些文件(您不會(huì)在每次保存時(shí)都提交,對(duì)嗎?):


(setq vc-make-backup-files t)

最后,對(duì)每個(gè)保存進(jìn)行備份,而不僅僅是第一次。我們進(jìn)行兩種備份:


每會(huì)話備份:在每個(gè)Emacs會(huì)話中第一次保存緩沖區(qū)時(shí)一次。這些模擬Emac的默認(rèn)備份行為。


每次保存?zhèn)浞荩好看伪4嬉淮?。Emacs默認(rèn)情況下不執(zhí)行此操作,但是如果長(zhǎng)時(shí)間保持Emacs運(yùn)行,這將非常有用。


該備份去不同的地方和Emacs自動(dòng)創(chuàng)建備份迪爾斯如果它們不存在:


;; Default and per-save backups go here:

(setq backup-directory-alist '(("" . "~/.emacs.d/backup/per-save")))


(defun force-backup-of-buffer ()

  ;; Make a special "per session" backup at the first save of each

  ;; emacs session.

  (when (not buffer-backed-up)

    ;; Override the default parameters for per-session backups.

    (let ((backup-directory-alist '(("" . "~/.emacs.d/backup/per-session")))

          (kept-new-versions 3))

      (backup-buffer)))

  ;; Make a "per save" backup on each save.  The first save results in

  ;; both a per-session and a per-save backup, to keep the numbering

  ;; of per-save backups consistent.

  (let ((buffer-backed-up nil))

    (backup-buffer)))


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

我開始對(duì)這個(gè)話題很感興趣后,我寫$<的,而不是 $@我的Makefile,約后,我的前三年時(shí)間內(nèi)調(diào)動(dòng):P



查看完整回答
反對(duì) 回復(fù) 2020-02-03
  • 3 回答
  • 0 關(guān)注
  • 725 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)