legacy_coding(3x) Library calls legacy_coding(3x)
use_legacy_coding - override curses locale encoding checks
#include <curses.h> int use_legacy_coding(int level);
use_legacy_coding is an extension to the curses library. It allows the caller to change the result of unctrl(3x), suppressing isprint(3)-based checks within the library that would normally cause nonprinting characters to be rendered in visible form. The alteration affects only eight-bit characters. The level parameter controls the result. 0 The library functions normally, rendering nonprinting characters as described in unctrl(3x), 1 the library ignores isprint for codes in the range 160-255. 2 the library ignores isprint for codes in the range 128-255. It also modifies the output of unctrl(3x), showing codes in the range 128-159 as is.
If the curses screen has not been initialized, or the level parameter is out of range, use_legacy_coding returns ERR. Otherwise, it returns the previous level.
use_legacy_coding is an ncurses extension.
Applications employing ncurses extensions should condition their use on the visibility of the NCURSES_VERSION preprocessor macro.
ncurses 5.6 (2006) introduced use_legacy_coding to support lynx(1)'s font-switching feature.
Thomas Dickey
unctrl(3x) ncurses 6.5 2024-07-27 legacy_coding(3x)