X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Fcurs_print.3x;h=8bde817d92f01723103abfe8d1057295cdaba7e4;hp=20e9ce5354e5b04e38e390691b43c35cc6213c02;hb=HEAD;hpb=661078ddbde3ce0f3b06e95642fbb9b5fef7dca1 diff --git a/man/curs_print.3x b/man/curs_print.3x index 20e9ce53..3694beff 100644 --- a/man/curs_print.3x +++ b/man/curs_print.3x @@ -1,46 +1,89 @@ -.'" $Id: curs_print.3x,v 1.2 1997/12/06 22:07:19 tom Exp $ -.TH curs_print 3X "" +.\"*************************************************************************** +.\" Copyright 2018-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 * +.\" 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_print.3x,v 1.38 2024/03/16 15:35:01 tom Exp $ +.TH curs_print 3X 2024-03-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" .SH NAME -\fBmcprint\fR - ship binary data to printer +\fB\%mcprint\fP \- +write binary data to printer using \fIterminfo\fR capabilities .SH SYNOPSIS -\fB#include \fR - -\fBint mcprint(char *data, int len);\fR +.nf +\fB#include +.PP +\fBint mcprint(char *\fIdata\fP, int \fIlen\fP); +.fi .SH DESCRIPTION -This function uses the \fBmc5p\fR or \fBmc4\fR and \fBmc5\fR capabilities, +This function uses the \fBmc5p\fP or \fBmc4\fP and \fBmc5\fP capabilities, if they are present, to ship given data to a printer attached to the terminal. - -Note that the \fBmcprint\fR code has no way to do flow control with the printer -or to know how much buffering it has. Your application is responsible for +.PP +Note that the \fB\%mcprint\fP code has no way +to do flow control with the printer +or to know how much buffering it has. +Your application is responsible for keeping the rate of writes to the printer below its continuous throughput rate -(typically about half of its nominal cps rating). Dot-matrix printers and +(typically about half of its nominal cps rating). +Dot-matrix printers and 6-page-per-minute lasers can typically handle 80cps, so a good conservative rule of thumb is to sleep for a second after shipping each 80-character line. - +. .SH RETURN VALUE -The \fBmcprint\fR function returns \fBERR\fR if the write operation aborted -for some reason. In this case, errno will contain either an error associated -with \fBwrite(2)\fR or one of the following: +The \fB\%mcprint\fP function returns \fBERR\fP if the write operation aborted +for some reason. +In this case, \fB\%errno\fP will contain either an error associated +with \fBwrite\fP(2) or one of the following: .TP 5 -ENODEV -Capabilities for printer redirection don't exist. +\fBENODEV\fP +Capabilities for printer redirection do not exist. .TP 5 -ENOMEM +\fBENOMEM\fP Couldn't allocate sufficient memory to buffer the printer write. - -When \fBmcprint\fR succeeds, it returns the number of characters actually +.PP +When \fB\%mcprint\fP succeeds, it returns the number of characters actually sent to the printer. +.SH EXTENSIONS +\fB\%mcprint\fP was designed for +\fB\%ncurses\fP(3X), +and was not found in SVr4 +.IR curses , +4.4BSD +.IR curses , +or any other previous curses implementation. .SH PORTABILITY -The \fBmcprint\fR call was designed for \fBncurses\fR(3X), and is not found -in SVr4 curses, 4.4BSD curses, or any other previous version of curses. +Applications employing this +.I \%ncurses +extension should condition its use on the visibility of the +.B \%NCURSES_VERSION +preprocessor macro. .SH BUGS -Padding in the \fBmc5p\fR, \fBmc4\fR and \fBmc5\fR capabilities will not be -interpreted. +Padding in the +\fBmc5p\fP, +\fBmc4\fP, and +\fBmc5\fP capabilities is not interpreted. .SH SEE ALSO -\fBcurses\fR(3X)\fR -.\"# -.\"# The following sets edit modes for GNU EMACS -.\"# Local Variables: -.\"# mode:nroff -.\"# fill-column:79 -.\"# End: +\fB\%curses\fP(3X)