mirror of
https://github.com/PDP-10/its.git
synced 2026-01-11 23:53:12 +00:00
87 lines
4.5 KiB
Plaintext
Executable File
87 lines
4.5 KiB
Plaintext
Executable File
Cursorpos in Lisp:
|
||
|
||
CURSORPOS is an LSUBR of 0-3 evaluated arguments. If no arguments are
|
||
given, then the cursor coordinates of the default output TTY are returned
|
||
as a dotted pair in the form (line# . column#). If args are specified,
|
||
then the result is determined as shown below (returns "T" on success, "NIL"
|
||
on failure) and if the last arg is a TTY output file then it is used
|
||
instead of the default. Note that the "T" option alone will return the
|
||
coordinates of TTY "T" rather than homing the cursor; see "T" below. With
|
||
two numeric args given, the cursor is moved to the ARG1th line and ARG2th
|
||
column.
|
||
|
||
These are the special codes used for (CURSORPOS [<options>]):
|
||
|
||
A Advance to a fresh line. If at beginning of line do nothing,
|
||
else act like a CRLF.
|
||
B move Backward. Decrements the horizontal position.
|
||
If the horizontal position is 0, it is set to the horizontal
|
||
screen size (wraparound from left margin to right margin).
|
||
C Clear screen. The cursor goes to the upper left corner and
|
||
the whole screen is cleared. On a printing tty (%TOMVU is 0)
|
||
a CRLF is output, since "clearing the screen" is undefined.
|
||
If "C" is output to the echo area, only the echo area is
|
||
cleared, and only the echo area cursor is moved.
|
||
D move Down. The vertical position is incremented. If it becomes
|
||
equal to the vertical screen size, it is set to 0.
|
||
E clear to Eof. The remainder of the current line, and all lower
|
||
lines, are erased. The cursor doesn't move.
|
||
F move Forward. The horizontal position is incremented. At the
|
||
end of the line it wraps around to the beginning of the
|
||
same line.
|
||
H set Horizontal position. Takes one extra argument: it
|
||
should be the desired horizontal position setting.
|
||
The vertical position is not changed. An attempt to
|
||
set the position beyond a margin will position it at the
|
||
margin.
|
||
I Outputs a one-position printing character. Takes an extra
|
||
argument: the numeric ASCII code of the desired character.
|
||
K Kill (erase) the character the cursor points at. The cursor
|
||
does not move. The position erased is the one that would be
|
||
written in next by ordinary output.
|
||
L clear Line. The current line, starting with the position that
|
||
the cursor points at, is erased. The cursor does not move.
|
||
M (More) hang up until a character is read in then home-up.
|
||
N (No home-up) similar, but don't home up after the character is
|
||
read.
|
||
P output a .
|
||
Q output a .
|
||
R Restore cursor position. The cursor is set to the most
|
||
recently saved value.
|
||
S Save cursor position. Remembers the current cursor position
|
||
for use with "R". There is no stack for saved cursor
|
||
positions; only the most recent saved position is remembered.
|
||
T go to Top of screen (home up). The cursor is positioned at the
|
||
upper left corner of the screen. Note: since "T" will be
|
||
taken to mean output TTY "T" an alternate form must be used.
|
||
(CURSORPOS 'top), (CURSORPOS 84.), and (CURSORPOS 'T 'T) will
|
||
all work.
|
||
U move Up. The vertical position is decremented. If it was 0,
|
||
it becomes equal to the vertical size minus one.
|
||
V set Vertical position. Takes an argument--the desired vertical
|
||
position. An attempt to set the cursor beyond the top or bottom
|
||
margin will position it as far as allowed in the desired direction.
|
||
Similarly, "V" will not move the echo area cursor outside the echo
|
||
area. Note that vertical positions in the echo area are to be
|
||
specified relative to the top of the echo area.
|
||
X backspace and erase one character ("B" followed by "K").
|
||
Z home down. The cursor is positioned at the lower left corner.
|
||
] obsolete - same as "L".
|
||
[ insert line. The current line and all lines below it are
|
||
pushed down one slot. A blank line appears at the current
|
||
position. The cursor does not move. Works only on terminals
|
||
which have %TOLID set ("\" also). See :TTYVAR TTYOPT
|
||
for information on %TOLID.
|
||
\ delete line. The current line disappears, and all the lines
|
||
below it move up by one position. The bottom line becomes
|
||
blank. The cursor does not move.
|
||
^ insert character. All the characters after the cursor move
|
||
right one position. The last one moves off the right margin
|
||
and disappears. A space appears at the cursor, which does not
|
||
move. Works only on terminals which have %TOCID set ("_" also).
|
||
See :TTYVAR TTYOPT for information on %TOCID.
|
||
_ delete character. The character at the cursor disappears, and
|
||
all the rest of the characters on the line move left one
|
||
position. A space appears at the end of the line. The cursor
|
||
does not move. Note: it's an underscore, not hyphen.
|