是否可以更改 XCODE 中的 'Clean Build' 快捷方式?

Is it possible to change the 'Clean Build' shortcut in XCODE?

我正在使用 Xcode 12.3,我需要更改 'Clean Build' 操作的默认快捷方式。

默认情况下,Xcode 将此绑定到 Command+ Shift + K(也可以在 IDE 中的产品菜单中看到)。

Xcode 提供了一个选项,可以从 Xcode 首选项中的“键绑定”选项卡更改键绑定,如下所示。

对于其他的快捷方式,我们可以双击快捷方式的文字,会出现一个文本框来改变快捷方式。只需输入您的新快捷方式,它就会被更改。

但是,当我双击“清理”键绑定的快捷方式时,它不允许我更改快捷方式。几乎就像它被“锁定”了一样。

谁能帮我改一下这个快捷方式?

对象库的快捷方式是Command+Shift+L,实在不方便。我不小心清理了我的项目,不得不等待很长时间才能完成下一个构建。当一个干净的构建需要大约 10 分钟的时间来编译时,这并不有趣:(

感谢 @LinusGeffarth 的评论,我得以解决此问题。我将问题的答案分为 3 个部分。

1。为什么无法从 Xcode 更改“Clean”键绑定?

因为自 Xcode 10 起,“清理”和“清理构建文件夹”执行相同的操作。 Xcode 仍然保留“清理”选项的快捷方式。它不存在于任何菜单中,但按下快捷方式会调用“清理构建文件夹”操作。 Reference

The new build system uses the “clean build folder” behavior. The legacy “clean” behavior is not supported.

对于那些想知道两者是否有区别的人,有一个很棒的 Whosebug 答案 here

If you select Clean from the Product menu, XCode will delete the files inside every folder in the Build folder, if you select Clean Build Folder it will delete the entire Build folder.

2。如何更改“清理”快捷方式?

这是我遵循的步骤。

  1. 打开系统偏好设置。
  2. 导航到,键盘 → 快捷方式 → 应用程序快捷方式
  3. 单击 + 按钮。
  4. Select“Xcode”作为应用程序。
  5. 输入“清理构建文件夹”作为菜单标题。
  6. 单击键盘快捷键文本字段并输入首选快捷键。
  7. 我选择了 ⌃⇧⌘B (Control + Shift + Command + B) 快捷方式。
  8. 点击Add

这会覆盖 Xcode 上的默认 Clean Build 快捷方式。按 Command + Shift + K 不再清理构建。

我在 Xcode 的产品菜单中留下了一个小 side-effect。 Xcode 中现在有两个 Clean Build Folder 选项(如下所示)。

不过问题已经解决了。 “清理”快捷方式被禁用。有另一种选择并没有特别困扰我,但它确实让我的回答有点不完整。

3。为什么不使用“清洁”作为第 2 部分中的菜单标题?

如第 1 部分所述,Xcode 产品菜单中实际上没有“清理”选项。所以重写“清理”快捷方式不会有任何作用。

我检查了是否在覆盖“清除”选项后删除了键绑定,但事实并非如此。按 Cmd + Shift + K 仍然清除构建文件夹。

但是,覆盖“清理构建文件夹”选项也会覆盖“清理”快捷方式的操作(我不确定为什么)。