键盘改造
回忆上次内容
  • 上次练习了复制粘贴
按键
作用
<kbd>y</kbd><kbd>y</kbd>
复制光标行代码 到剪贴板
<kbd>p</kbd>
粘贴剪贴板中的内容
<kbd>i</kbd>
切换到 插入模式
<kbd>h</kbd> <kbd>j</kbd> <kbd>k</kbd> <kbd>l</kbd>
左 下 上 右 移动
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 温习了 底行命令
命令
作用
:reg
查看寄存器状态
:w
保存当前文件
:q
退出当前文件
:wq
保存并退出当前文件
  • 但是<kbd>esc</kbd>有点遥远
  • 有什么办法 解决 吗?
 
恢复环境
vi oeasy.py
  • 复制代码
print("hello") print("oeasy")
  • 在vim中
  • <kbd>"</kbd><kbd>+</kbd><kbd>p</kbd>
  • 从系统剪切板 粘贴
 
双手正位的好处
  • 双手在正位
  • 无需移动腕关节
  • 直接 控制手指 进行打字
  • 效率高
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 不要把 右手手腕 移动到方向键区域
  • 尝试 双手正位 移动光标
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 但是<kbd>esc</kbd>有点遥远
  • 有什么办法 解决 吗?
 
置换 <kbd>esc</kbd> 和 <kbd>caps lock</kbd>
  • 在mac系统中
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 然后将大写锁定直接改为<kbd>esc</kbd>
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • windows系统应该如何修改呢?
windows系统修改键位
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 将下列代码保存为caps.reg文件,运行即可。
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,01,00,3a,00,3a,00,01,00,00,00,00,0
  • 注意编码格式和保存类型
 

 
 
添加图片注释,不超过 140 字(可选)
 
原理
  • 原理
  • 通过注册表编辑器手动添加
 
Win+R -> regedit -> 找到 “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout” -> 右键 “Keyboard Layout” -> “新建” -> “二进制值” -> 重命名 “新值 #1” 为 “Scancode Map” -> 右键 “Scancode Map” -> “修改” -> 输入值如下
  • 解释一下这串数字的意思,先换种分组
1 0000 | 00 00 00 00
2 0004 | 00 00 00 00
3 0008 | 03 00 00 00
4 000C | 01 00 3a 00
5 0010 | 3a 00 01 00
6 0014 | 00 00 00 00
7 0018
  • 原理
  • 头两行和最后一行是固定的8个0
  • 第3行第一个字节为非零行数(或者改建数+1)
  • 第4行将3a00(CapsLock)映射为0100(ESC)
  • 第5行同理
 
 
目前状态
  • 回到当前的 oeasy.py
  • 2行
  • 30个字符
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 新手法
  • 可以通过<kbd>h</kbd> <kbd>j</kbd> <kbd>k</kbd> <kbd>l</kbd> 移动了
  • 用<kbd>caps lock</kbd> 代替<kbd>esc</kbd>
  • 双手保持正位
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
回顾流程流程
  • 保存后的流程 应该是
  • 要先:wq
  • 退出 vim应用
  • 回到 shell环境
 
  • 再在 shell中运行
  • python3 oeasy.py
 
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 回顾一下vim的三种状态
小节 vim中的 三种状态
  • 这是vim中三种状态切换的地图
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 需要的话 拍下来
总结
  • 这次 置换 <kbd>esc</kbd> 和 <kbd>caps lock</kbd>
  • 任何操作 都可以在
  • 不移动 手腕的状态下完成了
 
按键
作用
<kbd>capslock</kbd>
替换 <kbd>esc</kbd> 切回 正常模式
<kbd>h</kbd> <kbd>j</kbd> <kbd>k</kbd> <kbd>l</kbd>
左 下 上 右 移动
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 每次都要 退出vim编辑器
  • 才能 在shell中 运行python程序
  • 有点麻烦
 
 

 
 
添加图片注释,不超过 140 字(可选)
 
  • 想要 不退出vim
  • 直接在 vim应用 中
  • 运行 py程序
  • 可能吗?
 

