ViATc: 借力 AutoHotkey,让 Vim 光耀 TC


【更新】ViATc的作者开设了一个QQ群,用于交流TC、AutoHotkey、Vim。群号 271105729。–2012-12-11

有些软件已经超越了“工具”境界,不仅由“器”及“道”,并且成为用户感情世界的一部分,成为人格化的“良师益友”。于是,用户会爱上软件。有的人爱 Total Commander,有的人爱 Vim,有的两者兼爱。两者兼爱,会有问题——当然并非道德方面要求“选择其一”,而是主观方面希望它们能“合为一体”。这一梦想,虽然小众,却绵延不绝,并为双方催生了向对方扩展的插件。其中,代表目前最高水平的(虽然仍不理想),让 Total Commander 拥有 Vim 操作风格的辅助工具,就是 ViATc。开发者就是我们身边的一位同胞,开发工具,或者说是让 Vim 附身于 Total Commander 的伟大调和者,正是 AutoHotkey !(本文由 woodleejc 投稿)

ViATc logo

0. 善用佳软的引言

0.1 文章缘起

2012年9月,我在水木社区的邮箱,收到一名陌生网友来信,要推荐软件。他不是软件作者,但因为用了很久,深感于其优秀、深感于“作者是一个年轻的中国人,非常有想法”,而觉得应该有更多人去使用,于是,能行动,给陌生的我发邮件。我回复说无时间写文章,他又继续行动:“我已经开始在起草这个软件的教程了;并打算翻译成英文,让更多的人去了解它。”

改变世界的不是梦想,而是行动。行动者是最后的胜利者。于是,有了本篇文章。

发稿的Email中,他是这样写的:

关注你的blog和微博有一年多了,学到了许多软件操作的技巧,发自内心感谢你为大家做的这一切。在您思路指引下,我用逐渐使用了TC,gVim,两个结合就成了ViATc。

ViATc的作者是一位年轻的中国人,但这丝毫不影响软件的优秀及良好的用户体验。软件是有灵魂的,通过用心发现与探索,可以体会到作者付出的努及价值观。在长期的使用中,我已经喜欢上了这种操作,觉得自己应该为它做些什么。

ViATc 在 sourceforge.net 发行后,似乎并没有引起大家的重视。全世界范围内共有600多次下载,其中很大一部分下载的客户端却是Linux。这种影响力,与其完善的功能、贴心的设计是不匹配的。因为作者的英文不好,等最终版出来后,我将会负责把它翻译成英文,让世界上有更多的人喜欢这种操作方式,让人们都知道一个普通人的存在对于社会的价值。

0.2 ViATc 简介

ViATc,是 Vim At Total Commander 的缩写,它让 Total Commander 具备了 Vim 的操作风格。ViATc 是免费、开源软件,开发者 Array 网友,开发工具为 AutoHotkey 。

用软件开发者自己的话来说,就是:将Vim模式与TC结合,让TC操作『快捷』起来;把复杂的操作,用两只手在键盘上敲击出来;最多两次按键,即可完成大部分TC操作。

ViATc主页:http://sourceforge.net/projects/viatc/

下载 ViATc 后,放在任意位置即可使用。如果使用绿色版本的TC,首次运行时需要指定 TOTALCMD.EXE 和 WINCMD.INI 两个文件的位置。

运行 ViATc 后,TC进入默认的Normal模式(或称为Vim模式、ViATc模式)。其最有价值的功能点在于:
(1) hijk移动光标:jk键上下移动光标焦点;支持数字,如,3j 向下移动到第3个文件;大写J/K表示移动光标并选择文件。
(2) TC操作单键化:标准的TC热键,如Windows其他程序一样,多数是功能键(F2、F5)、组合键(Ctrl+d),而在 ViATc 调教下,都变成了Vim的单键风格。比如,Ctrl+d 变成了 d;驱动器菜单 Alt+F1、Alt+F2 变成为 o、O;ctrl+1/3复制文件名/全路径,变为了 y Y;删除文件变为了 x……
(3) 提供了一些TC不具备的功能,比如 Win+e 打开/最小化TC、TC窗口置顶等。

