Colemak布局的实现 Window+Linux+Android


title: ‘Colemak布局的实现’
subtitle: ‘一个极客的键盘布局’
tags: entertainment solution

前言

大部分同学使用的键盘布局都是QWERTY布局

而科学研究表明,可能这个设计不是最高效率的布局,甚至的有意为了降低打字的效率而研究的,那么当初为什么要这么设计呢?
关于键盘布局历史故事的详细内容,可以参考:知乎:键盘布局有哪些种?各种布局的设计出发点是什么?

今天小编给大家介绍另一种布局

colemak布局

这种键盘布局,根据热力图显示,我们打字中经常使用的按键(比如元音字母a,o,e,i,u)都会被设计在键盘的中间的一排中,这样可以减少我们在打字的过程中的手指的移动,打字的效率自然就会提高

切换这种布局的方式有很多,经过小编汗水亲测以及对比,autohotkey是其中最好的解决方案,因为他是通过脚本进行按键的替换,所以在使用的时候你不需要局限于输入法,你可以使用colemak输入英文,也可以使用它来输入中文(拼音输入)。
万事开头难,你一开始使用他一定会不适应的,但是只要你坚持打到3个星期,我相信,这个时候你的打字速度足够满足正常的输入需求了。

autohotkey介绍

AutoHotkey 是一个自动化软件工具,通过热键、热字串或设定的条件自动执行重复性工作。首页 发现 等你来答 登录 加入知乎 AutoHotkey AutoHotkey 是一个自动化软件工具,通过热键、热字串或设定的条件自动执行重复性工作 .

更多详细信息也可以参考autohotkey官网 或者 中文文档

autohotkey安装

在使用autohotkey之前,我们需要进行下载安装

https://autohotkey.com/download/ahk-install.exe

安装后会有文档提示,这里我们可以看在线的文档,因为这里面有指定语言,可以翻译成中文来阅读

如何创建一个脚本

这里面有很多的语法,我们需要实现的功能是创建一个替换键盘位置的脚本,所以不需要过多的了解这个语法和基本数据类型以及流程控制和函数中

右键点桌面空白处.
点击"新建"菜单.
点击里面的"AutoHotkey Script"新建一个脚本.
给脚本命名. 备注: 文件名必须带 .ahk 后缀, 例如 MyScript.ahk
找到刚刚新建的脚本并右键点击它.
点击"Edit Script".
一个新窗口被弹出, 也许是记事本. 如果是这样就成功了!
现在你已经创建了一个脚本, 我们需要加点内容到脚本中. 如果需要用到内置命令, 函数和变量, 请查看第 5 节.这是一个使用 Send 命令创建的一个包含热键的简单脚本, 当你按下热键后, 它会向窗口发送一段文字.^j::
Send, My First Script
Return
S↓
稍后我们将进行更深入的研究. 在此之前, 我们先解释一下上面的代码:第一行: ^j:: 是热键. ^ 代表 Ctrl, j 是字母 J. 任何在 :: 左边 的字符表示您需要按下的热键.
第二行: Send, My First Script 表示如何发送按键. Send 是命令, 任何在逗号(,) 之后的内容将会被键入.
第三行: Return. Return 将会成为你最好的朋友. 它将停止执行之后的代码. 当你的脚本包含越来越多的东西时, 使用 Return 会避免很多问题.
保存文件.
双击桌面上的文件来运行它, 打开记事本或者其他可以输入文字的地方然后按下 Ctrl 和 J.
太好了! 你的第一个脚本完成了. 给自己一些奖励, 然后返回阅读本教程的其余部分.

autohotkey使用

其实autohotkey的功能十分的强大,我们这次只是会使用其中的最最基础的功能

我写的脚本代码如下

