StrokeIt:让鼠标手势无处不在

【特别说明】我(xbeta)和沙牛(本文作者)一直在思考和尝试一个问题——什么样的文章最符合大家的阅读习惯。因此,欢迎大家——无论是否用StrokeIt——进对文章的结构、风格提出宝贵意见。
【引言】记得沙牛在2006年第一次使用遨游浏览器时,最吸引我的,不是丰富的插件,而是其自带的鼠标手势,这是由Opera浏览器率先开发的功能,其使用方法为:按住鼠标右键(默认,可设置)滑动鼠标,根据所划出的轨迹,执行特定的操作。现在,这个功能几乎已经成了所有浏览器必须遵循的一个标准。而当时,当我领略到鼠标手势的无穷乐趣和快速操作的优势后,就开始对Windows里老掉牙的操作习惯怨声载道,并开始在网上搜罗鼠标手势软件,很幸运,我找到了它,它,就是StrokeIt

StrokeIt 简介

1. StrokeIt适用人群

StrokeIt能极大地提升工作效率,所以沙牛会如此着重地介绍它。使用它,你可以不必再把鼠标移动到关闭或最大化按钮然后点一下来完成操作,可以不敲打一下键盘就输入一堆文字。总之,它能将你的双手从对键盘的依赖下,完全解放出来。因此,如果你 :希望最快地完成常用的操作; 想在脱离键盘的情况下(比如说抽烟的时候,嘿嘿)继续操作,那么StrokeIt将是你的最佳选择。
2. StrokeIt小档案

官方网站:http://www.tcbmi.com/strokeit/(英文)
最新版本:0.9.7
软件大小:137KB(安装文件),331KB(安装后)
授权方式:家庭版免费
界面语言:多国语言,默认是英文,更多语言包可以点此下载.
下载地址:官方网站
资源占用:惊人….地小,不会超过1M,一般情况下,我电脑上的只占用300KB左右,有图有真相。

安装StrokeIt

其实,安装StrokeIt,是一件不值得一提的小事,只需一路Next就行了。但有一些注意事项,不得不说:

1. 汉化

StrokeIt是支持多国语言的,但安装后默认只有英文,其他的语言文件需要从官方网站下载,或者从沙牛之家下载简体中文语言文件,下载后,放到软件安装文件夹里的Strings文件夹下,即可进行语言选择(下文详细说明).

或者,直接点此下载由”一丝冰凉”汉化的 V0.97 Home 版.

2. 设置文件保存位置

这一点很重要,不得不说,在0.9.7之前的版本,设置文件都是保存到安装文件下的,而新版本里,则是保存在其他文件夹下(系统目录),正因为如此,一次重装系统后,导致我不得不重新添加所有设置,杯具啊。所以,在配置好StrokeIt后,一定要记得导出设置文件,或者,直接复制现有的设置文件夹,其设置文件保存位置如下:

Windows XP:C:\Documents and Settings\用户名\Application Data\TCB Networks\StrokeIt

Windows 7:C:\Users\用户名\AppData\Roaming\TCB Networks\StrokeIt

在该文件夹下,会有Actions和Gestures两个文件夹,其中,Actions代表动作,Gestures保存学习到的手势(这些内容将在下文说明)

3. 兼容性

经测试,我在Win7下使用0.9.6之前的版本,画手势时会出现很大的延迟,偶尔还会假死,而0.9.6及之后的版本则无此问题.

4. 如何退出

打开StrokeIt后,它会最小化到系统托盘,按照常规的操作,要想退出,当然是在图标上点击右键,待菜单出现后,再选择退出。而对于StrokeIt,这就不适用了,因为用右键点击StrokeIt,并没有右键菜单,而是禁用手势(图标会变红),因此,如果要退出,需要单击StrokeIt图标,打开软件后,点击文件(File) –> 关闭StrokeIt(Shutdown StrokeIt),即可退出,如图所示.

strokeit-close

一点点简单的设置

