]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/curs_insstr.3x.html
ncurses 6.4 - patch 20240420
[ncurses.git] / doc / html / man / curs_insstr.3x.html
index 2d2032f2c4ecb880f74ed1e25842655039f76f3b..693f6f76e4ede0dc8fd6213fb0ed0910f2ddf158 100644 (file)
@@ -1,6 +1,6 @@
 <!--
   ****************************************************************************
-  * Copyright 2019-2020,2021 Thomas E. Dickey                                *
+  * Copyright 2019-2023,2024 Thomas E. Dickey                                *
   * Copyright 1998-2010,2017 Free Software Foundation, Inc.                  *
   *                                                                          *
   * Permission is hereby granted, free of charge, to any person obtaining a  *
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_insstr.3x,v 1.27 2021/06/17 21:26:02 tom Exp @
+  * @Id: curs_insstr.3x,v 1.51 2024/04/20 21:20:07 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_insstr 3X</TITLE>
+<TITLE>curs_insstr 3x 2024-04-20 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_insstr 3X</H1>
+<H1 class="no-header">curs_insstr 3x 2024-04-20 ncurses 6.4 Library calls</H1>
 <PRE>
-<B><A HREF="curs_insstr.3X.html">curs_insstr(3X)</A></B>                                                <B><A HREF="curs_insstr.3X.html">curs_insstr(3X)</A></B>
+<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 
 
 
 
 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
-       <B>insstr</B>,  <B>insnstr</B>,  <B>winsstr</B>,  <B>winsnstr</B>,  <B>mvinsstr</B>, <B>mvinsnstr</B>, <B>mvwinsstr</B>,
-       <B>mvwinsnstr</B> - insert string before cursor in a <B>curses</B> window
+       <STRONG>insstr</STRONG>,  <STRONG>insnstr</STRONG>,  <STRONG>winsstr</STRONG>,  <STRONG>winsnstr</STRONG>,  <STRONG>mvinsstr</STRONG>, <STRONG>mvinsnstr</STRONG>, <STRONG>mvwinsstr</STRONG>,
+       <STRONG>mvwinsnstr</STRONG> - insert a string in a <EM>curses</EM> window
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
-       <B>#include</B> <B>&lt;curses.h&gt;</B>
-       <B>int</B> <B>insstr(const</B> <B>char</B> <B>*</B><I>str</I><B>);</B>
-       <B>int</B> <B>insnstr(const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
-       <B>int</B> <B>winsstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>);</B>
-       <B>int</B> <B>winsnstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
+       <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+       <STRONG>int</STRONG> <STRONG>insstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>insnstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>winsstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>winsnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
 
-       <B>int</B> <B>mvinsstr(int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>);</B>
-       <B>int</B> <B>mvinsnstr(int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
-       <B>int</B> <B>mvwinsstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>);</B>
-       <B>int</B> <B>mvwinsnstr(WINDOW</B> <B>*</B><I>win</I><B>,</B> <B>int</B> <I>y</I><B>,</B> <B>int</B> <I>x</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>int</B> <I>n</I><B>);</B>
+       <STRONG>int</STRONG> <STRONG>mvinsstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvinsnstr(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwinsstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwinsnstr(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        These routines insert a character string (as many  characters  as  will
-       fit on the line) before the character under the cursor.  All characters
-       to the right of the cursor are shifted right with  the  possibility  of
-       the  rightmost  characters on the line being lost.  The cursor position
-       does not change (after moving to <I>y</I>, <I>x</I>, if  specified).   The  functions
-       with  <I>n</I>  as  the  last argument insert a leading substring of at most <I>n</I>
-       characters.  If <I>n</I>&lt;=0, then the entire string is inserted.
+       fit  on  the line) before the character under the cursor, as if calling
+       <STRONG><A HREF="curs_insch.3x.html">winsch(3x)</A></STRONG>.  All characters to the right  of  the  cursor  are  shifted
+       right,  with  the  possibility  of the rightmost characters on the line
+       being lost.  No wrapping is performed.
+
+       The cursor  position  does  not  change  (after  moving  to  <EM>y</EM>,  <EM>x</EM>,  if
+       specified).
 
-       Special characters are handled as in <B>addch</B>.
+       The functions with <EM>n</EM> as the last argument insert a leading substring of
+       at most <EM>n</EM> characters.  If <EM>n</EM> is less than zero,  the  entire  string  is
+       inserted (stopping on a NUL character).
+
+       Special characters are handled as in <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       All routines that return an integer return  <B>ERR</B>  upon  failure  and  <B>OK</B>
-       (SVr4 specifies only "an integer value other than <B>ERR</B>") upon successful
-       completion,  unless  otherwise   noted   in   the   preceding   routine
-       descriptions.
+       All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on success.
+
+       X/Open   Curses   does   not   specify   any  error  conditions.   This
+       implementation returns an error
 
-       X/Open  defines  no  error  conditions.  In this implementation, if the
-       window parameter is null or the str parameter  is  null,  an  error  is
-       returned.
+       <STRONG>o</STRONG>   if the <EM>win</EM> parameter is null or
 
-       Functions  with  a  "mv"  prefix  first perform a cursor movement using
-       <B>wmove</B>, and return an error if the position is outside the window, or if
-       the window pointer is null.
+       <STRONG>o</STRONG>   if the <EM>str</EM> parameter is null or
+
+       <STRONG>o</STRONG>   the <STRONG><A HREF="curs_insch.3x.html">winsch(3x)</A></STRONG> function returns an error.
+
+       Functions prefixed with "mv" first perform cursor movement and fail  if
+       the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       Note that all but <B>winsnstr</B> may be macros.
+       All but <STRONG>winsnstr</STRONG> may be macros.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These  functions  are  described  in  the XSI Curses standard, Issue 4,
-       which adds const qualifiers to the arguments.
+       These  functions  are  described  in X/Open Curses, Issue 4, which adds
+       <EM>const</EM> qualifiers to the arguments.
 
-       The Single Unix  Specification,  Version  2  states  that  <B>insnstr</B>  and
-       <B>winsnstr</B>  perform  wrapping.  This is probably an error, since it makes
+       The Single Unix  Specification,  Version  2  states  that  <STRONG>insnstr</STRONG>  and
+       <STRONG>winsnstr</STRONG>  perform  wrapping.  This is probably an error, since it makes
        this group of  functions  inconsistent.   Also,  no  implementation  of
        curses documents this inconsistency.
 
+       X/Open  states  that the entire string is inserted if <EM>n</EM> is less than 1.
+       This is probably an  error,  because  it  is  inconsistent  with  other
+       functions,  and  differs  from  the  SVr4 and X/Open implementations on
+       Solaris.
+
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <B><A HREF="curses.3X.html">curses(3X)</A></B>, <B><A HREF="curs_util.3X.html">curs_util(3X)</A></B>, <B><A HREF="curs_clear.3X.html">curs_clear(3X)</A></B>, <B><A HREF="curs_inch.3X.html">curs_inch(3X)</A></B>.
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 
 
 
-                                                               <B><A HREF="curs_insstr.3X.html">curs_insstr(3X)</A></B>
+ncurses 6.4                       2024-04-20                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>