Soit l'extrait de préambule suivant :

Ouvrir dans l'éditeur Overleaf
\documentclass[12pt,french]{scrreprt}

\usepackage[T1]{fontenc}
\usepackage{kpfonts}
\usepackage[utf8]{inputenc}
\usepackage[scale]{tgheros}
\usepackage{babel}
\frenchbsetup{StandardLists=true}
\usepackage[hyphenation,parindent,lastparline]{impnattypo} 
\usepackage[all]{nowidow}
\selectlanguage{french}
\exhyphenpenalty=10000
\usepackage[babel=true]{csquotes}
\usepackage{graphicx}
\usepackage[normalem]{ulem}
\usepackage[colorlinks=true,linkcolor=blue]{hyperref}
\begin{document}

\subsection{Blabla}

Blabla

\frquote{Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla.}

\subsection{Blabla}

\frquote{Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla

Blabla.}
\vspace{0.5cm}

Blabla.
\end{document}

Je crée une succession de paragraphes assez nombreux, encadrés par \frquote{}. Parfait : chaque paragraphe s'ouvre sur un guillemet. J'insère une sous-section, une phrase, et une nouvelle succession de paragraphes (tout aussi longue que la première) identiquement encadrée comme la première. Et là, seuls les deux premiers bénéficient du guillemet ouvrant. La documentation de Daniel Flipo sur babel-french, pourtant très précise, ne prévoit pas ce cas de figure (que j'ai déjà eu à subir). Qu'est-ce ? Remarque. L'ECM comporte autant de « Blabla » que de paragraphes.

Posée 06 Jul, 14:43

fred02840's gravatar image

fred02840
1.4k758
Taux d'acceptation : 9%

Modifiée 07 Jul, 00:08

Bernard's gravatar image

Bernard
2.9k15

Un exemple complet (et néanmoins minimal) illustrant le problème serait bienvenu…

(06 Jul, 15:46) Bernard Bernard's gravatar image

Euh... oui. Désolé d'avoir négligé ce point. Je complète ma question en conséquence

(06 Jul, 16:50) fred02840 fred02840's gravatar image

Ça ressemble à un bogue.

(06 Jul, 18:45) touhami touhami's gravatar image

La réponse de @bernard semble le montrer, en effet. Je viens de le porter à la connaissance de Daniel Flipo

(06 Jul, 19:24) fred02840 fred02840's gravatar image

Il semble qu'il y ait un problème s'il n'y a rien entre la section et \frquote, ce qui explique (enfin, pas vraiment…) la différence entre la première section et la seconde. J'ignore si c'est une bogue.

Une façon de régler le problème, pas très glorieuse, consiste à ajouter auparavant un paragraphe vide, et à annuler l'espacement vertical ainsi créé (avec une suggestion de touhami pour prévenir un changement de page):

Ouvrir dans l'éditeur Overleaf
   \documentclass[12pt,french]{scrreprt}

    \usepackage[T1]{fontenc}
    \usepackage{kpfonts}
    \usepackage[utf8]{inputenc}
    \usepackage[scale]{tgheros}
    \usepackage{babel}
    \frenchbsetup{StandardLists=true}
    \usepackage[hyphenation,parindent,lastparline]{impnattypo} 
    \usepackage[all]{nowidow}
    \selectlanguage{french}
    \exhyphenpenalty=10000
    \usepackage[babel=true]{csquotes}
    \usepackage{graphicx}
    \usepackage[normalem]{ulem}
    \usepackage[colorlinks=true,linkcolor=blue]{hyperref}
    \begin{document}

    \subsection{Blabla}

    Blabla

    \frquote{Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla}.

    \subsection{Blabla}

    \leavevmode\par\nobreak\vspace{-\baselineskip}

    \frquote{Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla

    Blabla}.
    \vspace{0.5cm}

    Blabla.
    \end{document}

alt text

Lien permanent

Publiée 06 Jul, 18:51

Bernard's gravatar image

Bernard
2.9k15
Taux d'acceptation : 35%

Modifiée 07 Jul, 00:03

Et ça marche... Une défaillance de babel-french, probablement...

(06 Jul, 19:24) fred02840 fred02840's gravatar image

If faut dire que \frquote semble être assez récent. Par parenthèse, il ya quelques années, j'avais demandé si quelqu'un connaissait un code pour que chaque ligne (et non chaque début de paragraphe) commençât par un guillemet ouvrant, dans le but de reproduire une typographie du début du 19e – et quelqu'un m'avait fourni un code clefs en main !

(06 Jul, 21:27) Bernard Bernard's gravatar image

@Bernard le code ici ne correspond pas à l'image montrée (c'est l'ECM de la question).

N'oubliez pas que l'ajout d'espace verticale peut encourager un saut de page.

(06 Jul, 21:58) touhami touhami's gravatar image

@touhami: évidemment, j'ai omis de vérifier le contenu de mon presse-papiers… Cela dit, j'joute un espacement vertical négatif, et puis j'espère que la bogue sera corrigée dans un délai pas trop long. J'ai bien essayé de patcher `frquote pour que ce soit transparent pour l'utilisateur, mais ça ne marchait pas, ou plus probablement, il y a des choses que je ne maîtrise pas.

(06 Jul, 22:12) Bernard Bernard's gravatar image

@Bernard j'aurai préféré \leavevmode\par\nobreak\vspace{-\baselineskip}.

(06 Jul, 22:32) touhami touhami's gravatar image

@touhami: C'est fait (avec crédits, bien sûr)!

(07 Jul, 00:04) Bernard Bernard's gravatar image
Affichage de 5 parmi 6 Afficher 1 commentaire(s) en plus

Une mise à jour de babel-french (3.5b) corrigeant ce bug vient d'être envoyée sur CTAN, elle devrait être accessible d'ici un jour ou deux.

Merci à Frédéric Stévenot de m'avoir signalé le problème.

Lien permanent

Publiée 18 Jul, 18:28

dflipo's gravatar image

dflipo
212
Taux d'acceptation : 0%

@dflipo Si ma curiosité a pu (très modestement) contribuer à améliorer babel-french, j'en suis extrêmement ravi.

(04 Aoû, 20:42) fred02840 fred02840's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.

Mots-clés de la question :

×2
×1
×1

Question posée : 06 Jul, 14:43

Question vue : 397 fois

Dernière mise à jour : 04 Aoû, 20:42