- lizexuan's blog
ANSI 序列详表
- @ 2024-4-13 8:03:22
-
光标控制:
\033[<n>A:向上移动 n 行\033[<n>B:向下移动 n 行\033[<n>C:向右移动 n 列\033[<n>D:向左移动 n 列\033[<row>;<col>H或\033[<row>;<col>f:将光标移动到指定行列\033[?25l:隐藏光标\033[?25h:显示光标\033[s:保存光标位置\033[u:恢复光标位置
-
清除操作:
\033[J:清除从光标位置到屏幕底部的内容\033[1J:清除从屏幕顶部到光标位置的内容\033[2J:清除整个屏幕内容\033[K:清除从光标位置到当前行尾的内容\033[1K:清除从行首到光标位置的内容\033[2K:清除整行内容
-
颜色和样式控制:
\033[<n>m:设置字体样式,例如 0:正常,1:粗体,2:弱下划线等\033[38;2;<r>;<g>;<b>m:设置 RGB 前景色\033[48;2;<r>;<g>;<b>m:设置 RGB 背景色
-
其他功能:
\033]0;Your Title Here\007:设置终端标题为 "Your Title Here"\033[8;rows;cols;t:设置终端窗口的行数和列数\033[7h:启用换行模式\033[7l:禁用换行模式
-
文本属性控制:
\033[0m:重置所有属性\033[1m:设置粗体\033[2m:设置弱体或者降低亮度\033[3m:斜体\033[4m:下划线\033[5m:闪烁\033[7m:反显(前景色和背景色交换)\033[8m:隐藏(不可见,但仍占位)
-
颜色控制:
\033[<n>m:设置颜色或者属性,其中 n 可以是以下值之一:- 30-37:设置前景色(30:黑色,31:红色,32:绿色,33:黄色,34:蓝色,35:洋红色,36:青色,37:白色)
- 90-97:设置亮色前景色
- 40-47:设置背景色(与前景色对应)
- 100-107:设置亮色背景色
-
光标位置获取:
\033[6n:请求终端发送光标位置(用于获取光标位置)
-
滚动区域设置:
\033[<start>;<end>r:设置滚动区域为从行 <start> 到行 <end>,默认是整个屏幕
-
删除和插入:
\033[@:在光标位置插入空白字符\033[P:删除光标位置处的字符
-
模式设置:
\033[=1h:启用应用程序键盘模式\033[=1l:禁用应用程序键盘模式
-
图形和图标:
\033[A:绘制箭头向上\033[B:绘制箭头向下\033[C:绘制箭头向右\033[D:绘制箭头向左\033[E:移到下一行的开头\033[F:移到上一行的开头\033[G:移到所在行的开头\033[H:移到第一个位置\033[I:向右滚动\033[J:清除屏幕\033[K:清除到行末
-
窗口控制:
\033[3J:清除整个屏幕并移动光标到 (0,0) 位置\033[4;10H:将光标移到第 4 行,第 10 列\033[2J\033[0;0H:清屏并将光标移到左上角
-
响铃和警告:
\007:发出响铃声(可触发警告)
-
自定义字符集:
\033%G:进入带有 8 位字符集的 G0 图形字符集\033%0:将 G0 字符集设置为 ASCII 字符集
-
模式设置和恢复:
\033[?7h:开启自动换行模式\033[?7l:关闭自动换行模式\033[?25h:显示光标\033[?25l:隐藏光标\033[?1049h:保存当前屏幕内容并清空屏幕\033[?1049l:恢复之前保存的屏幕内容
-
UTF-8 支持:
\033%G:进入 UTF-8 模式\033%@:退出 UTF-8 模式
-
选择性参数:
\033[<n1>;<n2>H:设置光标位置为第 n1 行,第 n2 列\033[<n1>;<n2>f:同上,设置光标位置
-
查询终端状态:
\033[c:请求终端发送其属性\033[0c:终端回应设备准备就绪
-
键盘和鼠标输入:
\033[?1000h:开启鼠标报告模式\033[?1000l:关闭鼠标报告模式
-
自定义动作:
\033[<n>q:设置键盘 LED,其中 n 可以是 0、1、2 分别对应滚动锁定、数值锁定、大写锁定
-
颜色和样式控制:
\033[<n>m:设置文本属性,其中 n 可以是 0(重置所有属性)、1(粗体)、2(暗体)、3(斜体)、4(下划线)、5(闪烁)、7(反显)、8(隐藏)、9(删除线)、22(取消粗体)、23(取消斜体)、24(取消下划线)、25(取消闪烁)、27(取消反显)、28(取消隐藏)、29(取消删除线)\033[<n1>;<n2>m:设置前景色为 n1,背景色为 n2,其中 n 可以是 30-37(前景色),40-47(背景色),以及 38 和 48(用于指定更复杂的颜色设置)\033[38;2;<r>;<g>;<b>m:设置 RGB 前景色\033[48;2;<r>;<g>;<b>m:设置 RGB 背景色
-
光标位置和移动:
\033[s:保存当前光标位置\033[u:恢复之前保存的光标位置\033[<n>A:向上移动 n 行\033[<n>B:向下移动 n 行\033[<n>C:向右移动 n 列\033[<n>D:向左移动 n 列
-
图形和绘制:
\033(0:进入 ACS 模式(ASCII 字符集)\033(B:退出 ACS 模式\033[<n1>;<n2>r:定义一个矩形区域,其中 n1 和 n2 是左上角和右下角的坐标
-
删除和清除:
\033[<n>J:清除屏幕或行,其中 n 可以是 0(清除从光标到屏幕底部的内容)、1(清除从光标到屏幕顶部的内容)、2(清除整个屏幕)\033[<n>K:清除行,其中 n 可以是 0(清除从光标到行尾的内容)、1(清除从行首到光标的内容)、2(清除整行)
-
滚动和区域设置:
\033[<n1>;<n2>r:设置滚动区域,其中 n1 和 n2 分别是滚动区域的起始行和结束行\033D:向上滚动一行\033M:向下滚动一行
-
标题和图标:
\033]0;<string>\007:设置窗口标题\033]2;<string>\007:设置图标名称
-
字体设置:
\033[<n>;{...}m:设置字体属性,其中 n 可以是 0(默认)、1(粗体)、2(暗体)、3(斜体)、4(下划线)、5(闪烁)、6(闪烁)、7(反显)、8(隐藏)
-
键盘输入模式:
\033[?25h:显示光标\033[?25l:隐藏光标\033[?12l:光标不可见但仍能接受输入
-
其他控制:
\033[3g:清除当前 Tab 设置\033[3J:清除整个屏幕,然后打印光标\033[4m:启用下划线
-
其他特殊序列:
\033[6n:请求光标位置(用于获取光标当前所在的行和列)\033[?1049h:保存当前屏幕并清除屏幕\033[?1049l:恢复保存的屏幕