Chorthotkey、Candy、VimDesktop 三剑客

j

概要介绍

经过长时间的电脑的使用,我渐渐的喜欢上了autohotkey这个神器,喜欢Python是因为Python非常的强大,喜欢AHK则是因为这个可以给我的平常生活带来太多的方便。

长时间的使用,毕竟也积攒了一些脚本,加上对很多脚本的收集以及修改,勉强算得上是一个入门的AHK菜鸟了。

AHK的优点可以对快捷键进行编程,对一个经常使用电脑自动化处理一些事情的人说,非常之方便,但缺点,太多,效率低,语法乱,数据结构乱。让我写一段文字处理简直就让我非常难受。

但为了取长补短,我仅仅使用其中的对快捷键编程的功能,加上收集来的别人的一些函数。修改集成,然后做一个顺手的AHK脚本,名字就叫做Chorthotkey。开源,协议选择Mit协议。简而言之也就是你改了名字版权就是你的了。

我在编写这篇文章的时候,也在重构并进行V0.4版本的完善。

但是先讲讲什么使用AHK编写的脚本比较好。

作为一个经常使用电脑的人,什么时候我们应该使用AHK?

我觉得是,当这个功能不值得用另一个大的软件代替的时候,或者快捷键编程的时候。
先说第一点:当我想使用一个功能的时候,比如快速打开一个网页,或者进行文字上的简单处理,这个时候就没有必要单独下载一个软件进行处理,这个在AHK中就是简单的几行代码就可以搞定。
比如打开网站直接 Run www.baidu.com AHK就会直接调用相关浏览器打开baidu.这么简单的东西没有必要单独下载一个软件进行管理。
再说第二点:当我想着对快捷键进行编程调用进行自动化处理东西的时候,或者编写一套自己的热键用来打游戏或者其他的一些编辑用途等等,都可以。理论上来说,AHK几乎是只有想不到没有做不到的。

那么,AHK不能替代什么东西?
在文件管理方面,尽管你可以自己编写很多的快捷键,但你没有办法超越TotalCMD,没有办法超越Listary或者Everything,所以,你编写的东西只需要辅助你使用这些东西就好了。
在文本编辑方面,你始终无法超越sublime text 3,无法超越vi,无法超越Emacs,你只需要辅助你使用这些工具即可。
同理。

既然说了AHK那么多的不足和缺憾,但是AHK在我的脚本语言中依然傲立第二名,就是因为它擅长的快捷键编程。

好了,废话这么多,总该说点干货了。下面是三个脚本

  • Candy 一个非常强大的第三方弹出菜单amii编写。
  • ChortHotKey 一个我编写的工具
  • vimd 无所不在的vim党编写的软件。

好吧,我无耻的把三个工具放在一起了。虽然Candy和vimdesktop在使用上面甩Chorthotkey几条街,但是,我乐意把他们放在一起,怎么滴?

设计思路

AHK的操作按照是否聪明分为两种:

  1. 第一种叫做非上下文的操作
  2. 第二种叫做上下文操作

AHK操作按照使用场景分为:

  1. 直接操作
  2. 选中操作

AHK按照操作目标分为

  1. 程序类操作
  2. 键盘类操作
  3. 文件类操作
  4. 文本类操作
  5. 命令类操作
  6. 其他操作

我按照操作目标来设计自己的热键系统。

PS:浏览器建议chrome

1.程序类 — 涉及运行程序,或者一些常用的小功能

我的所有程序都是使用配置好的环境变量D:\Sysconfig 其中的快捷方式搞定的。比如win+r输入qq然后回车自动打开QQ。这个并不使用AHK。因为没有必要增加大量的热键来增加自己的记忆负担。
但是使用频率非常高的必须设置快捷键。

程序类快捷键我主要使用的是Win按键,AHK中用 # 来表示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 #a 到有道官网查找单词翻译,并且保存到桌面上一个文本文档中。
#b 选中某段文字进行解析,如果里面有网址则访问网址,否则使用百度进行搜索
#g 选中某段文字进行解析,如果里面有网址则访问网址,否则使用Google进行搜索
#f 打开everything进行搜索
#e 替换原有的资源管理器,打开TotalCMD
#q 打开QQ
#v open with vim
#s open with sublime text

官方的操作
#c Windows8什么鸟菜单
#x win8快捷菜单
#r 运行,比较方便
#1-9数字,建议把几个(四个之内,超过四个你的手可能就跟不上操作了)可能有变化的软件放在pin在taskbar上面。

2. 键盘鼠标操作

按住左键再按住右键输出alt+f4

CAPSLOCK超级导航
CAPSLOCK 输出 ESC
SHIFT & CAPSLOCK 调用Candy
下面内容属于组合键的另一个按键
hjkl前下上右
a行尾进行编辑
o下一行进行编辑

