J’ai essayé, ça ne marche pas. En fait, je pense que Zarf a donné la bonne façon de faire ici, mais ça n’a pas été fait. J’ai essayé de regarder un peu, mais c’est légèrement trop technique pour moi (je pense avoir compris ce qu’il faut faire et pourquoi, mais de là à le faire en vrai…).
Aussi, je pense que c’est le seul véritable problème qu’il reste (jusqu’à ce que je découvre qu’en fait, il reste autre chose ).
J’aimerais juste que vous jetiez un œil sur le fichier, pour que vous donniez votre avis sur certains trucs subjectifs. Il suffit de rechercher le mot « TODO » dans la source, j’ai mis en commentaire ce dont je n’étais pas sûr.
Aussi, ce serait bien que vous regardiez les réponses et les lignes de compréhension (Volume 3 et Part 4.2 dans l’extension, ou bien chercher « ajout » et « modification »). Si ces changements sont pertinents, il faudrait peut-être aussi les effectuer sur la bibli I6 (je pense notamment aux actions faites par les PNJ, qui sont absentes des bibli I6).
Je vois pas bien comment modifier PrintAnyToArray, pour le reste ça ne doit pas poser trop de problèmes.
Sinon, essaye de remplacer LanguageContraction par :[ LanguageContraction text;
print text->0;
print text->1;
return 0;
]; pour connaître leur valeur avec œ ou @oe !? Il faut bien utiliser la dernière version du compilateur I6 : https://github.com/DavidKinder/Inform6
ReleaseNotes.html :
J’ai essayé le « print text->0 », ça affiche 63 avec ma version du compilateur (6.33), qui est l’unicode (en décimal) pour le point d’interrogation. Tous les caractères au-delà de 256 sont convertis en « ? » (j’ai testé).
J’ai pas essayé avec la version 6.34, mais je pense que ça n’aurait rien changé, car le changelog mentionne un word array, alors que la routine PrefaceByArticle utilise un byte array (et c’est justement ça que Zarf a indiqué de modifier.)
Les solutions possibles :
[]Faire élider quand le mot commençant par un point d’interrogation (mais tous les mots commençant par un caractère dont le code est plus grand que 256 provoqueront l’élision, ce qui n’est pas voulu).[/]
[]Faire ce que Zarf a indiqué (mais ça semble compliqué).[/]
[]Garder le fix que j’ai fait, mais avec une version plus raffinée ci-dessous.[/]
[code][Je définis un adjectif pour tous les objets dont le nom commence par « œ ».]
Definition: an object (called O) is oe-starting if the character number 1 in « [O] » matches the text « œ », case insensitively.
[Et je court-circuite les routines I7 affichant l’article défini quand l’objet est oe-starting)
To say the (O - an oe-starting object):
say « l['][O] ».
To say The (O - an oe-starting object):
say « L['][O] ».[/code]
Personnellement, je vote pour le choix numéro 3, c’est-à-dire le code ci-dessus, qui est le plus facile à mettre en place et qui modifie le moins de choses.
Je travaillais sur l’écriture d’une fiction avec Inform 7 et j’ai laissé de côté le projet durant quelques très très longs mois. J’ai voulu m’y remettre et ai migré sur la dernière version d’inform 7 (6L38, build trouvée sur le AUR de ArchLinux) (qui donne envie sur le papier, moi qui cherchais désespérément comment on changeait le point de vue de narration à chaud à l’époque, là ça m’enlève une sacré épine du pied) et la nouvelle extension de traduction. J’ai bien modifié le nom de Éric à Nathanael sur le about.txt mais j’ai des erreurs de compilation (en ayant installé par ailleurs l’extension comme toutes les autres et en indiquant la langue avec un « (in French) »). Notamment un grand classique :
"The sentence 'The grammatical gender of an object is usually masculine gender' appears to say two things are the same - I am reading 'grammatical gender of an object' and 'masculine gender' as two different things, and therefore it makes no sense to say that one is the other"
suivi d’une ribambelle d’erreurs du même acabit (alors que, sans votre expertise certes, lorsque je regarde le code de l’extension, rien ne me choque, je pense donc à une mauvaise manip sur l’installation).
Comme je n’arrive pas à trouver la grenouille qui me représente le mieux en train d’implorer votre aide, je choisis celle-ci par défaut en espérant que vous puissiez me sauver de ce mauvais pas.
Peux-tu indiquer la version de l’extension que tu possèdes ? Parce que j’ai travaillé dessus pas plus tard qu’hier, et tout marchait parfaitement chez moi.
La dernière c’est la version 12/150510.
Essaie de la télécharger à partir du lien écrit en gros sur le premier message de ce fil (dans Bitbucket : Source, puis French Language.i7x). Parce que je mets l’extension à jour régulièrement.
Aussi, il y a beaucoup de choses à adapter dans ton propre code source si tu migres depuis 6G60 ; des fois, c’est une erreur qui vient de toi, mais il pointe l’extension comme problème, donc ça pourrait venir de ça. Tu devrais essayer de créer un nouveau projet et compiler le texte de l’exemple (le Roi de Fihnargaia). Il doit contenir des bugs conceptuels, mais il est jouable et compile.
Au pire des cas, tu peux m’envoyer ton projet en message privé pour que j’y jette un œil (si ça ne te dérange pas que je voie ta source ; mais je n’essaierai que de corriger les erreurs bien sûr )
Enfin, on a besoin de testeurs (on n’est que 2 à utiliser 6L38 ici il me semble). Alors toute suggestion est la bienvenue !
Et finis ta FI ! On a tous hâte de jouer à un nouveau jeu !
J’ai hg clone hier dans la journée. Je ne me suis pas encore lancé dans la migration de mon projet, j’ai juste voulu tester si tout était en ordre avec une histoire vide. Je n’ai pas le code sur le PC avec lequel j’écris mais globalement c’était simplement un truc du genre :
[code]« Bidule » by Machin (in French)
When play begins, now the story viewpoint is second person plural.
Ben chez moi ça marche parfaitement, que ce soit ce projet bidon ou n’importe quel autre de mes projets… Bizarre.
Tu es sur quel OS (vraiment pas sûr que ce soit utile comme question, mais je vois pas trop sinon) (je suis sur Mac) ?
Je ne pense pas que ce soit une mauvaise installation, car tu as inclus l’extension en écrivant (in French), et Inform arrive bien à la trouver puisque qu’il t’indique une erreur. Sinon, je suppose que tu peux essayer de réinstaller…
Je suis sous Archlinux. Le paquet que j’ai récupéré est un paquet du AUR (c’est à dire empaqueté par un utilisateur pour la communauté) : aur.archlinux.org/packages/gnome-inform7/
Il s’agit bien de la dernière version 6L38, et les projets fonctionnent bien en anglais.
Pour l’extension j’ai modifié Éric Forgeot par Nathanael Marion dans /usr/share/gnome-inform7/Languages/French/about.txt et j’ai installé l’extension (format i7x) depuis l’interface utilisateur de Inform 7 dans les préférences. Elle a été placée dans mon dossier personnel à /home/monlogin/Inform/Extensions/Nathanael Marion/
Arf, désolé, tu l’avais pourtant indiqué dans ton premier message que tu étais sur ArchLinux…
Ici, y a Otto qui indique où est-ce qu’il faut tout installer avec gnome, et il y a un /Extensions/Reserved en plus dans son chemin pour le about.txt. Ça marche pour lui en tout cas.
Après, j’y connais pas grand-chose sur Linux, alors faudra attendre que quelqu’un d’autre t’aide, si rien ne fonctionne. Désolé !
Non chez moi le chemin c’est bien /usr/share/gnome-inform7/Languages/French
Dans le doute j’ai aussi essayé dans un Extensions/Reserved/Languages/French mais ça ne change rien.
C’est le même problème que celui décrit par auraes en page 3.
C’est un peu gonflant, je ne vois pas ce que j’ai pu faire de mal. Vive les messages cryptiques à rallonge et non pertinents du compilateur inform7
EDIT : En fouinant je me suis rendu compte qu’il essaye de m’inclure également l’extension English Language de Graham Nelson. C’est normal ?
EDIT 2 : J’ai essayé de truander, j’ai vidé le contenu de English Language en croyant éviter ainsi des conflits liés à une inclusion non désirée de English Language. Ça n’a rien changé, toujours les mêmes erreurs à la compilation. À noter que des erreurs apparaissent également dans English Language à la compilation lorsque j’utilise le français. Mais tout fonctionne bien lorsque je ne précise pas la langue.
Ouaip, c’est normal que l’extension English Language soit incluse (en fait, il faut qu’elle soit incluse), car cette extension initialise aussi des trucs pour les langues en général (du style « A narrative viewpoint is a kind of value. The narrative viewpoints are first person singular, second person singular, third person singular, first person plural, second person plural, and third person plural. »).
Si c’est le même problème qu’auraes, alors peut-être qu’il faudra attendre une réponse de sa part voir si lui a réussi à le résoudre. Sinon, tu n’aurais pas un autre ordinateur sur lequel tu pourrais installer Inform, juste pour être sûr que tout fonctionne ?
Encore une fois, désolé si je ne suis pas d’une grande aide. Mais une fois que tu réussis, indique-moi comment tu as fait, pour que je puisse mettre à jour la documentation sur l’installation.
Pas de problème. Je donne la marche à suivre dès que j’ai une solution. Ce qui me fait peur c’est ce que soit un problème lié au paquet inform7 que j’utilise.
Je n’avais pas fait attention à tes posts, mais je peux te signaler que j’ai eu un problème que je pense identique. Malheureusement, je n’ai jamais réussi à m’en sortir, pourtant j’ai essayé pas mal de trucs tout comme toi…
Je peux juste t’indiquer que j’ai plusieurs distributions linux, et que sous plusieurs Debian je n’ai jamais eu de problème, mais sous Mint, c’est comme toi, impossible de compiler avec l’extension française…
Le problème peut donc venir du paquet effectivement! Essaie dans ce cas de voir pour installer le paquet Debian ou compiler directement les sources, si tu n’as pas déjà essayé. Sinon, je ne sais plus si ça avait marché pour moi, mais peut-être avec une machine virtuelle?
Troll on
Sinon, passe sous Debian :mrgreen: Troll off
Compiler depuis les sources c’est prévu pour demain. Si jamais j’arrive à obtenir quelque chose de fonctionnel je contacterai le mainteneur du paquet sous Arch. Car absolument rien au monde ne me fera quitter Arch
J’essayerai à l’occasion sous Windows aussi.
Donc fondamentalement à aucun moment il n’y a eu une spécificité propre à Arch qui est venue se glisser. C’est clean, c’est recompilé à chaque install à partir des sources officielles sans rien de plus. Arch a toujours été une distrib plus que fiable chez moi, et je n’ai pas pu en dire autant des autres qui m’ont été donné d’essayer. C’est pas dans ce sens là que ça doit fonctionner, le paquet doit être compatible partout, les utilisateurs n’ont pas à adapter leur système d’exploitation [/mode militant ]
Autre spécificité étrange, c’est la localisation du about.txt. Chez vous tous d’après ce que j’ai compris ça se situe dans Extensions/Reserved/Languages/French. Chez moi Languages/French est à côté du dossier Extensions. J’ai vérifié c’est le cas avec les sources trouvées sur le site d’Inform.
Ça m’amène à me demander s’il n’existe pas plusieurs 6L38 avec quelques modifications mineures d’écart mais qui rendent l’extension incompatible dans un cas.
J’ai mis à jour sur ton dernier commit. Une erreur ailleurs cette fois :
[code]/usr/libexec/gnome-inform7/ni
-internal /usr/share/gnome-inform7 -format=ulx -project /home/private/test/TestInform.inform
Inform 7 build 6L38 has started.
++ 0% (Reading text)
I’ve now read your source text, which is 198 words long.
++ 5% (Analysing sentences)
I’ve also read Standard Rules by Graham Nelson, which is 42616 words long.
I’ve also read French Language by Nathanael Marion, which is 29106 words long.
I’ve also read English Language by Graham Nelson, which is 2288 words long.
In Volume 2 - Language, Part 2.2 - Nouns, Chapter 2.2.1 - Pronouns and
possessives for the player in the extension French Language by Nathanael
Marion:
→ The phrase or rule definition ‹ let the item be the prior named object › (/home/private/Inform/Extensions/nathanael
marion/french language.i7x, line 785) is written using tab indentations to
show how its phrases are to be grouped together. But in that case the
opening line needs to be on the left margin, not indented.
++ Ended: Translation failed: 1 problem found
Inform 7 has finished.
[/code]
C’est vraiment à se demander si on utilise la même version d’Inform. Pour les gens chez qui ça fonctionne vous avez récupéré votre version où et quand (quel paquet de quel dépôt de votre distribution linux si vous êtes sous linux)
Sur le dépôt mercurial de l’extension, dans le makefile des exemples je vois une référence à Inform 6L02 et non Inform 6L38 par exemple.
Ah, là c’est moi qui ai commité sans tester auparavant.
Je corrige cela dans 2 minutes.
Aussi, tu pourrais pas essayer de changer le nom de l’auteur de l’extension (tu ouvre le fichier i7x avec un traitement de texte) pour remettre Eric Forgeot ? Puis tu télécharges une version neuve d’Inform, pour voir si c’est pas le about.txt qui est en cause ?
EDIT : c’est fait, j’ai corrigé.
Et aussi, 6L02 ou 6L38, c’est en gros la même chose, juste que le deuxième était un bugfix du premier, qui avait tout chamboulé dans le fonctionnement d’Inform.