X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=man%2Fcurs_insstr.3x;h=44bc6fd283f3dfaf8a723ad4617f40c66431aa1e;hb=859f2280a309b121d29160e4d066ecc0fd39e52c;hp=955ac8df639761e67da4b21b7821a64a46082161;hpb=0eb88fc5281804773e2a0c7a488a4452463535ce;p=ncurses.git diff --git a/man/curs_insstr.3x b/man/curs_insstr.3x index 955ac8df..44bc6fd2 100644 --- a/man/curs_insstr.3x +++ b/man/curs_insstr.3x @@ -1,5 +1,6 @@ .\"*************************************************************************** -.\" Copyright (c) 1998 Free Software Foundation, Inc. * +.\" Copyright 2019-2021,2022 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 * @@ -26,65 +27,79 @@ .\" authorization. * .\"*************************************************************************** .\" -.\" $Id: curs_insstr.3x,v 1.10 1998/07/25 20:32:57 Todd.Miller Exp $ +.\" $Id: curs_insstr.3x,v 1.29 2022/02/12 20:05:11 tom Exp $ .TH curs_insstr 3X "" +.ie \n(.g .ds `` \(lq +.el .ds `` `` +.ie \n(.g .ds '' \(rq +.el .ds '' '' .SH NAME -\fBinsstr\fR, \fBinsnstr\fR, \fBwinsstr\fR, \fBwinsnstr\fR, -\fBmvinsstr\fR, \fBmvinsnstr\fR, \fBmvwinsstr\fR, \fBmvwinsnstr\fR - insert -string before cursor in a \fBcurses\fR window +\fBinsstr\fP, +\fBinsnstr\fP, +\fBwinsstr\fP, +\fBwinsnstr\fP, +\fBmvinsstr\fP, +\fBmvinsnstr\fP, +\fBmvwinsstr\fP, +\fBmvwinsnstr\fP \- insert string before cursor in a \fBcurses\fP window .SH SYNOPSIS -\fB#include \fR +\fB#include \fP .br -\fBint insstr(const char *str);\fR +\fBint insstr(const char *\fIstr\fB);\fR .br -\fBint insnstr(const char *str, int n);\fR +\fBint insnstr(const char *\fIstr\fB, int \fIn\fB);\fR .br -\fBint winsstr(WINDOW *win, const char *str);\fR +\fBint winsstr(WINDOW *\fIwin\fB, const char *\fIstr\fB);\fR .br -\fBint winsnstr(WINDOW *win, const char *str, int n);\fR +\fBint winsnstr(WINDOW *\fIwin\fB, const char *\fIstr\fB, int \fIn\fB);\fR +.sp +\fBint mvinsstr(int \fIy\fB, int \fIx\fB, const char *\fIstr\fB);\fR .br -\fBint mvinsstr(int y, int x, const char *str);\fR +\fBint mvinsnstr(int \fIy\fB, int \fIx\fB, const char *\fIstr\fB, int \fIn\fB);\fR .br -\fBint mvinsnstr(int y, int x, const char *str, int n);\fR +\fBint mvwinsstr(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, const char *\fIstr\fB);\fR .br -\fBint mvwinsstr(WINDOW *win, int y, int x, const char *str);\fR -.br -\fBint mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n);\fR +\fBint mvwinsnstr(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, const char *\fIstr\fB, int \fIn\fB);\fR .br .SH DESCRIPTION -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 -\fIy\fR, \fIx\fR, if specified). The four routines with \fIn\fR as the last -argument insert a leading substring of at most \fIn\fR characters. If -\fIn\fR<=0, then the entire string is inserted. - -If a character in \fIstr\fR is a tab, newline, carriage return or -backspace, the cursor is moved appropriately within the window. A -newline also does a \fBclrtoeol\fR before moving. Tabs are considered -to be at every eighth column. If a character in \fIstr\fR is another -control character, it is drawn in the \fB^\fR\fIX\fR notation. -Calling \fBwinch\fR 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. +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 \fIy\fP, \fIx\fP, if specified). +The functions with \fIn\fP as the last argument +insert a leading substring of at most \fIn\fP characters. +If \fIn\fP<=0, then the entire string is inserted. +.PP +Special characters are handled as in \fBaddch\fP. .SH RETURN VALUE -All routines that return an integer return \fBERR\fR upon failure and OK (SVr4 -specifies only "an integer value other than \fBERR\fR") upon successful -completion, unless otherwise noted in the preceding routine descriptions. +All routines that return an integer return \fBERR\fP upon failure and \fBOK\fP +(SVr4 specifies only "an integer value other than \fBERR\fP") +upon successful completion, +unless otherwise noted in the preceding routine descriptions. +.PP +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. +.PP +Functions with a \*(``mv\*('' prefix first perform a cursor movement using +\fBwmove\fP, and return an error if the position is outside the window, +or if the window pointer is null. .SH NOTES -Note that all but \fBwinsnstr\fR may be macros. +Note that all but \fBwinsnstr\fP may be macros. .SH PORTABILITY These functions are described in the XSI Curses standard, Issue 4, which adds -const qualifiers to the arguments. The XSI Curses error conditions -\fBEILSEQ\fR and \fBEILOVERFLOW\fR associated with extended-level conformance -are not yet detected (this implementation does not yet support XPG4 multi-byte -characters). +const qualifiers to the arguments. +.LP +The Single Unix Specification, Version 2 states that +\fBinsnstr\fP and \fBwinsnstr\fP perform wrapping. +This is probably an error, since it makes this group of functions inconsistent. +Also, no implementation of curses documents this inconsistency. .SH SEE ALSO -\fBcurses\fR(3X), \fBcurs_clear\fR(3X), \fBcurs_inch\fR(3X). -.\"# -.\"# The following sets edit modes for GNU EMACS -.\"# Local Variables: -.\"# mode:nroff -.\"# fill-column:79 -.\"# End: +\fBcurses\fP(3X), +\fBcurs_util\fP(3X), +\fBcurs_clear\fP(3X), +\fBcurs_inch\fP(3X).