Peut-on encore ouvrir aujourd’hui la proposition originale du WWW, un fichier Word for Macintosh 4 de 1990 ?
(blog.jgc.org)- La proposition originale du WWW de Tim Berners-Lee est un document Microsoft Word for Macintosh 4.0 de 68 608 octets ; l’enjeu était de savoir s’il était possible, dans un environnement moderne, de l’ouvrir au plus près de l’original et de le convertir en PDF
- Microsoft Word et Apple Pages ont échoué, tandis qu’Apache OpenOffice a pu l’ouvrir mais n’a pas correctement préservé la mise en forme et les diagrammes
- LibreOffice a ouvert le document et affiché des diagrammes nets, mais les marges, tailles de police, en-têtes/pieds de page et espacements différaient de l’original, nécessitant des corrections supplémentaires
- Alors que le PDF de 1998 du CERN compte 20 pages, la mise en page originale vérifiée avec un Macintosh des années 1990 et Word dans Infinite Mac apparaît en 22 pages au format A4
- Le fichier
.odtcorrigé manuellement ainsi qu’un PDF créé sur un Mac émulé ont été publiés sur GitHub ; même un document vieux de 34 ans n’est pas facile à ouvrir et à préserver fidèlement
La nature du fichier original et l’objectif de conversion
- Le W3C propose, sur la page de la proposition originale du WWW de Tim Berners-Lee, un téléchargement qui semble être le fichier de document original
- Ce téléchargement était accompagné de la mention « I think - I can't test it », et il existe séparément une version RTF ainsi qu’une version HTML générée en 1998 à partir du fichier original
- La commande
filesur Mac identifie le document original comme un fichier Microsoft Word for Macintosh 4.0 - Une note sur la page du W3C indique également que ce document est le document MacWord ou Word for Mac original rédigé en mars 1989, redistribué sans modification hormis l’ajout d’une date de mai 1990
- L’objectif était d’ouvrir le document original et, si possible, de le convertir dans un format moderne comme un PDF haute fidélité
Essais avec des logiciels modernes
- Pour commencer par Microsoft Word, l’extension
.doca été ajoutée au fichier avant de le téléverser sur OneDrive et de tenter de l’ouvrir - Apple Pages ne comprend pas non plus les anciens fichiers Microsoft Word for Macintosh
- Apache OpenOffice a pu ouvrir le fichier, mais la mise en forme a disparu et les diagrammes manquaient
- LibreOffice a ouvert le fichier et affiché les diagrammes de façon nette
- Toutefois, les marges étaient étranges et d’autres problèmes de mise en forme subsistaient
Différences entre le PDF du CERN et la sortie de LibreOffice
- Le CERN propose une version PDF de la proposition
- Ce PDF semble avoir été généré en 1998 avec Acrobat Distiller Daemon 2.1 for SunOS/Solaris (SPARC) et compte 20 pages
- La version importée dans LibreOffice comptait 24 pages
- Après avoir créé un PDF à partir de la version LibreOffice, une comparaison avec le PDF du CERN a été effectuée dans la vue planche-contact d’Apple Preview
- Dans la version LibreOffice, la marge de droite disparaît
- La majeure partie du corps du texte apparaît en 14 pt, et non en 12 pt comme dans le PDF du CERN
- L’en-tête contenant les initiales TBL se transforme en pied de page
- À en juger par la position des images, les sauts de page semblaient globalement corrects, et le principal problème paraissait être la taille de police
- Le PDF du CERN contient un espace sous le titre, absent de la version LibreOffice
Vérification de la mise en page originale par émulation
- Pour vérifier l’apparence réelle du document original, un Macintosh des années 1990 a été démarré dans Infinite Mac, puis le document original a été ouvert avec Word for Macintosh 4.0
- Cette méthode a permis de vérifier les polices, tailles de police et la mise en page réelles
- Le résultat observé sur le Mac émulé montrait que le document Mac original et le PDF du CERN différaient sensiblement
- Le PDF du CERN compte 20 pages
- Le document ouvert dans Word for Macintosh 4.0 avec du papier A4 compte 22 pages
- L’objectif a alors changé : il ne s’agissait plus de reproduire le PDF du CERN, mais de se rapprocher du document original tel qu’il apparaît sur Mac
Corrections manuelles et résultat de conservation
- Plusieurs éléments ont été ajustés manuellement afin de rapprocher le document LibreOffice de l’original
- Définition du papier en A4
- Réglage de la marge droite à la même taille que la marge gauche
- Ajustement séparé de la première page, dont la gouttière, le pied de page et l’en-tête ne correspondaient pas
- Passage de la police du corps de texte de 14 pt et d’autres tailles à 12 pt
- Traitement manuel du texte mal coupé entre les pages et des problèmes d’alignement
- Correction des éléments transformés en pieds de page pour les remettre en en-têtes
- Le résultat final est devenu assez proche du document affiché sur Mac
- La version convertie en
.odta été mise en ligne dans un dépôt GitHub - Ce travail montre qu’il est difficile de préserver d’anciens documents dans des formats modernes, et que les logiciels open source peuvent être utiles pour ce type de conversion
- L’objectif initial était d’obtenir des diagrammes de haute qualité de la proposition originale pour une présentation, mais l’opération a pris plus de temps que prévu
PDF supplémentaire créé avec un Mac émulé
- Dans les commentaires Hacker News, quelqu’un a suggéré qu’il était possible de créer un fichier PostScript ou un PDF avec un Mac émulé
- Avec System 7, Word de 1992 et le pilote d’impression Print2PDF capable de produire des fichiers PDF, une sortie a été générée directement depuis Word for Macintosh 5.1a
- Le PDF créé de cette manière a également été ajouté à GitHub
- Cette version compte 20 pages
- La police est différente, mais l’exigence initiale — produire un PDF — est satisfaite
- Un autre commentaire Hacker News renvoie à un cas où une bonne conversion vers un format moderne a été produite avec une autre version de Word et quelques ajustements
1 commentaires
Avis sur Hacker News
Pour ceux que ça intéresse, j’ai mis en ligne un document au format Word moderne dans lequel les illustrations vectorielles et les polices sont toutes préservées : https://jasomill.at/proposal.docx
La conversion a été faite en l’ouvrant puis en le réenregistrant avec Word 98[1] sur un Power Mac émulé via QEMU, puis en l’ouvrant dans le Word for Mac moderne 16.82
En revanche, les images manquaient, et Word indiquait : « There is not enough memory or disk space to display or print the picture. » ; cela semble moins être un problème de RAM qu’un signe que Word ne prend plus en charge le format d’image PICT
Pour restaurer les images, j’ai créé un PDF depuis Word 98 avec l’impression PDF d’Acrobat 5.0.10, puis extrait chacune des trois images en PDF avec Adobe Illustrator moderne afin de préserver les polices, les vecteurs, les dimensions et les boîtes englobantes d’origine, avant de les glisser-déposer depuis le Finder
À titre de comparaison, le PDF créé depuis Word 98 sur le Power Mac avec Acrobat est ici : https://jasomill.at/proposal-Word98.pdf, et celui créé par le Word moderne sous macOS Sonoma est ici : https://jasomill.at/proposal-Word16.82.pdf
[1] https://archive.org/details/ms-word98-special-edition
Bien sûr, s’il y a du texte, le problème des polices reste entier, mais je n’avais pas pensé à l’idée de préserver les vecteurs via PDF, et le PDF gère aussi très bien l’intégration des polices
[1] http://fileformats.archiveteam.org/wiki/PICT
D’après les quelques recherches faites rapidement pendant le travail, je n’ai pas pu vérifier quand le projet LHC a commencé ni en quoi il était déjà pertinent en 1990, mais le fait que ce soit 20 ans avant sa mise en service réelle me paraît déjà beaucoup plus long que ce que j’aurais imaginé
Dire qu’on peut « voir les vraies polices, tailles de police et la mise en page pour vérifier à quoi le document était censé ressembler » n’est vrai que si l’on dispose des polices d’origine
Word 4.0 est sorti pour System 6 et prenait en charge jusqu’à System 3.2 ; à l’époque, les polices existaient en fichiers séparés pour l’écran et pour l’imprimante, selon la résolution de sortie
S’il n’y avait pas de police d’imprimante, la police écran était agrandie pour l’impression par interpolation au plus proche voisin ; s’il n’y avait pas de police écran, elle était remplacée par la police système. Comme sur la capture d’écran, la valeur par défaut est Geneva
Dans ce cas, il ne faudrait que les célèbres Palatino et Courier, mais LibreOffice les a remplacées par Times New Roman même lorsque Palatino Linotype était installée
PalatinoLinotypedans la version fournie avec Windows, etPalatinoLTStddans la version Adobe OpenTypeSans exception codée en dur, la correspondance de polices basée sur un préfixe commun peut facilement donner des résultats inadaptés. Par exemple,
Lucidapeut être associée àLucidaConsole, alors que, du point de vue de l’intention de l’auteur du document, presque n’importe quelle police sans sérif proportionnelle serait préférableEn plus, même une correspondance exacte du nom n’est pas garantie. Apple a distribué deux fois une police dont le nom interne est
NewYork: l’une est une conversion TrueType du dessin bitmap Macintosh original de Susan Kare datant de 1983, l’autre est un dessin sans rapport sorti en 2019Le héros facile à sous-estimer dans cette petite histoire, c’est la vieille commande
file(1)proposal: Microsoft Word for Macintosh 4.0Quand on se demande ce qu’est un fichier, on l’utilise presque par réflexe, et les informations qu’elle renvoie sont juste assez suffisantes pour satisfaire la curiosité tout en restant pratiques ; c’est vraiment utile
fileest un excellent outilPar le passé, je me suis retrouvé plusieurs fois à pester devant un PC de travail sous Windows parce que je ne pouvais pas utiliser facilement cet outil. Plus tard, WSL a rendu les choses plus confortables, et aujourd’hui, heureusement, je vis presque sans Windows
LibreOffice ouvre directement ce fichier. Sa prise en charge des anciens formats de documents est vraiment excellente, et je le garde installé pour ce genre d’usage : https://imgur.com/a/JENgq6V
Cela dit, j’aime aussi utiliser BasiliskII et l’émulateur InfiniteMac
Ces problèmes semblent aussi visibles sur la capture d’écran, et même si la prise en charge d’un format propriétaire aussi ancien à ce niveau est assez bonne, avec ce genre de problèmes il est difficile d’aller jusqu’à dire qu’elle est « vraiment excellente »
Je me demande si du code de parsing de formats tiers du début des années 1990 est encore présent dans LibreOffice aujourd’hui, ou si c’est plutôt le code de compatibilité et de conversion écrit beaucoup plus tard par rétro-ingénierie de versions de Word ultérieures qui fait réellement le travail
Exemple illustrant la rétrocompatibilité de Microsoft : dans Word 2401 pour Windows, le fichier s’est globalement bien ouvert, et la mise en page semblait identique au PDF de l’article
Le format de fichier était certes bloqué par défaut, mais il était facile de l’autoriser
En revanche, faute de filtre graphique pour le format Microsoft Word Picture, les images ne se sont pas ouvertes. Il semble avoir été abandonné il y a assez longtemps, mais Word 2003 devrait sans doute pouvoir l’ouvrir, et ce n’est pas non plus au point d’être trop ancien pour tourner sur un système moderne
En l’enregistrant depuis là, il a été converti en
.docmoderne, puis a pu être ouvert dans Office 365 et converti en PDF, entre autresLa leçon, c’est que l’équipe Windows Office semble consacrer un peu plus de temps à la rétrocompatibilité
Une entreprise comme Microsoft devrait, à mon avis, considérer comme important de permettre l’ouverture de documents créés par toutes les versions de Microsoft Word, aussi anciens soient-ils
Je pense qu’elle a une responsabilité sociale, historique et économique
Si les vulnérabilités dans l’ancien code de parsing inquiètent, il suffit de le déplacer dans un processus externe, de l’exécuter dans un sandbox isolé et de lui faire produire à la volée une nouvelle version lisible. Il ne faut pas supprimer cette fonctionnalité
Édit : j’ai appris que Word sur desktop ouvre bien le fichier, et que seule la version web ne le fait pas ; on peut donc considérer ce message comme caduc
Édit 2 : le document s’ouvre, mais il semble impossible d’afficher ou d’imprimer les graphiques intégrés
Documenter les formats n’était pas une norme. Je suis d’accord sur la responsabilité sociale, mais pour avoir travaillé dans l’archivage numérique, l’époque était vraiment, vraiment sale. Vraiment
Si l’on veut savoir à quoi ressemblait exactement l’impression à l’époque, on devrait pouvoir installer, dans un émulateur exécutant Word for Mac 4.0, une file d’impression générant un fichier PostScript
Ce fichier
.pspeut ensuite être converti en PDFOu, s’il existe Acrobat même sur un OS aussi ancien, il serait peut-être possible de produire directement un PDF via un pilote d’imprimante virtuelle
Si vous voulez régler davantage de choses vous-même, il suffit de plonger dans les eaux profondes de Ghostscript :)
https://www.ghostscript.com
Je me souviens aussi avoir ouvert des fichiers Word 4.0
LibreOffice est impressionnant. Non seulement il peut ouvrir de nombreux formats de documents, mais il permet aussi d’automatiser des tâches comme la conversion de formats grâce à l’exécution headless et aux options en ligne de commande
Ce genre d’opération est souvent difficile à faire autrement
https://help.libreoffice.org/latest/en-US/text/shared/guide/start_parameters.html
https://opensource.com/article/21/3/libreoffice-command-line
Il existe un problème potentiel que les entreprises sous-estiment souvent. Certaines disposent de sauvegardes conservées indéfiniment
Les sauvegardes conservées 10 ans sont courantes, et certaines organisations les gardent 20 ans pour des raisons juridiques, mais la plupart ne comprennent pas la différence entre « lisible » et « exploitable »
Cela dépend des données, mais certaines entreprises sauvegardent indéfiniment des machines virtuelles entières en pensant pouvoir les exécuter plus tard. Restaurer une machine vSphere 5.x sur un vSphere 8 récent est déjà suffisamment difficile ; j’ai donc du mal à comprendre un tel gaspillage d’espace
À ce prix, cela ne vaut pas la peine de faire le tri. Un DevOps coûte plus de 100 dollars de l’heure, sans même compter le coût d’opportunité de lui faire faire un ménage ennuyeux au lieu d’un travail plus productif
Une fois l’entreprise rachetée, ou suffisamment de temps écoulé, on peut supprimer ou jeter les données sans tri préalable
Quant aux machines virtuelles, si c’est par exemple un VMDK, on peut lire le disque brut sans le démarrer. Cela ne vaut pas la peine de risquer une perte de données pour économiser 10 dollars par mois, une somme qui correspond à peu près à une bière de plus pour un développeur lors d’un événement d’équipe
Ce n’est donc pas tant un gaspillage d’espace qu’un gaspillage de gestion
Un bon avertissement sur la vitesse à laquelle les formats vieillissent, et en particulier sur le danger des formats fermés
Pour les documents à conserver à long terme, j’utilise Markdown, du texte brut et PNG
Même si ces formats disparaissaient, il serait facile de réimplémenter soi-même un parseur
Il est facile de créer un parseur qui se comporte comme un parseur Markdown dans les cas simples, au point que les gens croient qu’il parse réellement, mais un vrai parseur, c’est autre chose
Cela dit, les données Markdown ont de fortes chances d’être récupérables. Pour des données que l’on génère soi-même, HTML peut même être plus sûr
HTML est similaire, et le texte brut l’est aussi dans une certaine mesure. Le PDF devrait rester exactement identique pour toujours, mais parmi les formats de documents éditables, à ma connaissance, seul TeX/LaTeX conserve vraiment la même mise en forme malgré les mises à jour logicielles
En pratique, dans LaTeX, si un même document d’entrée ne produit pas exactement la même mise en page qu’avec une version précédente, c’est officiellement un bug
C’est particulièrement problématique quand la documentation d’un format ou d’un protocole plus complexe doit être rédigée dans ce format ou ce protocole lui-même
Il existe aussi le wiki Just Solve The File Format Problem. J’y ai moi-même déjà ajouté du contenu ; il utilise HTML et ne contient pas les spécifications complètes de tous les formats de fichiers, certains étant des liens vers des fichiers externes, mais il aide à trouver des informations sur les formats de fichiers
On dit que ceux qui ne connaissent pas l’histoire sont condamnés à répéter les mêmes erreurs, mais si nos documents sont illisibles pour les générations futures ou ont disparu, comment pourront-elles apprendre de nos erreurs ?