ncurses 6.2 - patch 20200222
[ncurses.git] / doc / html / man / curs_insstr.3x.html
index 2349cbc28668e8bd96c2e831449a38cb3a34befa..7c9efa725aefe42221cb588c816de9ade7dced20 100644 (file)
+<!-- 
+  ****************************************************************************
+  * Copyright 2019,2020 Thomas E. Dickey                                     *
+  * Copyright 1998-2010,2017 Free Software Foundation, Inc.                  *
+  *                                                                          *
+  * Permission is hereby granted, free of charge, to any person obtaining a  *
+  * copy of this software and associated documentation files (the            *
+  * "Software"), to deal in the Software without restriction, including      *
+  * without limitation the rights to use, copy, modify, merge, publish,      *
+  * distribute, distribute with modifications, sublicense, and/or sell       *
+  * copies of the Software, and to permit persons to whom the Software is    *
+  * furnished to do so, subject to the following conditions:                 *
+  *                                                                          *
+  * The above copyright notice and this permission notice shall be included  *
+  * in all copies or substantial portions of the Software.                   *
+  *                                                                          *
+  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
+  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
+  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
+  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
+  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
+  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
+  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
+  *                                                                          *
+  * Except as contained in this notice, the name(s) of the above copyright   *
+  * holders shall not be used in advertising or otherwise to promote the     *
+  * sale, use or other dealings in this Software without prior written       *
+  * authorization.                                                           *
+  ****************************************************************************
+  * @Id: curs_insstr.3x,v 1.24 2020/02/02 23:34:34 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>
+<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>
 <PRE>
-<!-- Manpage converted by man2html 3.0.1 -->
-
-</PRE>
-<H2>NAME</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
-
-
-</PRE>
-<H2>SYNOPSIS</H2><PRE>
-       <B>#include</B> <B>&lt;curses.h&gt;</B>
-       <B>int</B> <B>insstr(const</B> <B>char</B> <B>*str);</B>
-       <B>int</B> <B>insnstr(const</B> <B>char</B> <B>*str,</B> <B>int</B> <B>n);</B>
-       <B>int</B> <B>winsstr(WINDOW</B> <B>*win,</B> <B>const</B> <B>char</B> <B>*str);</B>
-       <B>int</B> <B>winsnstr(WINDOW</B> <B>*win,</B> <B>const</B> <B>char</B> <B>*str,</B> <B>int</B> <B>n);</B>
-       <B>int</B> <B>mvinsstr(int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>const</B> <B>char</B> <B>*str);</B>
-       <B>int</B> <B>mvinsnstr(int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>const</B> <B>char</B> <B>*str,</B> <B>int</B> <B>n);</B>
-       <B>int</B> <B>mvwinsstr(WINDOW</B> <B>*win,</B> <B>int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>const</B> <B>char</B> <B>*str);</B>
-       <B>int</B> <B>mvwinsnstr(WINDOW</B> <B>*win,</B> <B>int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>const</B> <B>char</B> <B>*str,</B>
-       <B>int</B> <B>n);</B>
-
-
-</PRE>
-<H2>DESCRIPTION</H2><PRE>
-       These  routines insert a character string (as many charac-
-       ters 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 char-
-       acters  on  the line being lost.  The cursor position does
-       not change (after moving to <I>y</I>, <I>x</I>, if specified). The  four
-       routines with <I>n</I> as the last argument insert a leading sub-
-       string of at most <I>n</I> characters.  If <I>n</I>&lt;=0, then the  entire
-       string is inserted.
-
-       If  a  character in <I>str</I> is a tab, newline, carriage return
-       or backspace, the cursor is moved appropriately within the
-       window.   A  newline  also  does a <B>clrtoeol</B> before moving.
-       Tabs are considered to be at every eighth  column.   If  a
-       character in <I>str</I> is another control character, it is drawn
-       in the <B>^</B><I>X</I> notation.  Calling <B>winch</B> after adding a  control
-       character (and moving to it, if necessary) does not return
-       the control character, but instead returns a character  in
-       the ^-representation of the control character.
-
-
-</PRE>
-<H2>RETURN VALUE</H2><PRE>
-       All  routines that return an integer return <B>ERR</B> upon fail-
-       ure and OK (SVr4 specifies only "an  integer  value  other
-       than  <B>ERR</B>")  upon  successful completion, unless otherwise
-       noted in the preceding routine descriptions.
-
-
-</PRE>
-<H2>NOTES</H2><PRE>
-       Note that all but <B>winsnstr</B> may be macros.
-
-
-</PRE>
-<H2>PORTABILITY</H2><PRE>
-       These functions are described in the XSI Curses  standard,
-       Issue  4,  which  adds  const qualifiers to the arguments.
-       The XSI Curses error  conditions  <B>EILSEQ</B>  and  <B>EILOVERFLOW</B>
-       associated  with  extended-level  conformance  are not yet
-       detected (this implementation does not  yet  support  XPG4
-       multi-byte characters).
-
-
-</PRE>
-<H2>SEE ALSO</H2><PRE>
-       <B><A HREF="ncurses.3x.html">curses(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="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>                                                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 
 
 
 
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
+       <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 string before cursor in a <STRONG>curses</STRONG> window
 
 
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+       <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+       <STRONG>int</STRONG> <STRONG>insstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
+       <STRONG>int</STRONG> <STRONG>insnstr(const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+       <STRONG>int</STRONG> <STRONG>winsstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
+       <STRONG>int</STRONG> <STRONG>winsnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvinsstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvinsnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwinsstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwinsnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*str,</STRONG> <STRONG>int</STRONG> <STRONG>n);</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 <EM>y</EM>, <EM>x</EM>, if  specified).   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>&lt;=0, then the entire string is inserted.
 
+       Special characters are handled as in <STRONG>addch</STRONG>.
 
 
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+       All routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure  and  <STRONG>OK</STRONG>
+       (SVr4 specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful
+       completion, unless otherwise noted in the  preceding  routine  descrip-
+       tions.
 
+       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.
 
+       Functions  with  a  "mv"  prefix  first perform a cursor movement using
+       <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
+       the window pointer is null.
 
 
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       Note that 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.
 
+       The Single Unix Specification, Version 2 states that <STRONG>insnstr</STRONG>  and  <STRONG>win-</STRONG>
+       <STRONG>snstr</STRONG> perform wrapping.  This is probably an error, since it makes this
+       group of functions inconsistent.  Also,  no  implementation  of  curses
+       documents this inconsistency.
 
 
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>.
 
 
 
+                                                               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 </PRE>
-<HR>
-<ADDRESS>
-Man(1) output converted with
-<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
-</ADDRESS>
+<div class="nav">
+<ul>
+<li><a href="#h2-NAME">NAME</a></li>
+<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+</ul>
+</div>
 </BODY>
 </HTML>