32.1. Random Screen Access

Platform Dependent: UNIX, Win32 platforms only.

(SCREEN:MAKE-WINDOW)
returns a WINDOW-STREAM. As long as this stream is open, the terminal is in cbreak/noecho mode. *TERMINAL-IO* should not be used for input or output during this time. (Use EXT:WITH-KEYBOARD and EXT:*KEYBOARD-INPUT* instead.)
(SCREEN:WITH-WINDOW . body)
binds SCREEN:*WINDOW* to a WINDOW-STREAM and executes body. The stream is guaranteed to be closed when the body is left. During its execution, *TERMINAL-IO* should not be used, as above.
(SCREEN:WINDOW-SIZE window-stream)
returns the window's size, as two values: height (= ymax+1) and width (= xmax+1).
(SCREEN:WINDOW-CURSOR-POSITION window-stream)
returns the position of the cursor in the window, as two values: line (≥0, ≤ymax, 0 means top), column (≥0, ≤xmax, 0 means left margin).
(SCREEN:SET-WINDOW-CURSOR-POSITION window-stream line column)
sets the position of the cursor in the window.
(SCREEN:CLEAR-WINDOW window-stream)
clears the window's contents and puts the cursor in the upper left corner.
(SCREEN:CLEAR-WINDOW-TO-EOT window-stream)
clears the window's contents from the cursor position to the end of window.
(SCREEN:CLEAR-WINDOW-TO-EOL window-stream)
clears the window's contents from the cursor position to the end of line.
(SCREEN:DELETE-WINDOW-LINE window-stream)
removes the cursor's line, moves the lines below it up by one line and clears the window's last line.
(SCREEN:INSERT-WINDOW-LINE window-stream)
inserts a line at the cursor's line, moving the lines below it down by one line.
(SCREEN:HIGHLIGHT-ON window-stream)
switches highlighted output on.
(SCREEN:HIGHLIGHT-OFF window-stream)
switches highlighted output off.
(SCREEN:WINDOW-CURSOR-ON window-stream)
makes the cursor visible, a cursor block in most implementations.
(SCREEN:WINDOW-CURSOR-OFF window-stream)
makes the cursor invisible, in implementations where this is possible.

These notes document CLISP version 2.49.93+Last modified: 2018-02-19