Support de présentation (ouvrir en grand) :

Utilisez les flèches ← et → pour naviguer entre les diapositives.

Sommaire

Plan de la séance #

  1. Définitions
  2. Les formats : docx, pdf, markdown, HTML, XML
  3. La conversion entre formats
  4. Pandoc

1. Définitions #

1. Définitions #

1.1. Origines des formats #

Partons de l’édition : les formats de papier pour l’imprimé, première apparition technique du terme ?

Le terme format est un terme technique, son usage permet de délimiter les caractéristiques d’un objet : avec le format nous donnons un certain nombres de données, d’instructions, ou de règles. Pourquoi définir tout cela ? L’objectif est de constituer une série d’informations compréhensible, utilisable et communicable.

Pour prendre un exemple concret du côté du livre, l’impression d’un document nécessite de s’accorder sur un format de papier. Les largeurs, longueurs et orientations sont normalisées, des standards sont établis, ils permettent alors de concevoir des imprimantes qui peuvent gérer des types définis de papier. Sans des formats de papier il est difficile de créer des machines adéquates, comme des presses à imprimer ou des imprimantes. L’usage du format dans l’imprimerie est sans doute la première apparition de ce terme technique, il est intéressant de noter que le format est ainsi d’abord attaché au livre et à sa fabrication.

Notons également que des outils ou des processus sont associés au format : les instructions sont définies pour qu’une action soit réalisée par un agent — humain, analogique, mécanique, numérique.

Enfin, sans format, pas de média.

1. Définitions #

1.2. Qu’est-ce qu’un format informatique ? #

Structurer les informations avec des spécifications techniques.

Un format informatique est le pivot entre une organisation logique et son implémentation dans un système informatique. Un fichier doit avoir un format, sans quoi il ne pourra être produit, transmis ou lu. Un format informatique est le lien entre l’infrastructure et l’agent (humain ou programme) qui utilise cette infrastructure. Le choix des formats informatiques détermine la manière dont les informations sont créés, stockées, envoyées, reçues, interprétées, affichées. Aujourd’hui les formats prennent une place importante dans notre environnement, et leur incidence dépasse le domaine de l’informatique, leur étude a pourtant été longtemps délaissée dans le champ des médias.

Exemple du format DOC ou .doc : le logiciel Microsoft Word ne peut pas lire n’importe quel format informatique, les données doivent être structurées d’une façon précise pour que le logiciel puisse les interpréter, et ensuite les modifier, et enfin produire une nouvelle version du fichier. Ici le format DOC a été créé pour les besoins d’un logiciel spécifique.

Dans cet exemple c’est le format informatique qui est le résultat du logiciel, mais d’autres fonctionnement sont possibles. Par ailleurs, le format DOC est longtemps resté propriétaire (jusqu’à l’arrivée du format DOCX), ses spécifications n’étaient pas publiques et des brevets empêchaient toute initiative de développement d’un logiciel autre que Word capable de lire ou de modifier des fichiers .doc.

1. Définitions #

1.3. Pourquoi s’intéresser aux formats ? #

Comprendre les rouages du numérique.

Les formats informatiques ont structuré et structurent encore l’espace numérique.

2. Implications techniques et politiques #

2. Implications techniques et politiques #

2.1. L’interopérabilité #

La condition du numérique : faire dialoguer les machines.

L’interopérabilité est un principe qui permet à plusieurs machines de dialoguer :

  • en s’accordant sur des règles pour définir une série d’informations, les machines peuvent lire et écrire un fichier ;
  • si ces spécifications sont clairement énoncées, il n’y a alors plus de dépendance vis-à-vis d’un logiciel spécifique ;
  • la question de l’interopérabilité est intimement liée à la standardisation et à l’ouverture du format.

2. Implications techniques et politiques #

2.2. Ouvert ou fermé ? #

Standards et licences.

3. Les formats #

3. Les formats #

3.1. PDF #

  • Portable Document Format : pour afficher et imprimer les fichiers toujours de la même manière
  • 1991 par Adobe
  • Depuis 2008 : ISO standard 32000-1:2008
  • Le fichier est structuré sur quatre niveaux
    • Header : indique la version de la spécification PDF du fichier
    • Body : contenant les objets qui constituent le document contenu dans le dossier
    • Cross-reference Table : contenant les informations sur les objets indirects dans le fichier
    • Trailer : indiquant l’emplacement de la cross-reference table dans le corps du fichier.
  • Dans body, Chaque page est traitée individuellement

3. Les formats #

3.2. Office Open XML (DOCX) #

  • 2007 par Microsoft
  • .doc + x(ml)
  • dossier zip contenant des fichiers xml
  • permet de lire comment le fichier a été encodé
  • vs .doc, un format binaire lisible uniquement par le logiciel Word - à partir de Word97

3. Les formats #

3.3. XML #

  • Extensible Markup Language
  • crée en 1998
  • conçu pour la structuration stricte de données
  • les informations sont validées par des schémas

Démo sur Oxygen, un éditeur de texte pour XML

