Alfred是什么
Alfred是一款提效神器,可通过热键、关键字、文本扩展等快速搜索Mac和网络;并且可以自定义操作。
Alfred的基础能力差不多是SpotLight(聚焦搜索)的一个加强版,可以快速搜索和使用Mac上的资源。对应到实际的操作包括:应用搜索、文件搜索、文本内容搜索、通讯录搜索、使用计算器、使用词典等等等
直接听起来好像没什么了不起,但只要使用过,就会感受到Alfred带来的效率提升。以下我只列举一些我用到的
应用搜索
快速打开使用应用文件或文件夹搜索
直接通过文件名称查找文件或者文件夹文本内容搜索
使用in
命令 +待搜索的文本
某一天突然想找一个很久之前文件,不记得放在哪儿了,就模糊的记得文件里有个字段promisee
,于是直接使用计算器(基本不用)
我还是喜欢用手机或者直接打开计算器.app
直接点
Alfred的基础能力对比Spotlight对我而言没有什么特别的,我使用比较多的只有上面提到的一些功能。不过Alfred强大之处在于自定义流程操作,也就是下面的workflow。
workflow
workflow是什么?字面上看工作流,很多行业内都有工作流的概念,workflow也不是什么难以理解的东西。说个笑话,把大象放进冰箱分为几步?第一步:打开冰箱门;第二步:把大象放进冰箱;第三步:关上冰箱门。workflow就是类似这样一个把大象放进冰箱的过程。对于大多数使用者来说,并不会真的自己去开发一个自己的workflow,多数情况会直接使用别人已经开发好的workflow;就像我们不用关心怎么把大象放进冰箱,我们只需要按照流程走,达到我们想要的目的就好了。
我们可以把一件我们要完成的work分为几步,比如:使用google搜索Alfred。那正常的操作流程应该是:1.打开chrome浏览器,找到google输入框;2.在输入框内输入Alfred;3.回车搜索。可以看出,其实只要我们有一个目标,若是一个简单易达到的目标,我们很容易确定达到这个目标的每一个步骤。这一个个步骤就组成我们的workflow。而这种行为上的workflow可以映射成Alfred的workflow。
所以workflow白话就是设定好步骤、流程一步步达到我们的目标。
有workflow的地方一定就有流程图,流程图可以说是workflow最形象化的表现,看举个具体的例子
这是一个查询本机局域网IP和公网IP的workflow,它只有两步,第一步:输入关键字IP执行script脚本,具体脚本的编写这里不介绍,这段脚本获取了本机局域网IP和公网IP然后输出到Alfred界面;第二步当用户点击展示的选项后的时候会把Ip复制到剪切板。可以看出此workflow核心功能的实现在于第一个脚本单元,简单理解其内容就是API + code,这里不做介绍。
在了解了workflow的概念之后,多数人的期望提供优质的Alfred workflow的collection;少数人可能会有开发自己特有的workflow的想法,这就需要了解Alfred具体提供的能力,这里提供一个链接:Alfred神器使用手册,可能会对你有帮助。以下的内容只针对大多数人
workflow资源获取和使用
第三方开发的Alfred workflow在Github和http://alfredworkflow.com/这两个网站上找就足够了,在GitHub上可以搜索关键字alfred workflow
https://github.com/zenorocha/alfred-workflows就是一个不错的Alfred workflow collection
后者是一个专门收集Alfred workflow的网站
无论通过什么样的途径获取到Alfred workflow,能够被Alfred解析添加的workflow的后缀都是.alfredworkflow
类似这种文件直接双击可确定可添加到Alfred。添加之后可在Alfred Perferences Workflows界面查看添加的workflow
已添加的workflow可导出,有编程基础的可查看代码逻辑。
workflow推荐
Fixum
检测其他 workflow 是否有可更新版本,以及处理兼容性问题,只是其他 workflow 的 “医生”CodeVar
这个超赞,生成可用的代码变量,主要用来定义变量名称,再也不用拼音啦~对于英文能力有限,取名捉鸡的同学是个不错的选择ip 查询
显示本机局域网和公网IP
需要的时候就会觉得这个功能超赞
http status code
快速查询Http状态码含义-
Alfred App Workflow for caniuse.com
colors颜色转换
颜色格式转换
我可能用的不多emoji
搜索Basecamp、github、gitlab上使用的emoji
对我用处不大encode
编/解码字符串
对jser来说可以快速查询一些特殊编码倒是个不错的功能Faker
生成虚假数据,如姓名、电子邮件、信用卡号等。Github
快速打开github仓库,需要登录process-killer
快速找到进程并使用命令kill -9
杀死它们
多数能kill,使用sudo命令启动的程序杀不掉npm包管理器
快速使用各种包管理器,触发器:apt-get,apm,bower,brew,chef,cocoa,composer,docker,gems,gradle,grunt,gulp,hex,maven,npm,pear,puppet,pypi,raspbian,rpm,yo
我常用的:brew,npm
超好用,不用打开网站再搜索(网址还常常记不住)StackOverflow 问题搜索
直接在stackoverflow上搜索问题
超好用
Aflred为什么能提效?
稍加思考,大家应该都能想到,界面化的流程操作几乎对所有人都是友好的。再想一想刚刚使用google搜索Alfred的例子,对懂的人而言,我只是需要使用google搜索引擎输入搜索关键字,在浏览器中打开我的目的就达到了。在这个流程中,界面化的操作要求我们首先要寻找浏览器、打开浏览器、找到google输入框,然后才能使用google搜索引擎输入关键字搜索。这个流程其实效率并不高,因为我们看似熟练的操作我们的大脑需要接收很多不必要的信息。这倒不是界面化的操作不好,恰恰相反,界面化的操作是个天才的idea,是它让很多我这种愚钝的人更容易进入计算机和互联网的世界。只是当我们进步了,有了一定的基础之后,我们可以选择一种更好、更快的方式。