Actualizar:
load-theme-buffer-local.el
Se supone que el ( repositorio de GitHub ) hace lo que intenté hacer, pero hacerlo de la manera correcta .
Para usarlo eww
, instálalo y agrega
(add-hook 'eww-mode-hook
(lambda () (load-theme-buffer-local 'tango (current-buffer))))
a su archivo de inicio.
PD: No puedo probar este enfoque yo mismo, así que avíseme si funciona.
Respuesta original (guardada solo para el registro):
Puede usar face-remap-add-relative
para establecer caras en el búfer actual.
Después de investigar un poco, se me ocurrió este truco. Extrae la configuración de la cara de un tema y la aplica en el búfer actual.
(defun set-theme-faces-in-buffer (theme)
"Use face remapping to set faces from a theme in the current
buffer. THEME should be a symbol."
(dolist (setting (get theme 'theme-settings))
(when (eq (car setting) 'theme-face)
(let ((face (nth 1 setting))
(spec (cadar (nth 3 setting))))
(ignore-errors
(apply #'face-remap-add-relative face spec))))))
Puede combinar esto con un eww-mode-hook
para establecer un tema diferente en eww
buffers.
(add-hook 'eww-mode-hook
(lambda () (set-theme-faces-in-buffer 'tango)))
(Reemplace tango
con su tema de luz favorito).
eww-mode