Journal LaTeX sans douleur

Posté par  (site web personnel) . Licence CC By‑SA.
30
10
jan.
2014

Le dernier journal que j’ai pu trouver parlant de LyX remonte à mai 2011. Je pratique LaTeX depuis assez longtemps et j’ai tâté aussi de PSTricks. Mais tout ceci restant très occasionnel. Je ne compte pas faire ici une n-ième apologie de ce clickodrome mais apporter mon témoignage d’utilisateur occasionnel.

Dernièrement, j’ai dû convertir les manuscrits d’une copine saisis sous MS-Word vers LaTeX. Là, il ne s’agissait que de produire un PDF ayant une apparence proche de ce que sortirait plus tard l’éditeur. Une sorte de prototype de livre. Il n’y avait donc point besoin de finasser avec la composition typographique. Aussi, après une conversion Word → RTF, je les ai importé sans trop de douleurs dans LyX. (En fait, les douleurs viennent des caractères avec ligatures. Des fois, je me dis que je devrais relire la page de man d’iconv…)

Par rapport à jadis, LyX tient la charge sur les documents longs : les 300 pages d’un roman passent sans problème. Le couplage avec TeX Live marche bien. Et l’on a vraiment un très grand choix de formats d’exportation, outre le DVI, avec tous les filtres PDF disponibles sur ma machine (LuaTeX, XeTeX, dvipdfm, pdflatex, ps2pdf..). Le module Hyperref est paramétrable directement depuis l’interface graphique pour générer des PDF avec les options comme « charger en plein écran », « signets ouverts» ou les différentes options sur les hyperliens. Donc, le grand confort.

J’avais pris l’habitude de dégrossir mes documents sous LyX puis d’y inclure les macros qui vont bien pour obtenir ce que je désirais ; voire, d'exporter mon travail sous LaTeX et le finir manuellement. Mais, voulant faire un petit tutoriel (10 pages seulement, avec un zeste d’humour) pour remédier à la consternante ponctuation de la susdite copine romancière, je me suis mis au défi de faire tout de A à Z sur LyX en n’utilisant que les options disponibles par l’interface graphique (donc, sans inclusion de macro LaTeX) y compris la génération du PDF. Et ceci sans me priver de ce que j'aurai pu faire en codant à la main. Juste pour voir si ça pouvait le faire…

Le résultat est là :

