Update of bug#65077 (group groff):

                Category:                    None => Macro ms               
              Item Group:                    None => Documentation          
                  Status:                    None => Need Info              
             Assigned to:                    None => gbranden               
                 Summary: Unexpected ms macros behavior => [ms] unexpected
suppression of `sp` effect after `DE` call

    _______________________________________________________

Follow-up Comment #1:

[comment #0 original submission:]
> Command used:
> $ groff -k -ms -Tpdf doc.ms > doc.pdf
> 
> When compiling with v1.22.4:
> - Text after `.sp 4i` is 4 inches below
> 
> When compiling with v1.23.0:
> - `.sp 4i` is ignored?
> 
> doc.ms:
> 
> ```
> .CD
> Centered text
> .DE
> .sp 4i
> This should be 4 inches lower on the page
> ```

This is an expected behavior change in _groff_ 1.23.0 _ms_ per the NEWS file.


o The s (ms) macro package now enables the formatter's "no-space mode"
  after ending displays (`DE`), equations (`EN`), tables (`TE`), and
  pictures without flyback (`PE`).  This means that display distance
  spacing (the `DD` register) overrides the spacing that may follow in a
  subsequent paragraph, section heading, or display instead of
  accumulating with that distance.  This change is to make the behavior
  of the package more predictable; you can fine-tune such spacing by
  setting the `DD` register in desired places.  It has also helped us to
  improve groff ms's rendering of historical ms(7) documents such as
  Kernighan & Cherry's "Typesetting Mathematics".


https://git.savannah.gnu.org/cgit/groff.git/tree/NEWS?h=1.23.0#n426

> I used this approach for centering since it is included in the groff_ms
manual.

There's nothing wrong with centering text that way; the issue here is that
under traditional _ms_ it was unspecified whether vertical spacing arising
from `sp` requests combined with that implied by display, sectioning, or
paragraphing macros.  (Or indeed whether the spacing implied by any of these
macros combined with that of the others.)

You can either restore spacing before invoking the `sp` request, or (perhaps
temporarily) alter the value of the display distance register `DD` before
ending your display.


.rs
.sp 4i



Centered text
.nr DDold \n[DD]
.nr DD 4i
.DE
.nr DD \n[DDold]


Does this help?


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?65077>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/


Reply via email to