/*
* author:@victorfegming
* address:gitee.com/victorfengming
* 项目下载:https://gitee.com/victorfengming/colemak_geek
* 博客地址:https://victorfengming.gitee.io/
*/;先看效果:替换后的布局
/*`~  1 2 3 4 5 6 7 8 9 0 - = backsp
Tab   Q W F P G J L U Y ; [ ]  \
Back   A R S T D H N E I O " Enterr
LShift  Z X C V B K M , . / RShiftt
Ctrl Win Alt  Space Alt Menu Fn Ctrl
*//*l u yh n e i o 'up↑down
<< ← ↓ → >> del*/;colemak的对应QWERTY键位
e::f
r::p
t::g
y::j
u::l
i::u
o::y
p::;
s::r
d::s
f::t
g::d
j::n
k::e
l::i
`;::o
n::k
; 这里的替换不会影响组合的修饰符
; 比如现在按Ctrl+F就是Ctrl+F,不会是原来的Ctrl+E;这里是替换大写和退格
CapsLock::BackSpace
;大写切换不会经常用,平时用shift
LShift & CapsLock::CapsLock
;强烈建议这里换成删除,因为删除的按键距离主键盘过远,影响打字效率;Alt 的 方向组合
<!i::send {up}
<!k::send {Down}
<!j::send {Left}
<!l::send {Right}
<!'::send {Del}
;<h-o> =>> Home End
<!h::send {Home}
<!`;::send {End};Alt shift组合方向键
<+<!i::send {Shift down}{up}
<+<!k::send {Shift down}{Down}
<+<!j::send {Shift down}{Left}
<+<!l::send {Shift down}{Right}
<+<!h::send {Shift down}{Home}
<+<!`;::send {Shift down}{End};Alt ctrl组合方向键
<^<!i::send {Ctrl down}{up}
<^<!k::send {Ctrl down}{Down}
<^<!j::send {Ctrl down}{Left}
<^<!l::send {Ctrl down}{Right}
<^<!h::send {Ctrl down}{Home}
<^<!`;::send {Ctrl down}{End};Alt Ctrl Shift 组合方向键
<^<+<!i::send {Ctrl down}{Shift down}{up}
<^<+<!k::send {Ctrl down}{Shift down}{Down}
<^<+<!j::send {Ctrl down}{Shift down}{Left}
<^<+<!l::send {Ctrl down}{Shift down}{Right}
<^<+<!h::send {Ctrl down}{Shift down}{Home}
<^<+<!`;::send {Ctrl down}{Shift down}{End};Alt + ly page↑page↓
<!u::send {PgUp}
<!o::send {PgDn};禁止方向键,提醒使用主键盘
up::return
Down::return
Left::return
Right::return/*
相关知识点:
- 原文地址:http://ahkcn.sourceforge.net/docs/AutoHotkey.htm
- 映射表地址:http://ahkcn.sourceforge.net/docs/KeyList.htm
- :: 表示映射
- send 发送组合键
- `符号用来转义;分号
- 修饰符 Ctrl Alt Shift 对应 ^+!
- down表示按下的状态
- &表示组合键
- <表示只有左边的修饰符生效
- return 啥也不干
*/

然后将脚本文件保存成Unicode编码,在桌面双击即可执行脚本

执行过后,你会发现,你的键位立即生效了

如果你想停止,或者暂停,也可以在window的任务栏中,找到对应的图标

右击的菜单中进行相应的设置

如果你想打包成可执行文件,发给没有安装autohotkey的计算机中亦可以使用

操作方式很easy,在脚本文件中右击,选择Compile Script,即可在当前文件夹,生成一个与脚本文件同名的exe可执行文件

colemak windows 输入法 实现方案

Colemak AutoHotKey

colemak linux 输入法 实现方案

deepin-colemak

colemak 手机输入法 实现方案

Colemak Geek

操作说明

  1. 安装百度输入法

  2. 自定义皮肤

会在 sdcard/baidu/ime/skins 目录生成

扩展名为 bds的 皮肤文件

  1. 将yr824563x41.bds 拷贝到 sdcard/baidu/ime/skins 目录,重命名后 替换 你刚才自定义的皮肤文件

  2. 在百度皮肤管理中,重新设置即可

  3. 效果如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tGaKK8uu-1623229115016)(Screenshot_2021-06-08-22-18.jpg)]

去操作吧

项目源代码地址

码云:https://gitee.com/victorfengming/colemak_geek

感觉有帮助的伙伴可以给小编star一下

