- <p>There are several new features:</p>
-
- <ul>
- <li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/form_field_opts.3x.html">
- O_EDGE_INSERT_STAY</a> tells the form library to optionally
- delay cursor movement on a field edge/boundary</p>
- </li>
-
- <li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/form_field_opts.3x.html">
- O_INPUT_FIELD</a> extension to form library allows a dynamic
- field to shrink if the new limit is smaller than the current
- field size.</p>
- </li>
-
- <li>
- <p>added <a href=
- "https://invisible-island.net/ncurses/man/curs_memleaks.3x.html">
- exit_curses</a> and <a href=
- "https://invisible-island.net/ncurses/man/curs_memleaks.3x.html">
- exit_terminfo</a> to replace internal symbols for
- leak-checking.</p>
- </li>
-
- <li>
- <p>added <a href=
- "https://invisible-island.net/ncurses/man/curs_trace.3x.html#h3-Functions">
- curses_trace</a>, to replace trace().</p>
- </li>
- </ul>
-
- <p>Additionally, to improve performance other changes (and
- extensions) are provided in this release:</p>
-
- <ul>
- <li>
- <p>mouse decoding now handles shift/control/alt logic when
- decoding xterm's 1006 mode</p>
- </li>
-
- <li>
- <p>ncurses now defines a limit for <a href=
- "https://invisible-island.net/ncurses/man/curs_getstr.3x.html">
- wgetnstr</a>, <a href=
- "https://invisible-island.net/ncurses/man/curs_get_wstr.3x.html">
- wgetn_wstr</a> when length is negative or “too
- large”.</p>
- </li>
-
- <li>reordered loop-limit checks in <a href=
- "https://invisible-island.net/ncurses/man/curs_insstr.3x.html">winsnstr</a>
- in case the string has no terminating null and only the number
- of characters is used.</li>
-
- <li>
- <p>there is now no buffer-size limit when reading the
- <a href="https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERMCAP">
- <tt>$TERMCAP</tt></a> variable.</p>
- </li>
-
- <li>
- <p>the <a href=
- "https://invisible-island.net/ncurses/man/ncurses.3x.html#h3-TERMCAP">
- <tt>$TERMCAP</tt></a> variable may be interpreted as a
- fallback to a terminfo entry</p>
- </li>
-
- <li>
- <p><a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Output-Functions">
- <tt>mvcur</tt></a> now decides whether to use hard-tabs,
- using <strong><tt>xt</tt></strong>,
- <strong><tt>tbc</tt></strong> and
- <strong><tt>hts</tt></strong> as clues.</p>
- </li>
-
- <li>
- <p>extended colors are improved by modifying an internal call
- to <a href=
- "https://invisible-island.net/ncurses/man/curs_terminfo.3x.html#h3-Output-Functions">
- <tt>vid_puts</tt></a> to pass extended color pairs e.g., from
- <tt>tty_update.c</tt> and <tt>lib_mvcur.c</tt></p>
- </li>
-
- <li>
- <p id="getenv-fixes">the initialization functions now avoid
- relying upon persistent data for the result from <a href=
- "#getenv-check"><tt>getenv</tt></a></p>
- </li>
-
- <li>
- <p>scrolling is improved:</p>
-
- <ul>
- <li>a limit check in <tt>newline_forces_scroll</tt> handles
- the case where the row is inside scroll-margins, but not at
- the end.</li>
-
- <li>
- <p>improved loop limits in <tt>_nc_scroll_window</tt>
- handle a case where the scrolled data is a pad which is
- taller than the window.</p>
- </li>
- </ul>
- </li>
- </ul>