Постійно переосмислювати колір тла теми Emacs


9

Я хочу використовувати тему Emacs billw , за винятком іншого кольору фону. У моєму .emacsфайлі є таке:

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

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

Будь-яка допомога в цьому? Я спробував створити власну власну тему на основі результатів, color-theme-printале це спричинило більше проблем, ніж це варто ...

Відповіді:


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")))

C-hfcolor-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нуль, змінюється лише обраний кадр. Якщо color-theme-is-cumulativeнуль, параметри кадру відновлюються з color-theme-original-frame-alist.

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


3

Розташуйте курсор (" крапка " на мові GNU Emacs) там, де ви хочете встановити "фон". Переважно там, де не відображається текст. Потім введіть M-x describe-face.

Emacs скаже вам, що ви дивитесь на обличчя відьом (все, що може відображати GNU Emacs, має "обличчя"). Найімовірніше, "за замовчуванням". Потім в нижній частині вікна натисніть "ви можете налаштувати це обличчя".

Тепер ви " підганяєте ". (це просто якийсь майстер для отримання / встановлення значень від / до вашого ~ / .emacs ) Встановіть потрібний колір фону, а потім натисніть кнопку "Зберегти для майбутніх сеансів".

Там у вас є. Тепер подивіться на дно вашого ~ / .emacs всередині (custom-set-faces ...), це ваше визначення обличчя.

До речі , кольорова тема тепер якось вбудована у GNU Emacs 24 . Я маю це у своїх .emacs:

(custom-set-variables

...stuff...

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

...stuff...)

2
У цьому випадку, виявляється, вам потрібно зробити наступне:(custom-set-faces `(default ((t (:background "gray13")))))
Джон Дж. Каміллері
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.