Coloration syntaxique de Gedit

Ne soyons pas sectaires : il est possible de lancer ici un sujet de discussion sans rapport avec Asymptote.
Avatar du membre
chellier
Messages : 104
Enregistré le : jeu. 18 mars 2010, 17:30

Coloration syntaxique de Gedit

Message non lu par chellier » jeu. 15 avr. 2010, 22:00

Pour ceux qui utilisent Gedit pour l'édition de code asymptote, j'ai mis à jour le fichier asy.lang.

Quelques améliorations (c'est plus joli ;) ), meilleur reconnaissance de la différence type-fonction (il y a encore Label qui me résiste :x )...

Fichier à placer dans ~/.local/share/gtksourceview-2.0/language-specs/ (explications détaillées ici).

Christophe

OG
V.I.P.
V.I.P.
Messages : 142
Enregistré le : dim. 7 mars 2010, 22:27

Re: Coloration syntaxique de Gedit

Message non lu par OG » jeu. 15 avr. 2010, 22:08

Bonsoir

Il y a des noms comme "point" qui correspondent à deux choses, type et fonction pour l'exemple.
J'avais écrit un lexer pour Pygments (qui fait d'ailleurs partie de la distribution de Pygments)
et j'ai été confronté à ce pb. Comme c'est à base d'expression régulière et que je n'y connais
rien, il y a des "erreurs de coloration". Ce n'est pas trop grave tout de même, d'autant qu'Emacs
se trompe aussi dans quelques cas.
As-tu le même pb avec Gedit ?


O.G.

Avatar du membre
chellier
Messages : 104
Enregistré le : jeu. 18 mars 2010, 17:30

Re: Coloration syntaxique de Gedit

Message non lu par chellier » jeu. 15 avr. 2010, 22:27

Bonsoir
OG a écrit :As-tu le même pb avec Gedit ?
O.G.


Oui, je m'en suis sorti en rajoutant un espace pour les types, mais du coup, point[], par exemple est reconnu comme une fonction... Tiens, je viens d'avoir une idée, je devrais peut-être rajouter une entrée avec point[] dans les types :? À voir...
Par contre je n'arrive pas à avoir la coloration de mm dans 3mm, il faut que j'écrive 3*mm.

Avec Pygments, on peut faire un export html facilement pour avoir une page web avec du texte coloré ?

Christophe

OG
V.I.P.
V.I.P.
Messages : 142
Enregistré le : dim. 7 mars 2010, 22:27

Re: Coloration syntaxique de Gedit

Message non lu par OG » ven. 16 avr. 2010, 08:02

chellier a écrit :Bonsoir

Avec Pygments, on peut faire un export html facilement pour avoir une page web avec du texte coloré ?

Christophe


Oui tu as un export en LaTeX, HTML. Tu peux voir quelques détails ici http://math.mad.free.fr/wordpress/?page_id=41
et des exemples (+format SVG de la galerie) là http://math.mad.free.fr/depot/asysvn/essai.html

Pour la distinction des mots clefs à double signification j'avais utilisé aussi un truc du genre "si c'est suivi
d'une certaine chaîne de caractère". Tu peux chercher les faux il y en a.

L'autre solution pour colorer est celle de Philippe à coups d'Emacs + htmlize.

O.G.

Avatar du membre
chellier
Messages : 104
Enregistré le : jeu. 18 mars 2010, 17:30

Re: Coloration syntaxique de Gedit

Message non lu par chellier » ven. 16 avr. 2010, 21:35

C'est parfait Pygments pour la coloration d'une page web ! Merci pour les fichiers !
Par contre...
OG sur son site a écrit :Ensuite dans le répertoire pygments/lexer (à vous de le trouver)

j'ai mis un bon moment pour le trouver (/usr/lib/pymodules/python2.6 chez moi, j'avais jamais été chercher un répertoire ici auparavant !) :mrgreen:

Christophe

OG
V.I.P.
V.I.P.
Messages : 142
Enregistré le : dim. 7 mars 2010, 22:27

Re: Coloration syntaxique de Gedit

Message non lu par OG » ven. 16 avr. 2010, 21:57

chellier a écrit :C'est parfait Pygments pour la coloration d'une page web ! Merci pour les fichiers !
Par contre...
OG sur son site a écrit :Ensuite dans le répertoire pygments/lexer (à vous de le trouver)

