【问题标题】:How can I make the tabs work normally on Xcode 4?如何使选项卡在 Xcode 4 上正常工作?
【发布时间】:2011-07-18 05:10:30
【问题描述】:

Xcode 终于添加了选项卡,但问题是它们的行为很奇怪。例如,只有在打开新标签时,他们才会保持标签打开。

如果您只是通过在项目树中单击来打开一个文件,Xcode 将在您单击树中的另一个文件时关闭您的选项卡。

是否有可能让它们表现得像真正的选项卡并防止 Xcode 重用它们?怎么样?

【问题讨论】:

  • 我也认为 XCode 的导航很古怪。选项卡,而且每个选项卡都有历史,但历史不仅仅是文件,它是文件中的点......使用键盘四处走动就是 teh suk。 “像在 Safari 中一样工作”并不能让它变得更好......
  • @davidvanbrink 我不明白,XCode 的界面如何 like the movie?
  • 我相信 j03m 已经正确回答了您的问题

标签: xcode xcode4


【解决方案1】:

我使用类似于弗兰克斯的方法:

  • Preferences > Navigation(或在 Xcode 5 之前的版本中的 Preferences > General)中,您可以将 Optional Navigation 设置为 使用单独的标签
  • 现在选择-单击文件导航器中的文件将在新选项卡中打开它
  • 更好的是,opt-单击代码中的链接会在新选项卡中打开目标文件

缺少的主要功能是切换到已打开的包含文件的选项卡(如果有文件)(或保留在当前选项卡中)。

【讨论】:

  • 太棒了,这个答案救了我,你也可以设置双击在新标签中打开
  • 它位于首选项的导航选项卡中(可能是 Xcode 5 中的更改)。首选项 -> 导航 -> 可选导航 -> 使用单独的选项卡
  • 这正是我想要的!我总是使用像 VS 或 PHPStorm 这样使用选项卡的 IDE,这真的救了我
  • 缺少的主要功能是切换到已打开的包含文件的选项卡(如果有文件)(或保留在当前选项卡中)。我希望这个被添加
  • 我仍然不喜欢在打开 sime 文件的情况下获得两个选项卡的事实。我一点也不喜欢 Xcode 中的工作区选项卡系统...
【解决方案2】:

2020 年更新:

终于,差不多 10 年后,Xcode 12.x 现在似乎主要解决了这里描述的问题。 导航设置面板中有一个新的导航样式选项可控制此行为。

这种行为有一些新的怪癖/设计选择似乎很有意义,但我仍然习惯了新的体验。例如,除非最近编辑过该选项卡中的文件,否则该选项卡将被重新使用;这样的标签用 斜体 标题表示。


以前的答案

我认为您目前无法获得您想要(或我想要)的行为。虽然选项卡的工作方式与 Safari 类似,但它们的工作方式与其他流行 IDE(Visual Studio 或 Eclipse)中的选项卡不同。对我来说,这很糟糕。

一般来说,我希望 IDE 选项卡可以打开超过 1 个文件。因此,如果我单击项目树中的一个文件,我希望它会切换到我用该文件打开的选项卡——如果我已经打开它的话。相反,XCode 4 将当前选项卡更改为我单击的文件 - 使用同一文件创建 2 个选项卡。有 2 个选项卡具有相同的文件是相当无用的。

这迫使用户首先扫描标签栏以查看文件当前是否打开;如果它没有打开,那么你可以查看项目树。但是,如果您首先单击项目树(我倾向于这样做),那么您将受到惩罚,因为您刚刚杀死了一个选项卡。

