Modify the error message delivery when too-small so that it works for
both NETHACKOPTIONS or .nethackrc and for 'O'. "Early failure" isn't
very early; using pline() instead of raw_print() ends up writing to
the base window but also works normally when used for failed attempt
to set perm_invent with 'O'.
Fix the off by one error in height which required an extra line that
ended up going unused.
Fix an off by one error in the middle divider. Forcing the same item
from the left column to the right column, I was seeing
"f - an uncursed +0 pair of leather glove" ["s (being worn)" truncated]
"F - an uncursed +0 pair of leather gl"
After the fix I get
"f - an uncursed +0 pair of leather glov"
"F - an uncursed +0 pair of leather glo"
(When terminal width is even, the left side is one character wider
than the right.)
Split the invent window creation code out of tty_create_nhwwindow() to
new routine tty_create_invent(). I came across
if (r == 0 || (newwin->maxrow - 1)
in the process (note lack of 'r ==' in the second part). I'm not sure
what the initialization code is intended to accomplish but missing
that init for the bottom (boundary box) row didn't seem to be causing
any problem.
This forces the required size to be big enough to handle statuslines:3
regardless of what the setting for that is at the time the perm_invent
window is created. When the value is 2, there will be a blank line
between status and the boundary box of perm_invent. When it is 3, the
third line will use that line and the only separator will be the top
boundary box line. Toggling back and forth with 'O' works as expected.