Replace notcurses_render_to_file() and
notcurses_render_to_buffer() with variants that work
on arbitrary piles (the former only worked on the standard
pile). Rewrite the former as trivial wrappers around the
latter, and deprecate the former. Closes#1770.
deprecate ncvisual_geom() in favor of new ncvisual_blitter_geom(), which allows caller to get the blitter used. replace the checks and calculations in ncvisual_render() with a call to ncvisual_blitter_geom(), unifying the two paths (and eliminating several bugs in the unloved ncvisual_geom()).
Deprecate ncplane_align(), after rewriting it as a passthrough
to new function ncplane_halign(). Add ncplane_valign(). Update
all callers. Closes#1468.
Add `notcurses_check_pixel_support()` and
`ncdirect_check_pixel_support()` per #1367. Removes
NCOPTION_VERIFY_SIXEL, again per #1367. Adds
`free_terminfo_cache()`, and calls it from both
`notcurses_stop_minimal()` and `ncdirect_stop()`.
Update all documentation. Closes#1371 and #1367.
After a long delay, apologies :)
Added:
* NotCurses: `can_sextant` (`notcurses_cansextant`)
* Notcurses: `linesigs_enable` (`notcurses_linesigs_enable`)
* Notcurses: `linesigs_disable` (`notcurses_linesigs_disable`)
* Pile: `top_with` (`ncpile_top`)
* Pile: `bottom_with` (`ncpile_bottom`)
* Plane: `resize_maximize` (`ncplane_resize_maximize`)
* Plane: `get_abs_x` (`ncplane_abs_x`)
* Plane: `get_abs_y` (`ncplane_abs_y`)
* Plane: `get_abs_yx` (`ncplane_abs_yx`)
* Plane: `load_egc32` (`cell_load_egc32`)
* Plane: `is_descendant_of` (`ncplane_descendant_p`)
* Progbar: new class, wraps `ncprogbar_*`
Changed:
* Plane (ABI break): `at_cursor` overloads now return `int` where
before they returned `bool` because the underlying Notcurses API
only signalled the operation status with the return value while now
it returns actual information.
Don't bias the nccell width by 1, or 0-length EGCs become
255 columns. We weren't actually using the width to drive
much anything until now, so this wasn't a problem, but it
is exposed as an error once we got rid of CELL_WIDE_ASIAN
and start looping through the actual egc column width.
Closes#1278, closes#1277