X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Fcurs_insstr.3x;h=a4c8c6220528b386ef7ced5c49a516083dc4e76f;hp=ed1e13eaecb0fb3de3282dc7fda0b1f2cbc0e654;hb=9f479192e3ca3413d235c66bf058f8cc63764898;hpb=46722468f47c2b77b3987729b4bcf2321cccfd01 diff --git a/man/curs_insstr.3x b/man/curs_insstr.3x index ed1e13ea..a4c8c622 100644 --- a/man/curs_insstr.3x +++ b/man/curs_insstr.3x @@ -1,5 +1,6 @@ .\"*************************************************************************** -.\" Copyright (c) 1998,2000,2001 Free Software Foundation, Inc. * +.\" Copyright 2019-2020,2021 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,8 +27,12 @@ .\" authorization. * .\"*************************************************************************** .\" -.\" $Id: curs_insstr.3x,v 1.12 2001/11/03 19:59:03 tom Exp $ +.\" $Id: curs_insstr.3x,v 1.27 2021/06/17 21:26:02 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, @@ -36,60 +41,65 @@ \fBmvinsstr\fR, \fBmvinsnstr\fR, \fBmvwinsstr\fR, -\fBmvwinsnstr\fR - insert string before cursor in a \fBcurses\fR window +\fBmvwinsnstr\fR \- insert string before cursor in a \fBcurses\fR window .SH SYNOPSIS \fB#include \fR .br -\fBint insstr(const char *str);\fR +\fBint insstr(const char *\fP\fIstr\fP\fB);\fR .br -\fBint insnstr(const char *str, int n);\fR +\fBint insnstr(const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR .br -\fBint winsstr(WINDOW *win, const char *str);\fR +\fBint winsstr(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIstr\fP\fB);\fR .br -\fBint winsnstr(WINDOW *win, const char *str, int n);\fR +\fBint winsnstr(WINDOW *\fP\fIwin\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR +.sp +\fBint mvinsstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB);\fR .br -\fBint mvinsstr(int y, int x, const char *str);\fR +\fBint mvinsnstr(int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\fB);\fR .br -\fBint mvinsnstr(int y, int x, const char *str, int n);\fR +\fBint mvwinsstr(WINDOW *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\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 *\fP\fIwin\fP\fB, int \fP\fIy\fP\fB, int \fP\fIx\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIn\fP\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\fR, \fIx\fR, if specified). +The functions 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. +.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\fR upon failure and \fBOK\fP +(SVr4 specifies only "an integer value other than \fBERR\fR") +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. .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 multibyte -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\fR(3X), +\fBcurs_util\fR(3X), +\fBcurs_clear\fR(3X), +\fBcurs_inch\fR(3X).