由于我每天都写一篇博客文章,每次都需要我打开 vscode,然后在终端里面输入
hexo new post title... |
我在想,能否使用 automator 让我这个过程变得更加流畅一些。
我的想法是,在 Mac 右上角,放一个图标,我点击图标后,弹出一个文本框,然后我输入文章名字,例如今天这篇的名字是 automator-input-box
输入完成之后,后台就自动执行
hexo new post automator-input-box |
感觉还是挺简单的,应该是可以实现的。
一番研究之后,终于实现了。
脚本内容
source $HOME/.zshrc |
首先放一个 「获得指定的文本」在最上面,然后下面是「运行Shell脚本」
第一行加载 zsh
的配置,是为了获取到 node
和 hexo
的环境变量,如果不加这一行,那么脚本运行的时候,它是找不到 hexo
的。当然我们也可以写出 hexo
的完整路径,例如 /opt/homebrew/.../hexo
之类,但是我发现这样会提示找不到 node
,又得加 node
的环境变量。所以还是直接加载 zsh
的配置文件比较方便。
之后进入 hexo
博客所在的位置,我的是放在用户目录下的 hexobackup
中,所以可以写成 $HOME/hexobackup
进入到博客目录之后,再执行命令创建文章。
本来到这里就结束了的,不过我后面还是加了些内容,让结果可以通过通知显示出来。
这里的关键点是设置一个变量,来接收输出结果,然后在显示通知里面,使用这个变量。
我创建的是「应用程序」,所以可以选择把它保存到自己想放置的地方。
之后我把这个 APP 拖到 Dock 栏上面,可以非常快速地打开它。
点击它之后,就会出现一个文本框,在这里我可以输入博客文章的文件名。不过它这里不能粘贴,只能手动输入。
当我输入完成后,点击「继续」按钮,就会去执行 shell 脚本。完成之后,会弹出一条通知。
感觉比较遗憾的地方是,不能粘贴,以及只能按「继续」按钮,而不能用按回车键来代替。