webentwicklung-frage-antwort-db.com.de

Wie kann ich dafür sorgen, dass die Registerkarten auf Xcode 4 normal funktionieren?

Xcode hat endlich Tabs hinzugefügt, aber das Problem ist, dass sie sich sehr seltsam verhalten. Beispielsweise lassen sie einen Tab nur dann offen, wenn er in einem neuen Tab geöffnet wurde.

Wenn Sie eine Datei nur durch Klicken in den Projektbaum öffnen, schließt Xcode Ihre Registerkarte, sobald Sie auf eine andere Datei im Baum klicken.

Ist es möglich, dass sie sich wie echte Tabs verhalten und Xcode daran hindert, sie wiederzuverwenden? Wie?

85
sorin

Ich glaube nicht, dass Sie derzeit das Verhalten bekommen können, das Sie sich wünschen (oder das ich mir wünsche). Während die Registerkarten wie Safari funktionieren, funktionieren sie nicht wie Registerkarten in anderen gängigen IDEs (Visual Studio oder Eclipse). Und für mich ist diese Art zum Kotzen.

Im Allgemeinen erwarte ich, dass IDE Registerkarten mehr als eine Datei geöffnet lassen. Wenn ich also auf eine Datei in der Projektstruktur klicke, gehe ich davon aus, dass sie zu der Registerkarte wechselt, die ich mit dieser Datei geöffnet habe - Wenn ich es bereits geöffnet habe, ändert XCode 4 stattdessen den aktuellen Tab in die Datei, auf die ich geklickt habe - zwei Tabs mit derselben Datei zu erstellen.

Dadurch wird der Benutzer gezwungen, zuerst die Registerkartenleiste zu durchsuchen, um festzustellen, ob die Datei gerade geöffnet ist. Wenn es nicht geöffnet ist, können Sie zum Projektbaum schauen. Aber wenn Sie zuerst in den Projektbaum klicken (was ich normalerweise tue), werden Sie bestraft, weil Sie gerade einen Tab getötet haben.

68
Daniel

Ich benutze eine Methode ähnlich wie Franks:

  • In Einstellungen> Navigation (oder Einstellungen> Allgemein in Versionen von XCode vor 5) können Sie Optionale Navigation auf Separate Verwendung) einstellen Tab
  • Nun opt - Wenn Sie im Datei-Navigator auf eine Datei klicken, wird diese in einem neuen Tab geöffnet
  • Besser noch, opt - durch Klicken auf Links im Code wird die Zieldatei in einem neuen Tab geöffnet

Das große fehlende Feature ist das Wechseln zu einer bereits geöffneten Registerkarte, die die Datei enthält, sofern eine vorhanden ist (oder in der aktuellen verbleibt).

88
fenster

Dies ist keine wirkliche Antwort, da sie eine Lösung enthält. Ich will meistens nur mitmachen. Aber durch die Aufwertung werden Sie sich besser fühlen und beweisen, dass Apple falsch.:)

Das Problem bei der Implementierung von Registerkarten in Xcode 4 ist, dass Apple) diese als Arbeitsbereich-Registerkarten implementiert hat. Mit anderen Worten, durch das Erstellen einer neuen Registerkarte wird im Wesentlichen ein neuer Arbeitsbereich mit jeweils erstellt Es ist im Wesentlichen eine ganze Umgebung in jeder Registerkarte. Es gibt eine Reihe von Problemen mit dieser Auswahl.

Dies unterscheidet sich von der Implementierung von Datei-Registerkarten durch die meisten IDE-/Texteditoren, wobei eine Registerkarte (im Allgemeinen) eine einzelne Datei darstellt und jede Datei eine eigene Registerkarte hat.

Das Problem bei Arbeitsbereich-Registerkarten besteht darin, dass es nur so viele potenzielle unterschiedliche Arbeitsbereiche gibt, von denen wir profitieren können, und dass die tatsächliche Verwendung von Registerkarten auf diese Weise stark eingeschränkt wird. Darüber hinaus werden die zusätzlichen Arbeitsbereiche zu einer Pflicht, die dem Benutzer der Anwendung mehr Dinge einbringt, die er selbst betreffen muss: Zum Beispiel, wie die Navigatoransicht aussieht, welcher Editormodus aktiv ist (Standard, Assistent, Version), ob Die Debug-Konsole ist geöffnet, usw. usw. Wenn Sie plötzlich zu einem neuen Tab wechseln, müssen Sie sich jetzt darum kümmern, dass die Umgebung wieder in der von Ihnen gewünschten Form vorliegt, da die Wahrscheinlichkeit groß ist, dass der andere Tab nicht in Ihrem Status verbleibt Erwarten Sie, dass Sie es in finden. Dies rät tatsächlich von der Verwendung von Registerkarten ab, da es mehr Arbeit in den Workflow einführt .

