Редактирование с несколькими курсорами в Xcode 10

89

Что такое «Редактирование с несколькими курсорами» в редакторе Xcode 10. (дополнительная информация об этом упоминается в примечаниях к выпуску, но непонятна.)

Как именно это работает?

Крунал
источник
3
он используется для быстрого редактирования нескольких диапазонов кода одновременно
Anbu.Karthik
2
На самом деле хороший вопрос. Я нашел этот пост в твиттере по этому поводу, который, кажется, говорит о каком-то стороннем плагине / обходном пути. Однако я не знаю, как войти в этот режим редактирования.
LinusGeffarth 05
3
См. Developer.apple.com/videos/play/wwdc2018/102/?time=2518 для быстрой демонстрации
Хэмиш

Ответы:

178

Чтобы редактировать несколько экземпляров текста в разных разделах документа, вы можете использовать редактирование с несколькими курсорами. Это позволяет размещать несколько курсоров в разных местах, чтобы текст можно было добавлять, изменять или удалять .

это имя редактора исходного кода , для справки я взял ответ из whats-new-in-xcode10 и Образец ссылки 1 и Образец ссылки 2

Редактор исходного кода Xcode 10 теперь поддерживает редактирование с несколькими курсорами, что позволяет быстро редактировать несколько диапазонов кода одновременно.

  • shift+ control+ щелчок
  • shift+ control+
  • shift+ control+
  • option + перетащить

В проекте с включенным контролем версий редактор исходного кода отображает изменения, внесенные разработчиком, в канале и показывает изменения, внесенные другими разработчиками, которые еще не были включены в проект.

Анбу.Картик
источник
1
@MarcusJ - Я изменил ответ, его легко понять, образец вы получите здесь
Anbu.Karthik
2
Я бы хотел, чтобы они просто выполнили команду + щелчок, как Sublime.
Эрик Ментеле
5
@Dan, просто измените сочетание клавиш для «Select Next Occurrence» на Cmd + Dв настройках :)
RyanM
1
Чтобы выбрать несколько строк, просто используйте «Shift + Ctrl + Drag» в Xcode10, чего можно было добиться с помощью «Cmd + Drag» ранее ✌️✌️✌️✌️
G.
1
@Dan, посмотри мой ответ .
Юлиан
22

Лучше всего использовать его с помощью Select Next Occurrenceкоманды из Findменю.

Его сочетание клавиш по умолчанию - alt+ cmd+ e, но вы можете установить его на cmd+, dчтобы имитировать поведение Sublime Text.

Таким образом, вы можете редактировать разные строки кода, тогда как решения в других ответах позволяют редактировать только похожие строки.

Например, если у вас есть этот код:

NSString *myStringg = @"stringg";
// print the stringg
NSLog(@"Here is my stringg: %@", myStringg);

вы просто:

  1. вручную выбрать первое Stringgвхождение из первой строки с помощью курсора
  2. нажмите Select Next Occurrenceсочетание клавиш пользователя 4 раза
  3. нажмите rightклавишу со стрелкой
  4. ударить backspace

и у вас будет:

NSString *myString = @"string";
// print the string
NSLog(@"Here is my string: %@", myString);
Юлиан Онофрей
источник
6

Shift+ Ctrl+ click если вы хотите отредактировать один и тот же текст в файле несколько раз, например

    option_A.isEnabled = false
    option_B.isEnabled = false
    option_C.isEnabled = false
    option_D.isEnabled = false

в этом случае я должен установить истину во всех четырех строках, тогда лучше сразу установить истину, используя shift+ control+,click а не редактировать каждую строку

Джагдип Сингх
источник
2

Существует также сочетание клавиш, доступное для тех, кто, как я, использует cmd+ Shift+ Lв Sublime.

Это называется Selection - Split Selection By Lines. Я установил его на cmd+ Shift+, Lно мне пришлось установить Show Libraryярлык на что-то еще случайное, что я не использую для разрешения конфликта.

Sonastra
источник
У меня Select All Find Matchesа не Selection - Split Selection By Linesсработало.
Лимфинити