Zenika-Training / zenika-formation-framework

Tools to build and present our training material
8 stars 25 forks source link

Concaténation incorrecte des chapitres du cahier d'exercice #96

Open mjeanroy opened 9 years ago

mjeanroy commented 9 years ago

J'explique avec un peu plus de détail (visible dans la formation React) :

Dans le cahier d'exercice, chaque chapitre est écrit dans un fichier md séparé et la tâche generateCahierExercice concatène les fichiers indiqués dans le parts.json. Cependant, si un fichier ne met pas un saut de ligne explicite, le titre du prochain fichier md ne sera pas mis en page du tout.

C'est pas très grave, mais parfois, certains éditeurs sont configurés pour supprimer les derniers sauts de ligne, donc on peut ne pas s'en rendre compte et voir le problème qu'à la génération du pdf.

Tu peux voir la modification sur le cahier d'exercices de la formation React : https://github.com/Zenika/formation-react/pull/63

Dès que j'ai un peu de temps, j'essaye de te faire une PR pour corriger le problème (à moins que tu me dises que c'est une limitation et qu'il faut faire attention ?).

ldez commented 9 years ago

je ne suis pas sur de comprendre : normalement tu dois avoir une ligne avec <div class="pb"></div> soit en début soit en fin de slide, ce qui devrait corriger tout seul le problème.

J'ai loupé un truc ?

ldez commented 9 years ago

Je retire je viens de regarder la PR.

ldez commented 9 years ago

Pour une PR sur le sujet je pense que cela va être difficile pour un gain assez faible.

Le code concerné :

    markdownpdf({
      cssPath: cssPath,
      highlightCssPath: highlightPath,
      preProcessMd: preprocessMd,
      remarkable: {html: true},
      cwd: __dirname
    })
      .concat.from(files)
      .to(pdfPath,
      function () {
        console.log('PDF généré: ' + pdfPath);
        done();
      }
    );

Plus particulièrement le .concat.from(files).

L'outil est assez limité.

Par contre dans le contexte de la réécriture avec Gulp, un changement d'outils ou de parsing peut être le bienvenue.

ldez commented 9 years ago

Sinon le conseil c'est de mettre les <div class="pb"></div> en tête de fichier au lieu d'en bas :

ggerbaud commented 9 years ago

OK, pas plus d'avis que ce qui a été dit. J'attends de voir la PR Je comprends l'inconfort, mais je pense comme Ludo qu'il sera plus simple de ne pas mettre les page break en fin de fichier que de forcer un saut de ligne en cas de terminaison par un pb

mjeanroy commented 9 years ago

Merci @ldez & @ggerbaud, je n'ai pas eu le temps de regarder le code du framework, je partageais juste mon analyse.

@ldez Effectivement, à première vue, modifier la tâche Grunt ne semble pas hyper triviale par rapport au gain. Est-ce que la modification vers Gulp est prévue / en cours ?

Pour ma part c'est Atom qui me virait les sauts de lignes en fin de fichier. Pour ne plus avoir de problèmes, j'ai désactivé l'option, mais j'imagine que d'autres personnes peuvent être concernées.

ldez commented 9 years ago

@mjeanroy c'est en cours pour Gulp : j'ai fait une première version qui est dans le Fwk 0.4.5 (pour l'instant uniquement pour NPM3)

hgwood commented 7 years ago

Blocked by #117.