Как настроить файл инициализации .emacs?

Как настроить файл инициализации .emacs?

Я использую Linux Fedora 13 (Constantine) и emacs 23.1.1. Я пытаюсь настроить файл .emacs для инициализации, используя сам emacs для редактирования и сохранения файла .emacs в моем домашнем каталоге. Однако, хотя файл там есть, emacs, похоже, его не распознает. Что я делаю неправильно, и есть ли простой текст для .emacs, который покажет мне, используется ли он, такой, который будет отображать сообщение при запуске emacs?

решение1

Theфайл инициализациитрадиционно ~/.emacs, но современные версии также смотрят наДругие названия. Может возникнуть путаница с тем, какой у вас домашний каталог (хотя на платформах unix его быть не должно; в основном это проблема под Windows); открытие ~/.emacsвнутри Emacs всегда правильно. После запуска Emacs проверьте сообщения в буфере *Messages*. Убедитесь, что вы не запускаете Emacs с такими параметрами, -qкоторые заставят его обойти ваш файл инициализации.

решение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:

strace emacs 2> strace-ouput.txt 

Связанный контент