正所谓”工欲善其事,必先利其器”,在使用StrokeIt之前,我们先进行一些简单的设置,让它能更好地为你所有—-我认为这是使用软件时最重要的,而不仅仅针对于StrokeIt,只有这样,才能最大程度地发掘出软件的功能.

1. 汉化

如果你和沙牛一样,看着E文就头痛,那你就有必要看这个过程了,否则,请跳过.

下载简体中文语言文件并保存到Strings目录下,然后打开StrokeIt,点击Edit—> Perferences,并参照如图所示的方法完成汉化(设置后需要重新启动StrokeIt).

strokeit-translate

或者,直接点此下载由”一丝冰凉”汉化的 V0.97 Home 版.

2. 其他设置

此外,你可以根据自己的喜好,选择适合的配置,包括鼠标手势线条的颜色,用哪个鼠标键执行手势等,如图:

strokeit-setting

如何使用StrokeIt

看了那么多废话,现在终于开始进入正题了.

刚安装好StrokeIt,你会发现里面有很多预设的配置,囊括了很多软件,如果你和沙牛一样,很少用到他们,或者希望按照自己的要求来设置,那么,你可以按Del删除之.

现在,我们可以来创建自己的设置了,在StrokeIt里,创建一个手势的流程是这样的:新建应用程序 –> 新建动作 –> 新建命令.

1. 新建应用程序(Ctrl + A).

注意,这里的应用程序,指的是手势在哪个程序里起作用,通过添加指定的窗口类,窗口标题,或者文件名来达到该目的,比如,我新建了一个TC的应用程序,并添加上TC的窗口类,这样一来,我在这个应用程序里设置的所有手势,将仅仅在TC这个软件里起作用,而在其他地方,比如系统桌面,浏览器里划同样的手势,是不起作用的.

另外,提醒大家一下,如果你新建的应用程序里没有添加任何一个窗口类或者标题,则这个手势会对所有地方起作用,包括桌面,和任何软件.

2. 新建动作(Ctrl + T).

没错,这里的新建动作,正是代表的手势,你想用什么手势,就在下拉列表里选择,StrokeIt可以支持以下几种类型的手势.

1) 方向,包括上下左右及对角线的八个方向,在StrokeIt的手势选择里,上下左右分别用Up,Down,Left和Right区分,而/Up代表斜线 ➚,\Up则为↖,这一点大家体验一下就能明白.

2) 数字

3) 字母

4) 很多数字和字母的后面都有Reversed字样,这代表手势需要反着划,比如,我们写”一”这个字的时候,是从左至右的,而如果加上Reversed字样,就得从右往左写了,我对这个很不习惯,大概左撇子会比较适应吧,呵呵.

5) 鼠标键。其实严格的说,这些已经算不上鼠标手势了。只是在按住预设鼠标键的基础上,在按动作里设置的鼠标键而已。比如,我预设的执行鼠标手势的按钮是鼠标右键,现在,我新建了一个动作,叫LBUTTON_UP,那么,只有当我按下右键(预设),再按下左键(动作)并松开(根据后面的Up)时,才会生效.

3. 新建命令(Ctrl + N).

动作和命令是一对一的,两者缺一不可,添加动作后,就该新建命令了,即划出鼠标手势后需要执行的操作。StrokeIt所支持的命令类型非常多,在此不一一列举,只介绍经常使用的几个:

1) Keys-HotKey:发送热键,这个选项只需要按下热键即可。但有些键无法捕捉,比如Win键,其替代方法参考第三点.

2) Keys-Password:发送密码,不建议使用,会带来安全隐患.

3) Keys-SendKeystrokes,同样是发送快捷键,但不是通过按键的方式来设置,而是用文本,比如,按下Win+E可以设置为[WIN_DOWN]E[WIN_UP].

4) Run-RunProgramme:运行程序.

5) Windows – Maximize or Restore,最大化或还原窗口

6) Windows-Minmize:最小化窗口.

7) Utilities-Toogle Always On Top,让窗口总在最前.

