Python pour la fin de l’année 2021

Posté par  (site web personnel, Mastodon) . Édité par Nils Ratusznik et palm123. Modéré par Benoît Sibaud. Licence CC By‑SA.
30
25
déc.
2021
Python

En 2019 Oliver commençait une série de dépêches sur le langage Python, série qu’il nous promettait pour la rentrée 2019. Divers aléas ont fait que cette série n’a pu être terminée qu’en juin 2021.

Et, comme cela forme un tout cohérent et qu’il y avait, dès le départ, l’idée de les réunir, l’aboutissement est un, en fait plutôt deux epub qui compilent les dépêches et leurs commentaires parce que la maison ne se refuse rien. Ils sont sur un dépôt github avec les images de couvertures en version svg et png. Idéalement, ils devraient être sur un dépôt plutôt LinuxFr que celui-là.

Vous n’échapperez, évidemment, pas aux petits secrets d’ateliers en fin de dépêche.

Les pages de couverture

Sommaire

Un grand merci pour commencer

Merci à toutes les personnes qui ont contribué d’une façon ou d’une autre à ces dépêches, ou qui les ont commentées. Cela forme un corpus précieux qui réunit à la fois l’aspect didactique et les expériences.

Un merci tout particulier à :

  • Oliver qui a commencé la série ;
  • nokomprendo qui est l’auteur principal du chapitre 5 sur Nix (et Guix) ;
  • et à Philippe F. qui a terminé la série.

Sans oublier le remotivateur, j’ai nommé : tisaac.

Le, ou plutôt les livres électroniques

Les sujets traités

Vous retrouverez les liens en bas de la page, mais une présentation succincte s’impose. Donc, on commence par la popularité de Python (idéalement j’aurais dû mettre ça à jour, mais bon), pour dire ensuite au revoir à Python 2.

Après ces préliminaires, si je puis dire, on aborde le logiciel sous forme de tutoriels Installation, Py Pyenv, Nix et Giux, Pip et Pipx, les environnements virtuels et Pipenv. La dépêche sur le formateur de code est un retour d’expérience sous forme d’un dialogue à deux voix entre Oliver et Philippe F.

Et enfin, pour conclure en beauté, il y a une série d’entretiens d’utilisateurs du langage. Chacun avec une utilisation, et donc une expérience différente.

Une compilation commentée

On a ainsi la compilation de la série de dépêches plus les commentaires. Les commentaires n’ont, toutefois, pas été tous été repris, pas uniquement par volonté de censure de ma part, mais était-il nécessaire de garder une série de commentaires portant sur une coquille ou complètement hors-sujet ? Ce qui, au final fait très très peu de commentaires en moins (dont des miens soit dit en passant). En revanche, tous les avatars sont partis à la trappe, c’est comme ça1. J’ai opté pour ajouter un titre « Commentaires », balisé <h2> et d’insérer des filets (que je ne vois pas sur ma liseuse) entre chaque bloc de commentaires pour les différencier. La balise <h2> permet d’arriver directement sur les commentaires.

Par ailleurs, les seules images purement décoratives qui ont été gardées sont celles des entrées de chapitre sur lesquelles est basée la couverture des livres, soit dit en passant.

Il n’y a plus qu’une seule table des matières qui les réunit toutes. J’ai également supprimé des informations redondantes (licence par exemple) ou dépassées (PyConFR de 2019).

Le résultat final est très sûrement perfectible.

Des ? Pourquoi deux fichiers epub ?

Sur ma liseuse, les tableaux de la première dépêche sur la popularité de Python ne rendaient pas du tout et étaient illisibles. J’ai donc fait deux versions, identiques, à cela près qu’il y en a une qui a les tableaux, comme des tableaux et l’autre pour laquelle ils sont en texte, ce qui les transpose dans l’autre sens pour une meilleure lisibilité. Les classements en colonne par année et en ligne pour les langages, c’est bien quand il s’agit d’un tableau. Pour le texte, il vaut mieux avoir une ligne par année.

De cette façon, en plus c’est plus lisible pour les personnes qui ne peuvent pas lire avec leurs yeux. Et ça me paraît extrêmement important.

Où il est question de licence

Les dépêches et les commentaires d’Oliver sont sous licence CC0. Celle par défaut de LinuxFr.org est la licence CC-BY-SA 4 (Attribution ― Partage dans les mêmes conditions). Les epub sont donc sous cette dernière licence, ce qui me paraît un bon compromis.

