First, search the help docs and this forum. Maybe your question has been answered! The debugging steps can help, too. Still stuck? Delete this line and proceed.
What I’m trying to do
Bonjour, Je suis un novice de ce logiciel que je trouve très sympa et aidé de ChatGPT 4, je l’avoue, j’ai fait un script qui crée une fiche, ici, personnage, comportant des propriétés (YAML) pour le module « Propriétés » d’Obsidienne.
Ces données seront également inscrites dans la fiche « Personnage » (la note) que ce script va créer. Ce script fonctionne bien, sauf que…
Parfois, j’ai le module « Propriétés » dont les cases sont bien remplies, et au-dessous j’ai ma fiche « Personnage » dont les alinéas concomitants avec les propriétés, sont aussi bien renseignés. Pour le coup, c’est super.
Mais une fois sur deux ou trois, j’ai la fiche « Personnage », mais sans le module « Propriétés », celles-ci étant en dessous de la fiche, entourées des trois tirets (—) au-dessus et au-dessous ( YAML), je semble-t-il.
La question qui tue et fait tourner en rond ChatGPT, c’est :
Que se passe-t-il ? Où le bât blesse-t-il ?
Voici le script que j’ai raccourci de manière que vous puissiez en avoir une vue d’ensemble. Ce que j’ai retiré ne sont que des alinéas qui ne changent rien au script.
<%*
let file = tp.file.find_tfile(tp.file.title);
let cache = app.metadataCache.getFileCache(file);
let frontMatter = cache && cache.frontmatter ? cache.frontmatter : {};
// Initialisation des valeurs locales pour la fiche de personnage
let naissance, genre;
// Si le frontmatter est vide, remplir les valeurs initialement
if (!frontMatter || Object.keys(frontMatter).length === 0) {
naissance = wait tp.system.prompt(“Naissance”, " ");
genre = attendre tp.system.prompt(« Genre », " ");
// Met à jour les propriétés dans le frontmatter
await app.fileManager.processFrontMatter(file, fm => {
fm['Naissance'] = naissance;
fm['Genre'] = genre;
});
await new Promise(resolve => setTimeout(resolve, 1000)); // Pause pour stabiliser les métadonnées
} else {
// Si le frontmatter est déjà rempli, on le laisse tel quel pour éviter la duplication
naissance = frontMatter['Naissance'] || " " ;
genre = frontMatter['Genre'] || " " ;
}
-%>
// Affiche la fiche de personnage uniquement
Fiche du personnage : <% tp.file.title %>
Nom : <% tp.file.title %>
Naissance : <%* tR += naissance %>
Genre : <%* tR += genre %>type or paste code here
Things I have tried
Quant aux solutions que nous avons utilisées, je dis ‘nous’ car ChatGPT m’a pas mal aidé lors de ces recherches du grain de sable, mais ni lui ni moi n’avons rien trouvé. Je pense avec conviction que le problème ne vient pas de l’AI mais de moi, car je n’ai pas son oeil de Lynx pour déterminer ce qui est important du « futile »…
Si cela vous est déjà arrivé merci pour votre aide.