
Présentation rapide de DGPad (en vidéo)
Les nouveautés de cette version sont :
Dans l'interface de script, on dispose désormais d'une nouvelle case à cocher en forme de drapeau français.
Celle-ci a pour objectif de rendre plus clair le système de génération de code. On distingue :
On rappelle que les deux seront interprétés correctement, et que ce sera aussi le cas d'un script "mixte".
Par ailleurs, si l'on commence le script par pseudo-code, on écrit un script de nature différente, mais les deux cases à cocher resteront pertinentes.
A titre d'exemple, voyons ce que génère l'assistant de script lorsque l'on clique sur le deuxième bouton de la deuxième ligne (bouton demi-droite). Il y a 8 contextes :
Des états différents pour les cases à cocher auront pour effet la génération d'un code différent.
(Il n'y a pas beaucoup de différence quand on est en mode simplifié et en français, on a juste une virgule en plus. Dans un autre mode, la différence sera plus flagrante...)
Dans tous les cas, le code est généré selon une syntaxe cohérente. Ensuite, on peut l'ajuster.
Il en va de même de tous les boutons de droite.
On remarquera en particulier que la palette tortue 2D s'adapte dynamiquement au contexte : dès lors que le script commence par pseudo-code, des boutons disparaissent logiquement (et réapparaissent dès que le script ne commence plus par pseudo-code) :
En mode pseudo-code, les boutons de l'assistant génèrent un code sans le préfixe Math, mais un code Javascript classique avec préfixe sera interprété correctement.
On a désormais une coloration syntaxique cohérente des fonctions mathématiques selon le mode en vigueur :
Dans la copie d'écran ci-dessus, on a donné l'exemple d'un code mixte pour illustrer le fonctionnement de la coloration syntaxique. Ce type de code n'est pas recommandé.
Là encore, l'exemple st un "body of proof" qui n'est pas recommandé en pratique...
Voici quelques exemples de code généré (ici en mode pseudo-code en français comme l'indiquent l'incipit et l'état des cases à cocher) :
Le mot-clé length a été traduit par taille.
Par ailleurs, on a également travaillé sur le bouton d'indentation pour qu'il devienne cohérent et appliquable en mode pseudo-code.
En mode pseudo-code, l'activation de ce bouton corrigera des erreurs d'indentation de 1 espace.
Dans les versions précédentes, il fallait tester une fois la CaRCommande ExécuterMacro pour connaître l'ordre des finaux dans le tableau renvoyé.
Ce problème a été résolu de deux façons différentes :
1) Modification de l'inspecteur des macros
On a désormais une nouvelle partie concernant les finaux et leur ordre dans ExecuteMacro.
Dans la colonne Construction index, on a l'ordre qui serait donné en appliquant une fois la CaRCommande ExecuteMacro comme il était d'usage de le faire.
Dans la colonne Click index, on a l'orde choisi par l'utilisateur lors de la définition de la macro. Et cet ordre très agréable à utiliser lorsque l'on vient de définir la macro peut être employé dans une nouvelle CaRCommande ExécuterMacroCommeDéfinie.
Remarque : la colonne Construction index sera fonctionnelle même pour des macros créées avec une version précedente de CaRMetal, contrairement à la colonne Click index (qui affichera alors une colonne de 0).
2) CaRCommande ExécuterMacroCommeDéfinie
Cette CaRCommande est comparable à ExécuterMacro mais dans le cas où il y a plusieurs finaux elle renvoie un tableau dans lequel les finaux sont dans le même ordre que celui choisi par l'utilisateur lors de la définition de la macro. Cet ordre est donné dans la colonne Click index de l'inspecteur de macro.