Несколько курсоров в Sublime Text 2 Windows


84

Я установил Sublime Text 2 в окнах и пытаюсь использовать функцию нескольких курсоров.

Сначала я выделяю нужный фрагмент (три строки).

Затем я могу нажать CTRL+, Dчтобы выбрать каждое повторение, или ALT+, F3чтобы выбрать все. В моей ситуации четыре повтора.

Теперь я хочу переместить курсоры в середину трех строк и добавить некоторую информацию, которая будет добавлена ​​ко всем вхождениям.

Как только я нажимаю на выделение, множественный выбор исчезает? Я что-то делаю не так, я уверен, что это неправильно, но поскольку документация настолько слабая, я не могу понять, как?


20
Есть ли у ctrl+shift+lвас несколько курсоров?
AGS

5
Приземлился здесь в поисках этого: sublimetext.com/docs/2/column_selection.html
twamley

Блин, мне для этого нужна мышь получше. Спасибо, twamley

12
Ctrl + left clickбыло решением для меня. См. Ответ Зенексера, чтобы узнать больше.
Мартин Тома

Спасибо, twamley; люблю, когда цели сталкиваются с ТАК.
karan.dodia 07

Ответы:


39

В Sublime Text после выбора нескольких областей текста щелчок считается способом выхода из режима множественного выбора. Вместо этого перемещайте курсор с помощью клавиш клавиатуры (стрелки, Ctrl + стрелки и т. Д.), И все будет в порядке


10
ctrl + shift + l - тоже. Спасибо
StuartM

Я должен сказать, что считаю это одним из недостатков Sublime: мне никогда не приходилось избавляться от неприятностей в других или использовать комбинации клавиш, в зависимости от ситуации. В некоторых ситуациях ожидается, что вы нажмете Enter. Что не так с Esc? :)
Хенрик Эрландссон

156

Обычно проще вообще пропустить мышь - или было бы, если бы Sublime не испортил множественный выбор при переносе слов. Вот официальная документация по использованию клавиатуры и мыши для множественного выбора. Поскольку он немного растянут, резюмирую его:

Я сделал заметку, где в Sublime Text 3 ярлыки разные. Для v3 я всегда тестирую с использованием последней сборки dev; если вы используете бета-версию, ваш опыт может быть другим.

Если вы потеряете свой выбор при переключении вкладок или окон (особенно в Linux), попробуйте использовать Ctrl+, Uчтобы восстановить его.

Мышь

Windows / Linux

Строительные блоки:

  • Позитивный негативный:
    • Добавить в выбор: Ctrl
    • Вычесть из выбора: Alt в ранних сборках v3 это не работало для линейного выбора.
  • Тип выбора:
    • Линейный выбор: Left Click
    • Выбор блока: Middle Clickили Shift+ Right Click В Linux по умолчанию вставляется средний щелчок.

Комбинируйте так, как считаете нужным. Например:

  • Добавить к выделению: Ctrl+ Left Click(и при желании перетащить)
  • Вычесть из выбора: Alt+ Left Click Это не работало в ранних сборках v3.
  • Добавить выделение блока: Ctrl+ Shift+ Right Click(и перетащить)
  • Вычесть выделенный блок: Alt+ Shift+ Right Click(и перетащить)

Mac OS X

Строительные блоки:

  • Позитивный негативный:
    • Добавить в выбор:
    • Вычесть из выделения: ⇧⌘(работает только с выделением блоков в версии 3; предположительно ошибка)
  • Тип выбора:
    • Линейный выбор: Left Click
    • Выбор блока: Middle Clickили +Left Click

Комбинируйте так, как считаете нужным. Например:

  • Добавить к выделению: + Left Click(и при желании перетащить)
  • Вычтите из выбора: ⇧⌘+Left Click (и перетащить - эта комбинация не работает в Sublime Text 3, но предположительно работает в 2)
  • Добавить выделение блока: ⌥⌘+ Left Click(и перетащить)
  • Вычесть выделение блока: ⌥⇧⌘ + Left Click(и перетащить)

Клавиатура

Windows

  • Вернуться в режим одиночного выбора: Esc
  • Расширить выделение вверх / вниз на всех курсорах: Ctrl+ Alt+Up /Down
  • Расширить выделение влево / вправо на всех каретках: Shift+Left /Right
  • Переместите все каретки вверх / вниз / влево / вправо и отмените выбор: Up/ Down/Left /Right
  • Отменить последнее выделение: Ctrl +U
  • Добавить следующее вхождение выделенного текста в выделение: Ctrl +D
  • Добавить все вхождения выделенного текста в выделение: Alt +F3
  • Поворот между экземплярами выделенного текста (одиночный выбор): Ctrl+ F3(обратный: Ctrl+ Shift+F3 )
  • Превратите одиночное линейное выделение в выделение блока с вставкой курсора в конце выделенного текста в каждой строке: Ctrl+ Shift+L