正文 (作者:woodleejc)

记得善用佳软说过,学习Vim使他的软件技巧上升到了一个新的高度。对于这句话,我也是在使用了Gvim三个月后才慢慢体会到其中的深意。Windows的日常操作主要依靠鼠标,而Vim是强调键盘操作的重要作用,甚至你的手都可以不离开主键盘区。我的键盘操作是Vim中学习并在水木Telnet中不断强化的,从无数前人的经验看,键盘确实比鼠标要快,而且错误率要小得多。也有人说键盘操作是不仅是一种习惯,更是一种信仰。

最初使用ViATc,也是在善用佳软的blog中看到的。他介绍了一些Vim化操作的软件:Pentadactyl/Vimperator (Firefox插件),Vieum(Word插件),Apvlv(Pdf阅读器),ViATc(TC插件)。经过一段时间的适应,至今还在使用的只有Pentadactyl(我为它放弃了使用两年多的Chrome)和ViATc,一位网友说过,Pentadactyl是他至今还使用Firefox的唯一原因,其实,ViATc是我再也无法离开TC的原因。

不少朋友要问,为何一个插件会有如此的魅力呢?百闻不如一见,就让我们开始这一次操作的探索之旅,请有兴趣改变自己习惯的人跟我一起操作:

1. 用ViATc加速TC的常用操作

1.1 文件定位与移动

例1:快速进入C:\Program Files (x86)文件夹

①按下o,打开驱动器菜单,如你要进入C盘,可以依次按c回车。
ViATC截屏
图1:使用o切换不同驱动器

②依次通过使用j(下一行),k(上一行),f(下一页),b(上一页),找到Program Files (x86),按Enter进入文件夹。
③依次按下da,你可以把文件夹放入常用文件夹(记住可以用&来作文件夹的标识,我选用了o)
④下一次你可以直接通过do进入这个文件夹
ViATC截屏
图2:使用d打开收藏夹(常用文件夹)

经验分享:从经验上看,在某一时期内,一个人经常打开的文件不会超过10个,如果把这些文件放入常用文件夹,操作将会变得非常快。比如我打开自己的工作文件夹,操作如下win+e(启动TC),df(打开常用文件夹-进入快盘),只有三个键,整个过程不到两秒钟,如果你足够仔细,可以发现这些快捷键都是用左手的食指与中指完成,左手用起来很顺,右手同时还可以操作鼠标。
在善用的介绍下,我一直都在使用Listary这一神器,辅助文件的保存与调用,具体请看“Listary+TC: 提高效率,取代传统低效的打开/保存对话框”这篇文章。当然在实践中,对于Listtary不能识别一些窗口,可结合复制文件路径Y来使用,同样也非常方便。

下面跟着我的操作动画,实践一下吧:

在操作过程中,不妨试用下面的小技巧:
a) j,k,h,l分别为上下左右的移动,当然可以通过数字标记移动的次数,如3j表示向下移动到第3个文件
b) f,b分别是下/上翻页(相当与PgUp/PgDn)
c) gg,G分别是文件夹中的第一个文件最后一个文件(相当与Home/End)
d) u,返回上一层次文件夹
e) H,L,后退与前进
f) n,为历史菜单
g) /,打开快速搜索菜单(快速搜索实事上不经常使用,后面会讲到)

1.2 文件选择

空格键是选择,shift与j、k联用可以实现连续选择。需要注意的是,下图中选中的文件是底色是蓝色的部分(标记),红框(光标)没有选中。在TC操作中,如果没有选择标记,光标处的文件是默认选中的。

ViATC截屏
图3:文件选择技巧

2. ViATC的一般使用

2.1 新建文件(夹)

iw,键入文件名后,回车。简单提下,在新建选项中,有一个选项叫做“添加到新模板”,可以直接保存任意格式文件为模板,这一功能对于写每日总结(计划)等需要模板化操作工作非常方便。

ViATC截屏
图4:文件选择技巧