[oeasy]python0015_键盘改造_将esc和capslock对调_hjkl_移动_双手正位的更多相关文章

  1. 关于ElementUI中MessageBox弹框的取消键盘触发事件(enter,esc)关闭弹窗(执行事件)的解决方法

    好久没见了 在项目中遇到一个小小的需求,总结了一下! 详细我就不介绍了,相信大家用过的话,很了解.详见文档-----------> http://element-cn.eleme.io/#/zh ...

  2. CLOSE-UP FORMALWEAR_意大利进口_2015秋冬_男装发布会_西装图片系列_男装西装设计资料_WeArTrends时尚资讯网_国内最专业的服装设计资讯网站

    CLOSE-UP FORMALWEAR_意大利进口_2015秋冬_男装发布会_西装图片系列_男装西装设计资料_WeArTrends时尚资讯网_国内最专业的服装设计资讯网站 CLOSE-UP FORMA ...

  3. ARM核心板_迅为imx6工控核心板_核心板中的小新潮

    ARM核心板_迅为imx6工控核心板_核心板中的小新潮核心板参数 尺寸 51mm*61mm CPU Freescale Cortex-A9 四核 i.MX6Q,主频 1.2 GHz 内存 2GB DD ...

  4. SSM整合_年轻人的第一个增删改查_基础环境搭建

    写在前面 SSM整合_年轻人的第一个增删改查_基础环境搭建 SSM整合_年轻人的第一个增删改查_查找 SSM整合_年轻人的第一个增删改查_新增 SSM整合_年轻人的第一个增删改查_修改 SSM整合_年 ...

  5. SSM整合_年轻人的第一个增删改查_查找

    写在前面 SSM整合_年轻人的第一个增删改查_基础环境搭建 SSM整合_年轻人的第一个增删改查_查找 SSM整合_年轻人的第一个增删改查_新增 SSM整合_年轻人的第一个增删改查_修改 SSM整合_年 ...

  6. SSM整合_年轻人的第一个增删改查_新增

    写在前面 SSM整合_年轻人的第一个增删改查_基础环境搭建 SSM整合_年轻人的第一个增删改查_查找 SSM整合_年轻人的第一个增删改查_新增 SSM整合_年轻人的第一个增删改查_修改 SSM整合_年 ...

  7. layer的alert、prompt等操作如何响应键盘的回车和ESC操作

    layer.prompt({title: '请输入数据', formType: 1, //隐藏用户输入内容 // 这个是确定按钮的事件 "success":function(){ ...

  8. win7将 esc与 capslock 互换

    一天手软,于是买了一个机械键盘.cherry g80-3494 红轴各方面都不错就是有一个问题我经常用vim,其中esc.及F键区离主键盘区实在是太远了. 习惯于vim模式的人都有一种懒症,就是手指非 ...

  9. AJ学IOS 之小知识之_xcode插件的删除方法_自动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自动提示,

    AJ分享,必须精品 一:解决解决自动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自动提示 其实,插件神马的我们自己也能写,并没有想象中的那么难,不过目前我们还是先解决当前问题 在做微 ...

  10. 随心测试_软测基础_001<说在开始_测试理念>

随机推荐

  1. Linux中默认的shell如何切换为其他类型的shell

    1.一般linux系统会默认使用一种shell,比如我当前系统使用的默认shell是bash,可以使用如下方法查看. [root@node5 ~]# echo $SHELL /bin/bash 2.当 ...

  2. 【ESP32】制作 Wi-fi 音箱(HTTP + I2S 协议)

    用 Wifi 来传输音频数据,会比蓝牙更好.使用蓝牙方式,不管你用什么协议,都会对数据重新编码,说人话就是有损音质,虽然不至于全损.而使用 Wifi 就可以将 PCM 数据直接传输,无需再编码和压缩. ...

  3. Yii 实现数据库SUM操作

    方法一:这种方法有个坑儿,就是as 后面的别名,必须是属性范围内的名字. $criteria = new CDbCriteria(); $criteria->select = 'sum(amou ...

  4. 如何在Spring Boot中配置MySQL数据库连接数

    1.如何在Spring Boot中配置MySQL数据库的连接数 1.1主要配置 在Spring Boot中配置MySQL数据库连接数通常涉及到两个主要的配置: (1)数据源配置:这通常是在applic ...

  5. win10离线安装.net3.5失败的解决方案

    简介: 问题:有时候需要离线安装.net3.5环境,网上的教程一般都是通过NetFx3.cab进行离线安装,但有时候会出现离线安装失败,比如: by~MaQaQ 2024-06-04 分析: 1.先关 ...

  6. 获取某一个数的2进制位数以及bitmask

    举例说明:比如32对应的2进制为2b'100000,对应的bitmask为2b'11111. 实现代码: #include <stdio.h> typedef unsigned char ...

  7. 2024 Web 新特性 - 使用 Popover API 创建弹窗

    Popover API 为开发者提供了一种声明式的方式来创建各种类型的弹窗.目前已在所有三大浏览器引擎中可用,并正式成为 Baseline 2024 的一部分. 一直以来,我们在实现弹出式菜单.提示框 ...

  8. CF1777E

    problem & blog 反转的边最大权值最小,想到二分. 于是二分代价即可. 反转代价小于二分的代价的边可以反转,所以再建一条反向边即可. 在 DAG 中,存在一个点可以到达所有的点的条 ...

  9. 阻塞外挂 TCP 端口 让外挂服务器增加无用处理 反攻击 是4个IP 苹果 安卓 pc 域名

    using namespace std;#include<stdlib.h>#pragma comment(lib,"WS2_32.lib") #include < ...

  10. django通过channels实现websocket

    WebSocket协议是基于TCP的一种新的协议.WebSocket最初在HTML5规范中被引用为TCP连接,作为基于TCP的套接字API的占位符.它实现了浏览器与服务器全双工(full-duplex ...