9

Я хочу использовать тему billw Emacs, кроме как с другим цветом фона. В моем файле .emacs есть следующее:

(require 'color-theme)
(color-theme-initialize)
(color-theme-billw)
(set-background-color "gray12")

Однако, похоже, это не меняет цвет фона при запуске; Мне нужно вручную запустить set-background-color "gray12" в минибуфере в начале каждой сессии.

Любая помощь с этим? Я пытался создать свою собственную тему на основе вывода color-theme-print но это вызвало больше проблем, чем оно того стоит ...

2 ответа2

5

Функция color-theme-billw внутренне использует функцию color-theme-install-frame-params для изменения параметров кадра. Таким образом, вы можете изменить параметры фрейма следующим образом:

(require 'color-theme)
(color-theme-initialize)
(color-theme-billw)
(color-theme-install-frame-params
  '((background-color . "gray12")))

Ch f color-theme-install-frame-params

(color-theme-install-frame-params PARAMS)

Измените параметры кадра, используя ALIST PARAMETERS .

Если color-theme-is-global не ноль, все кадры модифицируются с использованием modify-frame-parameters и PARAMETERS добавляется к default-frame-alist . Значение initial-frame-alist не изменяется. Если color-theme-is-global равен nil, только выбранный кадр изменяется. Если color-theme-is-cumulative имеет значение nil, параметры кадра восстанавливаются из color-theme-original-frame-alist .

Если текущие параметры кадра имеют параметр minibuffer only со значением, то параметры кадра не устанавливаются, поскольку это указывает на выделенный кадр минибуфера.

3

Поместите курсор (« точка » на языке GNU Emacs), где вы хотите установить "фон". Предпочтительно там, где нет отображаемого текста. Затем введите M-x describe-face .

Emacs скажет вам лицо ведьмы (все, что может отображать Emacs в GNU, имеет "лицо"), на которое вы смотрите. Скорее всего "по умолчанию". Затем в нижней части окна нажмите "Вы можете настроить это лицо".

Вы сейчас "в настройке ". (это просто своего рода мастер для получения / установки значений из / в ~ / .emacs). Установите желаемый цвет фона, затем нажмите "Сохранить для будущих сессий".

Там у вас есть это. Теперь посмотрите на нижнюю часть вашего ~/.emacs, внутри (custom-set-faces ...) face ...), это ваше определение лица.

Кстати, color-theme теперь как - то встроена в GNU Emacs 24. У меня есть это в моем .emacs:

(custom-set-variables

...stuff...

 '(custom-enabled-themes (quote (tango-dark)))

...stuff...)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .