2017年3月,Workflow被苹果公司收购。[1]苹果不只获得了Workflow App,开发团队也会加入苹果公司。
2018年,Workflow更名为“快捷指令(Shortcuts)”。
2017年3月23日,苹果收购Workflow,但苹果具体收购价尚不清楚。
2018年,Workflow更名捷径,并发布新版本,提供汉化[3] ,不久后又更名为快捷指令。
2019年,随着Apple推出iOS 13.1,快捷指令更新了“自动化”功能,可以在触发某一条件时自动运行快捷指令
App Store 上的“快捷指令”
点击“完成”进入快捷指令库界面,点击你想要执行的脚本就可以开始执行了。
——写在文外:按本文内容 *** 作需要一定动手能力,且准备工作稍复杂,但最终实现效果很便利,可以先看预览效果感受下。
自从去年重拾日语 (我相信读者都是理性的,我们只谈文化不谈政治) ,基本每天都会在微信公众号 NewsWebEasy [^ NEWS WEB EASY]上看一篇日语新闻。文章内容虽然用的都是基础词汇,但仍会经常遇到生词。如何快速记录它们就成为一件棘手的事。更重要的是,记录不代表记住,如何复习也是个问题。
有读者应该已经想到,用 Workflow for iOS 这款效率App。嗯,我也确实这么做的,不过早期对 Workflow 功能浅尝辄止,自建的动作也比较低级,遇到生词复制后运行,跳出输入框,手动输入生词的假名、音调、词性和解释,同步到 Evernote。
至于复习,就是经常去翻看记录的生词。话虽如此,可是然并卵,首先是会忘记去看,其次随着记录的生词越来越多,打开后看见满满的生词也就不想看了ヾ(。 ̄□ ̄)ツ゜゜゜。
复制生词,通知中心运行 Workflow 动作,提取 沪江小D 上该词相关信息,通过 Quizlet [^ Quizlet] API 添加新的 Flashcard[^ Flashcard]。Flashcards App 根据记忆曲线提醒复习,每次只复习若干生词,再也不会被满屏生词 KO了。
首先预览下动作效果,给你看下去的动力。
先附上 Workflow 动作:动作一 Quizlet获取token ;动作二 日语生词添加Qz
Quizlet 官网注册普通帐号,打开 开发者网站 (需先认证注册邮箱) ,按注释填入表格申请 API Key。
申请完页面如下,后续用到 Client ID 、 Redirect URI 和 Secret Key 。
Token Key 获取的详细流程和参数说明见 官方文档 。主要分为三个步骤:
【1】引导用户到授权服务器的授权入口。该步只需打开下面链接即可。其中 MY_CLIENT_ID 就是前面获得的 Client ID ; scope 表示授权第三方的权利范围,分别为:read、write_set、write_group,这里需要可读写删除的 write_set 权限; RANDOM_STRING 是任意字符串,用于防止 CSRF 攻击 (我也不懂什么鬼) ,搞个随机数即可。
【2】打开上述链接后询问是否授权访问 Quizlet 账户,允许后会转到 Redirect URI 指定的链接并附上 code 参数。复制该链接并用正则表达式提取 code 。Workflow 动作一运行如下图,授权跳转页面后 拷贝 (原则上来说,还需要校验传回来的 state 参数是否和第一步传给服务器的一致,避免 CSRF 攻击 。)
【3】向服务器请求 Token 。 POST 信息按官方要求填入即可。其中 Authorization 一栏内容为 Basic base64-encoded(Client ID:Secret Key) ,该值可自行转换,也可用官方转换好的,详见 该页面 Step 2 中的表格最后一行。
动作一 会把获取到的 Token 复制到剪贴板,把该值粘帖到第二个 Workflow 对应项即可。
本文是针对日语单词,如果是其他语种词汇,尤其是针对英语,各类词典 API 还是很丰富的。英语词汇可考虑添加生词到扇贝服务器, 详见此文 。
目前沪江小D未开放查询 API,只能曲线救国,提取查询后的网页信息。沪江小D 查询链接为 http://dict.hjenglish.com/jp/jc/ 中国 ,利用 Get Contents of URL 获取网页内容,假名ちゅうごく,音调①、词性和释义都在了。
经过多次测试对比,假名和词性都用“【】”包含,而音调都在罗马字发音 (图中为【chuugoku】)后面,释义最好获取 详细释义 后面的第 1、2 条(因为有些词语【词性】后面没有释义)。
利用 正则表达式 分别提取需要的内容,表达式具体写法见 Workflow 动作,不再赘述。需要说明的是:
(1)当网页中“【】”一组也没有时表示未查找到词语信息,需要一个 If 来判断。
(2)最近更新的 魔法变量(Magic Variable) 虽然能简化流程,但本动作需要提取多个信息,且需多次用到,如果全部用魔法变量反倒不方便不直观。
(3)动作中设置了 Show Notification ,便于确认查到的信息,毕竟不是官方 API 支持,有些不常见的生词无法用正则表达式获取到正确的信息。
利用 Get Contents of URL POST 词汇信息到 Quizlet 服务器。其中, Authorization 一栏填入动作一中复制的 Token 。 term 和 definition 可以理解为抽认卡的正反面。
图中 URL 链接如下,其中 187957966 是要上传的 Flashcards 组 ID (不然服务器不知道你要把新的 Flashcards 添加到哪) 。
如何获取该 ID 呢,打开 API test 页面
直接点击蓝色按钮 Send API Request ,
d窗中可以找到 ID,其中 title 对应组名,双字节字符会重新编号,不易辨认。
Flashcard 上传成功后会有通知提示,其中 仅供参考 表示沪江小D对该词仅有基本解释,无发音等信息,一般多为专属词。仅供参考词语不会添加到 Flashcards。
需要说明的是,因为非官方 API 支持,所以查询结果有时会有小 BUG,如果出现烦请告知我。
可以看到,【中国】这个词语相关信息已经添加到 Quizlet 了。
可以选择官方的 Quizlet ,好处是添加新的生词后刷新下就可以学习了。但我个人在用 Flashcards Deluxe,可设置的选项和主题比较丰富,缺点是需要手动更新 Flashcards,如图。第三张图片意思是:词语会被新的替代,但学习进度保留。
显示效果下图
获取了Quizlet 账户完整权限,其实可以作一个寄生于 Workflow 的小程序,除了添加、还可以删除、修改,甚至对 Flashcards 批量 *** 作。更多 *** 作请求方法见 官方示例 。
Workflow 是个了不起的应用,不断更新使得 iOS 能力有了更多可能性。
在编写本文 Workflow 动作时,也学到了很多新知识,比如正则表达式, OAuth 授权流程。因为不懂 HTTP 请求,在获取 Token 时走了很多弯路,当经过一番努力后突然明白了解决了,这种成就感和喜悦之情真是难以言表,简直太棒了。我想这就是人类不断探索进取的源动力之一。
本文 Workflow 动作适合在 iPhone 或 iPad 上阅读新闻使用,如何把电脑上浏览时的日语生词,快速 &批量添加到 Quizlet 生成 Flashcards 呢。这个还是看大家对本文的反馈吧,人少就没必要发了。
[^ NEWS WEB EASY]: NEWS WEB EASY やさしい日本语のニュースです,类似 VOA 慢速英语,NWES WEB EASY 发布的新闻都是用简单词汇和基础语法,便于日语初学者和日本小学生阅读。
[^ Quizlet]: 在线 Flashcards 网站,提供 iOS 和 android 客户端。
[^ Flashcard]: Flashcard,即抽认卡 。
方法/步骤
1
1. ios应用商店下载workflow。因为有可能是英文版的,如果各位对英语不熟,可以看网上提供了中文汉化版。
2
2. 右滑到iPhone的Widget界面 点添加 workflow。
3
3.进入workflow界面主要有两个分类,My Workflows(自己现有的Workflows)Gallery(类似于库,已经是可用的规则,可以直接点进入,然后Get Workflow)
4
4 怎么添加别人提供好的规则。首先将别人提供好的规则的链接复制,然后用自带的safri浏览器打开。然后按照步骤提示将规则添加到My Workflows. 最后点击运行就可以了。
5
5. 具体怎么理解,以制作GIF并分享到社交软件为例。
首先,Workflows有三种模式,我们选择Normal。
然后,点击Start。
先将Photo拖进去,然后提示Mark GIF,之后查看,分享到社交圈。
大致流程就是这样,类似于堆积木。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)