3. Les formats #

3.4. HTML #

  • Hypertext Markup Language
  • créé en 1993
  • conçu pour les liens entre les documents (hyperlinks)
  • cinquième version (en 2008), s’adapte à l’évolution du Web

3. Les formats #

3.5. HTML #

La structure d’un fichier HTML #

<html>
    <head>
        <meta charset="utf-8">
        <title>Titre dans l'onglet</title>
    </head>
    <body>
        <h1>Titre</h1>
        <p>Ceci contient un paragraphe.</p>
    </body>
<html>

3. Les formats #

3.5. Markdown #

4. Conversion entre formats #

4. Conversion entre formats #

4.1. La conversion #

La conversion est la transformation de balises en d’autres balises.

Les contenus en entrée :

  • texte balisé
  • métadonnées sérialisées
  • bibliographie structurée

La conversion est un processus qui prendre un certain nombre de données en compte, et pas uniquement le texte balisé.

4. Conversion entre formats #

4.2. Pandoc #

Des logiciels permettent de convertir automatiquement les contenus, comme Pandoc par exemple :

  • 2006, par John MacFarlane
  • Pandoc est un convertisseur agnostique, il n’impose pas une pratique par rapport à un balisage.
  • Mais certaines conversions sont impossibles : un format complexe est trop difficile à réduire au risque de perdre la majorité des informations, ou de ne pas savoir quoi en faire.

4. Conversion entre formats #

4.3. Fonctionnement de Pandoc #

programme fichier.entrée optionnel=fichier.sortie

Pandoc fonctionne en ligne de commande, avec un schéma classique d’options.

4. Conversion entre formats #

4.4. Pandoc -examples #

pandoc mon-fichier-markdown.md

pandoc -f markdown -t html mon-fichier-markdown.md -o mon-fichier-html.html

pandoc -f markdown -t html --template=mon-modele.html mon-fichier-markdown.md -o mon-fichier-html.html

La première commande convertit le fichier en HTML, le format de sortie par défaut de Pandoc

La deuxième crée un fichier html correspondant au fichier source

La troisième commande applique un modèle ou template, permettant ainsi de structurer le document d’une façon plus précise.

5. Découverte de Pandoc par la manipulation #

5. Découverte de Pandoc par la manipulation #

5.1. Installation du logiciel - Première étape #

  • Terminal
    • Windows : Start > Windows Power Shell
    • Mac : chercher «  terminal  »
    • Linux : chercher «  terminal  »

5. Découverte de Pandoc par la manipulation #

5.2. Installation du logiciel - Deuxième étape #

Suivre les instructions sur cette page : https://docs.zettlr.com/fr/installing-pandoc/

  • Pandoc
    • Windows avec application Ubuntu : sudo apt update –> sudo apt install pandoc
    • Mac
    • Linux

5. Découverte de Pandoc par la manipulation #

5.3. Créer un document Markdown et le convertir en HTML #

  • créer un document Markdown avec des niveaux de titre, une liste, une citation longue et de l’emphase (italique et gras)
  • lancer la commande pandoc mon-fichier.md en l’adaptant
  • ouvrir le fichier HTML obtenu

5. Découverte de Pandoc par la manipulation #

5.4. Ajouter des métadonnées #

  • ajouter des métadonnées à votre document avec un entête du type :
---
title: Le titre de mon document
author: Mon Nom
---
  • convertir ce fichier Markdown en HTML puis en DOCX
  • ouvrir les fichiers obtenus, que remarquez-vous ?

5. Découverte de Pandoc par la manipulation #

5.5. Appliquer un modèle #

  • créer un fichier HTML avec le code suivant :
<html>
    <head>
    <title>$titre$</title>
    <meta name="author" content="$auteur$">
    </head>
    <body>
    <h1 class="titre">$titre$</h1>

    <p class="auteur">$auteur$</p>

    $if(date)$
    <p class="date">$date$</p>
    $endif$


    <div>$body$</div>

    </body>
</html>
  • lancer la conversion en HTML en appliquant le modèle/template
  • ouvrir le document obtenu

5.6. Appliquer un modèle - 2 #

Ajouter dans le YAML du fichier Markdown le code suivant :

---
titre: The document title
auteur:
- nom: Auteur 1 affiliation: Université de Montréal
- nom: Auteur 2 affiliation: Université de Laval
...

5.7. Appliquer un modèle - 2 #

Modifier le fichier HTML comme suit :

<html>
    <head>
    <title>$titre$</title>
    <meta name="author" content="$auteur$">
    </head>
    <body>
    <h1 class="titre">$titre$</h1>

    $for(auteur)$
    $if(auteur.nom)$
    <p class="author">$auteur.nom$</p>
    $if(auteur.affiliation)$ <p class="author">($auteur.affiliation$)</p>$endif$
    $else$
    <p class="author">$auteur$</p>
    $endif$
    $endfor$

    $if(date)$
    <p class="date">$date$</p>
    $endif$


    <div>$body$</div>

    </body>
</html>

Ressources #