60

^ a une signification qui dépend du contxte : c'est une négation quand il est utilisé dans les classes

[^a] <=> tout sauf a
^a <=> a en début de ligne

61

Ah ok, merci ^^ <- et là c'est un smiley

62

grin
avatar

63

grin

64

grin
En fait les caractères spéciaux dans et hors des crochets sont complètement différents (seul \ est vraiment commun, ^ est spécial dans les deux cas mais n'a pas la même signification) (c'est entre autres pourquoi je ne suis pas du tout sûr que \w signifie bien "caractère alphanumérique" dans ce contexte également)
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

65

Bon, ben j'arrive tout simplement à colorer les instructions qui sont placées après les labels, j'ai juste virer le carret qui disait "est instruction ce qui commence après un ou plusieurs espaces si ceux-ci commencent en début de ligne" :
<context attribute="Normal Text" lineEndContext="#stay" name="Label">
       <RegExpr      attribute="Label" context="#stay" String="^[A-Za-z0-9_$@\][A-Za-z0-9_.$@]*:" />
<!--   <RegExpr      attribute="Label" context="AfterLabel" String="[A-Za-z0-9_$@][A-Za-z0-9_.$@]*(?=\s+[_\w])" />   -->
	<RegExpr      attribute="Normal Text" context="AfterLabel" String="\s+" />               [VIRE LE CARRET ICI, AVANT LE '\s+']
       <DetectChar   attribute="Comment" context="Commentar 1" char=";" />
</context>


Par contre, ça marche très bien sans la ligne que j'ai commentée, si quelqu'un peut m'expliquer son intérêt je suis preneur, ya vraiment un truc que je dois pas avoir compris. trifus

66

— À ta place j'aurais plutôt fusionné les deux lignes en une comme suggéré précédemment, mais en effet ta méthode doit marcher également. Ta nouvelle regexp dit tout simplement qu'après des espaces on passe automatiquement en mode AfterLabel, même si ces espaces ne sont pas en début de ligne. (Ma suggestion était d'utiliser une seule regexp pour dire qu'après un label *optionnel* suivi d'espaces on passe en mode AfterLabel, ça revient grosso modo au même.)

— Si tu veux qu'un label puisse ne pas finir par ":" il faut mettre un point d'interrogation après ":" dans ta regexp

— Que la deuxième ligne ne fasse rien ne m'étonne pas du tout (cf. mon commentaire dans un post précédent, ./40 alinéa 3 pour être précis grin), je pense que tout simplement la regexp est erronée et donc ne matche jamais... c'est donc comme si elle n'était pas là ^^. Je ne sais pas si ton logiciel signale les erreurs de syntaxe, mais ça ne m'étonnerait pas que [_\w] en soit une ; mais même si ça n'en est pas une, ça ne doit rien matcher de pertinent.
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

67

D'ailleurs, ça me parait plus juste pour les labels cette regexpr :
"^\?[A-Za-z0-9_.$@]+:"
A68k accepte n'importe quoi comme label, même un simple _ ou $ ^^


Et oui, Kate vérifie la syntaxe, et ne se prive pas pour m'en avertir quand j'écris une connerie grin