OVH Cloud OVH Cloud

Coloration syntaxique d'auctex

12 réponses
Avatar
Denis Bitouzé
Bonjour,

savez-vous où sont définies les couleurs de la coloration syntaxique
d'auctex ?

Merci d'avance.
--
Denis

10 réponses

1 2
Avatar
Bernard Adrian
Denis Bitouzé a écrit :

savez-vous où sont définies les couleurs de la coloration syntaxique
d'auctex ?



Bonjour,

Si la question est "comment les modifier ?" :

font-latex provides many options for customization which are
accessible with `M-x customize-group RET font-latex RET'. For this
description the various options are explained in conceptional groups.

Aller au dernier choix : Font Latex Highlighting Faces

Je n'ai pas essayé.

HTH
--
Bernard Adrian
http://bernadrian.free.fr
Avatar
Denis Bitouzé
Le 27 sep 2005 à 17h15
Bernard Bernard Adrian a écrit:

Si la question est "comment les modifier ?" :



En fait, ce n'est pas vraiment pour cela, c'est plutôt pour reproduire
la coloration syntaxique dans des documents LaTeX et je voulais, entre
autres, connaître les codes de couleurs utilisés.

Merci, je vais quand même regarder ce que tu m'as suggéré.
--
Denis
Avatar
drkm
Denis Bitouzé writes:

En fait, ce n'est pas vraiment pour cela, c'est plutôt pour reproduire
la coloration syntaxique dans des documents LaTeX et je voulais, entre
autres, connaître les codes de couleurs utilisés.



Je ne suis pas certain de comprendre le but recherché. Mais si
tu possèdes une version récente de la version CVS de GNU Emacs,
'find-face-definition' pourrait t'intéresser. Pour découvrir les
faces utilisées dans un document, tu peut être intéressé par
'drkm-face:display-face' et 'drkm-face:display-all-faces', dans
'drkm-face.el', sur <URL:http://drkm-lib.sf.net> (via le CVS).

--drkm
Avatar
Denis Bitouzé
Le 27 sep 2005 à 20h47
drkm drkm a écrit:

Je ne suis pas certain de comprendre le but recherché.



Dans le cadre d'une formation à LaTeX que j'assure, j'inclus dans ma
présentation vidéo-projetée (faite avec LaTeX, bien sûr !) des exemples
de codes LaTeX, formattés grâce à l'excellent paquetage « listings »
qui permet de mettre en relief les mots-clés du langage (de tas de
langages, d'ailleurs) sans avoir à s'occuper de quoi que ce soit. Là,
je voudrais en plus mettre un peu de couleur pour aider le public à,
même inconsciemment, distinguer différents types de séquences de
contrôles. Trouvant la coloration syntaxique très bien faite dans
auctex (jolies couleurs et distinction subtile des séquences de
contrôles), je voudrais la reproduire dans mes listings et, pour
paramétrer le paquetage « listings » de façon adhoc, je voulais aller
voir comment ça se passait sous le capot...

Mais si
tu possèdes une version récente de la version CVS de GNU Emacs,



[ Presentation]$ emacs --version
GNU Emacs 21.3.2

[ Presentation]$ rpm -q emacs
emacs-21.3-20mdk

'find-face-definition' pourrait t'intéresser. Pour découvrir les
faces utilisées dans un document, tu peut être intéressé par
'drkm-face:display-face' et 'drkm-face:display-all-faces', dans
'drkm-face.el', sur <URL:http://drkm-lib.sf.net> (via le CVS).



Je vais regarder cela de plus près.

Merci !
--
Denis
Avatar
drkm
Denis Bitouzé writes:

Le 27 sep 2005 à 20h47
drkm drkm a écrit:

Je ne suis pas certain de comprendre le but recherché.



[...]

paramétrer le paquetage « listings » de façon adhoc, je voulais aller
voir comment ça se passait sous le capot...



Ok, je vois.

Mais si
tu possèdes une version récente de la version CVS de GNU Emacs,



[ Presentation]$ emacs --version
GNU Emacs 21.3.2

[ Presentation]$ rpm -q emacs
emacs-21.3-20mdk



Si je me souviens bien, 'find-face-definition' n'existe pas
dans 21.3. Mais de toute façon, dans AUCTeX, elles sont définies
dans 'font-latex.el' (cherche 'defface'). Mais pour ton
problème, cela ne te sera pas d'une très grande aide. Autant
utiliser 'describe-face' qui est elle je pense sur 21.3, et qui
te décrit les attribut d'une face telle que tu la vois.

Mais tu n'obtiendras pas de description comme un triplet RGB,
tu auras un nom de couleur. Par exemple (extrait) :

,----[ M-x describe-face <RET> font-lock-keyword-face <RET> ]
|
| Face: font-lock-keyword-face (customize this face)
| Documentation: Font Lock mode face used to highlight keywords.
|
| Foreground: Cyan1
`----

