Xcode 9/10 中的代码折叠更改
Code Folding changes in Xcode 9/10
我知道 Xcode9 的早期 Beta 中缺少代码折叠,并且可以通过单击 CMD 来折叠整个方法。
但在 Xcode 8 中,我能够通过 Editor >> Code Folding >> Fold 将代码折叠成块(即单独的 if 语句),但在 Xcode 9 这折叠了整个方法。
是否有 fix/setting 我可以更改以恢复 Xcode 8 功能?
您也可以在 Xcode 9 中折叠单个 if
语句,但是它会折叠整个 if - (else)
表达式。
将光标放在块内的某个位置,然后按 ⌥⌘←
展开:
折叠:
发行说明中表示目前还不支持。
更新在Xcode 10
Xcode10增加了对代码折叠的支持,包括:
- 一个新的代码折叠功能区,显示编辑器中的所有多行可折叠代码块
- 编辑器中折叠代码的新样式,允许您使用折叠代码编辑行
- 支持折叠任何用花括号括起来的代码块
- 支持折叠功能区、结构化选择或
中的折叠代码块
Menubar ► Editor ► Code Folding ► Fold menu item
看看这个快照:
代码折叠在 Xcode 9 beta 1
中被禁用,根据 beta 发行说明,在 Xcode 9 Beta5
中现在可以正常工作:Resolved in Xcode 9 beta 5 – IDE
方法如下:
- 按住键盘上的
⌘
(命令)按钮并在任何(开始或结束)大括号上按住 move/hover 鼠标光标。会自动高亮,遮挡区域。
- 保持(按住)
⌘
(命令)按钮处于按下状态并单击突出显示的区域。它将使用 Fold
选项启用快速菜单弹出窗口 window。
- Select
Fold
从菜单列表。它将折叠您的代码并显示 3 个点,folding/covering 整个块。
- 现在,要再次展开您的代码块,请释放
⌘
(命令)按钮并单击折叠块的 3 个点。
为了便于理解,看这个快照:
所有键盘快捷键也都有效。
Fold ⌥ ⌘ ← option + command + left arrow
Unfold ⌥ ⌘ → option + command + right arrow
Unfold All ⌥ U option + U
Fold Methods & Functions ⌥ ⌘ ↑ option + command + up arrow
Unfold Methods & Functions ⌥ ⌘ ↓ option + command + down arrow
Fold Comment Blocks ⌃ ⇧ ⌘ ↑ control + shift + command + up
Unfold Comment Blocks ⌃ ⇧ ⌘ ↓ control + shift + command + down
Focus Follows Selection ⌃ ⌥ ⌘ F control + option + command + F
Fold All ⌘ ⌥ ⇧ ← command + option + shift + left
Unfold All ⌘ ⌥ ⇧ → command + option + shift + left
来自 Xcode 菜单的代码折叠选项:
Menubar ▶ Editor ▶ Code Folding ▶ "Here is list of code folding options"
这是参考快照:
来自 Xcode 快捷方式列表的相同选项:
Menubar ▶ Xcode ▶ Preferences ▶ Key Bindings ▶ "Here is list of code folding short-keys"
我知道 Xcode9 的早期 Beta 中缺少代码折叠,并且可以通过单击 CMD 来折叠整个方法。
但在 Xcode 8 中,我能够通过 Editor >> Code Folding >> Fold 将代码折叠成块(即单独的 if 语句),但在 Xcode 9 这折叠了整个方法。
是否有 fix/setting 我可以更改以恢复 Xcode 8 功能?
您也可以在 Xcode 9 中折叠单个 if
语句,但是它会折叠整个 if - (else)
表达式。
将光标放在块内的某个位置,然后按 ⌥⌘←
展开:
折叠:
发行说明中表示目前还不支持。
更新在Xcode 10
Xcode10增加了对代码折叠的支持,包括:
- 一个新的代码折叠功能区,显示编辑器中的所有多行可折叠代码块
- 编辑器中折叠代码的新样式,允许您使用折叠代码编辑行
- 支持折叠任何用花括号括起来的代码块
- 支持折叠功能区、结构化选择或 中的折叠代码块
Menubar ► Editor ► Code Folding ► Fold menu item
看看这个快照:
代码折叠在 Xcode 9 beta 1
中被禁用,根据 beta 发行说明,在 Xcode 9 Beta5
中现在可以正常工作:Resolved in Xcode 9 beta 5 – IDE
方法如下:
- 按住键盘上的
⌘
(命令)按钮并在任何(开始或结束)大括号上按住 move/hover 鼠标光标。会自动高亮,遮挡区域。 - 保持(按住)
⌘
(命令)按钮处于按下状态并单击突出显示的区域。它将使用Fold
选项启用快速菜单弹出窗口 window。 - Select
Fold
从菜单列表。它将折叠您的代码并显示 3 个点,folding/covering 整个块。 - 现在,要再次展开您的代码块,请释放
⌘
(命令)按钮并单击折叠块的 3 个点。
为了便于理解,看这个快照:
所有键盘快捷键也都有效。
Fold ⌥ ⌘ ← option + command + left arrow
Unfold ⌥ ⌘ → option + command + right arrow
Unfold All ⌥ U option + U
Fold Methods & Functions ⌥ ⌘ ↑ option + command + up arrow
Unfold Methods & Functions ⌥ ⌘ ↓ option + command + down arrow
Fold Comment Blocks ⌃ ⇧ ⌘ ↑ control + shift + command + up
Unfold Comment Blocks ⌃ ⇧ ⌘ ↓ control + shift + command + down
Focus Follows Selection ⌃ ⌥ ⌘ F control + option + command + F
Fold All ⌘ ⌥ ⇧ ← command + option + shift + left
Unfold All ⌘ ⌥ ⇧ → command + option + shift + left
来自 Xcode 菜单的代码折叠选项:
Menubar ▶ Editor ▶ Code Folding ▶ "Here is list of code folding options"
这是参考快照:
来自 Xcode 快捷方式列表的相同选项:
Menubar ▶ Xcode ▶ Preferences ▶ Key Bindings ▶ "Here is list of code folding short-keys"