Corax l’a demandé, je l’ai fait ! Une extension qui permet de télécharger des fichiers ou de les uploader. Ça utilise le système de fichier d’Inform 7, comme ça c’est plus facile d’interagir avec les fichiers directement depuis Inform.
Exemple d’utilisation :
[code]The File of Tests is called « tests ».
After reading a command:
if the player’s command matches « download »:
download the file of Tests;
else if the player’s command matches « upload »:
ask to upload a file to the file of Tests.[/code]
(Évidemment, il faut du code quelque part qui écrit quelque chose dans le fichier.)
Pour le téléchargement, on peut aussi spécifier le nom du fichier et son type MIME, ainsi que si on veut supprimer l’en-tête ajouté par Inform (par exemple si on veut télécharger un fichier HTML ou CSV valide).
Pour l’upload, on peut aussi spécifier le type MIME attendu. En revanche, ça ne fait pas de vérifications sur la structure du fichier, donc ça peut le rendre illisible et non modifiable par Inform si le fichier uploadé n’a pas l’en-tête. Il est prévu que l’extension puisse ajouter cet en-tête automatiquement, mais ce sera fait plus tard.
Rien n’est documenté pour l’instant, mais c’est prévu également. J’ai fait ça plus comme preuve de concept. Je ne garantis donc rien sur la qualité de mon JavaScript.
Enfin, l’extension devrait fonctionner avec des fichiers binaires (qu’Inform ne peut pas manipuler par défaut), donc ça permettrait de télécharger les sauvegardes faites par mon extension de sauvegarde automatique, mais je n’ai pas testé.
On peut trouver l’extension ici. Ça s’appelle Vorple File Control.
EDIT : J’ai oublié de dire que je n’ai testé qu’avec Firefox. Ça devrait cependant fonctionner avec n’importe quel navigateur récent. Ça peut ne pas fonctionner avec des navigateurs anciens, et je n’ai aucune idée du fonctionnement sur mobile (mais je ne sais pas à quel point Vorple fonctionne bien sur mobile de toute façon).