光标位置

回忆上次内容

  • 上次了解了 新的转义模式

    • \33 逃逸控制字符 esc

      • 这个字符让输出退出标准输出流
      • 进行控制信息的设置
        • 可以设置光标输出的位置

  • ASR33中的ALT MODE

    • 是 今天的ESC吗????

查询文档

  • http://bitsavers.org/communications/teletype/33/310B_Vol_1_33_Teletypewriter_Sets_Technical_Manual_Sep74.pdf

  • 在当时还没有esc键的时候

    • 使用ctrl + shift + k实现
    • esc效果
  • 后来的键盘
    • 都有了 专门的esc 键

escape 跳出

  • 现在键盘都有这个按键

    • 一般在左上角
    • 退出当前游戏
    • 跳出菜单一般用这个

  • 上图esc在

    • 1 的左下
    • Q 的左边
  • 可以从当前的纯文字标准输出流里面
    • 逃(escape)出来
    • 进行控制信息的传输

键盘的进化过程

  • 早年间的一体机

    • 当年最流行的 DEC VT100

  • esc还在1旁边

    • 当时还没有在最左上的位置

位置的变化

  • 玩一些terminal上面的游戏时

    • 可以退出主游戏
    • 进行设置、存盘、读档、退出之类的菜单操作
  • 知道 什么时候退
    • 比知道 怎么玩重要

  • 功能键在 最左边

    • 键盘还没有 统一的标准

标准键盘

  • 这是101 标准键盘

    • 左上角是esc 标准位置

  • 后来放在第一行第一列

    • escape体现重要性
    • 还要用边距和F1之类的拉开距离

行业标准

  • 键盘开始有了行业标准

  • 可以在ascii里面找到这个esc字符么?

esc

  • 在下图中尝试找到esc

  • (001 1011)2
  • 再到ascii应用找一下esc?

ascii

  • 找到这个字符

  • 这个esc对应的是

    • 27 - 10进制
  • 对应16进制多少呢?

1b

  • 1b 是(1b)16进制

    • 对应着(27)10进制
    • 对应着(33)8进制

  • 上面的分别是

    • 十六进制形态
    • 十进制形态
    • 八进制形态
  • 正如下面

  • 不同的形态都可以

    • 用来转义吗?

不同形态

  • 不同的转义方式不影响功能

操作大全

  • 位置控制代码

  • 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 显示光标
  • 我们先试试\033[2J

总结

  • 本次了解了键盘演化的过程

    • ESC 从 组合键
    • 到 独立按键

  • ESC 的目的

    • 是进入控制序列
    • 配置控制信息
  • 控制信息
    • \033[y;xH 设置光标位置
    • \033[2J 清屏
  • 这到底怎么控制来着???
  • 我们下次再说!
  • 蓝桥->https://www.lanqiao.cn/courses/3584
  • github->https://github.com/overmind1980/oeasy-python-tutorial
  • gitee->https://gitee.com/overmind1980/oeasypython
  • 视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy

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

  1. (94)Wangdao.com_第二十七天_键盘事件

    键盘事件 键盘事件由用户击打键盘触发 主要有 keydown.keyup .keypress三个事件,它们都继承了 KeyboardEvent 接口. keydown         按下键时 触发 ...

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

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

  3. C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节

    C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节 1.Qt概述 1.1 什么是Qt Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立艺术级图形界面 ...

  4. 推荐系统[二]:召回算法超详细讲解[召回模型演化过程、召回模型主流常见算法(DeepMF_TDM_Airbnb Embedding_Item2vec等)、召回路径简介、多路召回融合]

    1.前言:召回排序流程策略算法简介 推荐可分为以下四个流程,分别是召回.粗排.精排以及重排: 召回是源头,在某种意义上决定着整个推荐的天花板: 粗排是初筛,一般不会上复杂模型: 精排是整个推荐环节的重 ...

  5. C Primer Plus_第5章_运算符、表达式和语句_编程练习

    Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...

  6. 你知道C#中的Lambda表达式的演化过程吗

    你知道C#中的Lambda表达式的演化过程吗? 阅读目录 委托的使用 匿名方法 Func和Action Lambda的诞生 那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西 ...

  7. java画图程序_图片用字母画出来_源码发布_版本二

    在上一个版本:java画图程序_图片用字母画出来_源码发布 基础上,增加了图片同比例缩放,使得大像素图片可以很好地显示画在Notepad++中. 项目结构: 运行效果1: 原图:http://imag ...

  8. ARM核心板_迅为4418核心板_高稳定超轻薄_研发超灵感

    ARM核心板_迅为4418核心板_三星四核S5P4418处理器 4418核心板正面: 4418核心板反面:4418核心板尺寸图:详情了解:https://item.taobao.com/item.ht ...

  9. 【转】你知道C#中的Lambda表达式的演化过程吗?

    [转]你知道C#中的Lambda表达式的演化过程吗? 那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西是那么的高深难懂. 委托的使用 例一: 什么是委托? 个人理解:用来传 ...

  10. 独家专访|浙江执御:为何接受富安娜入股而不选VC?_深圳市跨境电子商务协会_新浪博客

    独家专访|浙江执御:为何接受富安娜入股而不选VC?_深圳市跨境电子商务协会_新浪博客   http://blog.sina.com.cn/s/blog_13cb5d69e0102vuvk.html

随机推荐

  1. Istio(十):istio多集群部署模式

    目录 一.模块概览 二.多集群部署 2.1 多集群部署 2.2 网络部署模式 2.3 控制平面部署模型 2.4 网格部署模型 2.5 租户模式 2.6 最佳多集群部署 一.模块概览 在本模块中,我们将 ...

  2. 使用interface化解一场因操作系统不同导致的编译问题

    场景描述 起因: 因项目需求,需要编写一个agent, 需支持Linux和Windows操作系统. Agent里面有一个功能需要获取到服务器上所有已经被占用的端口. 实现方式:针对不同的操作系统,实现 ...

  3. 我对IdentityServer4的初步了解

    官网:https://identityserver4.readthedocs.io/en/latest/quickstarts/2_interactive_aspnetcore.html 官网例子:h ...

  4. Linux之kill命令

    1.kill命令的使用格式 kill [参数] [进程号] 2.kill命令的功能 发送指定的信号到相应进程.不指定型号将发送SIGTERM(15)终止指定进程.如果任然无法终止该程序可用" ...

  5. 面向编程对象的好处及应用紧耦合VS松耦合(继承,多态)(1-2)

    面向编程对象的好处及应用紧耦合VS松耦合(继承,多态)(1-2) 当初: 代码是做了客户端与业务的分离的封装 现在: 加深下功底,在上一个随笔之前做一个修改和拓展(继承,多态) 作业: 现在从计算器变 ...

  6. 一文带你理解透MyBatis源码

    本文分享自华为云社区<一文彻底吃透MyBatis源码!!>,作者:冰 河. 写在前面 随着互联网的发展,越来越多的公司摒弃了Hibernate,而选择拥抱了MyBatis.而且,很多大厂在 ...

  7. vscode设置护眼色

    参考链接:https://blog.csdn.net/qq_39233554/article/details/105639331?depth_1- 打开VS code选择'文件'→'首选项'→'设置' ...

  8. MySQL入门到精通(十):SQL优化第一篇(2021最新发布)

    SQL优化 1. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,创建表时N ...

  9. react路由过渡动画效果

    render() { return ( <div> <li><Link to="/home">Home</Link></li& ...

  10. php简单登录

    <?php // 1,php接收参数 $userName = $_POST['userName']; $userPwd = $_POST['userPwd']; // 2,PHP需要操作数据库 ...