J'imagine qu'il y a moyen de récupérer des infos sur les
couleurs d'après leur nom, mais je ne sais pas comment.

--drkm
Avatar
Denis Bitouzé
Le 28 sep 2005 à 17h28
drkm drkm a écrit:

,----[ M-x describe-face <RET> font-lock-keyword-face <RET> ]
|
| Face: font-lock-keyword-face (customize this face)
| Documentation: Font Lock mode face used to highlight keywords.
|
| Foreground: Cyan1
`----



Voilà, c'est exactement ce que je voulais mise à part qu'il me faut
maintenant :

[...] récupérer des infos sur les
couleurs d'après leur nom,



mais, moi non plus, je ne sais pas comment.

Merci en tous cas !
--
Denis
Avatar
drkm
drkm writes:

Mais tu n'obtiendras pas de description comme un triplet RGB,
tu auras un nom de couleur. Par exemple (extrait) :

,----[ M-x describe-face <RET> font-lock-keyword-face <RET> ]
|
| Face: font-lock-keyword-face (customize this face)
| Documentation: Font Lock mode face used to highlight keywords.
|
| Foreground: Cyan1
`----

J'imagine qu'il y a moyen de récupérer des infos sur les
couleurs d'après leur nom, mais je ne sais pas comment.



ELISP> (color-values "Cyan1")
(0 65535 65535)

,----[ C-h f color-values <RET> ]
| Return a description of the color named /color/ on frame /frame/.
| The value is a list of integer RGB values--(RED GREEN BLUE).
| These values appear to range from 0 65535; white is (65535 65535 65535).
`----

C'est assez simple, finalement :-)

--drkm
Avatar
drkm
drkm writes:

ELISP> (color-values "Cyan1")
(0 65535 65535)



Au fait, comme il ne s'agit pas d'une commande (c'est à dire
une fonction interactive, appelable directement par 'M-x'), le
plus simple est d'utiliser IELM. Après 'M-x ielm <RET>', tu te
retrouves dans un buffer contenant un prompt, où tu peux saisir
des expressions ELisp et les évaluer. Tu peux utiliser <TAB> en
cours de saisie pour compléter. Très sympa.

--drkm
Avatar
Denis Bitouzé
Le 28 sep 2005 à 18h43
drkm drkm a écrit:

et les évaluer



Comment fais-tu cela ?
--
Denis
Avatar
drkm
Denis Bitouzé writes:

Le 28 sep 2005 à 18h43
drkm drkm a écrit:



Ton lecteur de news semble bégayer.

et les évaluer



Comment fais-tu cela ?



Tout simplement en pressant <RET>. C'est comme dans un shell
du genre Bash ou Zsh : tu saisis l'expression en bénéficiant de
l'aide de la complétion, puis <RET> pour évaluer (si l'expression
n'est pas complète, par exemple s'il manque une parenthèse
fermante, <RET> passe tout simplement à la ligne, indentée comme
il faut) :

ELISP> (defun f ()
(message "Hello"))
f
ELISP> (f)
"Hello"
ELISP>

Pour l'historique : 'M-p' et 'M-n'.

--drkm
1 2