将 Mac 上的 shell 脚本,变成原生 Mac 图形应用

之前讲到 WebP 图片格式,目前我博客里一些比较大的图片,我都会转换为 WebP,这样图片的体积会缩小很多,访问的时候速度能提快一些。

不过,每次要将图片转换为 WebP,我都需要打开终端,在 shell 里用 cwebp 来转换。如果能够把它变为一个 APP,我打开 APP 后,将图片拖进去,它就自动转换就好了。

很快啊,我就实现这个目的了。

webp-mac-app

实现起来也很简单,使用一个开源应用:sveinbjornt/Platypus: Create native Mac applications from command line scripts. (github.com)

这个应用名字挺有趣的,叫「鸭嘴兽」,它的目的是把命令行脚本转换为 Mac 原生应用。在 GitHub 上面有非常详细的说明文档

Platypus-webp

我是直接点击「+New」让它新建一个脚本的,里面写这些内容。

#!/bin/bash

/opt/homebrew/bin/cwebp "$1" -o "${1%.*}.webp"

Interface 就选 Droplet,这样 APP 打开后就是一个让我们把文件拖进去的界面。

Suffixes

然后在 Accept dropped items 后面的 settings 中,我们需要勾选 Accept dropped files。

Suffixes 下面的框,就是设置支持的文件后缀。我是怎么将 jpeg 和 png 加进去的呢?它下面的 + - 都是没法点击的。因此我是直接拖一张 jpeg 图片,和一张 png 图片进来,后缀就加上去了。

only-264KB

如果不加 APP 图标的话,这样创建的应用只有 264KB。不过我还是加图标了,这样比较美观。

Platypus-webp

这个图标居然要 1.3MB,我是从 https://macosicons.com/ 下载的,这网站也挺好的,本打算点击图标查看详情,没想到它直接就下载了。不仅免费,而且连注册账号都不用。见惯了国内的网站难看的吃相,遇到这种反到有点不习惯了。

一切设置好后,点击一下「Create App」,选择保存在哪里,就生成了一个 Mac APP。

我们可以把它放到「应用程序」里面,这样就可以在「启动台」里面找到它。而且只有这样,APP 打开后再退出,才会留在「程序坞」里面。

WebP-dock

如果经常使用,我们可以将它长期固定在「程序坞」。像我这种用来处理图片的,可以在不打开 APP 的情况下,直接将图片拖到 APP 上面,就会打开 APP 自动处理,确实提高了效率,很不错。