Linux

  • Вернуться в режим одиночного выбора: Esc
  • Расширить выделение вверх / вниз на всех каретках: Alt+ Up/ Down Обратите внимание, что вы также можете удерживать, Ctrlчтобы получить те же ярлыки, что и Windows, но Linux имеет тенденцию использовать комбинации Ctrl + Alt для глобальных ярлыков.
  • Расширить выделение влево / вправо на всех каретках: Shift+Left /Right
  • Переместите все каретки вверх / вниз / влево / вправо и отмените выделение: Up/ Down/Left /Right
  • Отменить последнее движение выбора:Ctrl +U
  • Добавить следующее вхождение выделенного текста в выделение: Ctrl +D
  • Добавить все вхождения выделенного текста в выделение:Alt +F3
  • Поворот между экземплярами выделенного текста (одиночный выбор): Ctrl+ F3(реверс: Ctrl+ Shift+F3 )
  • Превратите одиночное линейное выделение в выделение блока с вставкой курсора в конце выделенного текста в каждой строке: Ctrl+ Shift+L

Mac OS X

  • Вернуться в режим одиночного выбора: (это символ Mac для Escape)
  • Расширить выделение вверх / вниз на всех CARETS: ⌃⇧⇡, ⌃⇧⇣(смотри примечание)
  • Расширить выделение влево / вправо на всех каретках: ⇧⇠/⇧⇢
  • Переместить все CARETS вверх / вниз / влево / вправо и ясный выбор: , , ,
  • Отменить последнее выделение: ⌘U
  • Добавить следующее вхождение выделенного текста в выделение: ⌘D
  • Добавить все вхождения выделенного текста в выделение: ⌃⌘G
  • Поворот между вхождений выделенного текста (одиночный выбор): ⌥⌘G(обратном: ⌥⇧⌘G)
  • Превратите одиночное линейное выделение в выделение блока с кареткой в ​​конце выделенного текста в каждой строке: ⇧⌘L

Примечания для пользователей Mac

В Йосемити и Эль-Капитане ⌃⇧⇡и ⌃⇧⇣по умолчанию являются системными сочетаниями клавиш. Если вы хотите, чтобы они работали в Sublime Text, вам нужно будет изменить их:

  1. Открыть System Preferences.
  2. Выберите Shortcutsвкладку.
  3. Выберите Mission Controlв левом списке.
  4. Измените сочетания клавиш для Mission Controlи Application windows(или отключите их). Пользуюсь ⌃⌥⇡и ⌃⌥⇣. Это значения по умолчанию ⌃⇡и ⌃⇣; добавление к этим ярлыкам вызывает те же действия, но замедляет анимацию.

Если вы не знакомы с символами клавиатуры Mac:

  • это ключ выхода
  • это контрольный ключ
  • ключ опции
  • это клавиша Shift
  • это командная клавиша
  • и др. - клавиши со стрелками, как показано

3
Я пришел сюда в поисках проблемы, которая, как говорит @Zenexer, Sublime портит множественный выбор, когда включен перенос слов. У меня это все время: выбрать блок для ручного отступа ( Altщелкнуть-перетащить) - если перенос слов включен, строки будут повреждены при их отступе. Это известная ошибка? ⇧⌘Lкажется, работает лучше.
Urs

Просто спрашиваю, а есть ли способ переназначить их в возвышенных настройках? Если да, то какие для этого есть варианты JSON? Я не могу найти для этого документацию.
Ганс

13

Попробуйте использовать Ctrl-щелчок в нескольких местах, где вы хотите установить курсоры. Ctrl-D - для множественных инкрементальных находок.


Это то, что я надеялся найти. На cmd + clickMac можно вставлять несколько курсоров в любое место.
MuffinTheMan

3

Я считаю, что использование винтажного режима действительно хорошо работает с возвышенным множественным выбором.

Мои наиболее часто используемые клавиши - это «w» для перехода на слово, «^» и «$» для перехода к первому / последнему символу строки. Комбинации вроде «2dw» (удаление следующих двух слов после курсора) делают использование множественного выбора действительно эффективным.

Это кажется очевидным, но действительно ускорило мой рабочий процесс, особенно при редактировании HTML.


vim заставляет меня чувствовать себя более продуктивным, но я не уверен, что с ним справляюсь быстрее.
Zenexer

1

Пользователи Mac, позвольте мне сэкономить ваше время:

  • Cmd+a : выберите строки, на которых вы хотите установить курсор
  • Cmd+ Shift+ l: создать курсор
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.