Ponctuation 2.0 (pdf)
Ponctuation 2.0 (source)

  • # Documents complexes

    Posté par  . Évalué à 3.

    J'ai rédigé ma thèse avec LyX, donc du multi documents, des images, des tableaux, des références croisées et une bibliographie et ça roule sans trop de problèmes. Le plus gros soucis était les figures avec plusieurs images qu'il fallait traiter avec du code LaTeX pour que le document compile.

  • # pour les fautes c'est ici

    Posté par  . Évalué à 2.

    Merci de partager ce texte ! À la première page pour le moment, j'adore l'intro, et ai déjà relevé certaines coquilles. Je propose de mettre toutes les coquilles en sous-sujets de celui-ci.

  • # Pourquoi cette protrusion ?

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

    Un petit hic sur le PDF : les traits de césures sont en partie rejetés dans la marge. C’est un effet qui peut être obtenu volontairement, avec PdfTeX, et depuis peu avec XeTeX, pour obtenir un meilleur alignement à droite. Mais là, on dirait que c’est venu tout seul, sans aucune intervention de ta part. Vu qu’au lieu d’un rejet entier, il n’est que partiel, ce qui aggrave l’impression d’irrégularité au lieu de l’atténuer.
    Personnellement, j’ai testé cette fonction (avec Plain, pas LaTeX), j’ai laissé tomber. Les réglages sont trop difficiles à contrôler à l’œil nu, et il faut les refaire chaque fois qu’on change de police. Mais c’est un peu bizarre que, si j’en juge par ton document, elle semble activée d’office. Peut-être un problème de configuration de LyX ?
    À moins évidemment que ce ne soit le fait de ta volonté…

    • [^] # Re: Pourquoi cette protrusion ?

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

      Ça ne m'avait pas sauté aux yeux ! Je viens de compiler manuellement le code avec pdflatex et je n'ai pas de message "Underfull \hbox" (enfin, pas à ces endroits…). Par contre, si l'on regarde en haut de la seconde colonne de la première page, la première ligne est en italique et déborde légèrement par rapport au restant du texte en romain ; mais pas plus, ni moins que la césure à la ligne en-dessous !

      Donc, à la vue d'autres débordements tant des césures que des caractères en italique, je suis enclin à penser que le comportement est normal. Peut-être est-ce dû à la délimitation de la boite du caractère en romain qui forcément doit déborder un peu à droite ? Mais aussi, je crois avoir lu (il y a longtemps !) dans un ouvrage théorique que les caractères en italique pouvaient légalement déborder de leur boite. S'il y a barbu en TeX qui lit ceci, qu'il nous éclaire !

      • [^] # Re: Pourquoi cette protrusion ?

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

        Trouvé ! Voir mon commentaire : Package "eco" (Old­style nu­mer­als us­ing EC fonts).

      • [^] # Re: Pourquoi cette protrusion ?

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

        Ce n’est pas exactement le sujet mais ça reste dans une orbite pas trop éloignée, alors… Il existe pour repérer les dépassements dans la marge une méthode que — très subjectivement j’en conviens — je trouve plus rapide, sûre et confortable que d’éplucher le journal de compilation : les faire signaler par un trait noir dans le PDF de sortie. Il suffit pour ça de rajouter dans le préambule :
        \overfullrule=1cm
        Indifféremment avec Plain, LaTeX ou ConTeXt. Et contrairement au mode “draft” de LaTeX, ce n’est incompatible avec aucun module.
        Avec Plain ou LaTeX, la compilation est généralement très rapide, et Evince ou Okular rafraîchissent immédiatement le PDF. Du coup, cette méthode me fait gagner beaucoup de temps. Je corrige au fur et à mesure que je vérifie la mise en pages.
        Dans le cas d’espèce de dépassements systématiques dus à un module, ça ne t’aurait sans doute pas aidé. Mais dans un roman de 300 pages, des dépassements, il devait y en avoir !

        • [^] # Re: Pourquoi cette protrusion ?

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

          Dites-moi, ce genre de dépassement n'est-il pas annoncé dans le terminal durant la compilation?

          En passant, à ma connaissance, il n'y a aucune autre méthode que l'œil nu pour adapter le dépassement des caractères, et il faut effectivement le faire pour chaque police. Les créateurs de polices ont l'habitude de gérer ce genre de problèmes, en proposant d'ores et déjà des règles de crénages, mais (toujours à ma connaissance) aucun format de police ne leur donne la possibilité de coder en dur les règles de dépassement. Du reste, lorsque l'on utilise plusieurs polices dans un même paragraphe (ne serait-ce que de l'italique et du romain), il faudrait normalement aussi adapter les règles de crénages inter-polices, qui ne peuvent évidemment pas être codée dans la police.

          M'enfin, rares sont ceux qui ont l'œil suffisamment exercé pour voir ces détails.

          • [^] # Re: Pourquoi cette protrusion ?

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

            Non, il n'y a aucun message d'erreur dans le terminal (ni "overerfull \hbox"). J'ai pu reproduire le problème de débordement de césure et des caractères en italique dès que le package "eco" est appelé (voir mon commentaire Package "eco", Oldstyle numerals using EC fonts) . Par contre, je n'ai pas essayé sur la base d'un texte en anglais.

          • [^] # Re: Pourquoi cette protrusion ?

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

            Il y a trois questions différentes. Quand on souhaite rejeter dans la marge les tirets et signes de ponctuation, pas d’autre méthode à ma connaissance également que le réglage à l’œil nu.

            Mais si on n’est pas intéressé par cette “protrusion”, c’est le programme lui-même qui s’occupe de gérer les bordures. Sauf que TeX a dans ce domaine une philosophie bien à lui : il préfère un dépassement dans la marge à des espaces trop restreintes.

            Quand il en arrive à cette extrémité, il le signale par des “overfull hbox” dans le journal de compilation. Et par un trait noir dans le DVI ou PDF de sortie si la valeur d’overfullrule est supérieure à zéro.

            C’est alors à l’utilisateur de venir à bout du problème, soit localement par une césure forcée ou une suggestion de césure, soit globalement en allégeant l’intransigeance de TeX via les pénalités, soit en recourant à la microtypographie, soit en combinant deux de ces solutions ou les trois.

            Mais la règle générale reste quand même qu’on peut s’en remettre au programme pour ce type de calcul. TeX est très particulier, avec les inconvénients de ses avantages.

            Si on veut aller plus loin, et adapter le crénage au travail en cours, effectivement ça devient un travail de spécialiste. Et une philosophie. Jusqu’où peut-on être typographe, en plus de rédacteur ?

            Quand on est pris par le texte, on est aveugle aux imperfections minimes. D’autres sautent aux yeux, et plus encore celles qui rendent la lecture réellement inconfortable. Le système de pénalité de TeX me semble bien résumer la typographie : un art du compromis.

            Ici, un module LaTeX venant perturber la justification et les mécanismes d’alerte de TeX, c’est un troisième aspect qui relève du bogue. Plus délicat à résoudre.

            • [^] # Re: Pourquoi cette protrusion ?

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

              J'ai l'impression que deux choses sont mélangées dans le problème ici en question: les caractères hors marge, et les mécanismes d'alignement de Tex.

              Je ne crois pas que l'algorithme de Tex utilise le débordement de caractère pour corriger l'espace inter-mot, je crois que le débordement de caractère n'est utilisé qu'a posteriori: lorsque la ligne est créée, si le dernier caractère est un tiret, celui-ci est légèrement décalé pour paraître aligné. C'est du moins ainsi que fonctionne Troff, et je crois qu'il en est de même pour Tex.

              C'est probablement pour cela qu'il n'y a pas de message d'alerte: le mécanisme de création de ligne n'est pas en jeu ici.

              Si on veut aller plus loin, et adapter le crénage au travail en cours, effectivement ça devient un travail de spécialiste.

              Pour bien faire, il faudrait probablement des macros strictes, dédiées à un jeu de polices et à une mise en page spécifique, et gérant tous ces détails.

              • [^] # Re: Pourquoi cette protrusion ?

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

                Non, quand il y a dépassement dans la marge avec TeX, ce n’est pas qu’un petit bout de tiret. D’ailleurs, c’est rarement un tiret. Ça peut aller jusqu’à une, voire deux syllabes entières, voire plus. Pour ne pas étirer ou comprimer exagérément des espaces inter-mots. Il est difficile de comparer avec Troff, dont le fonctionnement est très différent. Il y a bien la version Heirloom Troff, que tu connais bien et qui reprend les algorithmes de TeX. Mais Gunnars Ritter a expliqué qu’il avait modifié l’algorithme de Knuth-Plass entre autres parce que ces débordements ne lui semblaient pas utiles. Ou du moins, c’est ce que j’ai cru comprendre. J’ai pu mal comprendre, vu que je n’ai pas appris l’Anglais à l’école. Quant aux tirets, dans l’affaire qui nous occupe, ce n’est pas le comportement habituel de TeX. C’est une embrouille.

                • [^] # Re: Pourquoi cette protrusion ?

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

                  Après avoir relu nos différents posts, il m'apparaît que nous sommes d'accord en fait. Je n'ai pas été très clair, j'en conviens.

                  Gunnars Ritter a expliqué qu’il avait modifié l’algorithme de Knuth-Plass entre autres parce que ces débordements ne lui semblaient pas utiles. Ou du moins, c’est ce que j’ai cru comprendre.

                  Tu as très bien compris, Heirloom Troff préfère rétrécir les espaces que rejeter une partie du texte hors marge (ce qui est dommage à mon avis…).

  • # les cris

    Posté par  . Évalué à 3.

    Vous, les humains, surchargez mes circuits avec
    vos écris ponctués de façon aléatoire ! Comment

    les « écris », c'est un mélange de cris et d'écrits ? ;)

    Je suis en train de lire cet opuscule : c'est intéressant, même si je n'utilise pas forcément toujours la ponctuation de la même manière.

    Par exemple, et ici ce n'est pas une phrase donnée en exemple, les deux points me semblent ici amené bizarrement :

    En faisant défiler les pages d’un roman : vous
    verrez tantôt des dialogues, tantôt du texte
    normal disposé en paragraphes.

    Si votre texte est destiné à un journal : une page
    affichera plusieurs colonnes et chaque ligne d’une
    colonne sera plus courte que celle d’un livre. Une

    J'aurais pour ma part plutôt utilisé une virgule à la place, mais c'est histoire de pinailler.

    « I approve of any development that makes it more difficult for governments and criminals to monopolize the use of force. » Eric Raymond

    • [^] # le texte est _self-consistent_

      Posté par  . Évalué à 1. Dernière modification le 11 janvier 2014 à 14:05.

      « Faites comme moi : montrez de temps
      en temps quelques faiblesses, laissez vous aller à
      quelques imperfections, quelques incohérences inno-
      centes… »

      C'est rudement bien fichu – pour sûr.

    • [^] # Re: les cris

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

      les « écris », c'est un mélange de cris et d'écrits ? ;)

      Merci d'avoir relevé la faute ! Je viens de mettre en ligne une nouvelle version.

      Pour les deux points qui auraient pu être remplacés par une virgule, après réflexion (mais rien n'est figé !) :

      Pour :

      En faisant défiler les pages d’un roman : vous
      verrez tantôt des dialogues, tantôt du texte
      normal disposé en paragraphes.

      Je me souviens avoir peiné à cet endroit et avoir hésité entre la virgule et le deux-points. Après nouvelle réflexion je vois une autre possibilité : ni virgule, ni deux-points ! Donc, la version modifiée en ce sens est maintenant en ligne. Si ça choque, merci de me le dire.

      Pour :

      Si votre texte est destiné à un journal : une page
      affichera plusieurs colonnes et chaque ligne d’une
      colonne sera plus courte que celle d’un livre. Une

      Oui, je suis d'accord, il faut une virgule à la place du deux-points ! Correction faite dans la nouvelle version en ligne.

      • [^] # Re: les cris

        Posté par  . Évalué à 3.

        Oui, je suis d'accord, il faut une virgule à la place du deux-points

        En fait je ne voulais pas donner l'impression qu'il « fallait », mais qu'il était peut-être plus courant d'utiliser une virgule dans ce contexte. Après, il y a aussi la sensibilité de l'auteur (ou du Hall-mkII) à prendre en compte, et il a quand même pas mal de latitude à cet égard :)

        Par ailleurs je crois que Hall-mkII n'a pas pris en compte le « smiley » en tant que ponctuation, peut-être que la période qui l'a utilisé n'a pas eu une grande production littéraire en proportion du reste :)

        « I approve of any development that makes it more difficult for governments and criminals to monopolize the use of force. » Eric Raymond

  • # Latex sans douleur

    Posté par  . Évalué à 5.

    Moi pour du latex sans douleur, j'utilise du lubrifiant Manix.

  • # position de la lettrine

    Posté par  . Évalué à 1.

    Bonjour,

    joli PDF :)

    J'ai une remarque esthétique: la position de la lettrine qui me semble "décalée" du bord gauche.
    Mais c'est peut-être l'effet voulu.

    En tous les cas, beau travail.

    • [^] # Re: position de la lettrine

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

      Exact ! J'ai vérifié avec Adobe Reader 9 et Okular. Et avec le fichier DVI, c'est pareil. Le décalage est infime (mais réel) pour le texte qui est plus bas que la lettrine mais il semble que la lettrine soit exactement alignée sur la marge du titre de section qui est au-dessus d'elle. J'ai essayé plusieurs choses avec LyX, comme le passage à la colonne unique ou le changement de classe de document ; mais en vain.

      Il faudrait que je lise la doc sur ce package pour voir si c'est normal ou pas. Et si quelqu'un est savant en la matière…

  • # Package "eco" (Old­style nu­mer­als us­ing EC fonts)

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

    Ceci fait suite à la très pertinente remarque de "eqfm" dans "Pourquoi cette protrusion ?" qui avait remarqué un décalage à l'extérieur de la marge droite des césures. En fait, il y avait aussi les caractères en italiques…

    À partir d'un source LaTeX généré depuis LyX, j'ai désactivé un par un chaque package du préambule. Enfin, en désactivant le package "eco", le problème a disparu ! Ce package met les chiffres en minuscule. Il est activé dans le menu LyX à : Document -> Paramètres -> Utiliser les chiffres à l'ancienne.

    Ce problème est un peu fâcheux pour moi car ce choix de chiffre "à l'ancienne" avait un attrait esthétique. De plus, certains titres de section deviennent trop longs avec les chiffres en majuscule et provoque un débordement du tutoriel au-delà des 10 pages.

    Je vais donc réfléchir au problème. À suivre !

  • # Usage du subjonctif dans le texte

    Posté par  . Évalué à 9.

    "Comment voulez-vous que je corrigeasse vos fautes d'orthographe, alors qu'elles dépendent tant de la grammaire ?"
    Je me doute bien que l'usage, ici, du subjonctif imparfait est volontaire et ajoute un effet humoristique, mais tant qu'à expliquer les bons usages, autant respecter la grammaire : L'imparfait du subjonctif s'utilise avec l'imparfait de l'indicatif et non le présent.
    Il eut fallu que vous dissiez : Comment vouliez-vous que je corrigeasse vos fautes ou Comment voulez vous que je corrige vos fautes…
    Bon ben, ça y est j'ai fait le cuistre…

Suivre le flux des commentaires

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