Если я выбираю строки из .emacs и вручную оцениваю их, все работает нормально. Я предполагаю, что эти параметры отменены в каком-то другом месте.
Как я могу отладить это? Где я должен установить мои пользовательские лица?
ОБНОВИТЬ:
В соответствии с этим предпочтения должны быть загружены в следующем порядке:
~/.emacs (deprecated -- meaning 'should not be used for new installations, but will continue to be supported' -- in Aquamacs on OS X) customizations saved by request or automatically by Aquamacs in customizations.el /Library/Preferences/Emacs/Preferences.el /Library/Preferences/Aquamacs Emacs/Preferences.el ~/Library/Preferences/Emacs/Preferences.el ~/Library/Preferences/Aquamacs Emacs/Preferences.el
Моя ~/Library/Preferences/Aquamacs Emacs/Preferences.elвыглядит так (по умолчанию):
У меня была такая же проблема с настройкой цвета точки. Затем я нашел файл customizations.el, изменил строку, установив там цвет точки, и все заработало нормально. Я не знаю, будет ли ваш файл на том же месте, но мой был найден здесь:
Я уже пробовал, но это не помогло ... :(
Roberto Aloi 14 лет назад
0
Вы пытались задать этот вопрос на stackoverflow.com ?? Пользователи Emacs часто "тусуются" там, и я уверен, что кто-то сможет вам помочь ....
Vivi 14 лет назад
0
3
Roberto Aloi
Отлично. Это то, что я сделал в конце. В основном я «импортировал» грани в настройки Aquamacs, выполнив:
Запустил Aquamacs как обычно
Даже если лицо определено в .emacs, оно игнорируется Aquamacs
Открыл .emacs в буфере
Вручную выбрал раздел лица и оценил
Параметры -> Внешний вид -> Авто лица -> Авто лица (ВКЛЮЧЕНО)
Параметры -> Внешний вид -> Авто лица -> Применить лицо какого-либо режима -> Текст
Параметры -> Внешний вид -> Авто лица -> Принять параметры лица и рамки в качестве лица по умолчанию
Параметры -> Сохранить параметры
Удалить лица из .emacs
Все работает нормально после перезапуска Aquamacs. Стон.
Как и Ник, вы также можете попробовать свой код с пользовательскими наборами в окне взаимодействия с Лиспом, проявляя осторожность в отношении его проблемы ^ J (что выходит за рамки моего уровня знаний в Лиспе).
Если вы используете имя шрифта, вы можете проверить, что Aquamacs понимает его, используя emacs -fn fontname. В случае ошибки пользовательский набор лиц просто терпит неудачу, и затем Emacs продолжает использовать шрифт, который он использовал бы в противном случае.
В комментарии вы упоминаете, что выполняете ваши настройки из term-setup-hook' still doesn't work. So what overrides them is either inокна-setup-hook 'или в специфическом для Aquamacs шаге.
Aquamacs имеет некоторые специфические настройки для граней, которые могут переопределять ваши настройки, выполняемые через стандартный механизм Emacs. Их можно отключить, включив (aquamacs-autoface-mode 0)в них .emacsили через меню «Параметры / Внешний вид / Авто лица / Авто лица».
Во время запуска Emacs инициализируется в соответствии с заданным порядком кода / файла. Если часть кода, выполняемого в вашем файле `.emacs ', нужно отложить до тех пор, пока не будет выполнен исходный код установки терминала или оконной системы, но это не так, тогда вы столкнетесь с этой проблемой (этот порядок выполнения кода / файла не применяется) после запуска).
Чтобы отложить выполнение кода Emacs Lisp до завершения установки терминала или оконной системы, обработайте код как лямбда-список и задайте значение переменной term-setup-hook или window-setup-hook для этой лямбда-функции. Например,
Спасибо за это. Я обновил вопрос с некоторыми комментариями. Кроме того, я пытался `(add-hook 'term-setup-hook (lambda () MY_OLD_CODE))`, но это не помогло (предполагая, что это был способ, которым это должно было использоваться - я сосу в Лиспе).
Roberto Aloi 14 лет назад
0
Я не намного лучше в Lisp, но почему-то я чувствую, что время - это объяснение: опции custom-set-face не читаются в нужное время.
harrymc 14 лет назад
0