j'ai mis un bon moment pour le trouver (/usr/lib/pymodules/python2.6 chez moi, j'avais jamais été chercher un répertoire ici auparavant !) :mrgreen:

Christophe


Si tu as une version récente de Pygments (version 1.2 ou supérieure) c'est dedans, pas la peine
de faire la manipulation écrite sur ma page. J'avais envoyé un mail sur la liste de pocoo-libs
(celles et ceux qui developpent Pygments, Jinja et d'autres trucs) et ils ont gentillement mis
ma contribution. D'ailleurs tu peux tester en ligne.
Pour installer une version plus récente que celle de la distribution Linux Karmic Koala par exemple :

Code : Tout sélectionner

easy_install Pygments


En réalité je devrais mettre à jour la liste, il y a quelques modifications depuis. Mais
l'idéal serait de faire un script Python (ou Perl comme asy-keywords.el) qui te retourne
le fichier des mots clefs.

O.G.

Avatar du membre
chellier
Messages : 104
Enregistré le : jeu. 18 mars 2010, 17:30

Re: Coloration syntaxique de Gedit

Message non lu par chellier » ven. 16 avr. 2010, 22:12

OG a écrit :Si tu as une version récente de Pygments (version 1.2 ou supérieure) c'est dedans


J'utilise au maximum les versions des dépôts, une case à cocher ça me convient ;)
OG a écrit :

Code : Tout sélectionner

easy_install Pygments

Bientôt ubuntu 10.04, je vais attendre !

OG a écrit :Mais l'idéal serait de faire un script Python (ou Perl comme asy-keywords.el) qui te retourne
le fichier des mots clefs.
O.G.


Pour la coloration de Gedit, j'avais écris un script python qui, en gros, copiait les mots clefs de asy-keywords.el et les remettaient en forme pour mon fichier asy.lang, avec les balises. Tu parles d'un script qui irait chercher directement la liste des mots clefs ?

Christophe

OG
V.I.P.
V.I.P.
Messages : 142
Enregistré le : dim. 7 mars 2010, 22:27

Re: Coloration syntaxique de Gedit

Message non lu par OG » ven. 16 avr. 2010, 22:22

chellier a écrit :
Pour la coloration de Gedit, j'avais écris un script python qui, en gros, copiait les mots clefs de asy-keywords.el et les remettaient en forme pour mon fichier asy.lang, avec les balises. Tu parles d'un script qui irait chercher directement la liste des mots clefs ?

Christophe


Oui je pourrais faire cela aussi. Le asy-keywords.el est créé par un script Perl.
Et je n'ai besoin que des noms de fonction et variable
dans la longue liste les autres (en nbre plus réduit) sont dans vectorgraphic.py.

Dans tous les cas, ravi que cela convienne. Tu dois être le deuxième à utiliser le lexer Asymptote !
J'avais en tête de faire une directive Python pour Sphinx, permettant l'inclusion
du code coloré, le graphique (selon la sortie html (png), latex (pdf)). Mais je n'ai pas le temps,
surtout qu'après il faut écrire une doc asymptote !

O.G.

Avatar du membre
chellier
Messages : 104
Enregistré le : jeu. 18 mars 2010, 17:30

Re: Coloration syntaxique de Gedit

Message non lu par chellier » sam. 26 juin 2010, 15:02

Bonjour,

Après une longue bataille contre les expressions régulières et GtkSourceView 2 (qui a une doc comparable à celle d'asymptote :roll: ), j'ai mis à jour la coloration pour gedit, pour le code dans un fichier .asy, mais aussi pour le code asymptote dans un fichier .tex.
Les fichiers sont là : asy.lang
et là : latex.lang
À mettre dans ~/.local/share/gtksourceview-2.0/language-specs/

J'ai aussi mis à jour le script d'installation qui peut maintenant installer les outils pour LaTeX de Denis LE FUR.

Toutes les explications : http://cgmaths.fr/Atelier/Asymptote/ColCompGedit.html
et http://cgmaths.fr/Atelier/Asymptote/AsymptoteLatex.html

Christophe

PS : comme vous pouvez le voir sur l'image, le \begin{asy} et le \end{asy} ne sont pas colorés :? si un spécialiste de GtkSourceView 2 passe par là...
asyLatex.png
coloration syntaxique de gedit
asyLatex.png (72.37 Kio) Vu 14441 fois

Répondre