Update of bug #67380 (group groff):

                  Status:                    None => Need Info
             Assigned to:                gbranden => barx

    _______________________________________________________

Follow-up Comment #6:

[comment #4 comment #4:]
> This suggests that the implicit break that ".fl" produces, not the action of
> the "fl" request itself, causes the flushing.

I think you're right, and interactive use of _groff_ seems to confirm it.
Close reading is necessary because input and output are interleaved.


$ ./build/test-groff -Z
.sp 1i
x T ps
x res 72000 1 1
x init
p1
foo
.pline
[{"type": "line_start_node", "diversion level": 0, "is_special_node": false},
{"type": "glyph_node", "diversion level": 0, "is_special_node": false,
"character": "f"},
{"type": "glyph_node", "diversion level": 0, "is_special_node": false,
"character": "o"},
{"type": "glyph_node", "diversion level": 0, "is_special_node": false,
"character": "o"},
{"type": "word_space_node", "diversion level": 0, "is_special_node": false,
"hunits": 2500, "undiscardable": false, "is hyphenless breakpoint": false,
"terminal_color": "default", "width_list": [{ "width": 2500, "sentence_width":
2500 }], "unformat": false}]
'fl
.br
x font 5 TR
f5
s10000
md
DFd
V84000
H72000
tfoo
<Control+D>
n12000 0
x trailer
V792000
x stop
$ ~/groff-1.23.0/bin/groff -Z
.sp 1i
x T ps
x res 72000 1 1
x init
p1
foo
.pline
troff:<standard input>:3: warning: macro 'pline' not defined (possibly missing
space after 'pl')
'fl
.br
x font 5 TR
f5
s10000
V84000
H72000
md
DFd
tfoo
<Control+D>
n12000 0
x trailer
V792000
x stop


The foregoing also illustrates that no post-1.23.0 changes have altered this
behavior.

> If so, the manual's advice could switch from recommending "fl" to
> recommending "br" (or any other means of causing a break, which ".fl" does),

Right.  ".fl", with the normal control character, might still be most
preferred as an idiom.

> since groff flushes up to the last break (though some other roffs seemingly
> do not) upon .ab.

I think it's more accurate to say that *roffs flush output lines (to the
top-level diversion) as they go (that is, as they are "completed" and broken),
and no known *roffs give `ab` any responsibilities regarding any pending
output line.

Do you agree?


    _______________________________________________________

Reply to this item at:

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

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

Attachment: signature.asc
Description: PGP signature

Reply via email to