光标位置 回忆上次内容
  • 上次了解了 新的转义模式
  • \033 逃逸控制字符 escape
  • 这个字符 让字符串 退出标准输出流
  • 进行控制信息的设置
  • 可以设置 光标输出的位置
 
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • ASR33中的ALT MODE
  • 是 今天的ESC键吗????
 

 
添加图片注释,不超过 140 字(可选)
查询文档

 
添加图片注释,不超过 140 字(可选)
 
  • 最开始的时候
  • 还没有esc键
 
  • 使用ctrl + shift + k
  • 实现esc效果
 
  • 后来的键盘
  • 有了 实体的esc键
 
escape 跳出
  • 现在键盘都有这个按键
  • 一般在左上角
  • 用来
  • 退出当前应用/游戏
  • 跳出菜单
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 上图esc在
  • 1 的左下
  • Q 的左边
 
  • esc可以
  • 从当前的纯文字标准输出流里面
  • 逃(escape)出来
  • 进行控制信息的传输
 
键盘的进化过程
  • 后来连接主机(main frame)用的是
  • 终端(terminal)
 
  • 当年最流行的终端 型号是
  • DEC VT100
 

 
添加图片注释,不超过 140 字(可选)
 
  • esc 在1 左边
  • 还没有 出现在最左上的位置
 
位置的变化
  • 玩一些terminal上面的游戏时
  • 可以用 esc 退出游戏环境
  • 进入菜单
  • 进行设置、存盘、读档、退出之类的操作
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 知道 什么时候退
  • 比知道 怎么玩更重要
 
  • 键盘还没有 统一的标准
  • 功能键 F1-F10
  • 在 最左边
 
 
标准键盘
  • 101键盘布局 成为经典
  • 左上角是esc 标准位置
 

 
添加图片注释,不超过 140 字(可选)
 
  • 后来放在 左上角
  • 用边距和F1 拉开距离
  • 体现escape重要性
 
行业标准
  • 键盘开始有了标准布局
  • 并形成了工业标准
 

 
添加图片注释,不超过 140 字(可选)
 
  • 可以在ascii字符集里面
  • 找到esc 这个字符 么?
 
esc
  • 在下图中尝试找到esc

 
添加图片注释,不超过 140 字(可选)
 
  • esc 对应
  • (001 1011)2进制
 
  • 再到ascii应用中
  • 找一下esc?
 
ascii
  • 使用apt
  • 安装ascii这个应用
 
sudo apt install ascii
  • 找到这个字符

 
添加图片注释,不超过 140 字(可选)
 
  • 这个esc对应的是
  • (27)10进制
  • (1B)16进制
 
  • 这个(1B)16进制
  • 是怎么得到的呢?
 
1b
  • 使用hex函数
  • 可以得到
  • 数字的十六进制形式字符串
  • hexadecimal
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 如果是八进制呢?

 
添加图片注释,不超过 140 字(可选)
不同进制 表现形式
  • (1b)16进制
  • 对应着(27)10进制
  • 对应着(33)8进制
 

 
添加图片注释,不超过 140 字(可选)
 
  • 上面的分别是
  • 十六进制形态
  • 十进制形态
  • 八进制形态
 
  • 正如下面

 
添加图片注释,不超过 140 字(可选)
 
  • 不同的形态都可以
  • 用来转义吗?
 
不同形态
  • 不同的转义方式
  • 不影响功能
 

 
添加图片注释,不超过 140 字(可选)
 
  • 使用转义序列
  • 或者16进制转移方式
  • 或者8进制转移方式
 

 
添加图片注释,不超过 140 字(可选)
 
  • 在输出时
  • 没有差别
  • 都是换行效果
 
