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)