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, an ncurses extension to the curses library, permits
customiztion of unctrl(3x) behavior, suppressing isprint(3)-based
checks within the library that would normally cause nonprinting
characters to be rendered in visible form. The alteration affects only
byte-wide characters with the most significant bit set.
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-09-14 legacy_coding(3x)