2015-09-20 1 views
0

Je veux changer les couleurs par défaut dans le powerline-evil-center-color-theme. Je cherche spécifiquement à changer les couleurs du visage de l'état maléfique de sorte que les couleurs d'arrière-plan et de premier plan correspondent à mon thème de couleur Emacs. J'ai essayé de regarder le readme sur Powerline-evil, mais il ne me dit pas comment configurer les couleurs via mon init.el, et j'ai essayé de modifier le code dans powerline-evil.el à changer les couleurs manuellement, mais cela n'a toujours pas fonctionné.Comment changer la couleur du visage de l'état maléfique dans powerline-evil?

Le code suivant est tiré de ma ligne électrique-evil.el:

(defface powerline-evil-base-face 
    '((t (:foreground "green" :inherit mode-line))) 
    "Base face for powerline evil faces." 
    :group 'powerline) 

(defface powerline-evil-normal-face 
    '((t (:background "#909737" :inherit powerline-evil-base-face))) 
    "Powerline face for evil NORMAL state." 
    :group 'powerline) 

(defface powerline-evil-insert-face 
    '((t (:background "blue" :inherit powerline-evil-base-face))) 
    "Powerline face for evil INSERT state." 
    :group 'powerline) 

(defface powerline-evil-visual-face 
    '((t (:background "orange" :inherit powerline-evil-base-face))) 
    "Powerline face for evil VISUAL state." 
    :group 'powerline) 

(defface powerline-evil-operator-face 
    '((t (:background "cyan" :inherit powerline-evil-operator-face))) 
    "Powerline face for evil OPERATOR state." 
    :group 'powerline) 

(defface powerline-evil-replace-face 
    '((t (:background "red" :inherit powerline-evil-base-face))) 
    "Powerline face for evil REPLACE state." 
    :group 'powerline) 

(defface powerline-evil-motion-face 
    '((t (:background "magenta" :inherit powerline-evil-base-face))) 
    "Powerline face for evil MOTION state." 
    :group 'powerline) 

Même si je mets au premier plan d'être vert, comme vous pouvez le voir dans le code ci-dessus, il affiche toujours aussi blanc. Je ne sais pas quoi faire. Quelqu'un peut-il aider?

EDIT: J'ai actuellement un autre problème maintenant. Ce que @AaronHarris m'a dit fonctionne bien pour la couleur de premier plan, mais je ne peux pas changer la couleur de fond pour les autres états. Ma ligne de mode entière devient la couleur d'arrière-plan de mon thème à la place. J'ai ajouté le code suivant à mon init.el

(custom-theme-set-faces 'jazz '(powerline-evil-base-face 
            ((t (:foreground "jazz-fg" :inherit mode-line))) 
            :group 'powerline)) 

    (custom-theme-set-faces 'jazz '(powerline-evil-insert-face 
            ((t (:background "jazz-blue" :inherit powerline-evil-base-face))) 
            :group 'powerline)) 

La première partie fonctionne très bien pour la couleur de premier plan, mais la deuxième partie fait quelque chose de mal.

Répondre

0

Je pense que vous voulez utiliser custom-theme-set-faces de dire à votre thème ce qu'il faut faire avec ce visage, par exemple:

(custom-theme-set-faces 'my-theme '(powerline-evil-base-face 
            ((t (:foreground "green"))))) 

Je pense non très instruit sur ce qui se passe ici est que votre thème connaît déjà cette Face et sa valeur par défaut est également blanc, donc tout ce que vous faites à la définition originale sera effacé par le thème.

+0

Merci de répondre. J'utilise le thème de jazz comme thème de couleur, donc je suis correct en ajoutant à mon init.el ce qui suit: '(thème-jazz-theme-set-faces '(powerline-evil-base-face ((t (: foreground "green"))))) ' Si je fais cela, je reçois l'erreur: thème inconnu 'jazz-theme. –

+0

EDIT: J'ai trouvé l'erreur. Le thème est connu par emacs comme «jazz» et non comme «jazz-theme», donc ça arrange tout. Merci pour la réponse Aaron :) –