coloration syntaxique avec kedit - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 08-10-2004 à 16:56:11
je vais répondre à côté mais tu devrais utiliser plutôt kwrite, il a déjà un très grand nombre de cschéma de coloration syntaxique dispos
Note : kate doit utiliser kwrite, kile (éditeur tex) aussi
Marsh Posté le 08-10-2004 à 17:49:55
en fait j'utilises deja kwrite, mais je les confonds tout le temps. Mon probleme c'est que je ne veux pas un mode de coloration syntaxique existant mais je veux en faire un pour un format de fichier bien specifique...
Marsh Posté le 08-10-2004 à 18:11:22
j'ai vu qu'on pouvait télécharger das nouveaux schémas, faudrait voir om il les mets
Marsh Posté le 09-10-2004 à 16:24:04
ben j'ai pas trouvé justement, alors avant de passer 3h a chercher ou c'est et comment ça marche je preferes demander
J'ai rien trouver sur kde.org en tout cas
Marsh Posté le 09-10-2004 à 17:29:03
NicolBolas a écrit : ben j'ai pas trouvé justement, alors avant de passer 3h a chercher ou c'est et comment ça marche je preferes demander |
Les fichiers de coloration sont dans share/apps/katepart/syntax qui peut varier selon l'installation, chez moi c'est /usr/share/apps/katepart/syntax.
Et tu peux en mettre normalement d'autre dans ton .kde : ~/.kde/share/apps/katepart/syntax.
Pour en faire un nouveau le + simple est de partir d'un existant assez proche et de le modifier. Le format est assez compréhensible. Il y a des bribes d'explications ici : http://kate.kde.org/doc/hlhowto.php
En gros tu définis des contextes et, dans chaque contextes, des règles qui font changer de contextes (genre détection de regexp ou de caractères). Chaque contexte a des propriétés d'affichage. Changement de contexte == empilement du nouveau contexte sur la pile de contexte, et tu as donc des règles qui permettent de dépiler et de retourner dans le contexte précédent (== contexte spécial #pop).
Enfin pas facile à expliquer comme cela mais en lisant quelques uns de ces fichiers pour un langage que tu connais tu devrais comprendre comment ca marche
Edit: ceci concerne katepart qui est utilisé par kwrite (enfin, par défaut) et par kate et d'autres. kedit n'a a ma connaissance pas de support de la coloration syntaxique car cet éditeur est destiné à rester le plus simple possible.
Marsh Posté le 13-10-2004 à 13:14:20
bon j'ai pu recuperer toutes les infos dispos mais je n'ai toujours pas compris comment marchent les fichier de coloration syntaxique. Quelqu'un a compris le fonctionnement des contextes et les différentes façons de detecter les mots clefs, les balises et autres?
pour info voila grosso modo comment sont construits mes fichiers :
NOM_VARIABLE=chaine_de_carractère;
à plusieurs reprises
DEBUT_BALISE
FIN_BALISE
qui doivent etre detectées comme un bloc avec expand/collapse
MOTS_CLEFS a representer d'une couleur differente, ils sont contenus entre deux \
\ a representer d'une couleur differente quelle que soit sa position
toute information est la bienvenue...
Marsh Posté le 13-10-2004 à 17:26:39
Mets voir un exemple de tes fichiers (un extrait avec un peu tout); je comprends surtout pas trop le DEBUT_BALSE FIN_BALISE ? DEBUT_ et FIN_ sont des préfixes obligatoires ou c'était juste pour l'exemple ?
J'essaierai de te faire un fichier pour la coloration syntaxique - ca devrait pas être trop dur, j'en ai déjà fait plusieurs.
Marsh Posté le 13-10-2004 à 18:27:28
DEBUT_ et FIN_ sont des prefixes et le reste de la balise doit garder la meme couleur...
voila un exemple de fichier vide :
Code :
|
dans les blancs tu as soit des paths de clefs de registre, de fichiers ou de répertoires, sachant que dans les paths de fichiers/repertoires il y a des raccorcis (alias des variables systemes quoi) genre \APPDATA\ au lieu de \D&S\$user\application data\ . C'est une liste de mots clefs à faire ressortir (en gras quoi)
Merci pour ton aide, meme si tu peux juste me trouver un exemple assez depouillé avec mes differents cas de figures, ça m'aidera beacoup
Marsh Posté le 13-10-2004 à 23:56:24
<?xml version="1.0" encoding="UTF-8"?> |
Voici un exemple qui donne un premier résultat. C'est une sorte de machine à états : elle commence dans le premier context avec l'attribut "Normal Text". Ensuite elle regarde si une des règle s'applique. Exemple: détection de la regexpr ^\w+(?=\s*=) (i.e. une chaîne de caractères suivie d'un signe égal, sans capturer le signe égal) et en cas de détection, elle saute dans le nouveau contexte en empilant l'ancien...
On est alors dans le contexte VarEq et le processus recommence. Si elle trouve eds espaces ou des =, elle les colorie. Sinon, comme aucune règle ne s'est appliquée, elle part dans le contexte de "fallback".
On est alors dans le contexte VarDecl. Ici aussi quelques règles pour colorier les \ et les \blabla\. Et une règle qui capture le ; et remonte de deux étages dans la pile de contexte (=> retour au contexte initial).
Marsh Posté le 14-10-2004 à 10:02:11
et ben ça marche a merveille, merci beaucoup J'ai plus qu'à rajouter mes listes de keywords et c'est impécable!
Marsh Posté le 08-10-2004 à 15:10:34
Bonjour,
Je cherche a ecrire un shema de coloration syntaxique pour kedit. Enfin j'aimerais deja savoir si c'est possible d'en faire un personalisé, ensuite savoir quelle est la syntaxe de ce type de fichier...
Si vous avez des infos là dessus merci de m'en faire profiter
@+
---------------
#NetOp. T'as pas 10G ?