Subject: What is the purpose of fillUpToTermSize?

From: Rin Takanashi <[email-masked]>
Date: Thu, 29 Apr 2021 01:49:59 +0200

Hello,

I was wondering what is the fillUpToTermSize function supposed to do. From
the name it seems to stretch the string with spaces to the terminal's width
but from what I understand it stretches the supplied string to the length
of the longest previously supplied string.

I don't really know why this behavior would be wanted, but I ran into this
function when it caused many newlines (caused by a lot of extra spaces) in
the output of redo after a long line was printed to stderr from one of my
.do files.

Example:
=== all.do
redo-ifchange long
~~~

=== long.do
redo-always

for i in $(seq 1 1 200); do
        printf "$i" >&2
done
~~~

The code above should produce several newlines right after "redo . long"
which result from the extra spaces on this line and the "redo . all" line
is not affected.

When I removed everything but the return statement from this function no
other output seemed to be broken and there were no weird newlines, so
that's why I'm unsure as to this function's purpose.

-Rin