Alcor6L/PicoLisp/term
外观
< Alcor6L
此模块包含用于从 PicoLisp 访问 ANSI 兼容终端(和终端模拟器)的函数。
清除屏幕。
(term-clrscr)
从当前光标位置清除到行尾。
(term-clreol)
将光标移动到指定的坐标。
(term-moveto x y)
- x - 列(从 1 开始)
- y - 行(从 1 开始)
将光标向上移动。
(term-moveup delta)
- delta - 将光标向上移动的行数。
将光标向下移动。
(term-movedown delta)
- delta - 将光标向下移动的行数。
将光标向左移动。
(term-moveleft delta)
- delta - 将光标向左移动的列数。
将光标向右移动。
(term-moveright delta)
- delta - 将光标向右移动的列数。
获取终端中的行数。
(setq numlines (term-getlines))
返回
- numlines - 终端中的行数。
获取终端中的列数。
(setq numcols (term-getcols))
返回
- numcols - 终端中的列数。
在终端中写入一个或多个(PicoLisp)值。
(term-prinl [x y] any1 [any2 ... anyn])
- x(可选) - 在此列写入任何 PicoLisp 值。如果指定了 x,则也必须指定 y
- y(可选) - 在此行写入任何 PicoLisp 值。如果指定了 y,则也必须指定 x
- any1 - 要写入的第一个 PicoLisp 值(可以是数字、列表或瞬态符号)。
- any2(可选) - 要写入的第二个 PicoLisp 值。
- anyn(可选) - 要写入的第 n 个 PicoLisp 值。
获取光标的当前列。
(setq cx (term-getcx))
返回
- cx - 光标的列。
获取光标的当前行。
(setq cy (term-getcy))
返回
- cy - 光标的行。
从终端读取一个字符(一个按键)。
(setq ch (term-getchar ['mode]))
- mode(可选) - 终端输入模式。它可以是
*term-wait*
- 等待按键,然后返回它。这是未指定 mode 时的默认行为。*term-nowait*
- 如果终端上按下了键,则返回它,否则返回 NIL。
返回
- ch - 从终端读取的字符,或者如果没有字符可用,则为 NIL。'char' 可以是实际的 ASCII 字符,也可以是编码键盘上特殊键的'伪字符'。下表列出了特殊字符及其含义
键代码 | 意义 |
---|---|
KC_UP | 终端上的向上键 |
KC_DOWN | 终端上的向下键 |
KC_LEFT | 终端上的向左键 |
KC_RIGHT | 终端上的向右键 |
KC_HOME | 终端上的 HOME 键 |
KC_END | 终端上的 END 键 |
KC_PAGEUP | 终端上的 PAGE UP 键 |
KC_PAGEDOWN | 终端上的 PAGE DOWN 键 |
KC_ENTER | 终端上的 ENTER(CR)键 |
KC_TAB | 终端上的 TAB 键 |
KC_BACKSPACE | 终端上的 BACKSPACE 键 |
KC_ESC | 终端上的 ESC(转义)键 |