Petite question aux autrices et auteurs qui passent par ici : je viens de terminer un outil pour pouvoir écrire un texte de fiction (nouvelle, roman…) au format assez simple markdown et qui donne un rendu le plus pro possible au format pdf/X (format accepté par les imprimeurs pro… donc utile en auto édition).

Et j'aimerais savoir si vous voyez des fonctionnalité qui manquent selon vos besoins à vous (je l'ai développé pour mon roman d'urban fantasy à moi)
#ecriture
🧵1/x

Le rendu en lui-même passe par LaTeX avec une classe spécialement dédiée aux œuvres de fiction histoire d'avoir un rendu ultra clean.

On peut indiquer toutes les meta données nécessaires légalement : licence/copyright, isbn, auteur, éditeur (avec des consigne pour l'auto-édition), etc

On peut structurer son doc en : parties, chapitre, scène (nommée ou non) ou même faire des chapitres continus (sans saut de page).
🧵2/x

On peut insérer des sauts de scène (3 styles différent).

On peut insérer (en particulier en en-tête de chapitre/partie) des épigraphe (citation avec mise en page adéquat, avec auteur et œuvre si besoin).

On peut utiliser des emoji et globalement tout l'unicode (sauf les emojis combinées qui ne sont pas encore supportée) où on veut (texte, titre, etc…) elle sont rendues dans une police noir et blanc de même taille et interligne que le texte.
🧵3/x

On peut faire de la mise en forme basiqu(même si bon… faut pas en abuser, mais on est grands on fait ce qu'on veut) :
- gras
- italique
- souligné
- barré
- chasse-fixe
- texte agrandi ou rétréci (entre x0.2 et x2 il me semble) sans foutre les marges ou interlignes en vrac

On peut faire tout ça soit au niveau d'un paragraphe/groupe de paragraphe soit en plein milieu d'un paragraphe pour juste qq lettres/mots.
🧵4/x

On peut signaler qu'un morceau de texte est en langue étrangère (il apparaîtra en italique).

Il y a un support automatique pour des alphabet non ascii (pour le moment j'ai ajouter le grec ancien et l'alphabet berbère mais j'en ajouterai surement d'autre).
🧵5/x

La structure globale d'un roman classique est respectée (j'utiliee les terme anglosaxon car en LaTeX c'est ceux qui sont utilisé) :

- frontmatter : tout ce qui est avant l'histoire (titre, page de garde, préface, etc)
- bodymatter : le texte de fiction lui-même
- backmatter : tout ce qui vient après l'histoire (mot "FIN", postface, glossaire, etc)
🧵6/x

Le texte peut être écrit en plusieurs fichiers (découpez comme vous voulez : par chapitre, par partie, par scène, au pif… ) vous marquez vous-même où chaque fichier va via un "fichier maître" qui inclue explicitement tous les autres.

Mais vous pouvez aussi tout écrire dans un seul fichier.
🧵7/x

On peut très finement gérer les espaces et les sauts. d'une par les espace "automatiques" (des chapitres, parties, etc) sont configurables. Mais aussi ou peut faire des sauts manuels :

- de page (simple ou jusqu'au recto/verso suivant)
- de lignes

On peut aussi demander de l'espace à fond à droite, à gauche, en haut ou en bas autour d'un texte/mot. (surtout utile pour la mise en page des titre de chapitre ou partie).

On peut spécifier des marges pour juste un (groupe de) paragraphe.
🧵8/x

On peut contrôles ce qui apparait en en-tête/pied-de-page (mais il y a des limitations due aux contrainte d'impression/édition/habitude et c'est pris en compte) en particulier afficher automatiquement : chapitre ou partie en cours…

On peut utiliser des notes de bas de page.
🧵9/x

On peut aussi faire mumuse avec le niveau gris du texte et même utiliser un texte "fantôme" (qui prend exactement sa place dans le texte mais n'apparait pas du tout et est remplacé par du vide… utile pour les texte d'enquête par exemple).
🧵10/x

Je bosse dans les semaines qui viennent pour ajouter 2 ou 3 trucs prévu ou déjà développé mais pas documenté ou débuggés :

- Le support des images (noir et blanc)
- Le support de "style personnalisés" : on définit dans la fichier de config un style nommé (en disant comment on veut son rendu) et on pourra l'appliquer à un paragraphe simplement. Par exemple un style "sms" sera en police à chasse fixe, grasse et plus claire ou "post-it" qui sera en cursif, centré, avec des grandes marges.
🧵11/x

J'oubliais les truc useless mais que j'adore : il y a un support des lettrines à l'ancienne avec une énooooorme majuscule enluminée qui déborde sur les premières lignes… ou au choix juste un groooosse majuscule cursivo-décorative… ou une première ligne en petites majuscules (si si ça se fait).

C'était supporté par le LaTeX que j'utilise et je trouve ça fun en fantasy donc…
🧵12/x

Pour ceux qui se demande : c'est basé sur la classe LaTeX novel qui fait vraiment le plus gros du job mais qui hélas est innaccessibles pour ceux qui ne sont pas 40ème dan en LaTeX (et en plus même pour du LaTeX elle est compliquée à utiliser).

Mon but à avant tout été de rendre ses fonctionnalité accessible au plus grand nombre via l'utilisation de markdown moderne (en l'occurrence le markdown du projet Quarto qui reprend le meilleur de pandoc)

https://ctan.math.illinois.edu/macros/luatex/latex/novel/doc/novel-documentation.html
🧵13/x

Document class "novel" - documentation

Je demande ça maintenant car je vais remettre les mains dans le cambouis d'ici la fin de l'été donc si j'ai oublié un truc c'est le moment ou jamais. Par exemple j'aimerais réussir à rendre la table des matière automatique… pour le moment c'est entièrement manuel (bof).

Et voilà un exemple de rendu (ouais c'est pas de la fiction… c'est mon fichier de teste) : https://acloud.zaclys.com/index.php/s/F2yAqGGfxyeRr5H
🧵14/14

exemple_pdf-novel.pdf

Zaclys Nextcloud - En France, sans pub, libre et open source.

Zaclys Nextcloud
@pmartin Hmm, c'est quoi le pipeline sous le capot ?
@pmartin Autre question, c'est quoi ta fonte d'emoji ?
@Erase Money for nothing and checks for free 😉
(en vrai j'espère que ça sera utile pour plein de monde)
@pmartin il y a @NemuLumeN qui a fait fabrilivre, aussi
@petitmote @NemuLumeN Il me semble que @NemuLumeN a plus fait un lecteur en ligne d'ebook (de ce que je me souviens car j'avais pas mal regardé quand c'est sorti)
@pmartin @NemuLumeN à l'origine oui, aujourd'hui si je ne dis pas de bêtise c'est un système multi exports

Hello! En effet, l'outil que j'ai fait permet d'exporter dans plusieurs formats, dont le .tex. Il crée des .tex à partir d'un format source dans un autre langage.

J'ai fait un "template" A5 (utilisable dans Texmaker + LuaLatex) qui permet de faire des PDF typés roman.

Mais j'aimerais bien voir ce que tu as fait @pmartin par curiosité, pour voir si je peux étendre les possibilités de l'outil que j'ai publié. :)

@petitmote

En fait, si j'ai bien compris, il faudrait plutôt que je fasse un export vers quarto, pour qu'il se charge de faire l'export PDF via la classe roman.

@pmartin @petitmote

@pmartin Bonjour, vous connaissez Typst ?

https://github.com/typst/typst

GitHub - typst/typst: A markup-based typesetting system that is powerful and easy to learn.

A markup-based typesetting system that is powerful and easy to learn. - typst/typst

GitHub

@max Oui très bien, je le présente régulièrement à mes collègues 😁 mais c'est un outil pensé pour les publication académique.

Ici mon outil utilise (très) lourdement une classe LaTeX (pas de moi) qui a un nombre affolant de hack pour réussir à supporter les spécificités des documents de fictions (beaucoup moins hiérarchiques et avec des règles qui facilitent la lecture mais sont un enfer à mettre en place comme… l'alignement des ligne entre recto et verso pour éviter de gêner la lecture… ).

@max Typist est même un des langage supporté par quarto comme notation de math (bon ok peu utile pour de la fiction… mais c'est supporté quand même dans mon truc 😅) et aussi comme backend de génération possible pour les pdf.

Mais ici je m'appuie sur les épaules des géants qui sont passé avant moi : la classe novel (en LaTeX) pour la génération du pdf/X et quarto pour la mécanique globale (mon outil est une extension quarto techniquement).

@pmartin pour répondre a la demande de fonctionnalités, est ce que cela gère les marges de page en vis a vis ?
En terme non technique, la marge de la pliure du livre est souvent plus importante que la la marge extérieur, sauf que c'est une page sur deux 😅.
Est-ce que cela gère les repère de coupe et d'alignements, mais aussi les font perdu.

Merci en tout ça pour ce travail, je vais testé 👍😃

@Chagne oui tout à fait, le rendu par défaut est avec les marges de page en vis-à-vis. Tu peux regarder le doc d'exemple que j'ai mis à la fin de mon (long thread) on peut voir la différence entre les marges gauche et droite des pages recto/verso.