Wie überspringe ich eine Übereinstimmung, wenn ich Strg + D für Mehrfachauswahl in Sublime Text 2 verwende?

180

Ich habe einen Code wie:

testVar = { a: 1 };
testVariable1 = 2;
var c = testVar.a + testVariable2;
var d = testVar;

Ich möchte die Variable "testVar" umbenennen. Wenn ich mehrere Cursor mit Ctrl+ setze Dund eine Variable bearbeite, wird auch "testVariable" ausgewählt und bearbeitet.

Gibt es eine Möglichkeit, einige Auswahlen zu überspringen, während mehrere Cursor mit Ctrl+ gesetzt werden D?

Just_Mad
quelle

Antworten:

256

Verwenden Sie einfach Ctrl+ K, Ctrl+ D.

(für OS X: Cmd+ K, Cmd+ D)

Benötigt ein bisschen Übung, erledigt aber die Arbeit!

Romain
quelle
33
Es ist nicht wirklich Strg + K + D, es ist Strg + K, Strg + D. Viel einfacher, sie in Serie als parallel zu tippen!
Tim Keating
4
@Qwerty: Alt + F3 Wählt alle Vorkommen aus.
Emil Stenström
16
@ Romain schrieb "Benötigt ein bisschen Übung". Ich denke, das bedeutet, dass es intuitiver sein könnte. Drücken Sie die Tastenkombination erst, wenn das, was Sie überspringen möchten, markiert ist. Wenn Sie beispielsweise 3 Übereinstimmungen haben und die 2. überspringen möchten, markieren Sie zuerst die 1., drücken Sie STRG + D, um die 2. zu markieren, und drücken Sie dann die Tastenkombination, um die 2. Übereinstimmung zu überspringen und die 3. zu markieren. Hilfe?
Tyler Collier
Fügen Sie dies der Benutzer-Keymap hinzu und verkürzen Sie die Übungszeit auf fast 0! { "keys": ["ctrl+alt+d"], "command": "find_under_expand_skip" }
Mrchief
toll mein Freund !!
Juan
85

Sie können gleichzeitig Ctrl+ Kund Ctrl+ drücken D, um eine Auswahl zu überspringen. Wenn Sie mit Ihrer Auswahl zu weit gegangen sind, können Sie mit Ctrl+ Uzu einer vorherigen Auswahl zurückkehren.

Hinweis : Ersetzen Sie Ctrlmit Cmdfür Mac OS X.

Die Standardkonfiguration hierfür kann unter Preferences> Key Bindings-Defaultin der Anwendungsmenubar angezeigt werden. Dort sehen Sie Folgendes:

{ "keys": ["ctrl+d"], "command": "find_under_expand" },
{ "keys": ["ctrl+k", "ctrl+d"], "command": "find_under_expand_skip" }

Wenn Sie möchten, können Sie die Schlüssel gemäß Ihren Anforderungen konfigurieren, indem Sie zu Preferences> gehen Key Bindings-Userund den obigen Code kopieren und dann die Schlüssel ändern.

SUB0DH
quelle
61

Wenn Sie den Mauszeiger über das Wort haben und mit Ctrl+ Ddas Wort auswählen. Wenn Sie das nächste Mal Ctrl+ Ddrücken, sollte das nächste hervorgehobene Wort ausgewählt werden.

Wenn Sie doppelklicken, um ein Wort auszuwählen, wählt Ctrl+ Ddie genaue Zeichenfolge aus, nicht nur die hervorgehobenen.

Mit anderen Worten, Ctrl+ Dohne hervorgehobenes Element führt die Suche nach ganzen Wörtern durch . Wenn Sie bereits etwas hervorgehoben haben, führt Ctrl+ Ddie Teilstringsuche durch.

Ich habe getestet und es funktioniert in Sublime Text 2 Version 2.0.1, Build 2217.

Atomicflare
quelle
11
Dies ist tatsächlich die einzig wahre Lösung für dieses Problem. Die Leute stimmen hirnlos ab.
Qwerty
ctrl+ D Wenn nichts ausgewählt ist, wird auch zwischen Groß- und Kleinschreibung unterschieden .
Venkatvb
2
@vankatvb Ich finde das nicht wahr ... Ctrl+ wenn Dnichts ausgewählt ist, wird für mich immer noch die Groß- und Kleinschreibung nicht berücksichtigt . Es werden nur Übereinstimmungen mit Groß- und Kleinschreibung beschrieben, aber wenn Sie die Verknüpfung oder Alt+ verwenden, F3werden diejenigen ausgewählt, die nicht mit Groß- und Kleinschreibung übereinstimmen.
Schism
Übrigens ist hier die gleiche Antwort in einer anderen Frage: stackoverflow.com/a/18422707/782045
interessanterweise gibt es den
7

Platzieren Sie den Cursor vor der Variablen, wählen Sie die Variable nicht aus und drücken Sie Ctrl+D, um jedes Vorkommen der Variablen auszuwählen, nicht das Muster.

n1nj4
quelle
1

Aktualisierte Antwort für vscode im Jahr 2020 unter Windows. Fügen Sie in keybindings.json diese Zeile hinzu, um das nächste ausgewählte Ereignis einfach zu überspringen:

  {
    "key": "ctrl+alt+d",
    "command": "editor.action.moveSelectionToNextFindMatch",
    "when": "editorFocus"
  },

* Ja, ich weiß, dass die Frage für erhabenen Text ist, aber ich habe sie gefunden, indem ich dieselbe Frage + vscode gegoogelt habe, sodass sie möglicherweise jemandem hilft, da die Zuordnungen identisch sind.

bevo009
quelle