macOS 应用程序中的捆绑命令行工具 — Sam Soffes

macOS 应用程序中的捆绑命令行工具 — Sam Soffes


发表于

我在航站楼度过了很多时间。在使用 Spotlight 或 Alfred 等工具之前,我会先在 Terminal 中实现一些功能。这是一个例子:

$ c so/bl
# cd ~/Code/soffes/blog
$ s

s 别名定义为:

这只是在我选择的编辑器 Sublime Text 中打开当前目录。 我真的很喜欢这让我能够如此快速地开始做某事。 我第一次使用 TextMate 遇到这种模式 mate 命令。太棒了。

对于威士忌(我在空闲时间使用的文本编辑器),我包含了一个命令行工具,它的功能与 subl 命令。对于习惯了这个工作流程并想用威士忌来做到这一点的人来说超级方便。

构建命令行应用程序

创建命令行应用程序非常简单。它只是一个二进制文件,因此您无法捆绑资源或框架。您可以将框架与路径链接起来(也许类似于 ../../Frameworks 在你的应用程序包中),但是如果有人移动你的二进制文件并破坏路径,这可能会很脆弱。我通常使用命令行工具调用主应用程序或静态链接任何共享代码以避免这种情况。

首先,您需要一个新目标。只需选择“命令行工具”macOS 模板即可。现在将您想要的任何内容放入此目标中。 要将内容打印到终端,只需使用 print 在斯威夫特.很容易。

捆绑您的应用程序

在命令行工具的目标中,将“跳过安装”更改为“是”。这将确保您的存档仅包含 Mac 应用程序,因为我们将自行捆绑它。如果您不这样做,您将无法将您的存档上传到 App Store、签署开发者 ID 等。

接下来,在您的 Mac 应用程序中,将命令行工具添加为“目标依赖项”之一。创建一个“新复制文件阶段”并将其命名为“嵌入命令行工具”。将复制阶段的目标设置为“共享支持”。现在,单击该阶段文件列表下的 +,然后从项目的“产品”组中选择二进制文件。就是这样!

现在,当您构建应用程序时,命令行工具将自动构建并复制到您的包中。您可以提供一些 UI 来复制它或更新其路径以将其包含给用户。

享受。

发表于

我正在开发一个带有颜色选择器的 Mac 应用程序。这是一个屏幕截图:

macOS 应用程序中的捆绑命令行工具 — Sam Soffes

为了实现此目的,我隐藏了光标并让自定义视图跟踪您的鼠标移动。 (当我说 光标 我的意思是你用鼠标控制的屏幕上的指针,当我说鼠标时,我指的是你的物理输入设备。)我使用全屏、无边框窗口, NSTrackingArea 来做到这一点。那里没什么太疯狂的。我这样做是为了避免处理定制a NSCursor 因为那是很多工作。

继续阅读 →



Source link

Postagens Similares

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *