Bonjour à tous,
J'ai une petite question… plus sur regexp que php… je pense que c'est ici que ce sera le plus approprié pour la poser. Je code en Fortran… ne partez pas encore !… et j'utilise emacs, le mode de coloration syntaxique f90-mode d'emacs ne supporte pas actuellement la coloration des directives préprocesseurs. J'ai donc bidouillé un petit quelque chose dans mon .emacs pour pouvoir colorer celles-ci. Avec ce que j'ai rajouté dans un morceau de code préprocesseur comme ça :
j'arrive à colorer la première ligne, les lignes suivantes qui se finissent par \, mais le problème que j'ai est sur la regexp à utiliser pour colorer la dernière ligne. Il faudrait que je puisse tester le dernier caractère de la ligne précédente pour voir si c'est un \ mais je ne vois, sais pas comment faire. Je vous donne déjà ce que j'ai fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 #motclo toto() \ première ligne \ neme ligne \ dernière ligne
Il y a beaucoup de backslash mais c'est à cause de la syntaxe pour emacs. J'ai voulu tester avec des trucs du genre ^\\\\\n.* mais pas moyen. Peut être que je m'y prend mal où alors ce n'est tout simplement pas possible simplement avec une regexp et il faut faire quelque chose de plus subtil avec des fonctions… enfin si vous avez une idée je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 ;; coloration des commandes preprocesseur (add-hook 'f90-mode-hook '(lambda () (font-lock-add-keywords nil '(("\\(^#.*\\)" 1 font-lock-type-face prepend))))) (add-hook 'f90-mode-hook '(lambda () (font-lock-add-keywords nil '(("\\(.*\\\\\n\\)" 1 font-lock-type-face append)))))
Bonne journée![]()
Partager