Au menu, aujourd’hui, un petit bug constaté sur Vorple 3, que je remonte donc.
Vorple 3 n’aime pas les caractères accentués. On peut s’en rendre compte très facilement en changeant le prompt :
now command prompt is "Une épée attend votre commande. > ";
Le même problème se retrouve avec la commande Display qui permet d’envoyer du texte dans un élément html préalablement nommé.
Si un fichier son a un accent, idem.
Pour le coup, je n’ai pas trouvé de moyens pour contourner le bug, si ce n’est de ne pas mettre d’accents dans ce genre d’éléments.
Oui, je l’ai déjà signalé. Le problème se pose dès que du JavaScript est exécuté. La raison est que Vorple utilise le système de fichier externe pour le JavaScript et qu’Inform encode ces fichiers en Latin-1 alors que Vorple essaie de les lire en UTF-8.
Si ce n’est pas compréhensible, pas grave. La solution est de remplacer tous les caractères spéciaux par un antislash suivi d’un « u » et du code Unicode du caractère en question. Par exemple, le « e » accent aigu devient « \u00E9 ».
Pour que ce soit plus rapide à insérer dans le texte, on peut se définir des substitutions. Par exemple une arobase suivie de la lettre à afficher :
To say @é:
say "\u00E9";
Ou on peut aussi remplacer avec Inform tous les caractères spéciaux dans les textes avant de les utiliser, mais ce sera un peu lent à l’exécution.
Bien sûr, tout ceci n’est valable que lorsque du JavaScript est exécuté. Pour le texte du jeu normal, on peut écrire les caractères spéciaux directement. Et comme ce sera sûrement bientôt corrigé, à toi de voir si ça vaut la peine de faire tout ça.
Une réponse limpide.
Je me doutais que c’était dû à un format de texte différent.
Pour l’instant, je vais me passer d’accents aux rares endroits où du Java script est en jeu. Me lancer dans ce genre de contournement pour un problème qui va probablement disparaître sous peu ne me semble pas judicieux.