至此,新建一个鼠标手势的操作就完成了,现在,你可以试一下自己配置的手势是否有效,另外,如果你划的手势不是那么标准,被StrokeIt错误地识别了,或者根本识别不到,你可以在编辑 –> 学习手势(Ctrl + L)里进行手势学习,让StrokeIt更智能.

4. 禁用手势

某些时候,你可能需要在一些程序里禁用StrokeIt,比如游戏,没有人想在游戏里手动鼠标时会执行最小化,此时,可以在这些程序里禁用StrokeIt。方法很简单,只需要创建一个应用程序,并添加窗口标题或类名,再勾选上“在以上程序中禁用鼠标手势”即可。

StrokeIt注意事项

当你习惯了用StrokeIt来掌控一切,你一定会觉得它是如此地好用,但是,也有它奈何不了的情况,比如我遇到的:

  1. 在TC(TotalCommander,经典得不能再经典的文件管理软件,详情请点此查看)中,如果使用NC模式的鼠标选择方式,将会有一个问题,我拖动右键是在选择文件呢,怎么鼠标手势就开始执行了呢? 鱼和熊掌不可兼得,沙牛的解决办法是:在TC里将手势禁用。当然,你也可以设置比较短的手势超时时间,这完全看自己的习惯.
  2. 使用诸如VMWare在内的虚拟机软件时,如果在客户机里点右键,将会触发主机的手势操作,导致客户机不能正常弹出右键菜单,这时,可以对VMWare设置禁用鼠标手势.
  3. 如何用鼠标手势打开我的电脑.这得分两种情况,在XP下,可以通过添加[WIN_DOWN]E[WIN_UP]的Send Keystrokes来打开资源管理器,或者是运行程序”…”(三个点,无引号)来打开我的电脑。而在Win7下,要打开我的电脑就得通过添加[WIN_DOWN]E[WIN_UP]的Send Keystrokes来实现.
  4. 再次提醒,设置好StrokeIt后,将设置导出备份,这点很重要,很重要.

附录

附录1:我的StrokeIt配置文件(猛点此下载)(格式为 手势:操作)

Z:发送Esc键
Right-Down:查看属性
Right-Up:打开任务管理器
/Down:打开我的电脑
Down-Right:关闭当前窗口
Up-Right:关闭当前页(针对MDI窗体)
Left:后退
Right:前进
A:回车
Left-Up:切换窗口
\Down:全部最小化
Down-Left:删除
/Up:刷新
Left-Right:向上一级(针对资源管理器)
Up-Left:打开运行窗口
Left-Down:重命名
\Up:总在最前
Up:最大化当前窗口
Down:最小化当前窗口

附录2:StrokeIt手势示意图

图1:来自网络,作者未知。
图2:一丝冰凉网友制作的新版手势图。

附录3:相关文章

合理使用AutoHotKey+StrokeIt。作者dyseat,xbeta修改。
使用 StrokeIt 替代浏览器的鼠标手势

附录4:本文历史

  1. 本文创建于2010-01-11日.
  2. 2010-01-13,第一次修订,增加了适用人群,并修改了请参见的链接.
  3. 2010-08-16, 增加由“一丝冰凉”汉化的0.97 Home版本的下载地址。
  4. 2010-10-15, 补充由一丝冰凉制作的新版手势图。
  5. 2011-04-01, 在善用佳软投稿,重新修改。

合理使用AutoHotkey+StrokeIt

xbeta注:在追求操作快捷与自动化的路上,有3款软件不得不提:超小的快捷键神兵hoekey,超小的鼠标手势之王StrokeIt,此外还有更富扩展性的AutoHotkey。前二者长于调用,而后者则强于功能。将两类软件结合在一起,双剑合璧,会有何等效果呢?且看dyseat网友的做法!

下文转载自dyseat文章,xbeta略有修改。

《合理使用AutoHotKey+StrokeIt》

