Lumesh 控制台操作模块使用文档
模块路径:console
功能说明:提供终端控制、光标操作、键盘输入等控制台交互功能。支持两种调用方式:
- 函数式调用:
console.func(arg0, arg1...)
- 命令式调用:
console.func arg0 arg1...
函数分类及详细说明
一、终端基本信息
console.width
功能:获取终端宽度(列数)
参数:无
返回值:integer
(失败返回none
)
示例:console.width() # => 120
console.height
功能:获取终端高度(行数)
参数:无
返回值:integer
(失败返回none
)
示例:console.height() # => 40
二、终端控制
console.write
功能:在指定位置输出文本
参数:x: integer
(列位置)y: integer
(行位置)text: string
(要输出的内容)
返回值:none
示例:
console.write 10 5 "Hello" # 在第5行第10列输出"Hello"
console.title
功能:设置终端窗口标题
参数:title: string
返回值:none
示例:console.title "My App"
console.clear
功能:清空终端屏幕
参数:无
返回值:none
示例:console.clear()
console.flush
功能:强制刷新输出缓冲区
参数:无
返回值:none
示例:console.flush()
三、终端模式控制
console.mode_raw
功能:启用原始输入模式(禁用行缓冲)
参数:无
返回值:none
示例:console.mode_raw()
console.mode_normal
功能:禁用原始输入模式(启用行缓冲)
参数:无
返回值:none
示例:console.mode_normal()
console.screen_alternate
功能:启用备用屏幕(保留主屏幕内容)
参数:无
返回值:none
示例:console.screen_alternate()
console.screen_normal
功能:禁用备用屏幕(返回主屏幕)
参数:无
返回值:none
示例:console.screen_normal()
四、光标控制
console.cursor_to
功能:移动光标到指定位置
参数:x: integer
(列位置)y: integer
(行位置)
返回值:none
示例:
console.cursor_to 10 5
方向移动:
函数 参数 功能 console.cursor_up()
lines: integer
上移N行 console.cursor_down()
lines: integer
下移N行 console.cursor_left()
cols: integer
左移N列 console.cursor_right()
cols: integer
右移N列 示例:
console.cursor_down 3 # 下移3行
console.cursor_save
功能:保存当前光标位置
参数:无
返回值:none
示例:console.cursor_save()
console.cursor_restore
功能:恢复保存的光标位置
参数:无
返回值:none
示例:console.cursor_restore()
console.cursor_hide
功能:隐藏光标
参数:无
返回值:none
示例:console.cursor_hide()
console.cursor_show
功能:显示光标
参数:无
返回值:none
示例:console.cursor_show()
五、键盘输入
console.read_line
功能:读取一行输入(显示输入内容)
参数:无
返回值:string
示例:let input = console.read_line()
console.read_password
功能:读取密码(隐藏输入内容)
参数:无
返回值:string
示例:let pwd = console.read_password()
console.read_key
功能:读取单个按键
参数:无
返回值:string
(特殊按键的转义序列)
示例:let key = console.read_key()
特殊按键常量:
console.keys.enter # 回车键
console.keys.backspace # 退格键
console.keys.tab # Tab键
console.keys.esc # ESC键
console.keys.up # 上箭头
console.keys.down # 下箭头
console.keys.left # 左箭头
console.keys.right # 右箭头
console.keys.f1 # F1功能键
... # 其他功能键类似
通用规则
坐标系统:
- 左上角为原点 (0, 0)
- X轴向右递增(列)
- Y轴向下递增(行)
错误处理:
- 参数类型错误时抛出异常
- 终端操作失败返回
none
ANSI转义序列:
所有控制功能均使用标准ANSI转义序列实现