[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI

光标位置

回忆上次内容

  • 上次了解了 新的转义模式
    • \033 逃逸控制字符 escape
      • 这个字符 让字符串 退出标准输出流
      • 进行控制信息的设置
        • 可以设置 光标输出的位置
  • ASR33中的ALT MODE
    • 是 今天的ESC键吗????🤔

查询文档

  • 最开始的时候
    • 还没有esc键
  • 使用ctrl + shift + k
    • 实现esc效果
  • 后来的键盘
    • 有了 实体的esc键

escape 跳出

  • 现在键盘都有这个按键
    • 一般在左上角
    • 用来
      • 退出当前应用/游戏
      • 跳出菜单
  • 上图esc
    • 1 的左下
    • Q 的左边
  • esc可以
    • 从当前的纯文字标准输出流里面
    • 逃(escape)出来
    • 进行控制信息的传输

键盘的进化过程

  • 后来连接主机(main frame)用的是
    • 终端(terminal)
  • 当年最流行的终端 型号是
    • DEC VT100
  • esc1 左边
    • 还没有 出现在最左上的位置

位置的变化

  • 玩一些terminal上面的游戏时
    • 可以用 esc 退出游戏环境
      • 进入菜单
      • 进行设置、存盘、读档、退出之类的操作
  • 知道 什么时候退
    • 比知道 怎么玩重要😄
  • 键盘还没有 统一的标准
    • 功能键 F1-F10
      • 在 最左边

标准键盘

  • 101键盘布局 成为经典
    • 左上角是esc 标准位置
  • 后来放在 左上角
    • 用边距和F1 拉开距离
    • 体现escape重要性

行业标准

  • 键盘开始有了标准布局
    • 并形成了工业标准
  • 可以在ascii字符集里面
    • 找到esc 这个字符 么?

esc

  • 在下图中尝试找到esc
  • esc 对应
    • (001 1011)2进制
  • 再到ascii应用中
    • 找一下esc?

ascii

  • 使用apt

    • 安装ascii这个应用

      sudo apt install ascii

  • 找到这个字符

  • 这个esc对应的是
    • (27)10进制
    • (1B)16进制
  • 这个(1B)16进制
    • 是怎么得到的呢?

1b

  • 使用hex函数
    • 可以得到
      • 数字的十六进制形式字符串
      • hexadecimal
  • 如果是八进制呢?

不同进制 表现形式

  • (1b)16进制
    • 对应着(27)10进制
    • 对应着(33)8进制
  • 上面的分别是
    • 十六进制形态
    • 十进制形态
    • 八进制形态
  • 正如下面
  • 不同的形态都可以
    • 用来转义吗?

不同形态

  • 不同的转义方式
    • 不影响功能
  • 使用转义序列
    • 或者16进制转移方式
    • 或者8进制转移方式
  • 在输出时
    • 没有差别
    • 都是换行效果

escape控制码大全

  • CSI 是
    • Control Sequence Introducer
    • 就是esc加[
      • esc就是\033
      • 用的是几进制的形式?
  • 可以有各种方式
    • 控制位置

\033

  • 八进制的 形式
  • \033[nA 光标上移 n 行
  • \033[nB 光标下移 n 行
  • \033[nC 光标右移 n 行
  • \033[nD 光标左移 n 行
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
  • \033[K 清除从光标到行尾的内容
  • \033[s 保存光标位置
  • \033[u 恢复光标位置
  • \033[?25l 隐藏光标
  • \033[?25h 显示光标

光标的自由

  • 输出字符的位置
    • 以前是固定的
    • 仿佛被牢牢锁住
  • 真的能 挣脱固定位置的锁链 吗?
  • 好期待?

总结

  • 本次了解了键盘演化的过程
    • ESC 从 组合键
    • 到 独立按键
相关推荐
卢锡荣11 小时前
Type-c OTG数据与充电如何进行交互使用应用讲解
c语言·开发语言·计算机外设·电脑·音视频
goodmao12 小时前
【macOS】【mouse】设置鼠标大小
macos·计算机外设·鼠标·mouse
开开心心就好18 小时前
键盘映射工具改键位,绿色版设置后重启生效
网络·windows·tcp/ip·pdf·计算机外设·电脑·excel
卢锡荣18 小时前
Type-c小家电性价比方案讲解LDR系列
网络·人工智能·计算机外设·电脑
春日见2 天前
win11 分屏设置
java·开发语言·驱动开发·docker·单例模式·计算机外设
TESmart碲视2 天前
如何用一套键盘鼠标切换多个输入设备?TESmart KVM热键工作原理深度解析.一份涵盖设计原理、使用方法与兼容性的完整技术指南
游戏·macos·计算机外设·kvm切换器·双屏kvm切换器
JosieBook2 天前
【Vue】13 Vue技术—— Vue 中的键盘事件处理详解
javascript·vue.js·计算机外设
Hody913 天前
【XR开发系列】与玩家交互 - 用键盘控制小球移动
计算机外设·交互
一起养小猫5 天前
Flutter for OpenHarmony 实战:双控制系统实现(按钮+键盘)
android·flutter·计算机外设·harmonyos
cong*5 天前
搜狗输入法云计算代理导致Windows 10鼠标指针不停转圈的解决方案
windows·计算机外设