0 votes
405 vues

Je souhaite créer une table des matières pour des modules bibliques. Idéalement, j’aimerais que la table des matières soit générée automatiquement pour chaque marqueur \s, afin que chaque titre de section constitue une ligne dans la table des matières et que le numéro de page correspondant s’affiche.

Si PTXprint ne peut pas le faire automatiquement sur la base de \s, j’aimerais pouvoir ajouter des balises supplémentaires dans les modules, avec des informations dans chacune indiquant « ajouter une entrée de table des matières ici ». J’ai essayé quelque chose comme \toc1 entry_name, mais cela n’a pas fonctionné (ce qui n’est pas entièrement surprenant, car en général on ne veut pas plus d’une entrée \toc1 dans un livre donné).

Le problème, c’est que je jure que je faisais fonctionner cela il y a quelques semaines, mais je ne parviens pas à reproduire mon travail. Quelqu’un sait-il comment créer une telle table des matières qui ne se base pas simplement sur des entrées \toc1/2/3 provenant de différents livres ?

Traduit automatiquement depuis English
PTXprint par (1,9k points) | 405 vues

2 Réponses

0 votes

Avez-vous reçu une réponse à ce sujet ?

Une table des matières basée sur \s fonctionnerait très bien pour les livres de chants également.

Mike

Traduit automatiquement depuis English
par (1,2k points)

Je n'ai pas reçu de réponse.

À cette époque, je travaillais avec plusieurs modules différents, chacun ayant environ 100 titres de sections. La quantité de travail manuel nécessaire pour créer la table des matières à la main était donc massive, et les révisions ultérieures auraient été difficiles.

J'ai fini par écrire quelques scripts Python qui me permettaient de créer ou de remplir manuellement le fichier context.xml sous-jacent. C'était déroutant et il fallait se souvenir de ce qui devait être mis à jour en externe, mais au moins c'était rapide.

Traduit automatiquement depuis English
+1 vote

La façon la plus simple d'ajouter un index des chants est de dupliquer le contenu des titres de chants \s à l'aide d'une règle Changes.txt comme celle-ci :

'(\\s )([^\\]+)( ?\r?\n)' > '\\toc1 \2\3\1\2\3'

Cela signifie : rechercher un en-tête de section \s et appeler ce groupe de correspondance 1.
Puis récupérer le contenu/le texte de cet en-tête, en appelant ce groupe de correspondance 2.
Récupérer la fin de ligne (qui nécessite au moins un \n, mais peut avoir une espace et/ou un \r avant le \n final) et appeler ce groupe de correspondance 3.

Ensuite, du côté de la chaîne de remplacement, insérez le nouveau marqueur \toc1 suivi du contenu du groupe 2 et de la partie fin de ligne. Puis remettez tout le reste tel que vous l'avez trouvé (1, 2, 3).

Ces champs \toc1 devraient maintenant être détectés et utilisés dans la table des matières.

Notez que vous pouvez également générer une table des matières triée à partir de ces mêmes marqueurs \toc1 pour un index à la fin du livre de chants. Utilisez simplement \ztoc|sorta\* au lieu de \ztoc|main\*

Traduit automatiquement depuis English
par (3,2k points)

Argh, désolé pour ça. Je pensais que cette question faisait référence au SAB (où c'est encore un problème non résolu).

Oui, ce problème a été « facilement » résolu en utilisant une expression régulière similaire à celle que @mjpenny mentionne ci-dessus.

Un point sur lequel vous voudrez probablement vérifier les choses attentivement. Lorsque j'ai initialement utilisé une expression régulière comme celle ci-dessus, dans les cas où les marqueurs \s se trouvaient en haut de la page, les numéros de page dans la table des matières étaient décalés d'un (ils correspondaient à la page précédente). Vous pouvez voir le rapport de bug ici, ainsi qu'une solution utilisant une expression régulière plus complexe.

Traduit automatiquement depuis English

(message supprimé par l'auteur)

Traduit automatiquement depuis English

Questions connexes

0 votes
1 réponse 31 vues
Y a-t-il un style pour le titre de la table des matières ? J'aimerais ajouter un peu d'espace vide avant le titre de ... matières, et je n'ai pas trouvé de moyen de le faire. Jeff
jeffh 1,4k posée déc. 5, 2025
0 votes
2 réponses 66 vues
Y a-t-il un moyen de placer la table des matières à la fin d’une publication ? C’est la norme dans les publications françaises. Jeff
jeffh 1,4k posée déc. 5, 2025
0 votes
2 réponses 333 vues
Je mets en page une publication monographique de la Genèse. Nous voulons afficher 7 étiquettes de Section majeure dans la ... de page comme dernière étape de la mise en page ?
KimB 673 posée juin 26, 2024
0 votes
4 réponses 467 vues
J'aimerais empêcher le contenu de \toc1 de passer à la ligne dans sa colonne. Puis-je faire en sorte que la ... police que je choisisse, elles semblent être de la même taille.
beve 128 posée juin 19, 2023
0 votes
2 réponses 229 vues
Avec la nouvelle version 1.9.3, la table des matières générée est désormais placée en premier, avant les ... inclus. Comment pouvons-nous retrouver le comportement précédent ?
rickarellanes 167 posée août 31, 2021
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For we were all baptized by one Spirit so as to form one body—whether Jews or Gentiles, slave or free—and we were all given the one Spirit to drink.
1 Corinthians 12:13
3,048 questions
6,007 réponses
5,672 commentaires
2,028 utilisateurs