Aujourd’hui j’ai appris, enfin je me suis souvenu, que mon système d’exploitation disposait d’un outil intégré pour transposer la table des caractères d’un fichier texte.
La faute au Micro journal
Comme expliqué dans un billet précédent, je n’utilise pas la fonctionnalité de synchonisation en ligne du Micro Journal car elle repose sur Google Drive. Je me contente de glisser la carte de stockage dans un lecteur pour accéder aux fichiers et les transférer. Seulement, la manière dont sont encodés les lettres par la machine d’Un Kyu Lee ne correspond pas à celle des fichiers textes que j’utilise pour la rédaction ou la publication. Il me faut donc opérer une transcription.
Et à Microsoft
Cette opération n’est pas compliquée en soi, il suffit de demander à un éditeur de texte pas trop mal foutu d’ouvrir tel fichier en utilisant telle table de caractères ou, si le fichier ouvert présente des caractères imprévus ou absents, demander à ce même logiciel de réinterpréter les caractères selon une autre table jusqu’à obtenir satisfaction. Ce qui, au passage, m’a fait constater que les fichiers du Micro Journal ne suivaient pas la table ISO/IEC 8859-1 (Latin 1) mais la variante imposée par Microsoft dans Windows 2.0 : CP1252 (Windows 1252).
Le shadok en moi
J’aurais pu me satisfaire de ce processus manuel et assez léger mais « Moins c’est plus simple, plus c’est moins compliqué » est une tournure qui pourrait me tenir lieu de devise. Ayant tendance à réfléchir en flux, et sans dévoyer le contenu de mon prochain billet concernant le Micro Journal, je souhaitais trouver un outil me permettant de réaliser la conversion nécessaire sans intervention de ma part.
C’est ainsi que j’ai (re)découvert que macOS proposait l’utilitaire iconv pour effectuer le transcodage de fichiers texte et que mon souhait d’automation était aussi simple que :
iconv -f cp1252 -t utf8 fichier_source.txt > fichier_converti.txt
Post-scriptum
Si vous voulez avoir une idée du cauchemar qu’est l’encodage de caractères et soulever un coin du voile recouvrant la difficulté de la conservation et de la consultation de données anciennes, saisissez iconv --list
dans un émulateur de terminal… voyez plutôt.
Rédigé à Toulouges en avril 2025.