让macOS词典具备保存单词的生词本功能

macOS里的自带词典使用起来非常的方便,这主要体现在两方面:
1.三指轻按触摸板即可呼出查询,且释义简要全面
2.在几乎任何地方(safari浏览器、PDF文件内[主要是浏览国外期刊或书籍时]、各种文本编辑器[如typora])都可以使用这一功能
这两个主要的特性加上系统原生功能带来的无缝衔接的流畅体验,使得macOS词典成为了几乎可以取代macOS系统上其他第三方词典的优秀查词工具,借用macOS上提供的工作流制作器Automator,可以方便地实现其他的增强功能,其中最为迫切的一个需求就是实现生词的管理,即生词本的实现。

相较于第三方查词软件提供的生词本功能,这一功能具有更高的自由度的操作上的便捷性,具体实现方式及理由将在下文中说明。

需要的一些前置知识:

  • 基础shell语法
  • 基础linux语法
  • 基础正则表达式语法

当然,这是指进一步改进以及完善这一功能所需要的知识,如果你只是想应用这一功能,那么直接按照下述操作步骤中的过程实现即可。

1. 新建快速操作(服务)

特别说明:新版本macOS系统中,以往的服务现被翻译为“快速操作”

在这里插入图片描述

2. 选择获得词语定义

在这里插入图片描述

3. 创建Shell脚本

因为需要有个文档来保存获取的单词定义,因此需要用shell来操作。在左侧搜索shell(记得先选中“资源库”或“实用工具”)即可看到运行Shell脚本的工作流,拖拽过来,输入下面代码即可:

  # 将单词释义保存到桌面的wordlist.txt文件下,若文件存在,则直接追加
  FILE=$HOME/Desktop/wordlist.txt
  if [ ! -f $FILE ]; then
  touch $FILE
  fi
  echo -e "\n$1" >> $FILE

就此服务就完成啦,保存即可。你可以创建两个服务,一个保存英文释义,一个保存中文释义。(实际上对应于英语查词的需求,只用建立一个保存英文释义的服务即可)
在这里插入图片描述

4. 绑定快捷键

上述步骤完成后,你就可以直接在服务中看到你自定义的工作流。 如果你想方便快捷的保存单词,则直接在系统偏好设置>键盘>快捷键中找到对应的服务,自定义快捷键即可。

在这里插入图片描述
最终成果:
在这里插入图片描述
至此,一个简单的生词本功能已经实现,在这之后如有需要使用正则表达式对其进行格式化处理即可。

待完善

实现过程中的一些坑

实现这一功能主要参考的是第一个参考链接中“郭海旭”博客文章中的操作步骤,因为文章略为久远,以及一些描述上简略或略有偏颇的部分,导致在实现的过程中踩了一些小坑,故记录在此:

  1. 原文中的“服务”即现在的“快速操作”

  2. 原文中所给的正则表达式语句并不能得出原文中截图所示的效果,为此我重新查了几乎一上午的正则表达式语句,但是发现实际想要得出的格式化结果实现起来还是有些困难。期间还遇到了关于正则表达式字串嵌套相关的问题,在查阅博文后得以解决,由此也更感

    参考:正则表达式---------------嵌套的分组 - a fine day - 博客园

一些心得

参考:

  1. 让OS X词典具备保存单词功能 (2017.03.15新增直接导入Evernote)
  2. OS X 自带词典功能强化
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值