проблема с цветовой темой emacs

Я создал свою собственную цветовую тему, используя этот веб-сайт. Я добавил новый файл .el в свой каталог ./site-lisp/color-theme/themes со следующим кодом:

(defun your-config-name-here ()
  (interactive)
  (color-theme-install
   '(your-config-name-here
      ((background-color . "#ffffff")
      (background-mode . light)
      (border-color . "#000000")
      (cursor-color . "#333333")
      (foreground-color . "#000000")
      (mouse-color . "black"))
     (fringe ((t (:background "#000000"))))
     (mode-line ((t (:foreground "#000000" :background "#666666"))))
     (region ((t (:background "#999999"))))
     (font-lock-builtin-face ((t (:foreground "#000000"))))
     (font-lock-comment-face ((t (:foreground "#000000"))))
     (font-lock-function-name-face ((t (:foreground "#000000"))))
     (font-lock-keyword-face ((t (:foreground "#000000"))))
     (font-lock-string-face ((t (:foreground "#000000"))))
     (font-lock-type-face ((t (:foreground"#000000"))))
     (font-lock-variable-name-face ((t (:foreground "#000000"))))
     (minibuffer-prompt ((t (:foreground "#7299ff" :bold t))))
     (font-lock-warning-face ((t (:foreground "Red" :bold t))))
     )))
  (provide 'your-config-name-here)

И это в моем файле .emacs:

  (add-to-list 'load-path "~/../site-lisp/color-theme/")
  (add-to-list 'load-path "~/../site-lisp/color-theme/themes")

  (require 'color-theme)
  (require 'your-config-name-here)
  (eval-after-load "color-theme"
    '(progn
      (color-theme-initialize)
      (your-config-name-here)))

Проблема в том, что я заметил, что когда я меняю настройки в your-config-name-here.el, выхожу из emacs и перезагружаю его, изменения не вступают в силу, пока я не сделаю это:

M-x load-file ~/../site-lisp/color-theme/themes/your-config-name-here.el
M-x your-config-name-here

Такое ощущение, что цветовая тема где-то кэширует настройки и не перезагружается при запуске. Что мне не хватает?


person sonelliot    schedule 29.07.2010    source источник


Ответы (1)


В вашем коде есть вызов 'color-theme-initialize, который не существует как функция в пакете color -theme.el.

(eval-after-load "color-theme"
  '(progn
     ;; remove this call (color-theme-initialize)
     (your-config-name-here)))

И тогда ваш код работает.

person Trey Jackson    schedule 29.07.2010