@Section @Title { Paragraph breaking } @Tag { paras } @Begin @PP @I { Paragraph breaking } is the process of taking a paragraph and paragraph.breaking @Index { paragraph breaking } inserting line breaks at the places appropriate to the column width. Lout works out suitable column widths and performs paragraph breaking automatically, finding an `optimal' break with the method used by the @TeX tex.paragraph @SubIndex { paragraph breaking } system. It offers eight styles of paragraph breaking, which we will explore with the aid of this example paragraph: @ID @OneRow @Code { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. } Changing the paragraph breaking style is similar to changing the font, colour, or language, and is done using the @Code "@Break" symbol: break. @Index @Code "@Break" @ID @Code "ragged @Break ..." This example causes every paragraph in the following object to be broken using the @Code ragged style, of which more below. @PP The first two of the eight styles perform @I { line adjustment }, which line.adjustment @Index { line adjustment } means that they enlarge the spaces between the objects making up each line so as to fill the lines completely: @IndentedList @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "adjust @Break ..." } B { adjust @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "outdent @Break ..." } B { outdent @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @EndList The @Code adjust style is frequently used, so it has been chosen as the default style. Outdenting adds a small space at the start of each line outdent. @Index { outdented paragraphs } except the first, and is much less common. @PP The next three styles do not adjust lines, leaving the paragraph ragged. @Index { @Code ragged paragraph breaking style } cragged. @Index { @Code cragged paragraph breaking style } rragged. @Index { @Code rragged paragraph breaking style } {@I ragged}: @IndentedList @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "ragged @Break ..." } B { ragged @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "cragged @Break ..." } B { cragged @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "rragged @Break ..." } B { rragged @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @EndList The paragraph is broken in the same places as @Code adjust breaks it, but the resulting lines are left-justified, centred, or right-justified with respect to each other, rather than adjusted. @PP If you have a few words that must be kept together on one line, the preventing. @Index { preventing line breaks } keeping. @Index { keeping things on one line } recommended way is to separate them by an @Code "~" symbol: @ID @Code "According to Prof.~Jones, the effect of ..." It's best not to bother about this until you actually get a bad line break, since chances are good that the words will fall on one line anyway. @PP The last three styles differ from the first five in breaking the paragraph at the points where it is broken in the original input: lines. @Index { @Code lines paragraph breaking style } clines. @Index { @Code clines paragraph breaking style } rlines. @Index { @Code rlines paragraph breaking style } @IndentedList @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "lines @Break ..." } B { lines @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "clines @Break ..." } B { clines @Break { It @PageMark clines is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @LI @Tab @Fmta { @Col 6c @Wide @Code A ! @Col 7c @Wide B } { @Rowa A { "rlines @Break ..." } B { rlines @Break { It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. }} } @EndList The lines are left-justified, centred, or right-justified with respect to each other in the same way as for the ragged styles. @PP When using the @Code lines style, there are some fine points concerning the proper use of white space. Consider this example: @ID @OneRow @Code { "@IndentedDisplay lines @Break @I {" "Teach me to hear Mermaides singing," "Or to keep off envies stinging," " And finde" " What winde" "Serves to'advance an honest minde." "}" } The result is the indented display @IndentedDisplay lines @Break @I { Teach me to hear Mermaides singing, Or to keep off envies stinging, And finde What winde Serves to'advance an honest minde. } This style is the only one for which it is useful to indent individual lines in the input; as the result shows, such indents will be respected, as will blank lines. However, Lout's rule that only white space separating objects affects the result (Section {@NumberOf spaces}) still holds, which means that indenting the first line is not effective: @ID @OneRow @Code { "@IndentedDisplay lines @Break @I {" " And finde" " What winde" "Serves to'advance an honest minde." "}" } produces @IndentedDisplay lines @Break @I { And finde What winde Serves to'advance an honest minde. } This may seem awkward at first, but actually it is extremely convenient because you don't have to worry about whether the first line of the paragraph should appear on a new line as above, or immediately after the opening brace: space at that point does not separate two objects, so it has no effect on the result. The indent can be obtained by starting the first line with an empty object (Section {@NumberOf empty}): @ID @OneRow @Code { "@IndentedDisplay lines @Break @I {" "{} And finde" " What winde" "Serves to'advance an honest minde." "}" } The result is @IndentedDisplay lines @Break @I { {} And finde What winde Serves to'advance an honest minde. } as desired. @PP To set the entire document in a paragraph breaking style other than {@Code "adjust"}, you need to change the @Code "@InitialBreak" option, as explained at the end of Section {@NumberOf linespace}. @End @Section