如何在 Xcode 中像在 Eclipse 或 NetBeans 中一样格式化代码?

问题描述 投票:0回答:12

如何在 Xcode 中像在 Eclipse 或 NetBeans 中一样格式化代码?我在菜单中没有找到任何选项。是否有一个热键,或者它在 Xcode 中不可用?

xcode code-formatting
12个回答
60
投票

在 Xcode 4 中,它已移至

Editor > Structure > Re-Indent
命令(并且默认快捷键为 CTRL+I )。


17
投票

好吧,首先欢迎来到 2021 年。我知道这是一个非常古老的问题,但仍然有像我这样的人访问这个问题,对于这些人,我在一个答案中提供了多个可用的解决方案,经过 2 小时的研究和研究后,这些解决方案对我有用测试。

重新缩进

正如其他人所建议的,如果您只想重新缩进代码行,这是默认解决方案之一:

转到:

Editor -> Structure -> Re-Indent
或使用快捷键 control + I

使用 Xcode 扩展

我发现并使用了 2 个扩展,它们对我来说非常有用。

1) SwiftFormat:从自述文件中提到安装 xcode 扩展的步骤。

与命令行工具一样,您可以安装 SwiftFormat for Xcode 通过 Homebrew 扩展应用程序。假设你已经有 Homebrew 已安装,输入:

$ brew install --cask swiftformat-for-xcode

  • 打开您刚刚安装的 SwiftFormat for Xcode.app。您可以在那里更改格式规则。

  • 之后,打开

    system preference -> extensions -> xcode source editor
    并标记 SwiftFormat 的复选框。

  • 重新启动 Xcode

瞧!你可以走了。您可以使用三个选项。格式化所选代码、格式化整个文件或仅格式化 lint 文件。

2) Swimat:(@Guy Daher 的一个答案中已经提到了)从自述文件安装的步骤

通过 homebrew-cask

安装

自制最新版本

brew install --cask swimat

  • 与上面的扩展安装类似,打开Swimat.app,如果它没有打开,请尝试从

    system preferences -> security & privacy -> open swimat app

    解决它
  • 打开后,点击./bin文件夹中的install,使其全局工作(不确定这一步,但我就是这么做的)

  • 重新启动 Xcode

现在您可以前往

editor -> swimat -> format

宾果!你可以走了。

额外的不请自来的帮助

您只需设置键绑定即可使用此命令中的任何一个。即我已将 android studio 默认命令设置为将代码重新格式化为 option + command + L

ps如果其他人找到了更好的扩展,请在评论中告诉我,我会将其添加到列表中。


10
投票

选择一些文本,然后:编辑->格式->重新缩进

您可以将其绑定到首选项中的热键。


9
投票

除了重新缩进(编辑>格式>重新缩进),不是真的。 但是,Xcode 确实支持脚本(窗口菜单右侧的菜单),因此您可以编写一个脚本来按照您喜欢的方式格式化代码。

编辑:这里有一些涉及此主题的链接:


4
投票

这里是在 Xcode 中格式化代码的快捷方式

1.格式化整个代码(整个类/控制器)

选择整个代码,然后 在 mac 上按 +| 来格式化代码。

2.格式化特定代码块

选择代码并按

+] 向右移动,+[ 向左移动

注意:根据@JavierGiovannini 的建议,您可以使用编辑器菜单选项

3.选择代码 --> 转到编辑器 --> 结构 --> 重新缩进


2
投票

我个人最喜欢的代码格式化程序是Uncrustify。 它有很多很多选项,所以我还建议您下载 UniversalIndentGUI,这是一个 GUI,可以帮助根据您的喜好设置 Uncrustify 的行为。


2
投票

XCode 8 扩展

另一种选择是使用像 Swimat 这样的扩展。为我做这份工作。然而,需要注意的是,由于 Xcode 扩展 API 的限制,它在保存时不会格式化,但他们正在尝试找到解决方法。


1
投票

并不是说这是最好的方法,但为了完整起见,如果您剪切代码然后将其粘贴回原处,Xcode 会自动为您格式化它。


0
投票

在 v.4 中,您可以通过 xCode 首选项进行一些调整...

修复 Xcode 中的代码缩进


0
投票

^-Icontrol - 大写i) :格式化当前行

-A + ^-I :格式化整个代码文件


0
投票

在 Xcode 16 中,仍然支持 Editor > Structure > Re-indent 的 Control-I 快捷方式,但还有一个新的 Editor > Structure > Format File with 'swift-format' 命令,快捷方式为Shift-Control-I。


-4
投票

尝试这个解决方案:⌘A [⌘K ⌘F]

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.