Remplacer définitivement la couleur d'arrière-plan du thème Emacs

9

Je veux utiliser le thème Emacs billw , sauf avec une couleur d'arrière-plan différente. J'ai les éléments suivants dans mon .emacsdossier:

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

Cependant, cela ne semble pas changer la couleur d'arrière-plan au démarrage; Je dois exécuter manuellement set-background-color "gray12"le mini-tampon au début de chaque session.

Une aide avec ça? J'ai essayé de créer mon propre thème personnalisé en fonction de la sortie de color-theme-printmais cela a causé plus de problèmes que cela ne vaut ...

John J. Camilleri
la source

Réponses:

5

La color-theme-billwfonction utilise en interne la color-theme-install-frame-paramsfonction pour modifier les paramètres de trame. Vous pouvez donc modifier les paramètres de trame de la même manière comme suit:

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

Modifiez les paramètres de trame à l'aide de alist PARAMETERS.

Si color-theme-is-globalest non nul, toutes les images sont modifiées à l'aide de modify-frame-parameterset PARAMETERSsont ajoutées à default-frame-alist. La valeur de initial-frame-alistn'est pas modifiée. Si color-theme-is-globalest nul, seul le cadre sélectionné est modifié. Si color-theme-is-cumulativeest nul, les paramètres de trame sont restaurés à partir de color-theme-original-frame-alist.

Si les paramètres de trame actuels ont un paramètre minibufferavec valeur only, alors les paramètres de trame ne sont pas installés, car cela indique une trame de mini-tampon dédiée.

dkim
la source
3

Positionnez votre curseur (" point " dans le langage GNU Emacs) à l'endroit où vous souhaitez définir le "fond". De préférence là où aucun texte n'est affiché. Entrez ensuite M-x describe-face.

Emacs vous dira le visage de la sorcière (tout ce que GNU Emacs peut afficher a un "visage") que vous regardez. Très probablement "par défaut". Puis en bas de la fenêtre, cliquez sur "vous pouvez personnaliser ce visage".

Vous êtes maintenant "en personnalisation ". (c'est juste une sorte d'assistant pour obtenir / définir des valeurs depuis / vers votre ~ / .emacs ) Définissez la couleur d'arrière-plan que vous souhaitez, puis cliquez sur "enregistrer pour les sessions futures".

Voilà. Maintenant, regardez au bas de votre ~ / .emacs, à l'intérieur (custom-set-faces ...), c'est votre définition de visage.

BTW , le thème de couleur est maintenant en quelque sorte intégré à GNU Emacs 24 . J'ai ceci dans mon .emacs:

(custom-set-variables

...stuff...

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

...stuff...)
yPhil
la source
2
Dans ce cas, il s'avère que vous devez faire ce qui suit:(custom-set-faces `(default ((t (:background "gray13")))))
John J. Camilleri