2.2 复制粘贴

主要借助于自带的快捷键,如F5,F6,Ctrl+C,Ctrl+V,这两者的区别是:F5和F6是双窗口间的相互拷贝;Ctrl+C,Ctrl+V是在一个窗口之内、不同标签之间的拷贝(如备份文件等)。

2.3 删除文件

x,删除文件到回收站,当然也可以直接利用X把文件直接删除,可能经常整理文件的人有福了,因为x要比del(F8)好按很多,我基本都不怎么用这个快捷键^_^。

2.4 文件重命名

r,对单一文件重命名。
R,批量文件重命名
经验分享:文件批量重命名可以使用以下三个工具:①TC的批量重命名:包括文件编号,字符替换,加修改日期等;②菲菲重命名,这也是一个优秀的免费软件,音乐,视频爱好者整理与存档文件不用学习语法,非常方便,实际上比TC的批量工具更专业;③TC的文本编辑文件名,因为藏的很深(截图中选中的光标处),很多TC高手也不知道,这个工具实现了批量文件的不规则重命名,极易使用。我不展开具体讲了,你一试便知,终生受益。

ViATC截屏
图5:文件批量重命名

下面跟着我的操作动画,实践一下吧:

2.5 复制文件名

y,复制选中文件名到剪切版
Y,复制选中文件名及路径到剪切版
经验:以我的经验来看,这两个快捷键的功能可以对调一下(会面会专门介绍快捷键的自定义方法),因为复制完整文件名会更常用些。

2.6 利用帮助

帮助的调用方法如下:
按:后,出现一个选择菜单,选择A后进入帮助,帮助是交互式的,通过鼠标选择,指明了每一个键的功能及用法。
前面所讲内容都是我最常用的几个命令,探讨的基本是一些共性问题,更多使用建议看帮助并仔细操作,因为其中总有一些功能你总会用得到。

ViATC截屏
图6:ViATc的交互式帮助界面

下面跟着我的操作动画,实践一下吧:

3. ViATc的特殊使用

3.1 禁用ViATc

不需要使用时,Alt+~(可修改)禁用所有ViATc按键功能,实事上,Viatc并不影响TC的功能,我从未禁用过ViATc。

3.2 使用组合键

ViATc的组合键集中在z,V,g,c四个键上,c为清除键,较不常用(我直接改成了关闭当前标签)。对于组合键,按下后会出现提示窗口,用多了就会记住,组合键的主要功能如下:
z:窗口类操作
V:显示类操作
g:标签类操作

3.3 ViATc 配置

依次按下:b进入配置。
推荐一般使用可以选择开机运行ViATc,默认ViATc会修改win+e作为打开/最小化TC,完全取代了资源浏览器。
设置选项中后台运行,指关闭TC后,ViATc常驻内存不退出,如果修改win+e的功能,这个选项必须选择。

ViATC截屏
图7:ViATc的选项设置

4. ViATc 的扩展与个性化

4.1 自定义快捷键

进入ViATc设置,选择快捷键选项,这时你可以完全根据自己的喜好为她定制适合自己的功能,包括修改默认快捷键的功能,这也是ViATc最为值得推荐的地方之一,因为作者并没有把自己的操作习惯强加给你,而是让你有了一个方便的属于自己发挥的空间。
下面的操作可以完成定义h为“转到上一个标签”
1、在快捷键一栏中选择要定义的快捷键,h(注意利用搜索)
2、就可以点TC命令,找到相应的命令代码
3、点应用后,再保存

ViATC截屏
图8:ViATc的快捷键设置
h:转到下一个标签
l:转到上一下标签
c:关闭当前标签
0:取消选择的文件
-:全部选择当前文件

我根据自己的操作习惯,定义的主要快捷键如下,可以直接加入配置文件的[Hotkey]下面:
h=<SwitchToPreviousTab>
l=<SwitchToNextTab>
c=<CloseCurrentTab>
0=<ClearAllCfg>
-=<SelectAll>

4.2 利用全局快捷键制作快速启动程序

