Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Alcor6L/PicoLisp/term

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

This module contains functions for accessing ANSI-compatible terminals (and terminal emulators) from PicoLisp. Functions term-clrscr Clear the screen. (term-clrscr) term-clreol Clear from the current cursor position to the end of the line. (term-clreol) term-moveto Move the cursor to the specified coordinates. (term-moveto x y) x - the column (starting with 1) y - the line (starting with 1) term-moveup Move the cursor up. (term-moveup delta) delta - number of lines to move the cursor up. term-movedown Move the cursor down. (term-movedown delta) delta - number of lines to move the cursor down. term-moveleft Move the cursor left. (term-moveleft delta) delta - number of columns to move the cursor left. term-moveright Move the cursor right. (term-moveright delta) delta - number of columns to move the cursor right. term-getlines Get the number of lines in the terminal. (setq numlines (term-getlines)) Returns: numlines - the number of lines in the terminal. term-getcols Get the number of columns in the terminal. (setq numcols (term-getcols)) Returns: numcols - The number of columns in the terminal. term-prinl Write one or more (PicoLisp) values in the terminal. (term-prinl [x y] any1 [any2 ... anyn]) x (optional) - write any PicoLisp value at this column. If x is specified, y must also be specified y (optional) - write any PicoLisp value at this line. If y is specified, x must also be specified any1 - the first PicoLisp value to write (could be a number, a list or a transient symbol). any2 (optional) - the second PicoLisp value to write. anyn (optional) - the nth PicoLisp value to write. term-getcx Get the current column of the cursor. (setq cx (term-getcx)) Returns: cx - The column of the cursor. term-getcy Get the current line of the cursor. (setq cy (term-getcy)) Returns: cy - The line of the cursor. term-getchar Read a char (a key press) from the terminal. (setq ch (term-getchar ['mode])) mode (optional) - terminal input mode. It can be either: *term-wait* - wait for a key to be pressed, then return it. This is the default behavior if mode is not specified. *term-nowait* - if a key was pressed on the terminal return it, otherwise return NIL. Returns: ch - The char read from a terminal or NIL if no char is available. The 'char' can be an actual ASCII char, or a 'pseudo-char' which encodes special keys on the keyboard. The list of the special chars and their meaning is given in the table below: Key code MeaningKC_UP the UP key on the terminalKC_DOWN the DOWN key on the terminalKC_LEFT the LEFT key on the terminalKC_RIGHT the RIGHT key on the terminalKC_HOME the HOME key on the terminalKC_END the END key on the terminalKC_PAGEUP the PAGE UP key on the terminalKC_PAGEDOWN the PAGE DOWN key on the terminalKC_ENTER the ENTER (CR) key on the terminalKC_TAB the TAB key on the terminalKC_BACKSPACE the BACKSPACE key on the terminalKC_ESC the ESC (escape) key on the terminal