分享个自动保存的工具, 不用总是按 `S-s` 或者 `SPC f s` 了

每次做出一点修改都要手动的保存一下, 有点麻烦, 网上找到个小工具大家可以看下, 还是挺方便的.

这个工具是在你停止输入之后就会给你自动保存一下.

附上作者的简书链接:

这是 Spacemacs 标配,默认开的。

就算你从不保存,数据也不会丢,由于 (emacs) Auto Save 机制默认开启的缘故,断电什么的也不用担心。

不一样吧, 好像自带的是另存为一个buffer, 可以从那里恢复. 不是当前编辑的文件. 这个是随写随存

我知道有这个功能, 但是不保存代码就不会生效啊~

我写 js 用这个写完去看浏览器就完事了, 它自己就保存了.

但作者给出的理由是:

说到编辑器保存这个功能, 我最开始学Emacs的时候按了一个月的 Ctrl + x Ctrl + s 就受不了了, 最让人受不了的时候有时候辛辛苦苦写的代码, 忘记按保存了, 这时候突然停电了, 除了 WTF 就没有任何然后了。那时候我就想为什么一定要手动按 Ctrl + x Ctrl + s按键来保存呢?能否自动保存所编辑的文件? 什么时候最合适呢?

作者:ManateeLazyCat 链接:http://www.jianshu.com/p/998ceaf522d1 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

:joy: 不要在意那些细节~ 我觉得这功能超赞, 之前只在 Xcode 上用过.

emacs 有自己的灾难恢复机制——文件被自动备份到当前目录 #file# 。但是有个很讨厌的地方:文件安全退出时,这个备份文件没有被自动删除。搞乱目录,看着就烦,比 Vim 体验要差一些。

灾难恢复这方面,我比较认同 Sublime Text 的做法:不管上一次是正常退出还是断电退出,下一次打开 ST 都给你恢复到之前状态。用户根本不用接触灾难恢复这一概念,手动恢复文件什么的。

扩展阅读:

https://macplay.github.io/posts/vim-nong-diu-liao-wo-de-shu-ju/

默认会自动删除的,受 delete-auto-save-files 影响:

delete-auto-save-files is a variable defined in ‘files.el’.
Its value is t

Documentation:
Non-nil means delete auto-save file when a buffer is saved or killed.

Note that the auto-save file will not be deleted if the buffer is killed
when it has unsaved changes.

如果你那边不行的话,可以报告一个 Bug。

另外 M-x auto-save-visited-mode 看起来也能起到同样的作用:

If you want auto-saving to be done in the visited file rather than in a separate auto-save file, enable the global minor mode `auto-save-visited-mode’. In this mode, auto-saving is identical to explicit saving.

检查了下 delete-auto-save-filest,但是备份的文件并没有删除。可能确实是个 bug。

也并没有找到 auto-save-visited-mode,只找到 auto-save-mode

我这里正常。你应该报告它:M-x report-emacs-bug

我没注意,这是 Emacs 26.1 新加入的:

https://github.com/emacs-mirror/emacs/blob/d4db37b283daffa0f8c942a5b526b6444edc34c5/etc/NEWS.26#L586-L590

1赞

这个工具好,从 Emacs China 发展的很不错 过来观光。

我按C-x C-s都有点神经衰弱了,没事儿就按它,现在按一下都不过瘾,都是好几次。。。。

1赞

我很久以前做3d模型的时候有一次没保存崩溃了。打那以后我有了不管写啥,几个操作就要C-s一下的癖好,到Emacs上就变成了SPC f s。现在的日常是evil下ecape按完下意识来一套SPC f s,有点改不过来了……

有个 real-auto-save很不错:

可以设置保存动作的周期,秒数。

用这个, 有个一半天就掰回来啦 我是以前写iOS的, xcode自带这功能, 后来写js的编辑器都要手动保存,感觉很别扭,就找了这么个工具~

这个也是自己配置时间的

对,有几次我 helm-ag 代开,因为输入太快,helm的refresh似乎也蛮快。好似跟不上节奏。结果 Helm buffer ag 啥的 prompt字符串就覆盖了我的一个buffer。我用 undo都修改不回来。而且还是个 2M 的org文件。超级无语。幸亏有backup,不过不少修改都没了。自动保存啥的也是有缺点的。

鱼跟熊掌啊~

没有丢过数据的人是无法真正意识到这个事情的重要性的.