如果你想用Win+t启动Notepad,可以用ViATc来实现,或许许多使用TC的人并不会写代码,但是利用ViaTc做却并不难。具体做法如下:
1、打开配置文件中的快捷键
2、在快捷键中输入lwint
3、点运行,选择C:\Windows\notepad.exe文件
4、应用、保存即可。

当然,我更习惯用配置文件。打开配置文件最后,加入以下语句
[GlobalHotkey]
lwint=(C:\Windows\notepad.exe)

需要注意的是:
1、lwin指的是键盘左边的win键,alt指的是alt键,ctrl指的是Ctrl键。
2、等号右边要加半角括号,中间写上要运行程序的完整路径

5. ViATc 小结:致TC新老用户

5.1 致TC新用户

TC原本不好用,要折腾才能找到最适合自己的一个用法。对于爱折腾的人会越用越喜欢;如果你不爱折腾,那么我建议TC可能并不适合你,至少在我周围的人,我都不推荐使用TC,而是推荐Q-dir。简单来说,Q-dir具有多窗口,收藏/调用方便,启动快等的特点。当然,我也是两个结合一起使用的,当我时手不想放在键盘时,Q-dir就是文件管理的主导了。

另一个神器Doups10在功能上很完备,甚至可能超过TC,用过大约有一个月的时间,但这个软件启动慢,正版费用高。所以即使功能虽多,如果自己用不到也是一种浪费。

5.2 向TC老用户推荐ViATc

不少TC的老用户要问我了,我觉得现在的TC已经很好用了,为何还要使用这个插件呢?我来用自己的体会告诉你其中的原因:

原因1:单键操作更容易。比较一下,你按clrl+d和直接按d,是不是后者会舒服很多?我用的是精品论坛优化的TC快捷方式,用得多了大概能记住20多个快捷方式。过渡到ViATc基本没有花多大功夫,基本就是现成的吧。ctrl-d→d,ctrl-q→q,alt-F1→o。。。新的这个自然更加合理。同时,你可以自定义已有的快捷键,去改变目前的操作方式。

原因2:ViATc提供了新功能,弥补TC的不足。现在我常用的新功能有:zi折叠一个窗口,zm最小化,zv横向/纵向窗口切换。

原因3:强化了TC多标签浏览。“二个窗口太少了!”这是真话,在实际工作中,总会出现很多个要同时打开的文件夹,以前TC并没有太重视标签浏览的作用,加上了这个扩展,你可以在充分利用标签(tabs),t-新建标签,gh上一个标签(我自定义为h),gH下一个标签(我自定义为l);对于标签化管理文件夹的思想来源于浏览器,你看现在那个浏览器不支持标签浏览了?

原因4:没有了快速搜索,你会觉得不习惯?
有了ViATc后,快速搜索要用/来启动,而不是直接用字母来启发。最初我觉得这个不适当,后来才发现,其实已前那种利用快速搜索选择文件的方法是不对的。真正的有良好管理文件习惯的人一个文件夹的内容并不会太多,一般不超过10个,利用ss(大小排序),st(修改日期排序)两个基本就够用了,再也不用再按shift-ctrl-F1之类很不好按的快捷键了。如果你非说这样搜索不好用,那好吧,我只能吃惊的说原来你还没有听过everything。

总之,我相信:只要持有开放的心态,使用ViATc,会让TC高手再进一步!对于ViATc的介绍就到此为止,感谢开发者林欣宏为我们开发的这个伟大的软件,并且相信随着后期版本的推出,会有更多的人喜欢上这个好用的高级TC插件。(完)

附:文章更新历史>

, ,

《 “ViATc: 借力 AutoHotkey,让 Vim 光耀 TC” 》 有 4 条评论

  1. 到处都是高手!希望后学能借助前人的经验,不断发扬TC的作用,让更多的人学习TC,提高工作效率!我是个初学者,希望通过每天进步一点点的方法,逐步提高自己。如果身边有人想提高自己的工作效率,我也会把他们介绍到善用佳软来。

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据