【讨论】:

  • 提交错误报告!选项卡名称应等于该选项卡中的当前文件(!)
  • XCode 6 仍然无法按预期处理选项卡 :(
  • 在 XCode 7 中似乎已修复!我已经设置好了,所以双击在新选项卡中打开,如果文件已经打开,它会将您带到该选项卡而不是新选项卡。
  • 辣椒坚果。如何为这种行为设置你的设置?当我双击时,它会在新选项卡中打开文件,即使我已经在现有选项卡中打开了文件。
  • XCode 10 仍然无法按预期处理选项卡 :(
【解决方案3】:

我发现当在导航器中打开文件时按 option 又名 alt 时,您将跳转到已打开文件的选项卡并打开一个新选项卡以防它尚未开放。

当通过 cmdshift-O 打开文件并使用 option 打开建议时,此技术也有效- enter 而不是简单的 enter...

现在,如果有某种方法可以将其设为默认值,即不再需要一直按 option,那将是向前迈出的一大步。

我还使用行为来防止我的标签在测试或构建失败后被回收。

(和其他人一样,我完全不喜欢 Xcode 的选项卡行为。Apple 应该看看 IntelliJ...)

【讨论】:

  • 这是对现有标签的重用更有用的建议之一。远非完美的解决方案(显然没有),但它有帮助!
【解决方案4】:

xcode标签栏太烂了,我觉得苹果应该加强标签导航的功能,避免跟随3点。 1.双击一个文件会让xcode打开另一个标签,如果它已经存在的话。 2. 对于更多选项卡,选项卡会变小,因此我不知道哪个选项卡中的哪个文件,我希望选项卡显示全名 3. 对于更多选项卡,新选项卡将被隐藏,而不是两行选项卡。我想让它显示两行标签栏。

【讨论】:

    【解决方案5】:

    我想我的答案暂时不会冒出来,但如果你想让它像 Visual Studio 或 intellij 一样工作(或至少更接近)

    首选项->常规->双击导航->使用单独的选项卡

    现在双击文件将停止在新窗口中打开它并在新选项卡中打开它。

    单身仍然是愚蠢的,并接管了你的标签。但是,如果您习惯了双击(我已经习惯了),这将为您省去一些麻烦。我想。

    【讨论】:

    【解决方案6】:

    这并不是一个真正的答案,因为它包含一个解决方案;我主要只是想加入抱怨。但是投票会让你感觉更好,并证明苹果错了。 :)

    Xcode 4 实现选项卡的问题在于 Apple 已将它们实现为 工作区选项卡。换句话说,创建一个新选项卡本质上是创建一个新工作区,每个工作区都有自己的子窗格及其配置等。它本质上是每个选项卡中的一个完整环境。这种选择存在许多问题。

    这与大多数 IDE/文本编辑器的文件选项卡实现不同,其中一个选项卡(通常)表示单个文件,每个文件都有自己的选项卡。

    工作区选项卡的问题在于,我们可以从中受益的潜在不同工作区非常多,从而严重限制了以这种方式实际使用选项卡。除此之外,额外的工作空间只是一种负担,引入了应用程序用户需要关心的更多事情:例如,导航器视图是什么,处于活动状态的编辑器模式(标准、助手、版本)是否调试控制台已打开,等等。突然切换到新选项卡意味着您现在必须担心将环境恢复为您需要的形式,因为很有可能另一个选项卡没有留在您的状态期望找到它。这实际上不鼓励使用选项卡,因为它在工作流程中引入了更多工作

    文件选项卡没有这个问题(不包括拆分视图窗格等特殊情况),因为改变的只是您正在查看的文件,而不是您的整个环境。此外,如果实施得当,文件选项卡可以很好地作为即时历史记录,允许您快速切换回最近使用过的文件,而无需付出任何努力。在 Xcode 中执行此操作的唯一方法是为您要使用的每个文件显式设置一个新的选项卡环境,但您必须小心不要更改该选项卡中的文件,否则您的文件会突然丢失:再次为用户做更多的工作。

    工作区选项卡也比文件选项卡重得多,因为要记住的内容要多得多,而且切换工作区涉及的内容远不止切换文件。

    事实是(我想大多数人都会同意我的观点),对于开发人员来说,文件选项卡比工作区选项卡更有用,而且就 Xcode 而言仍然 缺乏此功能的正确实现,许多人会认为 IDE/编辑器中的基本必需功能。

    【讨论】:

      【解决方案7】:

      如果您启用了标签栏(查看/显示标签栏)并双击一个文件,它会出现在它自己的窗口中,并带有一个标签(确保标签栏在 新旧(主)窗口)。

      现在您所要做的就是将该新窗口从其标签中拖出,然后将其放到主窗口的标签栏中。

      它将作为一个单独的选项卡保持停靠,显示该文件。

      要更改在该新选项卡中打开的文件,请转到 Project / Reveal in Project Navigator,这会在左侧打开项目导航器。

      【讨论】:

      • 这就是“所有你必须做的”吗? ;) 您可以定义(在 Preferences->Behavior 中)双击应该在新选项卡而不是新窗口中打开,但这仍然没有首先改善选项卡的糟糕实现。
      • 您评论说忽略@Daniel 的回答,但您的回答并未解决这样一个事实,即当您单击文件时,它会更改当前选项卡上打开的文件。这与大多数其他 IDE 不同,而且没有任何意义。
      【解决方案8】:

      我非常讨厌标签在 Xcode 中的工作方式。但是,我发现唯一可行的解​​决方法是使用 OSX 选项卡快捷方式: CTRL + CMD + -> CTRL + CMD +

      【讨论】:

        【解决方案9】:

        Xcode->Preferences->General->Double Click Navigation 并从列表中选择Uses Separate Tab

        【讨论】:

        • 在 XCode 5 中,您转到 Preferences->Navigation->Double Click Navigation
        【解决方案10】:

        我在 Preferences-Behaviors 中找到了自己的方式!

        对于这里讨论的选项卡问题,我首先讨厌 Xcode 4,主要是因为调试信息不​​断在选项卡中打开新文件并更改导航器

        在 Behaviors 中,您可以定义一个 Debug 选项卡并以各种方式使 Run 和 Build 跳转到那里。在“调试”选项卡中,我为左侧和底部的导航器提供了更多空间

        出于类似的原因,我也有一个“查找”标签

        其他选项卡用于我正在写入的文件。我以 .h 开头,它通常足够小,所以我只需要一个视图,然后在导航器中单击一下,我打开 2-3 个版本的 .h 文件。 cpp 文件,以便我可以将它们设置为文件中最近热点所在的位置。然后我关闭这些选项卡中的导航器

        这不会使此处其他答案中给出的护理和技巧无效,但会使它们变得不那么困难

        编码愉快!

        【讨论】:

          【解决方案11】:

          好吧,这不是一个真正的答案,而是我个人的解决方法。对我来说真正的问题是,在选项卡中打开的文件在 xcode 4 中很容易消失。再次查找文件可能很耗时,所以我希望它们在选项卡中并留在那里。

          我通过准确识别导致选项卡切换到另一个文件的操作并将它们替换为打开新选项卡的等效操作来为我解决了这个问题。

          • 我不是在导航器中单击文件,而是双击我设置的文件以打开一个新选项卡
          • 大多数时候我不使用导航器,因为它在每个选项卡中打开和关闭文件夹的状态不同。对我没用。所以我改用Option ⌥ Command ⌘ O。从这个列表中打开一个文件时,我按住 ShiftOption ⌥。在出现的小窗口中,我选择“新标签”。
          • 单击代码中的链接时,我也会按 ShiftOption ⌥ Command ⌘,然后在新选项卡中打开。

          我保留了两个固定选项卡,用于编辑与目标相关的设置和查看构建结果。我完全禁用了首选项中的所有自动选项卡切换,因为我注意到这让我分心了。

          我真的很想在 xcode 4 中获得类似 xcode 3 收藏夹栏的东西,它使用起来非常简单..

          【讨论】:

          • 虽然这不是一个“解决方案”(据我所知没有),但我确实很欣赏学习如何通过“快速打开”打开选项卡并单击代码中的链接。 乏味但非常有用。谢谢。
          【解决方案12】:

          Xcode 4 中的选项卡与 Mac OS X 上其他地方的选项卡一样工作,例如在 Safari 和终端中。

          【讨论】:

          • 首先,我在这里谈论的是标签打开标准,与不面向项目的应用程序进行比较是没有意义的。问题是单击项目树会触发关于选项卡打开的尴尬行为。
          • Xcode 4 中的选项卡确实表现得像“真正的选项卡”,因为它们遵循为其余操作系统中的选项卡建立的约定。他们是按设计这样做的。您可以选择在“常规”首选项的新选项卡(或窗口)中单击或双击打开您在新选项卡(或窗口)中单击的任何内容;您不能选择单击打开新标签页。
          • 更具体地说,如果您在项目导航器中单击一个文件,当您在项目导航器中单击另一个文件时,Xcode 不会“打开一个选项卡”然后“关闭该选项卡”。 Xcode 显示您在当前选项卡的主编辑器中单击的文件。
          • 在选项卡之间旋转的键盘快捷键怎么样?
          • 我幼稚地想投反对票,因为我讨厌标签的工作方式!让我都Grrrr。 :-)
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多