9-Pin
9-Pin

Reputation: 436

groff: Incorrect line width after page break

I'm using groff version 1.22.4 to create a two-page letter. The first page has three columns, the second page has 2 columns.

The macros for printing columns 1-3 on the first page work as expected. The macro for starting the second page always gives a first line that is the width of the column on the previous page. enter image description here.

How can I get the first line on the second page to have the correct width?

Below is the groff:

.ll 2.25i \" Line length of a column 2.25 inches. Good for three columns.
.vs 15p \" 11 points between lines of text in the same paragraph
.ps 12 \" 12 point font size
.nr bottom-margin 0.75i \" Bottom margin
.de START-COLUMN-0
.  mk \" Mark top of column
.  wh -\\n[bottom-margin]u START-COLUMN-1 \" At bottom of 1st column, run next macro.
..
.de START-COLUMN-1
.  po +2.55in \" Add offset for second column.
.  rt \" Return to top of column.
.  wh -\\n[bottom-margin]u START-COLUMN-2 \" At bottom of 2nd column, run next macro.
..
.de START-COLUMN-2
.  po +2.55in \" Add offset for second column.
.  rt \" Return to top of column.
.  wh -\\n[bottom-margin]u START-PAGE-2 \" At bottom of 2nd column, run next macro.
..
.de START-PAGE-2 \"Page break.
'll 3.55i \" Line length of a column 3.55 inches. Good for two columns.
'bp \" Break page.
'po 0.5in \" left margin 
'mk \" Mark top of column
'wh -\\n[bottom-margin]u END-PAGE-2 \" At bottom of 1st column, run next macro.
..
.de END-PAGE-2
.  po +3.85in \" Add offset for second column.
.  rt \" Return to top of column.
.  wh -\\n[bottom-margin]u \" Terminate at second column on second page.
..
.START-COLUMN-0
Lots of text here.

Upvotes: 3

Views: 451

Answers (1)

Ljm Dullaart
Ljm Dullaart

Reputation: 4989

Posted as an answer, because I need a picture in it and the size of the comment is too large.

Are you sure? The result is completely different from what you describe. The second page is two columns, instead of the 1 column in your description.

When I run your code (GNU groff version 1.22.4), I get:

enter image description here

or as nroff:

     laoreet  arcu eros vi‐   faucibus, lacus lectus   cus.   Quisque  mattis
     tae lorem. Morbi  con‐   ullamcorper     massa,   euismod  tortor,   sit
     vallis   massa  lacus,   quis fermentum leo me‐   amet  hendrerit  lacus
     vel    mollis    velit   tus sed ipsum.  Maece‐   tristique  a.   Aenean
     vulputate         nec.   nas  sagittis pharetra   fermentum  sapien  pu‐
                                                       rus,



     vel interdum tellus tincidunt nec. Ut euismod massa risus.

     Aenean rutrum, sem sed sodales mattis, magna felis  ullamcorper  dolor,  ac
     convallis  nulla diam vel erat. Donec in turpis velit. Nunc elit arcu, cur‐
     sus et condimentum in, efficitur et nisi. Vivamus suscipit  porttitor  nunc
     consectetur  malesuada.  Vivamus  sodales  non lacus quis porttitor. Aenean
     viverra nulla ut lacus dignissim bibendum. Nulla gravida sem quis ex cursus

I also get a single column on the second page, and not two columns as you have in the output.

Upvotes: 0

Related Questions