Як пропустити відповідність при використанні клавіш Ctrl + D для декількох виділень у піднесеному тексті 2?


180

У мене є такий код, як:

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

Я хочу перейменувати змінну "testVar". Коли я встановлюю кілька курсорів з Ctrl+ Dі редагую змінну, "testVariable" також вибирається та редагується.

Чи є спосіб пропустити деякі виділення під час встановлення кількох курсорів за допомогою Ctrl+ D?

Відповіді:


257

Просто використовуйте Ctrl+ K, Ctrl+ D.

(для ОС X: Cmd+ K, Cmd+ D)

Потрібно трохи практики, але робота виконується!


33
Це насправді не Ctrl + K + D, це Ctrl + K, Ctrl + D. Набагато простіше вводити їх послідовно, а не паралельно!
Тім Кітінг

4
@Qwerty: Alt + F3 Вибирає всі події.
Еміль Стенстрем

16
@Romain написав "Потрібно трохи практики". Я думаю, що це означає, що це може бути більш інтуїтивно зрозумілим. Не натискайте комбінацію клавіш, доки не буде виділено те, що ви хочете пропустити. Наприклад, якщо у вас є 3 матчі, і ви хочете пропустити 2-е, спочатку виділіть 1-е, натисніть CTRL + D, щоб виділити 2-е, потім натисніть клавішу комбінації, щоб пропустити 2-й матч і виділити 3-е. Допомога?
Тайлер Колліє

Додайте це до ключової карти користувача та скоротіть практику майже до 0! { "keys": ["ctrl+alt+d"], "command": "find_under_expand_skip" }
Mrchief

великий мій друг !!
Хуан

85

Ви можете одночасно натиснути Ctrl+ Kі Ctrl+, Dщоб пропустити вибір. Якщо ви зайшли занадто далеко з вибором, ви можете використовувати Ctrl+, Uщоб повернутися до попереднього вибору.

Примітка : Замінити Ctrlз Cmdдля Mac OS X.

Конфігурацію за замовчуванням для цього можна переглянути, перейшовши в Preferences> Key Bindings-Defaultв меню програми, де ви побачите щось подібне:

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

Якщо ви хочете, ви можете налаштувати ключі відповідно до ваших потреб, перейшовши до Preferences> Key Bindings-Userта скопіюйте вищевказаний код, а потім змінивши клавіші.


61

Якщо ви маєте курсор на цьому слові та натисніть Ctrl+, Dщоб вибрати його. Наступного разу, коли ви натиснете Ctrl+, Dслід вибрати наступне виділене слово.

Якщо двічі клацнути, щоб вибрати слово, Ctrl+ Dвибере точний рядок, а не лише виділені.

Іншими словами, Ctrl+ Dбез нічого виділеного здійснює пошук у цілому слові . Якщо у вас вже є щось виділене, Ctrl+ Dздійснить пошук підрядків.

Я протестував, і він працює в Sublime Text 2 Версія 2.0.1, Build 2217.


11
Це насправді єдине вірне рішення цієї проблеми. Люди безвідмовно звертаються до громадськості.
Qwerty

ctrl+ D якщо нічого не вибрано, також чутливий регістр .
venkatvb

2
@vankatvb Я не вважаю, що це правда ... Ctrl+ Dдля мене нічого не вибраного все ще не відрізняється від обставин. Він окреслить лише відповідність регістру, але фактично за допомогою ярлика або Alt+ F3виберіть ті, що не відповідають регістру.
Схизм

Btw ось таку ж відповідь у іншому запитанні: stackoverflow.com/a/18422707/782045
цікаво

7

Поставте курсор перед змінною, не вибирайте змінну, натисніть, Ctrl+Dщоб вибрати кожне виникнення змінної, а не візерунок.


1

Оновлена ​​відповідь на vscode в 2020 році для Windows, у keybindings.json додайте цей рядок, щоб легко пропустити наступне обране явище:

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

* так, я знаю, що це питання для піднесеного тексту, але я знайшов його, гуглюючи те саме питання + vscode, тож це може комусь допомогти, оскільки відображення однакові.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.