如何编写 Alfred 使用的 Workflow,需要掌握哪些知识

如何编写 Alfred 使用的 Workflow,需要掌握哪些知识,第1张

我认为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也就跟开发其他脚本一样了。

转载仅供参考,版权属于原作者。

iOS利器“小火箭”(Shadowrocket)最全使用教程

75条回复

最近得知Surge2可以向surge3迁移或赠送Mac版,我使用授权迁移时提示我已经被其他邮箱迁移走,官推不回,邮件不回,想想买个新版吧?258元?于是到美区买了Shadowrocket,我们俗称的小火箭,因为其图标是一个小火箭的LOGO,所以大家爱称之为小火箭。大家到App Store下载的时候别认错了,App Store好几款挂羊头卖狗肉的冒充货。配置下来发现,经过3年的发展,对得起这个价格。

Shadowrocket是一款基于规则的网络调试工具,具有性能高和稳定好、使用流畅,功能多样的特点,只占用最少的系统资源,全盘接管所有的连接,根据规则来进行处理,让你无忧无虑。独有的场景模式,方便根据不同需求自动切换配置及节点。不过这个指是软件教程,另外还需要一个好用的服务器或机场服务。

主界面

一,节点相关

1,添加节点

小火箭支持多种方法添加节点。

(1)链接导入

小火箭可以直接打开ss://开头的节点链接,自动导入节点;使用这个导入方式,部分网站可以一键导入所有节点。这个也是“小火箭免费节点获取”等Workflow流程可以直接导入节点的原理。假如你已经复制了一个ss://开头的节点链接,打开小火箭,会询问是否添加。

游戏的运行和机器的CPU,内存,独立显示核心等硬件配置有直接的关系,另外也和系统,驱动,其他软件等也有联系。

是否可以玩一个游戏,首先需要查看游戏运行的配置要求和机器的配置要求做一个对比,查看机器的配置是否符合。如果可以满足游戏的最低运行需求,则可以支持。

扩展资料:

退出游戏电脑卡顿的解决办法:

1、进游戏前使用游戏优化器优化,减轻电脑负担,提供更多系统资源给游戏。

2、不要开过多的电脑后台。

3、降低游戏效果,游戏ESC-视频选项-关掉垂直同步,帧数设为稳定。把人物/环境/技能/粒子效果慢慢降低直到最低看是否还卡。

4、关闭音效,也可提高运行速度。但没人愿意,毕竟音效也是游戏的特色。很低端的配置就没办法了。

5、显卡驱动,请保证您的显卡驱动和您的显卡相符合。不建议有最新的驱动就更新成最新的,你用你觉得稳定的就可。

6、双显卡用户,看看游戏前,是否切换到独立显卡上。

7、散热,散热性差,会使显卡CPU温度过高,极大降低运行速度。请保证风扇散热正常。本本带底座散热架。

8、可以使用腾讯电脑管家杀毒软件清理垃圾,电脑加速。小火箭的加入则让用户深度加速电脑,双重的减压让用户的电脑“用得飞起”更优的性能,依旧强大的功能。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/7838433.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存