Bei Registerkarten mit Dateien tritt dieses Problem nicht auf (Sonderfälle wie geteilte Ansichtsfenster werden nicht berücksichtigt), da sich nur die Datei ändert, die Sie gerade anzeigen, und nicht die gesamte Umgebung. Darüber hinaus eignen sich Dateiregisterkarten bei ordnungsgemäßer Implementierung hervorragend als sofortiger Verlauf, sodass mit geringem Aufwand schnell zu einer Datei zurückgeschaltet werden kann, in der kürzlich gearbeitet wurde. Die einzige Möglichkeit, dies in Xcode zu tun, besteht darin, explizit eine neue Tab-Umgebung für jede Datei einzurichten, mit der Sie arbeiten möchten. Sie müssen jedoch darauf achten, die Datei in dieser Registerkarte nicht zu ändern, da sonst Ihre Datei plötzlich verloren geht: wieder mehr arbeit für den benutzer.

Arbeitsbereich-Registerkarten sind auch bedeutend schwerer als Datei-Registerkarten, da es viel mehr zu merken gibt und das Wechseln von Arbeitsbereichen viel mehr erfordert als das Wechseln von Dateien.

Die Wahrheit ist (und ich denke, die meisten werden mir darin zustimmen), dass für einen Entwickler Dateiregisterkarten viel nützlicher sind als Arbeitsbereichsregisterkarten und so es steht Xcode noch fehlt eine ordnungsgemäße Implementierung dieser Funktion, die viele grundlegende erforderliche Funktionen in einer IDE/einem Editor in Betracht ziehen würden.

23
devios1

Xcode->Preferences->General->Double Click Navigation und wählen Sie aus der Liste Uses Separate Tab.

18
Luca

Nun, keine echte Antwort, aber meine persönliche Lösung. Das eigentliche Problem für mich ist, dass eine in einem Tab geöffnete Datei in xcode 4 so einfach verschwindet. Das erneute Suchen einer Datei kann zeitaufwändig sein.

Ich habe dies (irgendwie) für mich gelöst, indem ich die Aktionen, die ich durchführe, genau identifizierte, wodurch die Registerkarte zu einer anderen Datei wechselt, und sie durch die entsprechenden Aktionen ersetzte, die stattdessen eine neue Registerkarte öffnen.

  • Anstatt im Navigator einfach auf eine Datei zu klicken, doppelklicke ich immer auf die von mir festgelegte Datei, um eine neue Registerkarte zu öffnen
  • Meistens verwende ich den Navigator nicht, da er in jeder Registerkarte einen anderen Status für geöffnete und geschlossene Ordner aufweist. Nicht nützlich für mich. Also wechselte ich zu mit Option ⌥Command ⌘O. Beim Öffnen einer Datei aus dieser Liste behalte ich ShiftOption ⌥ gedrückt. In dem kleinen Fenster wähle ich 'Neuer Tab'.
  • Wenn ich auf Links im Code klicke, drücke ich ShiftOption ⌥Command ⌘Auch und in neuem Tab öffnen.

Ich behalte zwei feste Registerkarten, um zielbezogene Einstellungen zu bearbeiten und Build-Ergebnisse anzuzeigen. Ich habe die automatische Tab-Umschaltung in den Prefs komplett deaktiviert, weil mir aufgefallen ist, dass mich das zu sehr abgelenkt hat.

Ich würde wirklich gerne so etwas wie die xcode 3 Favoritenleiste in xcode 4 bekommen, das war so einfach zu bedienen.

17
frank

Ich kann mir vorstellen, dass meine Antwort für eine Weile nicht in die Luft sprudelt, aber wenn Sie möchten, dass dies wie ein visuelles Studio oder eine Intelligenz (oder zumindest näher) funktioniert.

Einstellungen-> Allgemein-> Doppelklicken Sie auf Navigation-> Verwendet eine separate Registerkarte

Wenn Sie jetzt auf eine Datei doppelklicken, wird sie nicht mehr in einem neuen Fenster geöffnet und in einer neuen Registerkarte geöffnet.

