Comment mettre des visages TODO dans le fichier?

12

J'ai défini les états TODO suivants dans un fichier en mode organisation:

#+SEQ_TODO: TODO(t) WAIT(w) | DONE(d)

Et j'ai personnalisé les couleurs pour les états TODO:

Masquer les visages des mots clés Org Todo:
INS DEL Contre-cellule:
            Mot-clé: TODO
            Visage: Valeur Menu Couleur: rouge
INS DEL Contre-cellule:
            Mot-clé: ATTENDRE
            Visage: Valeur Menu Couleur: orange
INS DEL Contre-cellule:
            Mot-clé: FAIT
            Visage: Valeur Menu Couleur: vert
INS

Mais je voudrais personnaliser les couleurs des états TODO au même endroit où je les ai définis: dans le fichier.

Comment cela peut-il être fait?

ceving
la source
1
déposer des variables locales?
mbork

Réponses:

14

Vous pouvez ajouter ce qui suit en haut de votre .orgfichier:

# -*- org-todo-keyword-faces: (("TODO" . "red") ("WAIT" . "orange") ("DONE" . "green")); -*-

La -*- ... -*-syntaxe est utilisée pour spécifier les variables locales de fichier .

itsjeyd
la source
Oui bien sûr. Je n'ai pas pensé aux variables tampons. Je cherchais quelque chose comme ceci:#+SEQ_TODO: TODO(t red) WAIT(w orange) | DONE(d green)
ceving
1
@ceving D'après la documentation de org-todo-keywords, cela ne semble pas possible. (Pour voir par vous-même, tapez C-h v org-todo-keywords RET).
itsjeyd
Plutôt que d'utiliser une contre-cellule, il peut être utile d'utiliser les propriétés du visage; Par exemple, au lieu du point / point, utilisez :foreground". Et, peut-être envisagez d'ajouter un exemple plus complexe qui définit à la fois l'arrière-plan et le premier plan d'un mot-clé particulier. Ce même concept d'utilisation d'une liste traditionnelle au lieu d'une contre-cellule s'applique également org-todo-priority-faces.
lawlist
7

Je ne peux pas faire fonctionner la syntaxe "# - * -..." dans mon fichier .org (je peux accepter que j'ai probablement fait quelque chose de mal. :-).

J'ai obtenu le travail suivant. Placez-le au bas de votre fichier .org:

# Variables locales:
# mode: org
# org-todo-keyword-faces: (("" ANSWER "." orange ") (" ARCHIVED "." blue ") (" DATE "." red ") (" DOING "." yellow ") (" DONE " . "vert") ("HPSM". "rouge") ("JIRA". "rouge") ("TODO". org-warning) ("EN ATTENTE". "orange"))
# Fin:
Bill Benedetto
la source
1
J'ai testé avec succès la -*-syntaxe à l'aide de la commande interactive add-file-local-variable-prop-line. J'ai spécifié org-todo-keyword-facespour la variable et (("TODO" . "purple"))pour la valeur. Après avoir appelé les revert-bufferchoses fonctionnent comme prévu. La ligne résultante est# -*- org-todo-keyword-faces: (("TODO" . "purple")); -*-
glucas
D'accord. Cela fonctionne maintenant. Je jure que je l'ai fait avant et que je ne pouvais pas le faire fonctionner. Quoi qu'il en soit, la syntaxe - * - fonctionne correctement.
Bill Benedetto
Cela me rend fou ... La ligne de @glucas contenant des œuvres violettes, mais celle-ci avec du rouge # -*- org-todo-keyword-faces: (("TODO" . "purple") ("IN-PROGRESS" . "red")); -*-NE PAS ... Des indices?
nevhewtom
@nephewtom semble OK ici. J'ai copié votre ligne dans un fichier org, puis j'ai rouvert le fichier et vérifié la valeur de org-todo-keyword-faces. Notez que vous devrez également ajouter EN COURS org-todo-keywords.
glucas
Je ne sais pas ce qui se passait ... Je me suis peut-être trompé. Mais il semble que cela soit également arrivé à Bill. Quoi qu'il en soit, j'ai enfin réussi à le faire fonctionner avec ce post aussi: stackoverflow.com/questions/12707492/…
nephewtom