Help and Forums
Notes on the NcDialog API and ncurses v:6.4 (updated 21 Jun 2024)
The NcDialog API, upon which most of the applications on this site are based,
relies upon the
ncursesw (new curses, wide character) v:6.x
development package for terminal applications, and is fully functional with v:6.4 ncurses.
- The ncurses package (maintained by Thomas Dickey), is quite stable and reliable on many platforms.
The Wayland compositor, however, is still a work-in-progress.
-
The Wayland developers have the almost impossible task of replacing the venerable X11 Window System with a software platform that has
actually been designed, rather that simply emerging from the primordial ooze as X had done over the decades. Your author does not
envy them their task.
- The most obvious effect Wayland has had on ncurses is in the area of keyboard keycode definitions. The keycodes assigned to the
raw escape sequences transmitted from the keyboard controller have been updated several times, and each time it breaks the keycode
definition sequence of the ncurses package. The most recent Wayland update, however, presents the keycodes in a logical numeric progression,
so it is hoped that the sequence is now stable.
- A new NcDialog API keymap has been generated to match the latest Wayland keycode modifications. Note that the NcDialog package includes
the Keymap utility which may be used to generate a keycode map in case the default key map is not synchronized with the target system.
-
A change in the GNU C++ compiler has required a small update to the gString class. The file “cstdint” was formerly brought
in through the “cstdlib” file, but “cstdint” must now be included explicitly.
-
The WaylandCB class and the Wayclip demonstration app which are part of the NcDialog API distribution package have also been updated.
Recently, the “wl-clipboard” utilities written by Sergey Bugaev have been significantly improved, so our clipboard interface
has been updated to take advantage of these improvements.
— (The WaylandCB package is also available as a separate download.)