<\body> <\explain> <|explain> This environment variable specifies the alignment of the different lines in a paragraph. Possible values are , , and : <\big-table> <\quote-env> <\quote-env> || <\with|par-mode|left> This paragraph is aligned to the left. This paragraph is aligned to the left. This paragraph is aligned to the left. |<\cell> <\with|par-mode|center> This paragraph is has been centered. This paragraph is has been centered. This paragraph is has been centered. >| <\with|par-mode|right> This paragraph is aligned to the right. This paragraph is aligned to the right. This paragraph is aligned to the right. |<\cell> This paragraph has been justified. Justification is the default alignment mode for paragraphs. So be it. >>>> <|big-table> The supported modes for alignment. <\explain> <|explain> When using the justified alignment mode, it sometimes occurs that certain lines need to be stretched a lot, thereby leaving abnormally large spaces in the middle of those lines. This is typically the case inside bibliographies with unbreakable hyperlinks. The variable specifies a threshold above which justification of a line is abandoned. More precisely, we switch to left alignment whenever the remaining space on a line exceeds times the maximal amount of stretching which still ``looks nice'' for the given font. <\big-table> <\quote-env> || For certain paragraphs with wide unbreakable pieces of text, such as the hyperlink > it is sometimes preferrable to switch from justified to left aligned text when the spacing between words becomes to wide. |<\cell> <\with|par-flexibility|2.0> For certain paragraphs with wide unbreakable pieces of text, such as the hyperlink > it is sometimes preferrable to switch from justified to left aligned text when the spacing between words becomes to wide. >>>> <|big-table> Difference between a large and small flexibility (on the left and right hand sides respectively). <\explain> <|explain> This parameter controls the quality of the hyphenation algorithm. Possible values are and . The professional hyphenation algorithm uses a global algorithm on the entire paragraph, whereas the normal one uses a faster first-fit algorithm. <\big-table> <\with|font-base-size|10> <\quote-env> <\quote-env> || is seen best for long paragraphs which are typeset into a narrow column. The professional hyphenation usually succeeds to minimize the number of ugly gaps between words.> |<\cell> is seen best for long paragraphs which are typeset into a narrow column. The professional hyphenation usually succeeds to minimize the number of ugly gaps between words.> >>>> <|big-table> Comparison different hyphenation algorithms. At the left hand side, we have used the normal algorithm and on the right hand side the professional one. Even though there are some ugly gaps at the right hand side around ``hyphenation'', the really bad gap around ``The'' on the left hand side has been avoided. <\explain> <|explain> This environment variable controls the width of paragraphs. By default, it is automatically determined as a function of the page (or screen) size and margins. <\explain> <|explain> These environment variables specify absolute left and right margins for the paragraph, with respect to the default left and right margins (which are determined as a function of the page layout). For instance: <\tm-fragment> This text uses the default margins. <\with|par-left|1cm> This text uses a left margin of <\with|par-left|2cm> This text uses a left margin of <\with|par-left|3cm> This text uses a left margin of <\with|par-left|3cm|par-right|3cm> The left and right margins of this text have both been set to . Environments like and which maybe nested usually compute new margins as a function of the old values by adding or subtracting some space: <\tm-fragment> |||3fn>|par-right||3fn>|par-first|0fn|par-par-sep|0.25fn|>>>>>> <\explain> <|explain> The parameter specifies the additional indentation which is used for the first line of the paragraph. The aim of first indentations is to indicate the starts of new paragraphs. An alternative technique is the use of vertical whitespace. <\big-table> <\quote-env> <\quote-env> || <\with|par-par-sep|0fn> <\with|par-first|1.5fn> The and styles in indictate the starts of new paragraphs through the use of a first indentation. The and styles rather use vertical whitespace. |<\cell> <\with|par-par-sep|0.5fn> The and styles in indictate the starts of new paragraphs through the use of vertical whitespace. The and styles rather use a first indentation. >>>> <|big-table> Two classical ways to indicate the starts of new paragraphs. <\explain> <|explain> The sum of the font size and > determines the ideal distance between two successive base lines in a paragraph (also called the ``base line skip''). Of course, when the lines contain large boxes, then this distance may need to be increased. When for >, one may for instance produce documents with a double interline space: <\tm-fragment> <\with|par-sep|1fn> A double interline space corresponds to . Double interline spaces are often used by lazy people who want to pretend that they have written many pages. They generally do not care about tropical rain forests. In the case when two successive lines use different base line skips, then the maximal value is used in order to compute the ideal distance between their baselines. This allows for a reasonable spacing when the font size is changed from one paragraph to another: <\tm-fragment> <\with|par-par-sep|0fn> Normal text. And back to normal. <\explain> <|explain> This parameter corresponds an additional stretchable amount of whitespace between successive lines in a paragraph. Setting > to a small stretchable value which defaults to allows the page breaker to correctly stretch pages which contain a very long textual paragraph. Indeed, > vanishes, then the height of a textual paragraph is of the form , where and are constants and is the number of lines. There is no reason why the usable height of a page should be of this form. <\explain> <|explain> The parameter specifies the amount of vertical whitespace which separates two successive paragraphs. This space is determined in . By default, does not use any whitespace between successive paragraphs, except when no nice page breaks could be found (this explains the use of the length unit). Starts of new paragraphs are rather indicated through the use of first indentations (see table ). In the case when two successive paragraph use different paragraph separations, then the maximum of the two is taken. In fact, the length is added to both the vertical spacing before and the vertical spacing after the paragraph. <\explain> <|explain> When a paragraph contains several exceptionally large boxes, then attempts to ``shove successive lines into another'' as long as none of the boxes collide: <\with|font-base-size|10> <\tm-fragment> Consider a fraction which decends more than usual like > at the end of a line and an expression like >> which is higher than usual. When these expressions occur at different places, then tries to render the successive lines in a compact manner. In the case of a fraction > and an exceptionally high expression at the wrong place, like the expression >> here, the boxes are separated by . As soon as the horizontal distance between two large boxes is less than , then they are considered to be in collision. In that case, the vertical distance between them must be at least . Also, the amount of showing never exceeds . When using an interline space of or , the default value of allows the user to type larger formulas in the text while preserving a uniform layout. When using a small and a large >, the distance between two successive lines remains small, except when their contents are horizontally close. This may for instance be used to reduce the space between a short like followed by a centered equation. <\explain> <|explain> This parameter controls the amount of vertical space between successive footnotes. <\explain> <|explain> This environment variable specifies the number of columns into which the text is being typeset. Different numbers of columns may be used successively in the same document. <\explain> <|explain> This environment variable specifies the amount of horizontal whitespace which separates different columns in multi-column mode.