【问题标题】:Enable code-folding by default默认启用代码折叠
【发布时间】:2011-01-22 19:07:56
【问题描述】:

有没有办法在打开文件时告诉 XCode 默认折叠方法/函数?

【问题讨论】:

    标签: xcode xcode9 code-folding xcode10


    【解决方案1】:

    我不这么认为,不过有一些方便的键盘快捷键:

    Fold                        ⌃⌘←      control+command+left
    Fold All                    ⌘⌥⇧←     command+option+shift+left
    Unfold                      ⌃⌘→      control+command+right
    Unfold All                  ⌃U       control+U
    Fold Methods/Functions      ⌃⌘↑      control+command+up
    Unfold Methods/Functions    ⌃⌘↓      control+command+down
    Fold Comment Blocks         ⌃⇧⌘↑     control+shift+command+up
    Unfold Comment Blocks       ⌃⇧⌘↓     control+shift+command+down
    Focus Follows Selection     ⌃⌥⌘F     control+option+command+F
    

    【讨论】:

    • 嗯,Windows 上的 Firefox 中没有显示键盘快捷键。带有命令键符号的字符集显然不存在。我会跟进替代文本。
    • 在 Xcode5 中更改,例如 Fold all Methods/Functions 现在是 command+shift+option+left。 +1 虽然帮助我找到了这个。
    【解决方案2】:

    不确定这是操作系统更改还是 Xcode 更改,但在 Lion with Xcode 4 上,Griffo 引用的其中一些命令是使用 Option 修饰符(⌥ 键)执行的,不控制。我进行了一些更改以反映这一点:

    Fold                       ⌥⌘←      option+command+left
    Unfold                      ⌥⌘→      option+command+right
    Unfold All                  ⌥U        option+U
    Fold Methods/Functions      ⌥⌘↑      option+command+up
    Unfold Methods/Functions    ⌥⌘↓      option+command+down
    

    很抱歉破坏了一个线程,但我认为这值得修改。

    【讨论】:

    • 在 OS X、Xcode 4.3 上,fold all/unfold all 更改为 shift-option-command-left/right
    • 在 Xcode 5.1 中也通过 Shift-Command-Option-Left/Right 折叠/展开方法/功能
    【解决方案3】:

    我感觉到你的痛苦。每次打开实现文件都很难按cmd+option+shift+left来折叠所有方法。我会很感激知道一种默认设置的方法。另一方面,一个可能显而易见的解决方法可能是从窗口顶部的方法选择器中选择方法。我想这就是 Xcode 开发人员希望我们找到方法的方式.. 仍然 cmd+option+shift+left 是我的偏好.. 它只是伤了我的手:/

    【讨论】:

    • 实际上我也刚开始使用选择器:/ 但这主要是因为 Xcode 似乎也因长文件和代码折叠而变得有点麻烦:(
    • 最近发现,如果您用鼠标选择选择器,您可以开始输入方法名称,它会根据您输入的内容过滤选择器列表。
    【解决方案4】:

    为了完整起见,

    Fold All        ⌘⌥⇧←    command+option+shift+left
    

    【讨论】:

    • 未记录的键盘快捷键,但效果很好。这应该被标记为正确答案。
    【解决方案5】:

    正确答案在某些 cmets 中(不在任何答案中,我不认为...

    顺便说一下,这个快捷键在这里:

    从过去的答案来看,这一定会随着时间的推移而改变。这是来自 Xcode 6.1.1。

    【讨论】:

      【解决方案6】:

      如果你想折叠/展开特定的代码块,从 Xcode 7 开始,你必须启用它。

      转到 Xcode > 首选项 > 文本编辑 > 并选中“代码折叠功能区”。

      (不知道他们为什么默认禁用这个有用的功能。)

      【讨论】:

      • 这太烦人了。我刚刚重新启用它 - 感谢您的提示!
      • 在 xCode 9(测试版)中找不到它
      • @OfirMalachi 那是因为还没有实现!
      【解决方案7】:

      Xcode 10 中的更新:

      Xcode 10 增加了对代码折叠的支持,包括:

      1. 新的代码折叠功能区显示编辑器中的所有多行可折叠代码块
      2. 编辑器中折叠代码的新样式,允许您使用折叠代码编辑行
      3. 支持折叠用大括号括起来的任何代码块
      4. 支持从折叠功能区、结构化选择或
      5. 折叠代码块

      菜单栏 ► 编辑器 ► 代码折叠 ► 折叠菜单项

      看看这个快照:


      代码折叠在 Xcode 9 beta 1 中被禁用,现在可以在 Xcode 9 Beta5 中使用,根据 beta 版本说明:Resolved in Xcode 9 beta 5 – IDE

      方法如下:

      1. 按住键盘上的 ⌘(命令)按钮,然后将鼠标光标移动/悬停在任何(开始或结束)大括号上。会自动高亮、遮挡区域。
      2. 保持(按住)⌘(命令)按钮处于按下状态,然后单击突出显示的区域。它将启用带有 Fold 选项的快速菜单弹出窗口。
      3. 从菜单列表中选择Fold。它将折叠您的代码并显示 3 个点,折叠/覆盖整个块。
      4. 现在,要再次展开代码块,请释放 ⌘(命令)按钮并单击折叠块的 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 菜单中的代码折叠选项:

      菜单栏 ▶ 编辑器 ▶ 代码折叠 ▶ “这里是代码折叠选项列表”

      这是参考快照:

      Xcode 快捷方式列表中的相同选项:

      菜单栏 ▶ Xcode ▶ 首选项 ▶ 键绑定 ▶ “这里是代码折叠快捷键列表”

      【讨论】:

      • 你的回答很好。但是苹果不好带走code folding ribbon函数。
      • 感谢动画,这使它易于理解。我在 XCode 9.2 中看不到右键单击选项,但菜单选项和键盘快捷键工作正常,所以这没什么大不了的。选择代码块的一个技巧是双击顶部大括号,它会选择匹配的底部大括号。
      • 我真的需要那个截图。那个“丝带”真的很难找到
      • 非常感谢。可悲的是,似乎“全部折叠”和“全部展开”已不复存在。此外,虽然这非常有用,但这个答案和其他答案并不能回答发布的问题。我的建议是删除此答案,而将其他答案保留在您复制粘贴的位置,例如stackoverflow.com/questions/40285997/…
      猜你喜欢
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多