2017年3月,Workflow被苹果公司收购。[1]苹果不只获得了Workflow App,开发团队也会加入苹果公司。
2018年,Workflow更名为“快捷指令(Shortcuts)”。
2017年3月23日,苹果收购Workflow,但苹果具体收购价尚不清楚。
2018年,Workflow更名捷径,并发布新版本,提供汉化[3] ,不久后又更名为快捷指令。
2019年,随着Apple推出iOS 13.1,快捷指令更新了“自动化”功能,可以在触发某一条件时自动运行快捷指令
App Store 上的“快捷指令”
点击“完成”进入快捷指令库界面,点击你想要执行的脚本就可以开始执行了。
因为看到 @hzlzh回答的截图里有个自己写的Farbox同步 workflow,所以忍不住回答一下。我认为Alfred最成功的地方,是为繁琐的命令执行 *** 作,提供了一种无比优美简洁的使用方式,而且还提供了门槛很低的扩展框架,让用户充分发挥自己的想象力。
回到问题本身,分享下我自己的经历。
我学习的方式主要通过参考别人已有的workflow。workflow具体做的事情可能千差万别,但是有很多workflow的实现逻辑是相似的,比如我之前想写一个workflow用于切换mac的全局proxy:Proxy Toggle ,就很大程度参考了另一个用于切换Wi-Fi开发的workflow:Wi-Fi toggle。
Alfred有个很好的地方,就是你都能在alfred中看到你所使用workflow的具体实现,也就是它们对你都是开源的,至少我用过的workflow都可以。大部分workflow直接在alfred的workflows选项卡下都能看到,有部分workflow可能调用一些脚本文件,你也可以进入对应workflow文件夹下打开具体的脚本文件(可以通过右键workflow ->Show in Finder 打开workflow的文件夹)
我认为理解Afred workflow的几个组成部分是入门的关键,包括Triggers、Inputs、Actions、Outputs。
Triggers不是必备的,常用来设置快捷键开启某个Workflow。
Inputs定义了你在Alfred输入框中输入对应的keyword相应的显示内容。
以我常用的 @icyleaf 的有道翻译workflow为例,输入“yd workflow”下面所显示的结果都是Inputs中定义的。Inputs中以一个约定的xml格式输出文本就能被Alfred正确显示,上图的显示对应的xml代码为:
<?xml version="1.0"?>
<items>
<item uid="1.1392438279" arg="工作流 ['wə:k,fləu]" valid="yes" autocomplete="">
<title>工作流 ['wə:k,fləu]</title>
<subtitle>翻译结果</subtitle>
<icon>icon.png</icon>
</item>
<item uid="1.1392438279" arg="n. 工作流,工作流程" valid="yes" autocomplete="">
<title>n. 工作流,工作流程</title>
<subtitle>简明释义</subtitle>
<icon>icon.png</icon>
</item>
<item uid="2.1392438279" arg="工作流, 工作流技术, 工作流程" valid="yes" autocomplete="">
<title>工作流, 工作流技术, 工作流程</title>
<subtitle>网络释义:Workflow</subtitle>
<icon>icon.png</icon>
</item>
<item uid="3.1392438279" arg="工作流管理, 流程管理, 工作流程管理" valid="yes" autocomplete="">
<title>工作流管理, 流程管理, 工作流程管理</title>
<subtitle>网络释义:workflow management</subtitle>
<icon>icon.png</icon>
</item>
<item uid="4.1392438279" arg="工作流程动作, 工作流程 *** 作, 工作流 *** 作" valid="yes" autocomplete="">
<title>工作流程动作, 工作流程 *** 作, 工作流 *** 作</title>
<subtitle>网络释义:workflow action</subtitle>
<icon>icon.png</icon>
</item>
</items>
因为中文字符有转码,所以看起来有点像乱码:( ,这里跟微信公众帐号的工作方式很想吧。
Actions对应选中项后执行的 *** 作,比如在我的Proxy Toggle中,用户执行全局代理切换的工作脚本就写在actions中。
Outputs一般用于显示 *** 作的结果,提示 *** 作成功与否,以Post Notification较为常见,通过Mac的notification center提示。
以有道翻译为例,workflow中各部分示意图如下:
至于调试,貌似也用不到什么技巧,我都是测过脚本语法没问题后直接在本机上执行。
希望以上能对想入门的同学有帮助,这里有我自己写或修改过的几个workflow 尝试给自己写AlfredWork,都是比较简单的。我觉得workflow实现复杂与否不重要,关键在于使用频繁,是否能提高效率。
关键还是多实践,了解workflow工作方式之后,写workflow也就跟开发其他脚本一样了。
转载仅供参考,版权属于原作者。祝你愉快,满意请采纳哦
破解版Alfred
https://pan.baidu.com/s/1vYhLaG8QhRA5M9NH2pACzA
密码:yn2r常用功能
1.查询ip
功能实现:alfred-ip-address-workflow.alfredworkflow文件导入alfred
2.翻译
功能实现: Translator.alfredworkflow文件导入alfred
3.启动zk
功能实现:workflows 编写shell脚本
4.驼峰命名
功能实现: CodeVar.alfredworkflow文件导入alfred
6.切换打开idea项目
功能实现: idea.alfredworkflow文件导入alfred
https://github.com/artemy/alfred-jetbrains-projects
7.书签功能
功能实现:workflows 创建key然后指定访问网址
8.kill进程
功能实现: Kill Process.alfredworkflow文件导入alfred
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)