Mehrere Cursor / Markieren Sie die nächste Instanz des aktuell markierten Wortes

73

In Sublime Text ist es einfach , die nächste Instanz eines Wortes durch Drücken von Befehl + d auszuwählen und durch Drücken von Befehl und Klicken mehrere Cursor zu platzieren . Ich weiß, dass ich nicht allein bin, wenn ich sage, dass dies eine unglaublich nützliche Funktion in Redakteuren ist.

Ich hatte kein Glück, Schlüsselzuordnungen oder Alcatraz-Plugins dafür zu finden, daher war ich interessiert zu sehen, ob es in xcode 5 eine Möglichkeit gibt, dies zu tun, die ich möglicherweise verpasst habe, oder ob es Pläne gibt, dies zu implementieren xcode 6?

Wenn dies nicht der Fall ist und alle Xcode-Entwickler dies sehen, würden sie dies gerne als Feature sehen und Ihre Meinung dazu hören :)

Matt Rowles
quelle
5
Enttäuschend, dass dies nicht möglich zu sein scheint.
OJFord
9
Ich bin schockiert, dass dies nicht mehr Stimmen hat. Gibt es eine Möglichkeit, Feature-Anfragen zu stellen, von denen jeder weiß? Für eine IDE lässt XCode in Bezug auf die Refactoring-Fähigkeit zu wünschen übrig.
Thumbtackthief
1
Endlich verfügbar mit Xcode 10 Beta 3. Details Antwort unten hinzugefügt.
Unendlichkeit

Antworten:

75

Es ist ab Xcode 10 Beta 3 möglich

Sie können eine Auswahl für die nächsten und vorherigen Suchergebnisse hinzufügen, indem Sie die Menübefehle „Suchen und Weiter auswählen“ und „Vorherige suchen und auswählen“ verwenden.

Darüber hinaus können Sie mit den Menübefehlen „Nächstes Vorkommen auswählen“ und „Vorheriges Vorkommen auswählen“ schnell eine Auswahl für das nächste und vorherige Vorkommen des aktuell ausgewählten Textes hinzufügen.

ALT+ + E, um das nächste Vorkommen des aktuell ausgewählten auszuwählen

ALT+ SHIFT+ + E, um das vorherige Auftreten des aktuell ausgewählten auszuwählen

ALT+ + Gzu finden und als nächstes auszuwählen

ALT+ SHIFT+ + G, um vorherige zu finden und auszuwählen

Sie können Finddiese Aktionen auch über das Menü suchen. Natürlich können Sie es auch an verschiedene Hotkeys binden!

Unendlichkeit
quelle
2
Sie können auch command + left clickdas Wort und wählen Edit all in scope, dies zu tun!
Leonard
1
optionauf Mac-Tastaturen stattALT
willcwf
46

Wenn Sie den Namen einer Variablen ändern möchten, drücken Sie control+ command+ Eund geben Sie weg , wenn sich der Cursor auf der Variablen befindet . (Dies ist "Alle im Bereich bearbeiten")

Zum Bearbeiten eines Projektbereichs gibt es immer den Editor > Refactor > RenameMenüpunkt

Max Chuquimia
quelle
5
Vielen Dank! Leider nicht ganz das, wonach ich gesucht habe, aber das ist wahrscheinlich so nah, wie wir es im Moment bekommen werden.
Matt Rowles
Das löst das Problem nur manchmal - vielleicht möchte ich << std::endlzum Beispiel an mehrere Stellen anhängen .
OJFord
@OllieFord In dem von Ihnen beschriebenen Fall funktioniert es häufig. Es wählt alle Instanzen Ihrer Auswahl aus, aber es ist egal, ob Sie Leerzeichen und dergleichen hinzufügen. Aber vielleicht möchten Sie darauf hinweisen, dass Sie den Text nicht nach jeder Verwendung der Variablen wollen
csga5000
21

Markieren Sie das Wort, das Sie für die nächste Instanz erhalten möchten, und drücken Sie dann:

+ E

und

+ G.

Wenn Sie + Gweiter drücken, werden alle Instanzen des Wortes durchlaufen, auf das Sie + gedrückt haben E.

Ich habe mehr Xcode-Verknüpfungen auf meiner Website, auf die ich manchmal verweise.

Sohail
quelle
4
Ja, aber dies findet nur die nächste Instanz. Sie haben nicht die Möglichkeit, bei jeder Instanz einen neuen Cursor zu platzieren.
Matt Rowles
11

Sie können Cursor mit Shift+ Ctrl+ Mouse Clicküberall dort erstellen, wo Sie mehr Cursor benötigen

Sie können entweder Shift+ Ctrl+ (oder ) verwenden, wenn Sie in der folgenden Zeile einen neuen Cursor erstellen möchten.

Option+ Mouse Dragfunktioniert auch sehr gut

Alex
quelle
6

Ich habe gerade auf Twitter gelesen, dass das Xcode-Team mehrere Cursor zum Testen hinzugefügt hat, diese jedoch ausgeblendet hat. Um sie zu aktivieren, verwenden Sie den folgenden Befehl.

Standardwerte schreiben com.apple.dt.Xcode PegasusMultipleCursorsEnabled -bool true

Link als Referenz. Mehrfachcursor in Xcode

Vaibhav
quelle
5

Apple hat gerade Xcode 10 Beta mit der folgenden Funktion veröffentlicht:

Der Xcode-Quellcode-Editor unterstützt jetzt die Bearbeitung mit mehreren Cursoren, sodass Sie schnell mehrere Codebereiche gleichzeitig bearbeiten können. Sie können zusätzliche Cursor mit der Maus über ⌃ + ⇧ + Klicken oder mit Spaltenauswahl (⌥ + Klicken + Ziehen) oder mit der Tastatur über ⌃ + ⇧ + Nach oben zur Spaltenauswahl nach oben oder ⌃ + ⇧ + Nach unten zur Spaltenauswahl nach unten platzieren . (12564506)

Jordan Hochstetler
quelle
1
Dies ist ein Schritt in die richtige Richtung, zeigt jedoch immer noch nicht, ob auch die Erfassung des nächsten hervorgehobenen Codes implementiert wird. Danke für Update!
Matt Rowles
4

Es gibt das Xcode-Multi-Edit-Plugin . Es ist immer noch nicht ganz wie bei Sublime, da die mehreren Cursor nicht verwendet werden können, um über die Auswahl hinaus zu bearbeiten, die Sie zu Beginn des Befehls getroffen haben, aber es ist nah genug.

Das Plugin wurde nicht für Xcode 7.3 aktualisiert , dies kann jedoch einfach durch Hinzufügen behoben werden

    <string>ACA8656B-FEA8-4B6D-8E4A-93F4C95C362C</string>

zur Liste ähnlicher UUIDs <key>DVTPlugInCompatibilityUUIDs</key>in der Info.plist des Plugins. (Gefunden bei ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XcodeMultiEdit.xcplugin/Contents/Info.plist)

Ein weiteres vielversprechendes Plug-In, das derzeit keine Xcode 7.3-Unterstützung bietet, ist Multiplex.

Daniel Schlaug
quelle