X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_util.3x.html;h=9b6c3655f6125dd17530d069201226d6fdbf02ad;hp=ce1aec47f8fe0c8cc9553cdc856aaccc84df4a36;hb=HEAD;hpb=d90067f9008bb8338a77c1ed519bc108c275ed04 diff --git a/doc/html/man/curs_util.3x.html b/doc/html/man/curs_util.3x.html index ce1aec47..8e641fe9 100644 --- a/doc/html/man/curs_util.3x.html +++ b/doc/html/man/curs_util.3x.html @@ -1,7 +1,7 @@
-curs_util(3x) Library calls curs_util(3x) @@ -56,15 +56,15 @@
#include <curses.h> - const char *unctrl(chtype c); - wchar_t *wunctrl(cchar_t *c); + const char *unctrl(chtype ch); + wchar_t *wunctrl(cchar_t *wch); const char *keyname(int c); - const char *key_name(wchar_t w); + const char *key_name(wchar_t wc); void filter(void); - void use_env(bool f); + void use_env(bool bf); int putwin(WINDOW *win, FILE *filep); WINDOW *getwin(FILE *filep); @@ -74,14 +74,14 @@ /* extensions */ void nofilter(void); - void use_tioctl(bool f); + void use_tioctl(bool bf);
The unctrl routine returns a character string which is a printable - representation of the character c: + representation of the character ch: o Printable characters are displayed as themselves, e.g., a one- character string containing the key. @@ -99,13 +99,13 @@ this follows the X/Open specification. The corresponding wunctrl returns a printable representation of a - complex character c. + complex character wch. In both unctrl and wunctrl the attributes and color associated with the character parameter are ignored. -
+
The keyname routine returns a character string corresponding to the key c. Key codes are different from character codes. @@ -129,7 +129,7 @@ o key_name does not return the name of a function key. -
+
The filter routine, if used, must be called before initscr or newterm are called. Calling filter causes these changes in initialization: @@ -192,158 +192,157 @@ use_env use_tioctl Summary ----------------------------------------------------------------- - TRUE FALSE This is the default behavior. ncurses - uses operating system calls unless - overridden by LINES or COLUMNS + TRUE FALSE ncurses uses operating system calls + unless overridden by LINES or COLUMNS environment variables; default. - TRUE TRUE ncurses updates LINES and COLUMNS based + TRUE TRUE ncurses updates LINES and COLUMNS based on operating system calls. - FALSE TRUE ncurses ignores LINES and COLUMNS, using + FALSE TRUE ncurses ignores LINES and COLUMNS, using operating system calls to obtain size. -
- The putwin routine writes all data associated with window (or pad) win - into the file to which filep points. This information can be later +
+ The putwin routine writes all data associated with window (or pad) win + into the file to which filep points. This information can be later retrieved using the getwin function. - The getwin routine reads window related data stored in the file by - putwin. The routine then creates and initializes a new window using - that data. It returns a pointer to the new window. There are a few + The getwin routine reads window related data stored in the file by + putwin. The routine then creates and initializes a new window using + that data. It returns a pointer to the new window. There are a few caveats: - o the data written is a copy of the WINDOW structure, and its - associated character cells. The format differs between the wide- - character (ncursesw) and non-wide (ncurses) libraries. You can + o the data written is a copy of the WINDOW structure, and its + associated character cells. The format differs between the wide- + character (ncursesw) and non-wide (ncurses) libraries. You can transfer data between the two, however. - o the retrieved window is always created as a top-level window (or + o the retrieved window is always created as a top-level window (or pad), rather than a subwindow. - o the window's character cells contain the color pair value, but not - the actual color numbers. If cells in the retrieved window use - color pairs which have not been created in the application using + o the window's character cells contain the color pair value, but not + the actual color numbers. If cells in the retrieved window use + color pairs which have not been created in the application using init_pair, they will not be colored when the window is refreshed.
- The delay_output routine inserts an ms millisecond pause in output. - Employ this function judiciously when terminal output uses padding, - because ncurses transmits null characters (consuming CPU and I/O - resources) instead of sleeping and requesting resumption from the + The delay_output routine inserts an ms millisecond pause in output. + Employ this function judiciously when terminal output uses padding, + because ncurses transmits null characters (consuming CPU and I/O + resources) instead of sleeping and requesting resumption from the operating system. Padding is used unless: o the terminal description has npc (no_pad_char) capability, or o the environment variable NCURSES_NO_PADDING is set. - If padding is not in use, ncurses uses napms to perform the delay. If - the value of ms exceeds 30,000 (thirty seconds), it is capped at that + If padding is not in use, ncurses uses napms to perform the delay. If + the value of ms exceeds 30,000 (thirty seconds), it is capped at that value.
- The flushinp routine throws away any typeahead that has been typed by + The flushinp routine throws away any typeahead that has been typed by the user and has not yet been read by the program.
- Except for flushinp, routines that return an integer return ERR upon - failure and OK (SVr4 specifies only "an integer value other than ERR") + Except for flushinp, routines that return an integer return ERR upon + failure and OK (SVr4 specifies only "an integer value other than ERR") upon successful completion. Routines that return pointers return NULL on error. - X/Open does not define any error conditions. In this implementation + X/Open Curses does not specify any error conditions. In this + implementation flushinp - returns an error if the terminal was not initialized. + returns ERR if the terminal was not initialized. putwin - returns an error if the associated fwrite calls return an - error. + returns ERR if the associated fwrite calls return ERR.
- The SVr4 documentation describes the action of filter only in the - vaguest terms. The description here is adapted from the XSI Curses - standard (which erroneously fails to describe the disabling of cuu). + The SVr4 documentation describes the action of filter only in the + vaguest terms. The description here is adapted from X/Open Curses + (which erroneously fails to describe the disabling of cuu).
- The limitation to 30 seconds and the use of napms differ from other + The limitation to 30 seconds and the use of napms differ from other implementations. o SVr4 curses does not delay if no padding character is available. - o NetBSD curses uses napms when no padding character is available, - but does not take timing into account when using the padding + o NetBSD curses uses napms when no padding character is available, + but does not take timing into account when using the padding character. Neither limits the delay.
- The keyname function may return the names of user-defined string - capabilities which are defined in the terminfo entry via the -x option + The keyname function may return the names of user-defined string + capabilities which are defined in the terminfo entry via the -x option of tic. This implementation automatically assigns at run-time keycodes - to user-defined strings which begin with "k". The keycodes start at + to user-defined strings which begin with "k". The keycodes start at KEY_MAX, but are not guaranteed to be the same value for different runs - because user-defined codes are merged from all terminal descriptions - which have been loaded. The use_extended_names(3x) function controls - whether this data is loaded when the terminal description is read by + because user-defined codes are merged from all terminal descriptions + which have been loaded. The use_extended_names(3x) function controls + whether this data is loaded when the terminal description is read by the library. -
- The nofilter and use_tioctl routines are specific to ncurses. They - were not supported on Version 7, BSD or System V implementations. It - is recommended that any code depending on ncurses extensions be +
+ The nofilter and use_tioctl routines are specific to ncurses. They + were not supported on Version 7, BSD or System V implementations. It + is recommended that any code depending on ncurses extensions be conditioned using NCURSES_VERSION.
The putwin and getwin functions have several issues with portability: - o The files written and read by these functions use an - implementation-specific format. Although the format is an obvious + o The files written and read by these functions use an + implementation-specific format. Although the format is an obvious target for standardization, it has been overlooked. - Interestingly enough, according to the copyright dates in Solaris - source, the functions (along with scr_init, etc.) originated with + Interestingly enough, according to the copyright dates in Solaris + source, the functions (along with scr_init, etc.) originated with the University of California, Berkeley (in 1982) and were later (in - 1988) incorporated into SVr4. Oddly, there are no such functions + 1988) incorporated into SVr4. Oddly, there are no such functions in the 4.3BSD curses sources. - o Most implementations simply dump the binary WINDOW structure to the - file. These include SVr4 curses, NetBSD and PDCurses, as well as + o Most implementations simply dump the binary WINDOW structure to the + file. These include SVr4 curses, NetBSD and PDCurses, as well as older ncurses versions. This implementation (as well as the X/Open variant of Solaris curses, dated 1995) uses textual dumps. - The implementations which use binary dumps use block-I/O (the - fwrite and fread functions). Those that use textual dumps use + The implementations which use binary dumps use block-I/O (the + fwrite and fread functions). Those that use textual dumps use buffered-I/O. A few applications may happen to write extra data in - the file using these functions. Doing that can run into problems - mixing block- and buffered-I/O. This implementation reduces the - problem on writes by flushing the output. However, reading from a + the file using these functions. Doing that can run into problems + mixing block- and buffered-I/O. This implementation reduces the + problem on writes by flushing the output. However, reading from a file written using mixed schemes may not be successful. -
- The XSI Curses standard, Issue 4 describes these functions. It states - that unctrl and wunctrl will return a null pointer if unsuccessful, but - does not define any error conditions. This implementation checks for - three cases: +
+ X/Open Curses, Issue 4 describes these functions. It states that + unctrl and wunctrl will return a null pointer if unsuccessful, but does + not define any error conditions. This implementation checks for three + cases: - o the parameter is a 7-bit US-ASCII code. This is the case that + o the parameter is a 7-bit US-ASCII code. This is the case that X/Open Curses documented. o the parameter is in the range 128-159, i.e., a C1 control code. If - use_legacy_coding(3x) has been called with a 2 parameter, unctrl - returns the parameter, i.e., a one-character string with the - parameter as the first character. Otherwise, it returns "~@", + use_legacy_coding(3x) has been called with a 2 parameter, unctrl + returns the parameter, i.e., a one-character string with the + parameter as the first character. Otherwise, it returns "~@", "~A", etc., analogous to "^@", "^A", C0 controls. X/Open Curses does not document whether unctrl can be called before @@ -354,44 +353,44 @@ pointer. The strings returned by unctrl in this implementation are determined at - compile time, showing C1 controls from the upper-128 codes with a "~" - prefix rather than "^". Other implementations have different - conventions. For example, they may show both sets of control - characters with "^", and strip the parameter to 7 bits. Or they may - ignore C1 controls and treat all of the upper-128 codes as printable. - This implementation uses 8 bits but does not modify the string to - reflect locale. The use_legacy_coding(3x) function allows the caller + compile time, showing C1 controls from the upper-128 codes with a "~" + prefix rather than "^". Other implementations have different + conventions. For example, they may show both sets of control + characters with "^", and strip the parameter to 7 bits. Or they may + ignore C1 controls and treat all of the upper-128 codes as printable. + This implementation uses 8 bits but does not modify the string to + reflect locale. The use_legacy_coding(3x) function allows the caller to change the output of unctrl. - Likewise, the meta(3x) function allows the caller to change the output - of keyname, i.e., it determines whether to use the "M-" prefix for - "meta" keys (codes in the range 128 to 255). Both - use_legacy_coding(3x) and meta(3x) succeed only after curses is - initialized. X/Open Curses does not document the treatment of codes + Likewise, the meta(3x) function allows the caller to change the output + of keyname, i.e., it determines whether to use the "M-" prefix for + "meta" keys (codes in the range 128 to 255). Both + use_legacy_coding(3x) and meta(3x) succeed only after curses is + initialized. X/Open Curses does not document the treatment of codes 128 to 159. When treating them as "meta" keys (or if keyname is called - before initializing curses), this implementation returns strings + before initializing curses), this implementation returns strings "M-^@", "M-^A", etc. X/Open Curses documents unctrl as declared in <unctrl.h>, which ncurses - does. However, ncurses' <curses.h> includes <unctrl.h>, matching the + does. However, ncurses' <curses.h> includes <unctrl.h>, matching the behavior of SVr4 curses. Other implementations may not do that. -
- If ncurses is configured to provide the sp-functions extension, the - state of use_env and use_tioctl may be updated before creating each - screen rather than once only (curs_sp_funcs(3x)). This feature of +
+ If ncurses is configured to provide the sp-functions extension, the + state of use_env and use_tioctl may be updated before creating each + screen rather than once only (curs_sp_funcs(3x)). This feature of use_env is not provided by other implementations of curses.
- curses(3x), curs_initscr(3x), curs_inopts(3x), curs_kernel(3x), + curses(3x), curs_initscr(3x), curs_inopts(3x), curs_kernel(3x), curs_scr_dump(3x), curs_sp_funcs(3x), curs_variables(3x), legacy_coding(3x) -ncurses 6.4 2023-12-16 curs_util(3x) +ncurses 6.5 2024-05-25 curs_util(3x)