Я использую emacs
с конфигурацией prelude
. я изменил тему и она отлично работает, и я добавил его в preload directory
так:проверить, есть ли тема перед загрузкой
;; preload color theme
(setq prelude-theme 'my-theme)
Я установил тему с помощью prelude-require-packages
, но не в preload
папке (не уверен, если это возможно, что в ближайшее время) , Есть ли способ программно проверить если тема доступна, чтобы заменить предыдущую строку с чем-то более безопасным, как:
;; just to get the idea
(when (is-available 'my-theme)
(setq prelude-theme 'my-theme))
Редактировать Я попытался:
;; preload color theme
(when (featurep 'my-theme)
(setq prelude-theme 'my-theme))
Но в этом случае Я получаю тему по умолчанию, а не «my-theme».
Не работает. Это потому, что моя тема находится в каталоге 'elpa'? – nha
Да. Просто добавьте этот каталог в 'custom-theme-load-path', как описано в [этом ответе] (http://stackoverflow.com/a/15381087/409228). –
Я немного удивлен, хотя могу загрузить его с помощью 'M-x load-theme', но это не в моем пути загрузки? Но спасибо, я попробую. – nha