La version 1.63 de GusExplorer intègre un certain nombre de nouveautés que je vais vous détailler ci-dessous.
L’éditeur zip_gus
Ce nouvel éditeur est la grande nouveauté introduite dans GusExplorer 1.63. J’ai ainsi ajouté un éditeur lié à une nouvelle extension de fichier : zip_gus.
En fait, il ne s’agit pas d’un éditeur à proprement parlé, mais plutôt d’un exécuteur qui exécute un script gus et affiche l’IHM que ce dernier lui renvoie. Comment cela fonctionne-t-il et à quoi cela peut-il servir ?
Le fichier zip_gus n’est rien d’autre qu’un fichier zip qui possède à sa racine un fichier de script nommé init.gus. Et c’est précisément ce fichier qui est exécuté et dont le résultat est affiché dans la zone graphique de l’éditeur. Il se comporte donc comme un « guibuilder » (fichier tool muni de l’entité gus.sys.filetool.ext.guibuilder1) à un détail près qui a son importance… Le fichier zip_gus embarque avec lui toutes les ressources nécessaires au fonctionnement du script init.gus ! Il peut s’agir de fichiers de configuration, de fichiers multimédia, de jars, ou même d’un système complet de scripts pouvant s’appeler les uns les autres (et être appelé par init.gus, cela va de soi).
Contrairement à un guibuilder, le fichier zip_gus a l’avantage d’être portable, ce qui en fait un outil adapté à l’import de configuration dans GusExplorer, permettant de compléter son répertoire root ou même d’en créer un nouveau proposant tout un panel de nouvelles fonctionnalités prêtes à l’emploi. Dans un rôle de « configurateur », l’IHM se résumera bien souvent à une console permettant de suivre ou d’orienter l’évolution du processus (comme dans l’illustration ci-dessous). Cependant, il est aussi possible d’imaginer toutes sortes d’IHM plus sophistiquées proposant des outils ou même des « mini applications » autonomes qui embarquent leurs propres ressources.
Chargement du panneau de détail d’un fichier.
Jusqu’à présent, les fichiers sélectionnés dans l’explorateur étaient systématiquement chargés dans l’éditeur correspond, même lorsque leur taille excessive risquait d’engendrer des problème de mémoire. Désormais le chargement devient manuel pour les fichiers de plus de 50Mo (limite paramétrable), et il est aussi possible de bloquer le chargement du fichier en maintenant la touche ALT enfoncée. Tout cela est documenté dans le menu aide.
Améliorations de l’éditeur tree
J’ai retravaillé le mode edit de l’éditeur tree (F12) notamment les fonctions de déplacement de de réorganisation des nœuds qui étaient boguées. J’ai aussi ajouté la possibilité de dissoudre les nœuds (remplacement d’un noeud par ses enfants), et j’ai rédigé une petite doc accessible dans le menu aide.
Améliorations de l’éditeur properties
Sur cet éditeur, j’ai ajouté quelques raccourcis clavier dans la zone d’édition étendue, pour sauvegarder, annuler, aller au suivant ou précédent.
Améliorations de l’outil dbViewer
La liste des bases de données indique désormais le nombre de tables dans chaque base, et permet d’importer aisément des dumps avec un simple Ctrl V des fichiers sql à importer. J’avais déjà ajouté le mécanisme d’import/export de dumps sql à la version précédente, mais cela ne fonctionnait pas bien. Je l’ai donc entièrement revu et corrigé.
J’ai par ailleurs ajouté le ctrl-shift-H sur les bases pour y lancer des traitements personnalisés (sur le même principe que le ctrl-shift-H des éditeurs texte). C’est notamment pratique pour exécuter rapidement des requêtes SQL sur les différentes tables de la base.
Le panneau de visualisation des tables n’a en revanche toujours pas été modifié, et cette tâche est prévue pour une prochaine version. Ce panneau reste actuellement très incomplet et peu fonctionnel.
Améliorations dans l’éditeur texte
Les comportements du ctrl-F, ctrl-shift-F, ctrl-D et ctrl-E deviennent personnalisables comme l’étaient déjà les comportement du ctrl-B et du ctrl-C.
Et les opérateurs ?
Quelques opérateurs ont été améliorés parmi lesquels : _jdialog_inputarea, _isdir, _isfile, _s
Plusieurs autres opérateurs ont été ajoutés (on est passé de 3704 à 3863). On pourra notamment citer : _md5hexa, _read_prop_vault, _rs_smart_display, _jdbc_findall, _jdbc_countby, _parsejava_methodsigns, _parsejava_methodfullsigns
Voilà pour ce petit tour d’horizon.
A bientôt et joyeux noël à tous !