Dans la fabrique des epub

Les logiciels utilisés

Pour arriver au résultat, j’ai utilisé l’extension pour Firefox Save as eBook dont j’avais touché deux mots ici-même en septembre 2020 et sélectionné le texte (dépêches plus commentaires) pour chaque dépêche. Ça a généré un fichier epub de base mais pas du tout communicable en l’état pour plusieurs raisons outre les éléments déjà donnés :

  • il y avait la « décoration » LinuxFr : notes, le couple pertinent-inutile, plus les « Discuter », etc. qui n’avaient plus, de mon point de vue, aucun intérêt en dehors du site ;
  • il fallait ajouter les fichiers images (qui, sinon n’apparaissent pas sur l’epub, ou nécessitent une connexion) ;
  • plus quelques fautes ici et là (je n’ai pas la prétention d’avoir tout corrigé).

Sans parler des titres des chapitres qui avaient besoin d’être homogénéisés. Et enfin, le fichier généré n’est pas terriblement bien formé apparemment. Il a fallu donc utiliser Sigil (formidable éditeur epub) pour corriger tout ça. Et, évidemment, la postface, les remerciements et la transposition des tableaux en texte ont été faits à partir de LibreOffice. La couverture, quant-à-elle a été concoctée avec Inkscape.

Travailler dans Sigil deux trois astuces

Petit rappel et au cas où : un fichier epub c’est en fait une collection de fichiers texte, ici un par chapitre, images, styles, etc. Le tout dans des dossiers bien spécifiques. Donc, quand on navigue dans Sigil pour modifier un epub, on navigue par fichier texte.

Pour tout dire, j’ai vraiment fait la connaissance de l’éditeur d’epub avec ce travail. Les éléments ci-dessous ne sont là que pour vous donner une idée de comment moi je l’ai utilisé.

Sigil a des boites détachables, comme Inkscape par exemple, je trouve ça très pratique avec deux écrans. Le principal avec le fichier à travailler, le Navigateur et la Prévisualisation dans l’autre ainsi que la boite Insérer un caractère spécial, très utile notamment pour les espaces insécables. En effet, on ne peut pas utiliser le clavier pour ça, à moins d’écrire le code html. Cela dit, avoir des connaissances de base en html est plutôt utile, ça permet de gagner du temps.

Je suggère très fortement de commencer par ouvrir l’Éditeur de métadonnées (menu Outils ou touche F8), en indiquant la langue (par défaut, chez moi c’est l’anglais apparemment), vous pourrez utiliser le module adéquat de correction orthographique (s’il y a du code, ce n’est pas forcément très utile) et en profiter pour donner un titre au document (dc:title), ainsi que d’indiquer le nom de l’auteur (dc:creator, ici j’ai mis « Collectif », c’est mieux qu’inconnu) et, éventuellement, l’éditeur (dc:publisher, ici LinuxFr.org). On peut en ajouter d’autres2. Ces métadonnées sont vraiment importantes.

On peut utiliser les fonctions de recherche et de remplacement soit par fichier, soit pour tous les fichiers.

Revoir la table des matières est également indispensable, ne serait-ce que pour lui donner son nom, chez moi c’était « Table of Contents », pour un livre en français, ça ne sonne pas terrible. Noter que, quand on la génère, on peut sélectionner les niveaux retenus.

Pour les images, il faut commencer par les ajouter dans le dossier Images via le Navigateur et ensuite on peut les insérer dans le fichier texte sur lequel on travaille. Et, c’est aussi dans le Navigateur qu’on réorganise l’ordre des chapitres et on met la table des matières où on veut (par défaut elle est en deuxième position, je l’ai déplacé tout à la fin). Curieusement, si Sigil accepte les images au format svg pour les illustrations, il les refuse pour la couverture.

Et, évidemment, le logiciel est capable de corriger un fichier epub pas très correct.

Transposer les tableaux

