-
Notifications
You must be signed in to change notification settings - Fork 73
Home
VimDesktop=Vim Mode At Desktop.
Vim的模式与快捷键让人着迷,使用Vim的人会希望将这种模式应用在任意程序中,于是有了Vimperator/Pentadactyl@Firefox,vimium@Chrome.
2012年中国小伙Array(linxinhong.sky At gmail.com)使用ahk开发了viatc(Vim Mode At Total Commander),这让强大的文件管理利器Total Commander插上了Vim的翅膀:把复杂的操作,用两只手在键盘上敲击出来;最多两次按键,即可完成大部分TC操作。
2013年,viatc扩展为vimd(Vim Mode At Desktop),使得我们可以在Windows的任意桌面程序上使用Vim的模式进行操作。
- Total Commander:最好你已经安装并使用了Total Commander,认为TC大大提高了你的工作效率,那么你一定要尝试一下VimDesktop,VimDesktop将会再一次提升你的使用境界--vimd目前对Total Commander的支持最为成熟和完善,毕竟vimd是从viatc发展过来的且更为强大;
- 如果你使用Vim作为编辑器,对Vim的操作模式和快捷键有些狂热,希望把它们应用在任何场合,那么VimDesktop也许正是你的期待;
- 如果你已习惯Firefox上的扩展Vimperator/Pentadactyl,并将之作为使用Firefox的重大理由,那么VimDesktop绝对不容错过;
- 如果你使用AutoHotkey编写一些脚本用来辅助工作,那么VimDesktop可以为您提供一种Vim的方式来集中管理这些脚本
- 如果上述情况你都不了解,那么你必须是一个拥有折腾精神的人,好好学习,天天向上吧
简单来说,可以将VimDesktop理解为一个可以自定义快捷键的工具;不简单的地方在于,VimDesktop拥有高度可配置性的定义方式:
- 可以定义不带有Win、Ctrl、Alt等辅助功能键的快捷键:这恰恰是VimDesktop能够获得更高效的途径之一;
- 可以定义全局快捷键及其对应的功能:任意场景下按下全局快捷键都会触发你希望执行的操作,VimDesktop可以对系统全局快捷键重新定义,比如我们将Win+E默认打开资源管理器,替换为默认打开Total Commander;
- 可以为指定应用程序定义快捷键
- 可以为指定应用程序的指定界面定义快捷键
- 可以为指定应用程序或指定界面定义多个模式,每种模式下可分别定义不同的快捷键:常用模式如normal、insert,比如在normal模式下按下dd,将删除选定文件,而在插入模式(比如修改文件名时)下按下dd,仅仅是输入了两个字母dd
- 可以通过指定可执行文件、批处理命令的方式来实现快捷键对应的功能
- 可以通过Autohotkey模拟发送按键实现对应功能
- 可以通过Autohotkey编写特定方法实现想要的功能,Autohotkey让你几乎无所不能...
1.下载安装运行需求软件Autohotkey
http://l.autohotkey.net/AutoHotkey_L_Install.exe
2.下载VimDesktop:根据需要二选一即可,可下载稳定的发行版本,如果希望尝试最新功能,可下载开发版
VimDesktop 发行版 :https://github.com/victorwoo/vimdesktop/archive/master.zip
VimDesktop 开发版 :https://github.com/victorwoo/vimdesktop/archive/develop.zip
3.必要配置
- 不做任何配置时,您将使用vimd的默认快捷键进行相关操作
- 配置文件-- src\VimDesktop\vimd.ini,可在其内自定义快捷键取代默认的快捷键,可参考我们提供的示例文件 src\VimDesktop\vimd.ini.help.txt 进行修改。下面提供部分示例
4.启动软件
双击执行src\VimDesktop\vimd.ahk,即启动了VimDesktop。此时VimDesktop也许会弹出窗口要求设置Total Commander的安装路径,设置或直接关闭均可。
;=====Total Commander快捷键配置=============
[TTOTAL_CMD]
;热键定义语法
;ff 热键 --按下两次f键
;<cm_SearchFor> 对应的动作
;[=normal] 在normal模式下生效
ff=<cm_SearchFor>[=normal]
;全选
a=<cm_SelectAll>[=normal]
;全部取消
<shift>a=<cm_ClearAll>[=normal]
;删除
dd=<cm_Delete>[=normal]
;编辑
e=<cm_edit>[=normal]
;弹出右键菜单
<shift>e=<cm_ContextMenu>[=normal]
;查看
v=<cm_list>[=normal]
;弹出USB设备,使用括号指定可执行文件
dr=(D:\USB_Disk_Eject\USB_Disk_Eject.exe)[=normal]