有时,我在Emacs中意外地点击了C-x或C-c,而我打算只点击C-x或C-c。当然,这会在没有确认的情况下关闭所有打开的帧和缓冲区。我知道我可以让Emacs提示“你确定要退出吗?”,但我不想一直这样做,这会很烦人。我只想让它在打开的文件(或缓冲区)超过N个时执行此操作。
所以我想把C-x,C-c绑定到一个函数上,如下所示:
(if (< number of open buffers n)
(save-buffers-kill-emacs)
(are-you-sure))
但是我不知道如何获得打开缓冲区的数量(或者打开帧的数量,或者打开文件的数量,等等)。
每当我启动Emacs (GNUEmacs26.3 (build 1,x86_64-pc-linux-gnu,GTK+版本3.22.30))时,我会打开任何要编辑的文件的可视行模式(Line Wrapping in This Buffer -> Word Wrap (Visual Line mode)):
如何使Emacs对每个文件自动打开它(这样我就不必手动操作)?
据我所知,下面的命令序列
M-x load-file ENTER
~/.emacs
ENTER
将重新加载我的.emacs文件。但是,根据我在其他论坛上所读到的内容,它们不能保证给我一个完全修改的配置,即它们将强制Emacs解析新的配置文件并重新加载修改后的变量和函数定义,但是它们不会删除以前加载的定义。
有了这个,我的问题是:
是否可以在不完全重新启动Emacs的情况下清除ups Emacs在内存中的定义并重新加载.emacs?如果不可能重新启动Emacs,是否有方法重新启动Emacs(以便我从头解析.emacs文件),要求它重新打开我打开的所有缓冲区?