After a year and a half of development, the release of the ncurses 6.5 library has been presented, intended for creating cross-platform interactive console user interfaces and supporting the emulation of the curses API from System V Release 4.0 (SVr4). The ncurses 6.5 release is source-compatible with the ncurses 5.x and 6.0 branches but expands the ABI. Notable applications built using ncurses include aptitude, lynx, mutt, ncftp, vim, vifm, minicom, mosh, screen, tmux, emacs, and less.
Among the new features added:
- New functions have been added to the low-level access interfaces for terminfo and termcap: tiparm_s for passing information about expected terminal string parameters used to format output for the terminal; tiscan_s for checking formatting capabilities when passing string parameters to the tiparm_s function. These functions address issues when processing corrupted or incorrect terminal parameter files (terminfo and termcap).
- A build option "—enable-check-size" has been added to simplify initialization on terminals that do not transmit window or screen size data. When enabled, the function setupterm uses cursor position data to determine window size if size information is not provided via environment variables and is not passed through ioctl.
- Functions have been added to retrieve TTY flags from SCREEN-type structures.
- Checks have been added for safer handling of string parameters in the functions tiparm, tparm, and tgoto.
Source: opennet.ru
