简介
图书是很好的阅读工具
目前我用它来阅读一些英文epub格式的书籍, 锻炼英文水平
但是由于英文水平欠缺, 还是需要时不时的翻译来帮助理解
翻译软件我采用的是bob, 有ocr识别, 从剪贴板翻译等功能, 支持导入百度等翻译api, 还是不错的
遇到的问题
一般在复制超过3个单词后, 剪贴板的内容为如下
“that I was okay, that I would be okay, and my father was trying so hard not to sob that when he did, which was regularly, it was an earthquake.”
摘录来自
The Fault in Our Stars
John Green
此材料可能受版权保护。
这就意味着会影响翻译软件的判断, 有时翻译内容较少, 会被判断为翻译成中文, 这不是我想要的. (并且每次看到确实有点烦)
解决方法
自动操作可以实现自动化脚本, 我在网络上搜索的大部分解决方案也是自动操作. 但是弊端在于大部分解决方案没有实现复制, 这就意味着我每次使用都需要cmd+c, cmd+(自定义ibookcopy), cmd+g(bob从剪贴板翻译)
在查找资料后发现自动操作可以实现执行快捷键, 需要用到"运行 AppleScript", 示例代码如下, cmd+c(该操作需要在隐私与安全性中允许辅助应用程序控制电脑)
on run {input, parameters}
tell application "System Events"
keystroke "c" using {command down}
end tell
return input
end run
解决方案
新建一个快速操作, workflow文件
我们实现的逻辑很简单
AppleScript执行快捷键实现复制->读取剪贴板->对复制的文本进行操作->拷贝至剪贴板->执行快捷键实现翻译, 如图
AppleScript快捷键实现
on run {input, parameters}
tell application "System Events"
keystroke "c" using {command down}
end tell
return input
end run
shell脚本正则匹配
sed -E -e 's/^“//g' | sed -E -e 's/”$//g' | sed -E -e '/^$/d' | sed '/摘录来自/,/此材料可能受版权保护。/d'
保存后, 去设置->键盘->键盘快捷键设置快捷键并启用即可