Un nouveau jalon pour le Projet Casetta, qui, je vous le rappelle, vis à créer un ensemble de solutions logicielles libres et multi-plateforme pour gérer les calculatrices CASIO. Depuis la première version, il y a eu de nombreuses évolutions :

Le projet se compose désormais de trois logiciels distincts :

  • Le module python casetta, qui permet à n'importe quel programme python de manipuler des données et des fichiers relatifs aux calculatrices casio. Par rapport au programme casetta de la version précédente :

    • Réécriture de la gestion interne des formats, pour permettre une meilleure flexibilité et faciliter l'ajout de nouvelles fonctions.
    • Possibilité de sauvegarder la date de création d'une donnée, notamment d'un backup (uniquement avec les formats de fichiers le supportant).
    • Les erreurs sont désormais gérée par des exceptions python.
    • Possibilité de gérer les mots de passes (avec les formats de fichiers compatibles).
    • Correction de nombreux bugs dans le convertisseur en syntaxe de fichiers cat / newcat.
    • Gestion des programmes avec calcul sur les bases (et autodétection pour les formats ne faisant pas la distinction).
    • Gestion des caractères spéciaux dans les titres et les mots de passe.
    • Possibilité d'utiliser un outil de transfert personnalisé (en plus de cafix).
    • Utilisation d'un nouveau mode de gestion des fichiers temporaires, plus sécurisé, et plus portable.
    • Gestion d'un nouveau type de donnée (outre les programmes) : les backups.
    • Gestions de nombreux formats de fichiers, en lecture et/ou en écriture, notamment du CTF. Pour plus d'informations, vous pouvez lire la page relative aux formats supportés.
  • Le programme casetta_cli (commande casetta), une interface en ligne de commande, auparavant inclue dans casetta.

    • Nouvelle option --split pour produire un fichier par type de donnée.
    • Nouvelle option --not-interactive pour ne pas poser de question à l'utilisateur lors de conflits de conversions, et renvoyer un code d'erreur à la place (utile pour réaliser des scripts de conversion utilisant casetta).
    • Possibilité de fournir plusieurs fichiers en entrée (pour les fusionner en un, par exemple).
    • Utilisation de l'erreur standard et du code de retour pour signaler les erreurs et les avertissements.
    • Possibilité d'utiliser plusieurs outils de transfert, d'en définit un par défaut (utilisation d'un fichier de configuration).
  • Le programme casetta_gtk, l'interface graphique utilisant GTK :

    • Gestion des backups
    • Possibilité de rechercher un mot de passe dans un backup
    • Nouvelle fonction d'export (pour ne sélectionner que certaines données à enregistrer)
    • Nouvelle façon d'afficher la liste des commandes disponibles : comme dans les menus de la calculatrice (à la Fx-Interface Pro)
    • Amélioration des fenêtres Ouvrir/Enregistrer (notamment un filtre tous les formats supportés)
    • Option pour choisir le programme effectue des calculs sur les bases ou non
    • Gestion des mots de passe
    • Une nouvelle fenêtre de configuration pour choisir :

      • la police de l'éditeur de programme ;
      • d'activer la coloration syntaxique expérimentale, ainsi que les options de celle-ci ;
      • de choisir l'outil de transfert de votre choix, et ses options, notamment le port ;
      • de choisir sa propre console, son outil pour passer root (gksu, etc.)
    • Suppression du passage par l'outil de configuration de cafix, désormais la configuration respecte celle donnée dans la fenêtre de préférence, le mot de passe root est cependant demandé après chaque redémarrage, la définition du port de cafix devant se faire en superutilisateur.
    • Ajout du code nécessaire pour faire tourner le programme sous Windows

Capture d'écran de Casetta_gtk

Comment obtenir Casetta ?

L'une des grandes nouveautés de cette version est que casetta tourne parfaitement sous Microsoft Windows. L'installation sous ce système n'est pas des plus simple, mais en suivant la page dédiée, il ne devrait pas y avoir de problèmes.

Les utilisateurs des systèmes Ubuntu Linux pourront profiter de l'excellent travail d'Asher256 grâce à son dépôt.

Les utilisateurs d'autres systèmes devraient pouvoir suivre l'installation générique.

Et après ?

Mon but est d'avoir une version 1.0 qui gère tous les types de données des calculatrices casio, est capable d'ouvrir tous les formats existants (on y est presque pour les données actuellement supportées) et d'écrire les formats les plus populaires (il manque - pour les données actuellement supportées - que le format fxi). Casetta devra aussi être capable de communiquer avec les calculatrices CASIO, que ce soit avec l'interface série classique ou la nouvelle interface USB utilisée sur les calculatrices CASIO Graph 85. Ici tout reste à faire, même si des logiciels libres existent déjà pour les communications par câble série (ils sont cependant abandonnés et bugués, c'est pourquoi il est nécessaire d'offrir une solution de remplacement).

À plus court terme, la version 0.3 devrait être capable de gérer en lecture les formats cas de CASIOLINK et de Casemul (deux formats différents) pour les programmes (afin de terminer le support des programmes), de compléter la gestion des backups dans les formats cat et g1r, de gérer les images dans - si possible - tous les formats actuels, avec import/export dans les formats d'image standard (png/jpeg, etc). Casetta_gtk devra évidemment intégré un éditeur d'images.

De plus, je compte travailler séparément sur le programme de transfert de données avec la calculatrice (interface série). Il ne sera probablement pas intégré dans la version 0.3, mais le chantier va débuter (au moins pour appréhender le travail nécessaire).

Si vous avez des remarques, n'hésitez pas, le nouveau site web est là pour ça, les commentaires d'ici aussi !