X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_inwstr.3x.html;h=0d8c3c1e71dbcddafea11f0909c9a5f35b924355;hb=HEAD;hp=db5e1b2a78f06feffa065186bc4593490d0c2932;hpb=bca50d0d8592defee6c584fdedd25f4b1a31345b;p=ncurses.git diff --git a/doc/html/man/curs_inwstr.3x.html b/doc/html/man/curs_inwstr.3x.html index db5e1b2a..d5777a28 100644 --- a/doc/html/man/curs_inwstr.3x.html +++ b/doc/html/man/curs_inwstr.3x.html @@ -1,6 +1,7 @@ - -curs_inwstr 3x - - +curs_inwstr 3x 2024-06-08 ncurses 6.5 Library calls + + -

curs_inwstr 3x

+

curs_inwstr 3x 2024-06-08 ncurses 6.5 Library calls

-curs_inwstr(3x)                                                curs_inwstr(3x)
+curs_inwstr(3x)                  Library calls                 curs_inwstr(3x)
 
 
 
 
 

NAME

        inwstr,  innwstr,  winwstr,  winnwstr,  mvinwstr, mvinnwstr, mvwinwstr,
-       mvwinnwstr - get a string of wchar_t characters from a curses window
+       mvwinnwstr - get a wide-character string from a curses window
 
 
 

SYNOPSIS

        #include <curses.h>
 
-       int inwstr(wchar_t *wstr);
-       int innwstr(wchar_t *wstr, int n);
-       int winwstr(WINDOW *win, wchar_t *wstr);
-       int winnwstr(WINDOW *win, wchar_t *wstr, int n);
-       int mvinwstr(int y, int x, wchar_t *wstr);
-       int mvinnwstr(int y, int x, wchar_t *wstr, int n);
-       int mvwinwstr(WINDOW *win, int y, int x, wchar_t *wstr);
-       int mvwinnwstr(WINDOW *win, int y, int x, wchar_t *wstr, int n);
+       int inwstr(wchar_t * wstr);
+       int winwstr(WINDOW * win, wchar_t * wstr);
+       int mvinwstr(int y, int x, wchar_t * wstr);
+       int mvwinwstr(WINDOW * win, int y, int x, wchar_t * wstr);
+
+       int innwstr(wchar_t * wstr, int n);
+       int winnwstr(WINDOW * win, wchar_t * wstr, int n);
+       int mvinnwstr(int y, int x, wchar_t * wstr, int n);
+       int mvwinnwstr(WINDOW * win, int y, int x, wchar_t * wstr, int n);
 
 
 

DESCRIPTION

-       These routines return a string of  wchar_t  wide  characters  in  wstr,
-       extracted starting at the current cursor position in the named window.
+       winwstr extracts a wide-character string  from  a  curses  window  win,
+       starting  at the cursor and stopping at the end of the line, and stores
+       it in wstr, terminating it with a wide null character and omitting  any
+       attributes  and  color pair identifier that curses associates with each
+       character.  winnwstr does the same, but copies  at  most  n  characters
+       from  win.   An  n  of  -1  implies  no limit; winnwstr then works like
+       winwstr.  ncurses(3x) describes the variants of these functions.
+
+
+

RETURN VALUE

+       On successful operation, these  functions  return  the  count  of  wide
+       characters  copied  from  win  to  wstr.  They return ERR upon failure.
+       innwstr, winnwstr,  mvinnwstr,  and  mvwinnwstr  return  ERR  if  n  is
+       insufficiently  large  to  store  a  complete  wide  character  string.
+       (Recall that a curses  complex  character  can  contain  multiple  wide
+       characters, some of which may be non-spacing.)
+
+       In ncurses, these functions return ERR if
 
-       The  four  functions  with n as the last argument return a leading sub-
-       string at most n characters  long  (exclusive  of  the  trailing  NUL).
-       Transfer  stops  at  the  end of the current line, or when n characters
-       have been stored at the location referenced by wstr.
+       o   win is NULL or
 
-       If the size n is not large enough to store a complete  complex  charac-
-       ter, an error is generated.
+       o   wstr is NULL.
+
+       Functions  prefixed with "mv" first perform cursor movement and fail if
+       the position (y, x) is outside the window boundaries.
 
 
 

NOTES

-       All routines except winnwstr may be macros.
+       All of these functions except winnwstr may be implemented as macros.
 
-       Each cell in the window holds a complex character (i.e., base- and com-
-       bining-characters) together with attributes and color.  These functions
-       store  only  the  wide  characters, ignoring attributes and color.  Use
-       in_wchstr to return the complex characters from a window.
+       Reading a line that overflows the array pointed to by str with  inwstr,
+       winwstr,  mvinwstr,  or  mvwinwstr  causes  undefined  results.  Use of
+       innwstr, winnwstr, mvinnwstr, and mvwinnwstr is recommended instead.
 
 
-

RETURN VALUE

-       All routines return ERR upon failure. Upon successful  completion,  the
-       *inwstr routines return OK, and the *innwstr routines return the number
-       of characters read into the string.
+

EXTENSIONS

+       innwstr, winnwstr, mvinnwstr, and mvwinnwstr's treatment  of  -1  as  a
+       valid value of n is an ncurses extension.
 
-       Functions with a "mv" prefix first  perform  a  cursor  movement  using
-       wmove, and return an error if the position is outside the window, or if
-       the window pointer is null.
+
+

PORTABILITY

+       Applications employing ncurses extensions should condition their use on
+       the visibility of the NCURSES_VERSION preprocessor macro.
+
+       X/Open Curses, Issue 4 describes  these  functions.   It  specifies  no
+       error conditions for them.
+
+       Notwithstanding  the foregoing, X/Open Curses Issues 4 and 7 both state
+       that innwstr, winnwstr, mvinnwstr, and mvwinnwstr "fail  ...  [i]f  the
+       array  is  not  large  enough  to  contain  any  complete  characters".
+       Strictly interpreted, this means  that  a  caller  of  these  functions
+       cannot use their return values to detect truncation of a wide-character
+       string copied from more  than  one  character  cell  in  win.   ncurses
+       reports any truncation with ERR.
+
+       X/Open  Curses  specifies  inwstr,  winwstr, mvinwstr, and mvwinwstr as
+       returning OK rather than a (wide) character count,  unlike  their  non-
+       wide  counterparts  instr,  winstr,  mvinstr,  and  mvwinstr.   ncurses
+       regards this inconsistency as an error in the standard.
 
 
 

SEE ALSO

-       curses(3x), curs_instr(3x), curs_in_wchstr(3x)
+       curs_instr(3x) describes comparable functions of the ncurses library in
+       its non-wide-character configuration.
 
+       curses(3x), curs_in_wch(3x), curs_in_wchstr(3x)
 
 
-                                                               curs_inwstr(3x)
+
+ncurses 6.5                       2024-06-08                   curs_inwstr(3x)