n ctrl+delete
m delete
, backspace
. ctrl+backspace

5打开coding workspace
6打开未整理文件
7打开Onedirve
8打开同步文件夹
9打开娱乐文件
0打开sysconfig

3. 文件类操作

选中的文件夹在TC中打开,其余操作全部在TC中解决
由于我使用了Capslock的导航功能,这时候的capslock hjkl完全可以当作左下上右使用。
vim+tc,可以使用vim desktop进行超级强化。我一直对TOTALCMD的快捷键设计抱有不满和一丝丝的畏惧,但是这个软件把TC的快捷键常用快捷键精简到了令人发指的地步。I love TC plus AHK
这个我在后面系列中会讲到。

4. 文本类操作

candy操作,保存,发送等等,凡是Ctrl + c飘落的地方,就一定会有candy的存在(火影忍者既视感)。请在我另一篇Blog中看看我是怎么使用Candy的。

5. 命令类操作

这里面存放的是AHK的命令。其实就是使用ahk调用python脚本执行之类的东西。起到一个调用的作用。

6. 其他操作

热字符串输入

用的特别频繁的
//date 20150223
/dd
//time 08:52:33
/tt
//lastupdate 最后修改时间 2015-02-23 08:52:33
/ll
//mail twocucao@gmail.com
/mm
//anouncement 声明lalalalalallalalalallalalalla
/aa

常用的
//motto 我挥舞着纸笔和键盘,发誓要把这个世界写个明白。

常用打开Vim的文字模板使用
/hexo 打开gvim,粘贴进去对应的模板。

比如我输入
//hexo
那么就会Copy我之前定义的文字,然后存放在我的剪切板中。(时间是动态的)
接着脚本打开gvim,你要做的就是把文字粘贴进去就可以进行HEXO的编写了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
title: 标题
date:2015-02-23 10:16:30
tags: 感悟
category: [生活,感悟]
---

正文
<!-- more -->
其他

博客文章原创声明:
本博文章如果没有声明为整理或者转载,均为本人原创。非商业可以任意转载分享。但是编写的代码如果没有特别声明,虽然我建议保留原作者出处,但是代码皆为mit协议,也就是修改了名字也算是你的版权,开源世界嘛,我就喜欢那些可以拿来直接使用的东西,贯彻最纯粹的免费自由,但是求求你,改掉名字等等信息再说是版权是你的啊。

![关于本人](http://twocucao.xyz/about/),
点击链接就可以以web幻灯片的方式看到我的介绍。

我的Github地址: https://github.com/twocucao (尽管东西不多,但是欢迎来Star和Fork,就算你们来这里提前Star Folk了)
简书地址: http://www.jianshu.com/users/9a7e0b9da317/latest_articles (不常更新,而且几乎没有技术文章的讲解)
联系方式: twocucao@gmail.com
本人才疏学浅,是一个水平比较菜的程序员,如果行文之间发现任何错误,欢迎指正,特别欢迎技术上的指正。

三剑客地址

Chorthotkey https://github.com/twocucao/ChortHotKey
Candy https://github.com/aamii/Candy
VimDesktop https://github.com/victorwoo/vimdesktop

如果你想了解关于ahk的世界,请到这里来看:

善用佳软的ahk地址
A大在知乎的系列专题
我的AUTOHOTKEY脚本使用我的脚本来上手速度会快很多)
AWESOME AUTOHOTKEY_L 这里仅仅是关于AHKL的资源。
AHK论坛

其他

欢迎加入AUTOHOTKEY的官方群
3222783

这里的大神喜欢解答有挑战性的问题,很多AHK的脚本都在这里。

1
2
3
4
5
6
7
8
9
10
博客文章原创声明:
本博文章如果没有声明为整理或者转载,均为本人原创。非商业可以任意转载分享,编写的源码如果没有特别声明,皆为mit协议,也就是修改了名字也算是你的版权,开源世界嘛,我就喜欢那些可以拿来直接使用的东西,贯彻最纯粹的免费自由,但是求求你,改掉名字等等信息再说是版权是你的啊。

![关于本人](http://twocucao.xyz/about/),
点击链接就可以以web幻灯片的方式看到我的介绍。

我的Github地址: https://github.com/twocucao (尽管东西不多,但是欢迎来Star和Fork,就算你们来这里提前Star Folk了)
简书地址: http://www.jianshu.com/users/9a7e0b9da317/latest_articles (不常更新,而且几乎没有技术文章的讲解)
联系方式: twocucao@gmail.com
本人才疏学浅,是一个水平比较菜的程序员,如果行文之间发现任何错误,欢迎指正,特别欢迎技术上的指正。