L'IPYNB est un carnet Jupyter : des cellules de prose et des cellules de code dans un seul fichier JSON. Le Markdown est un balisage qui se lit à l'œil nu, et le format que les modèles de langage lisent le mieux. pandoc se tient entre les deux, et cette page dit exactement ce qui arrive à un fichier IPYNB en route vers le MD.
Ce qui s'exécute quand un fichier IPYNB devient un MD
pandoc en deux passes, sur une machine que nous louons et que nous surveillons. Votre fichier IPYNB est envoyé une fois, pandoc s'exécute une fois, le fichier MD revient, et aucun des deux fichiers n'est conservé. IPYNB vers MD fait partie des 3649 paires sur lesquelles ce moteur a été sondé avec un vrai fichier, et c'est pour cela que cette page existe quand celles que la sonde n'a pas su prouver n'existent pas.
Ce qui survit du fichier IPYNB dans le fichier MD
La hiérarchie des titres. pandoc analyse le fichier IPYNB vers son propre arbre de document et écrit cet arbre en MD, si bien qu'un titre de niveau deux reste un titre de niveau deux et non simplement du texte en gras.
Les tableaux, reconstruits en syntaxe MD plutôt que photographiés. C'est la différence entre un tableau qu'une machine sait lire et l'image d'un tableau, et c'est toute la raison de faire passer un fichier IPYNB par pandoc plutôt que par une imprimante.
Les listes du fichier IPYNB, imbrications comprises, plus les blocs de code, les citations et les liens, tous réexprimés en MD.
Les images : pandoc les extrait du fichier IPYNB vers un répertoire de travail et les réintègre dans le MD, si bien que rien ne finit par pointer vers un fichier qui n'existe plus.
Les métadonnées de document du fichier IPYNB, que l'étape JSON intermédiaire conserve et qu'une passe en texte brut laisserait tomber en silence.
Ce que la conversion IPYNB vers MD vous coûte
Le carnet vivant. Les cellules de prose et les cellules de code de l'IPYNB arrivent toutes en texte dans le MD, rien ne reste exécutable, et l'état du noyau n'a jamais été dans le fichier IPYNB au départ.
La typographie fine. Les styles nommés de l'IPYNB, les couleurs et les choix de police s'effondrent en simple emphase, parce que la simple emphase est tout ce que le MD possède. Pour la plupart des gens, c'est la raison de lancer la conversion, pas un regret.
Si un modèle doit lire le fichier MD
C'est le sens qui aide un modèle de langue, et c'est la raison d'être de ce site. Un fichier IPYNB porte de la structure, et le MD est la seule sortie de cette liste qui remette cette structure sous une forme qu'un modèle lit déjà : un titre tient en deux caractères, un tableau en barres verticales, une liste en tiret. Aucune part de la fenêtre de contexte ne part à décrire une mise en page, parce qu'après le passage du fichier IPYNB dans pandoc il ne reste aucune mise en page à décrire.
IPYNB vers MD, mesuré plutôt que promis
En passant IPYNB vers MD sur le moteur réel avec un vrai fichier, pandoc a écrit 382 octets au format MD en 0,1 secondes, machine par ailleurs au repos. C'est un fichier IPYNB un jour donné et non une moyenne, et c'est pourquoi le nombre est donné avec le fichier qui l'a produit.
Le verdict IPYNB vers MD a été obtenu par un aller-retour pandoc, c'est-à-dire que la sortie a été relue par pandoc et devait encore contenir un mot témoin planté dans la source, ce qui prouve que le contenu a voyagé et pas seulement le conteneur. Le contrôle employé compte, parce qu'ils ne prouvent pas tous la même chose, et un code de statut 200 ne prouve strictement rien sur ce que le fichier MD contient.
Le même fichier IPYNB, envoyé ailleurs
Les autres sorties que la sonde a mesurées à partir d'un fichier IPYNB, pour que le coût du choix du format MD se lise face à quelque chose. Les tailles ne se comparent pas d'un moteur à l'autre, chaque famille ayant été sondée avec son propre fichier témoin IPYNB.
IPYNB vers DOCX : 10 225 octets en 0,1 secondes, vérifié par un aller-retour pandoc.
IPYNB vers EPUB : 5 120 octets en 0,1 secondes, vérifié par un aller-retour pandoc.
IPYNB vers TXT : 266 octets en moins d'un dixième de seconde, vérifié par la relecture du texte.
IPYNB vers HTML : 4 095 octets en 0,1 secondes, vérifié par un aller-retour pandoc.
IPYNB vers RTF : 687 octets en moins d'un dixième de seconde, vérifié par un aller-retour pandoc.
IPYNB vers ODT : 7 621 octets en 0,1 secondes, vérifié par un aller-retour pandoc.
Les autres routes vers MD, et ce qu'elles ont mesuré
Parmi les routes publiées vers MD, IPYNB est la plus grosse sortie des 8 mesurées. Les fichiers témoins diffèrent : ce classement porte sur la sonde et non sur votre document.
CSV vers MD : 114 octets en 0,1 secondes.
JSON vers MD : 266 octets en moins d'un dixième de seconde.
HTML vers MD : 371 octets en moins d'un dixième de seconde.
ODT vers MD : 277 octets en 0,1 secondes.
RTF vers MD : 265 octets en moins d'un dixième de seconde.
Ce que nous ne prétendrons pas sur IPYNB vers MD
Un fichier IPYNB de plus de 25 Mo est refusé avant la fin de l'envoi plutôt qu'après, pour que vous n'attendiez pas un refus.
Une conversion IPYNB vers MD qui dépasse 60 secondes est tuée, et le processus pandoc avec elle. Une exécution abandonnée resterait posée sur l'un des deux cœurs de la machine jusqu'à ce que quelqu'un le remarque.
32 des 935 paires sondées dans la famille qui sert IPYNB vers MD ont échoué, et celle-ci n'en fait pas partie. Elles échouent pour des raisons qu'il vaut mieux connaître : un rédacteur incapable de porter ce dont le document est fait, ou une sortie que le moteur n'a pas su relire. Elles sont comptées ici plutôt que cachées, parce qu'une paire qui échoue en silence est pire qu'une paire qui échoue bruyamment.
pandoc n'écrit jamais le MD en passant par un moteur TeX ici, et il n'écrit pas de PDF du tout : les onze moteurs qu'il lui faudrait ne sont pas sur cette machine, et une distribution TeX pèse plusieurs gigaoctets. Qui veut un PDF à partir d'un fichier IPYNB passe par LibreOffice ou par calibre, qui en sont réellement capables.
Un fichier IPYNB à la fois, choisi dans le navigateur. Il n'y a rien d'autre à régler et rien d'autre à proposer.
IPYNB vers MD : les questions que l'on pose
Qu'est-ce qui convertit vraiment mon fichier IPYNB en MD ?
C'est pandoc qui s'en charge, en deux passes, sur une machine que nous louons et que nous surveillons. Ni astuce de navigateur, ni service d'un tiers : le fichier IPYNB est envoyé une fois, pandoc s'exécute une fois, le MD revient, et aucun des deux fichiers n'est conservé ensuite.
Combien de temps prend une conversion IPYNB vers MD ?
Sur le fichier utilisé par la sonde, pandoc a mis 0,1 seconde et écrit 382 octets de MD. C'est une mesure réelle sur un fichier IPYNB réel, pas une moyenne et pas une promesse sur le vôtre : un IPYNB plus gros prend plus longtemps, et au-delà de 60 secondes l'exécution est arrêtée.
Qu'est-ce que je perds en passant de l'IPYNB au MD ?
Celle qu'il faut connaître en premier : le carnet vivant. Les cellules de prose et les cellules de code de l'IPYNB arrivent toutes en texte dans le MD, rien ne reste exécutable, et l'état du noyau n'a jamais été dans le fichier IPYNB au départ.
Les tableaux de mon fichier IPYNB sont-ils encore des tableaux dans le MD ?
Oui. pandoc lit les tableaux de l'IPYNB dans son propre arbre de document et les réécrit en syntaxe MD, si bien que vous obtenez un tableau qu'une machine sait analyser plutôt qu'une image de tableau.
La conversion IPYNB vers MD est-elle gratuite ?
Il y a une franchise gratuite chaque mois, et une conversion IPYNB vers MD coûte un demi-crédit dessus. Quand la franchise est épuisée, l'outil le dit et s'arrête, plutôt que de vous remettre discrètement un MD moins bon.