J’imagine qu’il est possible de faire un script pour ça, mais j’en serais bien incapable. Donc la procédure que j’ai utilisée, plus rapide à faire qu’à décrire :

  1. copie du tableau à partir de la dépêche ;
  2. collage dans Calc puis à nouveau copie de ce tableau dans Calc ;
  3. toujours dans Calc, collage transposé ;
  4. ajout des colonnes supplémentaires là où il faut, pour ici ajouter le rang du langage, les balises (ici <p>et </p> pour chaque ligne mais aussi <b> et </b> pour la mise en relief), rentrer le premier élément d’une colonne (par exemple le numéro avec les fioritures pour la lecture), sélectionner les cellules de la colonne et faire un Ctrl + D pour que tout ça se recopie vers le bas ;
  5. copier et coller sans mise en forme le tableau dans Writer pour le transformer en texte ;
  6. copier le texte obtenu et le coller dans Sigil.

La question finale

Il y en aura d’autres ?

Non !

Sur ce bonne lecture et bonne fin d’année.


  1. Il aurait peut-être été intéressant de les garder, malgré le travail supplémentaire que cela impliquait de les ajouter, si tout le monde avait eu un avatar personnalisé. Ce qui n’est pas le cas. 

  2. DC : pour métadonnées du Dublin Core qui traite de la description des ressources informatiques. 

Aller plus loin

  • # epub

    Posté par  . Évalué à 2.

    Pour arriver au résultat, j’ai utilisé l’extension pour Firefox Save as eBook dont j’avais touché deux mots ici-même en septembre 2020 et sélectionné le texte (dépêches plus commentaires) pour chaque dépêche.

    Pourquoi ne pas avoir téléchargé les versions epub des dépêches ? C'est une fonctionnalité de linuxfr. Je présume que tu n'aurais pas eu les décorations du site (je n'ai pas de lecteur epub et flemme de lire le source pour vérifier).

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

    • [^] # Re: epub

      Posté par  (site web personnel, Mastodon) . Évalué à 5.

      Parce que tu n'as pas les commentaires, seulement le texte des dépêches.

      « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

  • # la fin…

    Posté par  (site web personnel, Mastodon) . Évalué à 4.

    Petite question taquine de quelqu'un qui n'a pas encore lu le document (mais je le ferai pour voir comment les tableaux sont rendus chez moi) : il y a cette dépêche …en postface par exemple ?

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

    • [^] # Re: la fin…

      Posté par  (site web personnel, Mastodon) . Évalué à 5. Dernière modification le 26 décembre 2021 à 14:28.

      Ah ah, petit scarabée, non seulement tu ne l'as pas lu, mais même pas ouvert je dirais :-) Oui, bien sûr qu’il y a une postface, pas identique à la dépêche mais avec la plupart des éléments (les « secrets d’ateliers » n’y figurent pas, même si, il est dit avec quoi cela a été concocté).

      La postface par exemple détaille les contributeurs et contributrices par chapitre.

      « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

      • [^] # Re: la fin…

        Posté par  (site web personnel, Mastodon) . Évalué à 4.

        Là ça frise la perfection <3 Merci à tout ce beau monde au passage.

        “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • # Désolé d'être pénible ...

    Posté par  (site web personnel) . Évalué à 2.

    Bonjour,

    Désolé d'être pénible mais je n'arrive pas a lire les epubs

    Firefox Epub Reader : le fichier n'est pas un epub valide

    Calibre : pleins d'erreurs

    mais je reconnais ne pas être un pro du ePub

    un ptit conseil ? un lien => les epubs sous linux pour les nuls ?

    • [^] # Re: Désolé d'être pénible ...

      Posté par  (site web personnel, Mastodon) . Évalué à 4. Dernière modification le 27 décembre 2021 à 18:23.

      Je sais pas trop quoi te dire :-(

      Sauf que, je n’avais pas l'extension Firefox Epub Reader, que je l'ai installée et qu’elle a l’air de mettre la zone. Tu peux essayer de la désactiver et d’enregistrer les fichiers puis de les ouvrir avec ce que tu veux : Calibre, Okular, etc. ? Ça baigne pour Calibre de mon côté.

      Il est possible que je sois une truffe (seulement possible hein !) et que j'ai foiré un truc sur le dépôt git. Je ne suis pas sûre de bien comprendre comment ça fonctionne.

      Pour finir, ch’tite astuce : quand un bouquin pose problème, l’ouvrir dans Calibre et le convertir à nouveau (Convertir des livres) peut régler le problème. Calibre fait le ménage. J'ai pu ouvrir comme ça des epub qui ne passaient pas sur ma liseuse.

      Oh et retélécharge, on ne sait jamais.

      « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.