escape控制码大全
  • CSI 是
  • Control Sequence Introducer
  • 就是esc加[
  • esc就是\033
  • 用的是几进制的形式?
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 可以有各种方式
  • 控制位置
 
\033
  • 八进制的 形式

 
添加图片注释,不超过 140 字(可选)
 
  • \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 显示光标
光标的自由
  • 输出字符的位置
  • 以前是固定的
  • 仿佛被牢牢锁住
 

 
添加图片注释,不超过 140 字(可选)
 
  • 真的能 挣脱固定位置的锁链 吗?

 
添加图片注释,不超过 140 字(可选)
 
  • 好期待?
总结
  • 本次了解了键盘演化的过程
  • ESC 从 组合键
  • 到 独立按键
 

 
添加图片注释,不超过 140 字(可选)
 
  • ESC 的作用
  • 是 进入控制序列
  • 配置控制信息
 
  • 控制信息
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
 


[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI的更多相关文章

  1. duilib WindowImplBase BUG修复 --- 按一次ESC键, 关闭多个窗口

    BUG造成的影响 继承自WindowImplBase的窗口类, 如果没有重写重写ResponseDefaultKeyEvent而由WindowImplBase默认处理的话, 会导致按一次有ESC键, ...

  2. qt之esc键

    Esc键对大家来说实在熟悉不过的了,在Qt中Esc键也会默认的进行一些事件的触发,今天对Esc键测试了一下,突然发现不像我想象的那样,在QDialog中按下Esc键会默认调用reject()方法而不是 ...

  3. QDialog之屏蔽Esc键

    简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 简述 源码分析 事件过滤器 事件 ...

  4. MFC非模态对话框中屏蔽ESC键

    个人的编程经验认为:对于非模态对话框,按下ESC键和点击红叉都会响应OnCancel()函数,而不会去响应OnClose()函数. 我们都知道,如果想屏蔽Enter键,只须重写OnOK()函数即可(重 ...

  5. 【Qt】QDialog之屏蔽Esc键【转】

    简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 简述 源码分析 事件过滤器 事件 ...

  6. MFC对话框中解决回车键、ESC键退出的方法

    BOOL CYourDlg::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==WM_KEYDOWN&&pMsg->wP ...

  7. MFC对话框屏蔽Enter和ESC键

    MFC对话框屏蔽Enter和ESC键参考:http://www.docin.com/p-122354833.html 方法一重载PreTranslateMessage函数 BOOL CXXDlg::P ...

  8. Oracle在linux下命令行无法使用退格键退格,无法使用上下键切换历史命令的解决办法

    使用xshell等客户端登录oracl时在命令行无法使用退格键也无法使用上下键切换历史命令可以使用rlwrap解决 1,linux环境 2,下载rlwrap wget http://files.cnb ...

  9. 汇编题目:在屏幕中间显示a-z的所有字母,按ESC键改变字符颜色

    在屏幕中显示a-z字母,按ESC键改变字符颜色. ;程序功能:在屏幕中间同一点显示a-z的所有字符 ; 1.使用cpu循环空运行实现延迟 ; 2.按ESC键改变正在循环显示的字符的颜色 ; 3.程序完 ...

  10. 在屏幕中间显示,按ESC键后改变字符的颜色

    程序功能:编写程序在屏幕中间显示“a”~“z”,并可以让人看清,这个任务比较好实现. (1)在b800:[ 160*12+40*2]处存入a的ASCII码.(2)在循环中使用一个10000000000 ...

随机推荐

  1. 构建自定义镜像并优化dockerfile文件

    目录 一.系统环境 二.前言 三.镜像构建步骤 四.dockerfile文件常用指令 4.1 dockerfile文件常用指令 4.2 RUN.CMD.ENTRYPOINT的区别 五.构建centos ...

  2. java 反射——任意类型数组扩容

    //java object[]无法转换为原对象类型,可以使用反射来做. //这里的参数不是传object[] 而是传object. public Object GoodArrayGrow(Object ...

  3. Windows pyinstaller wxPython pyecharts无法正常显示问题

    Windows pyinstaller wxPython pyecharts无法正常显示问题 最近遇到一个pyinstaller打包wxPython pyecharts无法显示的问题,pyechart ...

  4. Android 12(S) Binder(三)

    学以致用,这一节来native binder实战! android 12中的service用到的Bp.Bn文件多由aidl生成,所以实战中也用aidl来生成. 1.文件目录结构 文件目录结构如上,偷懒 ...

  5. 这是一个基于threading可停止线程的有限容量有限并行度的python任务管理器

    这是一个可停止线程的有限容量有限并行度的任务管理器 基于:GitHub - AlitaIcon/StopableThreadJob: 可停止线程任务管理器 Quick Start 基础调用与效果 im ...

  6. xshell 自动断开连接的解决方法

    1. 问题分析 本文Xshell连接自动断开的原因是SSH配置文件的ClientAliveInterval字段设置的超时断开时间小于Xshell的检查断开连接时间. 2. SSH配置文件中的字段详解 ...

  7. 快速生成树协议(RSTP)基本知识及实验(使用eNSP)

    关于生成树协议的知识可参考我的另一个博客:https://www.cnblogs.com/mrlayfolk/p/12242627.html 这篇博文主要介绍快速生成树协议(RSTP)的基本知识.-- ...

  8. 机器学习算法(一):1. numpy从零实现线性回归

    系列文章目录 机器学习算法(一):1. numpy从零实现线性回归 机器学习算法(一):2. 线性回归之多项式回归(特征选取) @ 目录 系列文章目录 前言 一.理论介绍 二.代码实现 1.导入库 2 ...

  9. Yolov8和Yolov10的差异以及后处理实现

    Yolo模型可分为4个维度的概念 模型版本.数据集.模型变体(Variants).动态/静态模型. Yolo各模型版本进展历史 Yolov(2015年华盛顿大学的 Joseph Redmon 和 Al ...

  10. 填IP那个就算是接口式开发,这回随便填

    ///////////////////////////////////////////////////////////using namespace std; #include<stdlib.h ...