Colemak布局的实现 Window+Linux+Android相关推荐

  1. rem移动端布局怎么适配IOS和Android

     rem移动端布局怎么适配IOS和Android 昨天"佬大"问我做的h5页面在ios上面显示正常,但是Android就变惨不忍睹了,于是我又开始了度量之路,几个小时过去了.... ...

  2. Linux (Android) 串口通信教程

    Demo功能 在学习Linux的串口通信程序之前,我们先来看看Demo的效果,这样比先来一大堆串口知识介绍更加有学习动力,毕竟是能运行的.本文章不会讲解串口的原理,如何接线等,只会讲解在Linux(A ...

  3. 转]Window, Linux动态链接库的分析对比

    转]Window, Linux动态链接库的分析对比 摘 要:动态链接库技术实现和设计程序常用的技术,在Windows和Linux系统中都有动态库的概念,采用动态库可以有效的减少程序大小,节省空间,提高 ...

  4. java aix 移植linux,[转]程序的可移植性:window,linux,aix,solaris下程序移植体会

    程序的可移植性:window,linux,aix,solaris下程序移植体会 - [工作学习] 1.类型 我们知道,在Windows平台中,系统定义了很多诸如BOOL,CHAR,ULONG,HAND ...

  5. linux 串口工具_会C++就能开发Linux/Android应用!这款Yoxios X3串口屏火了...

    大家好,我是小月月.今天给大家介绍一款搭载YOXIOS操作系统的YOXIOS X3串口屏,只要你会C/C++就能开发Linux/Android应用!而且小月月带来了福利--"免费试用名额&q ...

  6. android布局优化 工具,详解Android布局优化

    怎样才能写出优秀的Android App,是每一个程序员追求的目标.那么怎么才能写出一个优秀的App呢?相信很多初学者也会有这种迷茫.一句话来回答这个问题:细节很重要.今天我们就从最基础的XML布局来 ...

  7. has leaked window com.android.internal.policy.impl.PhoneWindow解决(Dialog.cancel、dismiss、hide区别)

    项目中有个Activity中用到了ProgressDialog,而在跳转到下个Activity时就会报这个错: has leaked window com.android.internal.polic ...

  8. java.lang.IllegalArgumentException: View=DecorView not attached to window manager(Android Dialog崩溃)

    监控报警,Dialog偶现Crash.日志如下: java.lang.IllegalArgumentException: View=DecorView@9d9a86 not attached to w ...

  9. Unable to add window——token android.os.BinderProxy@196e65b8 is not valid;is your activit is running?

    Caused by: android.view.WindowManager$BadTokenException:Unable to add window--token android.os.Binde ...

最新文章

  1. 新书 5 折腰斩!畅销技术类图书推荐
  2. ITK:将图像投射为另一种类型
  3. html模板 循环里if,django模板里循环变量table里想要两个一行如何控制
  4. 微信彩色个性昵称 游戏取名 九宫格切图 多图拼接工具箱微信小程序源码
  5. 【uC/OS-II】笔记1----入门
  6. Android Lint 检查规则的定制(基本篇)
  7. MongoDB 复制集(Replica Set) 配置(Windows 版)
  8. Moto XT1085 国行 解锁BL
  9. 完美C语言通讯录(含代码)
  10. 【测试沉思录】3. 如何测试微信公众号?
  11. java基础习题_Java基础知识练习题及答案
  12. 一文读懂:DNA甲基化的作用及各种高通量检测方法比较
  13. 第二届天府大地艺术季(春)三道堰青杠树村分会场开幕
  14. [PHP]关于GearmanClient的诡异事件
  15. Android7.0(Android N)适配教程,心得
  16. Qt qss 九宫格
  17. 全国计算机照片怎么弄,证件照电子版怎么弄-制作证件照其实很简单,用excel就行,2分钟搞定...
  18. Navicat查看表的sql语句
  19. 阅读 redis 源码,学习缓存淘汰算法 W-TinyLFU
  20. Ubuntu 14.04 安装 USB无线网卡驱动

热门文章

  1. C语言volatile关键字—最易变的关键字
  2. 高级程序员如何面对职场压力?(2)--受伤的总是我
  3. FFMpeg在Windows环境下的编译
  4. 详解Mysql中的JSON系列操作函数
  5. 《Effective Java》 第一讲:创建和销毁对象
  6. CSS3实现一束光划过图片、和文字特效
  7. shell编程-变量
  8. H5学习之旅-H5列表(8)
  9. Android TabHost中实现标签的滚动以及一些TabHost开发的奇怪问题
  10. JQUERY插件JqueryAjaxFileUplaoder----更简单的异步文件上传