工作中总是有一些重复的动作要做。操作的次数多了,就想找点自动完成之类的东西。找来找去,选中了Autohotkey。虽然内存占用比hoekey大了一点点,不过功能比hoekey要多一些,可完成的动作也要多一些。相比之下,还是可以接受的。

我的Autohotkey的ini文件所有动作全是自己做成的,一般来说分两部分:输出字段、实现动作。

1. 输出字段:让AHK自动输出日期时间

工作中,经常会遇到需要输入当前系统时间的情况。你会怎么做呢?
① 数字键直接输入:这是最简洁的办法,但也是最低效的。
② 输入法:目前多数输入法都支持输入当前(或指定)日期,并支持不同格式。但对于同时使用多种输入法的朋友来说,要保持一致的体验,并非易事——比如,要输入当前日期,有的输入法要键入dqrq,有的则要键入date。笔者经常使用中英日3种输入法,根本就放弃了这一想法。
③ AutoHotkey输入:虽然要编写代码,但输出格式、触发方式可完全自定义,也超越了输入法的限制。代码如下:

代码示例1:按下 /dd ,输出 YYYY-MM-DD HH:MM:SS

::/dd::
d = %A_YYYY%-%A_MM%-%A_DD% %A_Hour%:%A_Min%:%A_Sec%
clipboard = %d%
Send ^v
return

代码示例2:按 /rs 输出 MMDD

::/rs::
d = %A_MM%%A_DD%
clipboard = %d%
Send ^v
return

2. AHK实现动作

目前为止,只写了一个,是用来控制becky的。因为工作都是用mail联系的,平均一天要收50+的mail。所以经常要打开、最小化becky。一天重复N次,虽然说不麻烦,也都只是鼠标点一下。不过要移动鼠标到特定的点进行点击,所以还是要浪费一些脑细胞的。所以写了这个东西,检查becky是否打开。如果没有就打开,如果打开就判断是否激活;如果没有就激活,如果已经激活就最小化。好像QQ的Ctrl+Alt+Z 功能一样,而且比那个功能还好。按一下出来,再按一下还能回去!方便啊!

代码如下:

^!#a::
IfWinNotExist, xxxxx – Becky!
;判断becky是否启动
Run,c:\SystemTools\Becky_jp\B2.exe
;没启动则启动becky
Else
{
IfWinActive, xxxxx – Becky!
;启动的话则判断becky窗口是否激活
WinMinimize,
;激活的话就最小化
Else
WinActivate,
;没激活的话就激活
}
return

3. 让 StrokeIt 调用 AHK

本来用上面这些就应该差不多了…….. 不过既然已经懒了就想更懒点…. 这个还是要点键盘的…..而有的时候如果手不在键盘上就要挪过来然后点然后在挪回去这个…… 对懒人来说是无法忍受的. 还好还好鼠标几乎是不离手的恩…..那当然是立刻想到用StrokeIt了.

其实StrokeIt本身也有一些不错的功能的不过毕竟还是有限的哪有AHK强大我现在的做法是能用StrokeIt本身功能的就用不能用的就写到AHK里然后用StrokeIt调用AHK的快捷键这样一来…..真的是方便啊…..

经过如下配置:
StrokeIt调用AHK

最终效果是:
– 鼠标右下一拉 becky显示 再右下一拉 becky隐藏
– 向右一拉 输出 MMDD
– 拉个D 输出 YYYY-MM-DD HH:MM:SS
– 向左下拉 当前窗口最小化
– 向右上拉 显示刚才最小化的那个窗口 (我是用他调用 Alt+Shift+Tab 来做到的)
– 还有一些….是定义在特定窗口里的…
而且这样用还有一个好处:想用鼠标调用就用鼠标调用,不想用鼠标调用,也可以直接用键盘调AHK。两边都不影响。(正文完)

附1:相关链接
AutoHotkey 0级入门教程:让重复工作一键完成
[鼠标手势StrokeIt]一鼠走天下-兼谈电脑操作的便捷性

附2:更新历史
2011-04-11:更新图片;解释输出日期为什么没用输入法。>