Question

Je crée des documents en utilisant la classe memoir dans XeLaTeX. Je vais avoir du mal à créer une présentation correcte des paragraphes, et en particulier mon quand je créer des paragraphes avec \paragraph{}lorem ipsum LATEX ne tient pas compte des paramètres de \parskip et \parindent.

Par exemple, si j'ai un document

\documentclass[oneside,11pt]{memoir}
\usepackage{fontspec}% font selecting commands 
\usepackage{xunicode}% unicode character macros 
\usepackage{xltxtra} % some fixes/extras 

\begin{document}
\setlength{\parskip}{0pt} % 1ex plus 0.5ex minus 0.2ex}
\setlength{\parindent}{0pt}
\pagestyle{plain}

\paragraph{}orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.
\paragraph{}ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna,
mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea dictumst.
\end{document}

typesets comme ceci:

  

Orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim   Urna, Mattis eu aliquet eget, condimentum id nibh. Dans hac habitasse Platée   dictumst.

     

ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim Urna,   Mattis eu aliquet eget, id condimentum nibh. Dans hac habitasse Platée dictumst.

a mal à la fois le retrait des paragraphes et sauter, en dépit d'être mis à zéro \parskip et \parindent.

On pourrait attendre la sortie de typeset à ressembler à ceci (ce qui est un choix laid du paragraphe mise en forme, mais illustre la question):

  

Orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim   Urna, Mattis eu aliquet eget, condimentum id nibh. Dans hac habitasse Platée   dictumst.
  sit amet ipsum dolor, consectetur adipiscing elit. Aliquam enim Urna,   Mattis eu aliquet eget, id condimentum nibh. Dans hac habitasse Platée dictumst.

Je note que lorsque je sépare les paragraphes par deux nouvelles lignes (à savoir ne pas utiliser \paragraph{} et) les paramètres de \parskip et \parindent sont honorés.

Je serais très reconnaissant de savoir pourquoi, lors de l'utilisation \paragraph{}, les commandes de \parskip et \parindent ne sont pas honorés, et comment on peut soit avoir ces commandes honorées ou encore ce que les commandes atteindraient le même effet aux paragraphes créés avec \paragraph{}.

Merci pour la lecture.

Brian

Était-ce utile?

La solution

@ Brian - je commencé à mettre cela dans un commentaire après votre commentaire à la réponse de Norman Gray, mais l'exemple de code fait trop grand. \ Paragraph {} ne change pas la composition de réguliers paragraphes. Il est juste que, contre-intuitive, le paragraphe commencé par la commande \ paragraph {} est pas un paragraphe normal; il est un élément de section dans le document. Jouez avec le code ci-dessous pour voir comment le \ parskip et \ parindent affecte les paragraphes réguliers, mais pas l'élément de section « \ paragraphe ». (En fait, \ parskip affecte même les éléments \ paragraph {} éléments, mais l'espacement avant un élément \ paragraph {} est calculé pour toujours un peu plus de \ parskip, ce qui est pourquoi il y a toujours un espace entre \ paragraph {} même si \ parskip est égal à 0).

Je pense que 99% des documents LaTeX probablement jamais utiliser la commande section \ paragraphe {}. paragraphes réguliers en latex sont séparés par (1) par la commande \ par ( "réguliers" des paragraphes 3 et 4 ci-dessous) une ligne vide ( "points réguliers" 1 et 2 ci-dessous) ou (2).

\documentclass[oneside,11pt]{memoir}
\usepackage{fontspec}% font selecting commands 
%\usepackage{xunicode}% unicode character macros 
%\usepackage{xltxtra} % some fixes/extras 

\begin{document}
\setlength{\parskip}{0pt} % 1ex plus 0.5ex minus 0.2ex}
\setlength{\parindent}{0pt}
\pagestyle{plain}

\paragraph{paragraph section 2}adorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

regular paragraph 1 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

regular paragraph 2 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim
urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

\paragraph{paragraph section 2}ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna,
mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea dictumst.
\par regular paragraph 3 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.
\par regular paragraph 4 -- orem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam enim urna, mattis eu aliquet eget, condimentum id nibh. In hac habitasse platea
dictumst.

\end{document}

Autres conseils

Cela ressemble à un comportement correct. Que pensez-vous \paragraph devrait faire? Astuce:. Ce n'est pas pour séparer les paragraphes

D'après les documents de mémoire, \paragraph est l'une des commandes de sectionnement, après \subsubsection et avant \subparagraph. L'argument de la commande, que vous faites vide dans votre exemple, pour le titre du paragraphe.

Vous séparer les paragraphes de l'autre à l'aide d'une ligne vide (ce qui est le cas, vous avez trouvé où les dimensions de \parskip et \parindent sont honorés), ou dans certains cas, un peu plus exotiques en utilisant \par.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top