如何设置 .emacs 初始化文件?

如何设置 .emacs 初始化文件?

我使用的是 Linux Fedora 13 (Constantine) 和 emacs 23.1.1。我正在尝试设置一个 .emacs 文件进行初始化,方法是使用 emacs 本身编辑并保存文件 .emacs 在我的主目录中。然而,尽管该文件在那里,但 emacs 似乎无法识别它。我可能做错了什么,是否有一个简单的 .emacs 文本可以显示它是否正在使用,并且会在 emacs 启动时显示一条消息?

答案1

初始化文件传统上是~/.emacs,但现代版本也看其他名称。您的主目录可能会令人困惑(尽管在 UNIX 平台上不应该如此;这主要是 Windows 下的问题);在 Emacs 中打开~/.emacs总是正确的。 Emacs 启动后,检查*Messages*缓冲区中的消息。确保您运行的 Emacs 没有使用类似-q会告诉它绕过 init 文件的选项。

答案2

您的主目录中的 .emacs 文件可能有错误。尝试打开 .emacs 文件,然后打开 Mx eval-buffer RET 来检查是否出现任何您可能错过的错误。在任何情况下,Emacs 都会运行 .emacs 文件。

答案3

如果您在 .emacs 文件的开头放置了非法内容,并且 emacs 确实正在读取它,我预计它会在启动时失败。例如,如果我放置一行包含

Hello William

在我的 .emacs 的第一行,程序给了我警告

Symbol's value as variable is void: Hello

并且无法加载文件的其余部分。

您可以使用strace(或 Fedora 的等效工具,可能是 truss、dtruss 等)来跟踪系统调用并查找 emacs 尝试在输出中打开 .emacs 的位置。例如在 bash shell 下:

strace emacs 2> strace-ouput.txt 

相关内容