Single ist noch doof und übernimmt deinen Tab. Aber wenn Sie sich daran gewöhnen, doppelt zu klicken (was ich schon war), ersparen Sie sich einige Kopfschmerzen. Schätze ich.

8
j03m

Ich hasse es absolut, wie Tabs in Xcode funktionieren. Die einzige Problemumgehung, die ich für anständig befunden habe, ist die Verwendung der Verknüpfungen auf den OSX-Registerkarten: STRG + CMD + -> STRG + CMD + <-

4
mithun_daa

Das habe ich beim Drücken herausgefunden option a.k.a. alt Wenn Sie Dateien im Navigator öffnen, springen Sie zu der Registerkarte, die bereits mit der Datei geöffnet ist, und eine neue Registerkarte wird geöffnet, falls sie noch nicht geöffnet war.

Diese Technik funktioniert auch beim Öffnen von Dateien über cmdshift-O und öffne den Vorschlag mit option-enter statt einfach enter...

Wenn es nun eine Möglichkeit gäbe, dies als Standard festzulegen, d. H. Die Notwendigkeit, weiter zu drücken option Die ganze Zeit würde wegfallen, das wäre ein großer Schritt nach vorne.

Außerdem verwende ich Verhalten, um zu verhindern, dass meine Registerkarten nach Test- oder Erstellungsfehlern wiederverwendet werden.

(Wie andere Leute auch, mag ich das Tab-Verhalten von Xcode überhaupt nicht. Apple sollte sich IntelliJ ansehen ...)

3
Hendrik

Ich habe mich in Preferences-Behaviours zurechtgefunden!

Ich hasste Xcode 4 wegen der hier diskutierten Probleme mit Registerkarten, vor allem, weil die Debug-Informationen immer wieder neue Dateien in Registerkarten öffneten und den Navigator änderten

in Behaviours können Sie eine Debug-Registerkarte definieren und die Befehle Run und Build auf verschiedene Arten ausführen. In der Registerkarte Debuggen gebe ich den Navigatoren links und unten mehr Platz

aus ähnlichen Gründen habe ich auch eine Registerkarte Suchen

die anderen Registerkarten sind für Dateien, in die ich schreibe. Ich starte sie mit der .h-Datei, die normalerweise klein genug ist, sodass ich nur eine Ansicht benötige, und dann öffne ich mit einem Klick im Navegator 2-3 Versionen der .cpp-Datei Ich kann sie auf die Speicherorte einstellen, an denen sich die letzten Hotspots in der Datei befinden. Dann schließe ich die Navigatoren in diesen Registerkarten

dies macht die Sorgfalt und die Tricks, die in den anderen Antworten angegeben sind, nicht ungültig, macht sie jedoch weitaus weniger schwierig

fröhliches Codieren!

3
Matthias Grob

xcode tab bar ist so blöd, ich denke Apple sollte die Funktion der Tab-Navigation verbessern, um 3 Punkte zu vermeiden dort 2. für mehr Vorsprünge wird der Vorsprung klein und folglich weiß ich nicht, welche Akte in welchem ​​Vorsprung, ich den Vorsprung vollen Namen zeigen möchte 3. für sogar mehr Vorsprünge, werden neue Vorsprünge anstelle von zwei Zeilen ausgeblendet Ich möchte zwei Zeilen mit Tab-Leisten anzeigen.

1
lbsweek

Wenn Sie die Registerkartenleiste aktiviert haben (Registerkartenleiste anzeigen/anzeigen) und auf eine Datei doppelklicken, wird diese in einem eigenen Fenster mit einer einzelnen Registerkarte angezeigt (Stellen Sie sicher, dass die Registerkartenleiste in ) aktiviert ist + beide das neue und alte (Haupt-) Fenster).

Jetzt müssen Sie nur noch das neue Fenster von seinem Tab ziehen und in die Tab-Leiste Ihres Hauptfensters ablegen.

enter image description here

Es bleibt als separate Registerkarte angedockt und zeigt diese Datei an.

Um die in dieser neuen Registerkarte geöffnete Datei zu ändern, gehen Sie zu Project/Reveal in Project Navigator , wodurch der Projektnavigator auf der linken Seite geöffnet wird.

0
bobobobo

Registerkarten in Xcode 4 funktionieren wie Registerkarten unter Mac OS X, z. B. in Safari und Terminal.

0
Chris Hanson