6eme 5eme 4eme 3eme
Sommaire Liens Atelier Maths Forum

Sommaire des ressources Asymptote


Compilation de code asymptote et coloration syntaxique dans gedit


Il est possible de paramétrer gedit afin d'avoir la coloration syntaxique et de pouvoir compiler directement le code .

Pour avoir une idée plus claire, une petite vidéo : asyGedit.ogg. (Attention, 12 Mio et format ogg)


Mes outils sont très grandement inspirés par ceux de Denis LE FUR pour LaTeX et metapost.

Je propose quatre outils :
- cg-asy3D pour une compilation de figures "3D" ouvrant une fenêtre OpenGL
- cg-asypdf pour obtenir un fichier pdf
- cg-asyeps pour obtenir un fichier eps
- cg-asy pour entrer les options de compilation manuellement (pas d'ouverture automatique du résultat)

Installation "automatique"...

Pour Gnome3 (pour les autres distributions, il faut que l'arborescence des fichiers de configuration soit la même et que zenity soit installé (par défaut sur Ubuntu)) : télécharger le script installGeditAsy3.sh.

Pour Gnome2 : télécharger le script installGeditAsy.sh.

Le rendre exécutable (clique droit, Propriétés, Permissions et cocher : Autoriser l'exécution du fichier comme un programme. Fermer.)
Double cliquer alors sur le fichier et choisir "Lancer" ou "Lancer dans un terminal".



Choix
Fenetre2
Info

Fenetre4
Fenetre5


... ou installation "à la main"

Les fichiers nécessaires se trouvent tous ICI (archive .tar.gz à télécharger et extraire).

Coloration syntaxique d'un fichier .asy

1) Copier le fichier asy.lang dans le répertoire ~/.local/share/gtksourceview-3.0/language-specs/ (si les répertoires n'existent pas, il faut les créer).
Pour Gnome2, c'est ~/.local/share/gtksourceview-2.0/language-specs/

2) Copier le fichier asymptote.xml dans le répertoire ~/.local/share/mime/packages/

3) Avec un terminal : cd ~/.local/share puis update-mime-database mime

4) Redémarrer Gedit.

Coloration syntaxique de code asymptote dans un fichier .tex

1) Copier le fichier latex.lang dans le répertoire ~/.local/share/gtksourceview-3.0/language-specs/ (si les répertoires n'existent pas, il faut les créer).
Pour Gnome2, c'est ~/.local/share/gtksourceview-2.0/language-specs/

2) Redémarrer Gedit.

3) Si la coloration ne vous plaît pas, il suffit de supprimer ce fichier latex.lang.

Outils de compilation

Il faut tout d'abord :
-Activer le greffon Outils Externes dans Gedit (Édition, Préférences, Greffons)
-Il faut aussi bien sûr qu'asymptote soit installé !

Ensuite :

1) Aller dans le répertoire ~/.config/gedit/tools/. S'il n'existe pas, vous devez le créer.
Pour Gnome2, c'est ~/.gnome2/gedit/tools/

2) Copier les fichiers cg-asy, cg-asy3D, cg-asyeps et cg-asypdf dans ce repertoire. (Ces fichiers sont dans le dossier Compilations de l'archive que vous avez téléchargée.)

3) Rendre exécutables ces quatre fichiers. Par exemple, dans un terminal ouvert dans ce répertoire : chmod u=rwx cg-*

4) Vous pouvez modifier les raccourcis clavier, le pdfviewer ou les options de compilation dans gedit :
Outils -> Gérer les outils externes. Attention aux conflits avec vos raccourcis actuels ! J'utilise :
- cg-asy3D : Ctrl+F3
- cg-asypdf : Ctrl+F4
- cg-asyeps : Ctrl+F5
- cg-asy : Ctrl+F6

5) Redémarrer Gedit.


Dans l'archive, on trouve aussi un dossier Snippets pour l'utilisation des fragments de code (c'est ce qui est utilisé au début de la vidéo). Je vous laisse lire le fichier Lisez_moi.txt qui s'y trouve.



Autres outils externe pour Gedit pouvant être utiles (si vous en avez créé, vous pouvez me les faire parvenir, je les mettrai ici) :

Concrètement, on crée son fichier de manière tout à fait classique :
test.tex -> test.pdf, par exemple un Devoir Surveillé , tenant sur une feuille format A4. Mais on souhaite le distribuer aux élèves sous le format A5, pour économiser du papier. On lance alors la compilation de l'outil ci-dessous, qui va fabriquer un fichier test-2en1.pdf. Le package pdfpages est requis.

#!/bin/sh

#nomfichier : nom du fichier courant
nomfichier="$GEDIT_CURRENT_DOCUMENT_NAME"

#base : nom du fichier sans extension
base=${nomfichier%.*}
fin="-2en1"


#le code ci-dessous est largement inspiré du code de Thomas Rey http://mathtom.free.fr/spip.php?article19

cat>$base$fin.tex<<EOF
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{pdfpages}
\pagestyle{empty}
\begin{document}
\includepdf[landscape,nup=1x2,doublepages=true,frame=true]{$base.pdf}
\end{document}
EOF
pdflatex $base$fin.tex
rm $base$fin.tex
rm $base$fin.aux
rm $base$fin.log

evince $base$fin.pdf

#!/bin/sh

#nomfichier : nom du fichier courant
nomfichier="$GEDIT_CURRENT_DOCUMENT_NAME"

#base : nom du fichier sans extension
base=${nomfichier%.*}
fin="-4en1"


cat>$base$fin.tex<<EOF
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{pdfpages}
\pagestyle{empty}
\begin{document}
\includepdfmerge[nup=2x2,doublepages=false,frame=true,scale=0.98]{$base.pdf, $base.pdf, $base.pdf, $base.pdf}
\end{document}
EOF


    pdflatex $base$fin.tex
rm $base$fin.tex
rm $base$fin.aux
rm $base$fin.log   
   
    evince $base$fin.pdf



Pour toute(s) question(s) :




C. Grospellier