2012-01-14 98 views
0

我正在使用Emacs编辑器,每次启动Emacs时,都会丢失以前的设​​置。如何保存我的Emacs设置?

例如,每一次我必须键入时间:

  • 的Mxcua-modeRET
  • 的Mxauto-complete-modeRET

我如何保存我的设置Emacs的?

谢谢。

+0

我搜索了这个主题,前5名的结果解决了这个问题。你能解释一下为什么你自己不能谷歌?我其实很好奇,而不仅仅是试图让自己变得sn。。 – 2012-01-15 06:48:36

回答

5

您可以将它们添加到.emacs文件中。

(cua-mode) 
(auto-complete-mode) 

如果您发现在.emacs文件中已经有东西,那么您可能希望在最后添加命令。

+5

一般而言,您希望明确您是打开还是关闭模式,因为大多数模式会在未提供参数时切换其状态。所以你可能想使用'(cua-mode 1)'和'(auto-complete-mode 1)'(尽管后者不是Emacs的缺省部分,所以我没有验证那个)。 – phils 2012-01-15 00:05:52

+0

't'还能工作吗?例如我在我的.emacs文件中有'(setq inhibit-splash-screen t)'。我想我在问,t和1是否相等。 – Bill 2012-01-15 00:57:33

+1

不,'t'和'1'不等价。这并不是说它们有时不会有相同的效果,但它肯定不是保证。 't'意思是真的('nil'意思是False),但是您应该检查文档以确定给定变量或函数参数的有效值。举个例子,'C-h v inhibit-splash-screen RET'告诉我们* any * non-'nil'值将阻止启动画面显示。对于模式函数,'0'值通常禁用模式('nil'会切换),所以即使't'也启用,似乎也使用一个数字更加一致。 – phils 2012-01-15 03:38:18

0

在您的emacs目录中有一个site-lisp文件夹。通常它会是空的。你可以在这个文件夹中创建一个文件default.el。添加这两行 (cua-mode t) (自动完成模式) 并保存它。这将在Init期间执行。如果只想为emacs应用程序设置环境变量(非永久性),请在site-lisp目录中添加一个名为site-start.el的文件,并为该变量ex(setenv“VARIABLENAME”“value”)定义值。 site-lisp目录位于Lisp库的标准搜索路径中。

+0

'default.el'不是保存用户特定设置的方法。如果你把它放在site-lisp目录中,那么它会影响机器上的所有*用户(这是它的目的)。如果你把它放到一个由你自己的用户init文件添加到你的路径中的目录,那么没有意义 - 你可以使用你的init文件。请参阅接受答案中链接的“初始文件”下手册中的详细信息。 – phils 2013-06-13 23:32:36