scrollok(3x) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

scrollok(3x)

curs_outopts(3x)                 Library calls                curs_outopts(3x)

NAME
       clearok,   idcok,   idlok,   immedok,   leaveok,  scrollok,  setscrreg,
       wsetscrreg - set curses output options

SYNOPSIS
       #include <ncursesw/curses.h>

       int clearok(WINDOW * win, bool bf);
       void idcok(WINDOW * win, bool bf);
       int idlok(WINDOW * win, bool bf);
       void immedok(WINDOW * win, bool bf);
       int leaveok(WINDOW * win, bool bf);
       int scrollok(WINDOW * win, bool bf);

       int setscrreg(int top, int bot);
       int wsetscrreg(WINDOW * win, int top, int bot);

DESCRIPTION
       These functions configure properties  of  curses  windows  that  affect
       their  manner of output.  Boolean-valued properties are initially FALSE
       except where noted.  endwin(3X) resets any terminal modes corresponding
       to these properties; an application need not restore their initial val‐
       ues.

   clearok
       Setting win's clearok property to TRUE causes the next wrefresh call on
       it to clear the terminal screen and redraw it entirely.  This  property
       is  useful  to  restore the contents of the screen (perhaps because an‐
       other process has written to the terminal), or in some cases to achieve
       a more pleasing visual  effect.   If  win  is  curscr  (see  curs_vari‐
       ables(3X)),  the  next  wrefresh call on any window causes the terminal
       screen to clear and redraw as above.  wrefresh resets this property  to
       FALSE.

   idcok
       (This  property  defaults TRUE.)  Setting win's idcok property to FALSE
       prevents curses from using the insert/delete character capabilities  of
       terminal types possessing them according to the terminfo database.

   idlok
       Setting  win's  idlok  property to TRUE causes curses to consider using
       the insert/delete line capabilities of terminal types  possessing  them
       according to the terminfo database.  Enable this option if the applica‐
       tion explicitly requires these operations, as a full-screen text editor
       might; otherwise the results may be visually annoying to the user.

   immedok
       If  immedok is called with TRUE as second argument, changes to the win‐
       dow image, such as those caused by waddch, wclrtobot, or  wscrl,  auto‐
       matically cause a call to wrefresh.  However, doing so may degrade per‐
       formance considerably when many such calls occur.  Calling immedok with
       FALSE  as  second  argument  restores  the  default behavior, deferring
       screen updates until a refresh is needed or explicitly directed by  the
       application.

   leaveok
       Normally, curses leaves the hardware cursor at the library's cursor lo‐
       cation  of  the  window being refreshed.  The leaveok option allows the
       cursor to be left wherever the update happens to leave it.  It is  use‐
       ful  for applications that do not employ a visible cursor, since it re‐
       duces the need for cursor motions.

   scrollok
       The scrollok option controls what happens when a window's cursor  moves
       off the edge of the window or scrolling region, either as a result of a
       newline  occurring on the bottom line, or writing to the last character
       of the last line.  If disabled (bf is FALSE), curses leaves the  cursor
       on  the  bottom  line  of  the window.  If enabled (bf is TRUE), curses
       scrolls the window up one line.  (To get the physical scrolling  effect
       on the terminal, the application must also enable idlok).

   setscrreg, wsetscrreg
       The  wsetscrreg  and setscrreg functions allow the application to set a
       software scrolling region in the specified window  or  stdscr,  respec‐
       tively.  The top and bot parameters are the line numbers of the top and
       bottom  margin of the scrolling region.  (Line 0 is the top line of the
       window.)  If this option and scrollok are enabled, an attempt  to  move
       off  the bottom margin line causes all lines in the scrolling region to
       scroll one line in the direction of the first line.  Only the  text  of
       the  window  is  scrolled.   (This  process  has nothing to do with the
       scrolling region capability of  the  terminal,  as  found  in  the  DEC
       VT100.)   If  idlok  is enabled and the terminal has either a scrolling
       region or insert/delete line capability, they will probably be used  by
       the output routines.)

RETURN VALUE
       The  functions  setscrreg and wsetscrreg return OK upon success and ERR
       upon failure.  All other routines that return an integer always  return
       OK.

       In ncurses, these functions fail if

       •   the curses screen has not been initialized,

       •   (for  functions  taking  a  WINDOW  pointer argument) win is a null
           pointer, or

       •   (for setscrreg and wsetscrreg) the function is passed arguments de‐
           scribing a scrolling region with limits  that  extend  outside  the
           window boundaries.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       box; cbp-1 | cbp-1 l | l .  ATTRIBUTE TYPE ATTRIBUTE VALUE = Availabil‐
       ity   library/ncurses = Stability Uncommitted

NOTES
       clearok,  leaveok, scrollok, idcok, and setscrreg may be implemented as
       macros.

       Unlike the other functions described by this page, setscrreg  does  not
       accept  a  pointer-to-WINDOW  parameter,  but  operates on stdscr.  Use
       wsetscrreg to configure the scrolling region of a selected window.

       The immedok routine is useful for windows that are used as terminal em‐
       ulators.

       Source code for open source software components in Oracle  Solaris  can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at:
       https://github.com/oracle/solaris-userland

       The original community source was downloaded from:
       https://invisible-mirror.net/archives/ncurses/cur‐
       rent/ncurses-6.5-20250614.tgz

       Further information about this software can be found on the open source
       community website at https://invisible-island.net/ncurses/.

PORTABILITY
       X/Open Curses Issue 4 describes these functions.  It specifies no error
       conditions for them.

       Some  historic  curses implementations, as an undocumented feature, did
       the  equivalent  of  “clearok(...,   1)”   when   touchwin(stdstr)   or
       clear(stdstr) were used.  This trick does not work with ncurses.

       Early  System V curses implementations specified that with scrollok en‐
       abled, any window modification triggering a scroll also forced a physi‐
       cal refresh.  X/Open Curses does not require this, and  ncurses  avoids
       doing so to better optimize vertical motions upon a wrefresh.

       X/Open Curses does not mention that the cursor should be made invisible
       as  a side-effect of leaveok.  SVr4 curses documentation notes this be‐
       havior, but the code neglects to implement  it.   Use  curs_set(3X)  to
       make the cursor invisible.

HISTORY
       4BSD (1980) introduced clearok, leaveok, and scrollok.

       SVr2 (1984) supplied idlok, setscrreg, and wsetscrreg.

       SVr3.1 (1987) implemented idcok and immedok.

       ncurses  formerly treated nl and nonl as both input and output options,
       but no longer; see curs_inopts(3X).

SEE ALSO
       curses(3X),    curs_addch(3X),    curs_clear(3X),     curs_initscr(3X),
       curs_refresh(3X), curs_scroll(3X), curs_variables(3X)


ncurses 6.5                       2025-04-05                  curs_outopts(3x)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3