Чи можливо в тексті Sublime Text 2 миттєво вибрати кожен інший (або непарний / парний) рядок і розмістити на цих рядках кілька курсорів?
Дякую.
Чи можливо в тексті Sublime Text 2 миттєво вибрати кожен інший (або непарний / парний) рядок і розмістити на цих рядках кілька курсорів?
Дякую.
Відповіді:
.*\n.*\n
(.*\n){10}
кожні 10 рядків
(.*(\n|$)){2}
(.*(\n|$)){2}
включає останній рядок
Ви можете це зробити легко:
Редагувати:
(.*(\n|$)){2}
виразомЯ шукав спосіб вибору альтернативних ліній у піднесеному.
Спасибі Джо Дейлі за дуже гарну відповідь. Хоча я зрозумів, що якщо ви використовуєте регулярний вираз, він не вибере останній рядок у файлі, якщо в кінці файлу немає нового рядка.
Я хотів покращити цю відповідь, але, здається, наразі у мене недостатньо репутації, щоб прокоментувати відповідь вище.
Ви можете використовувати наступний рядок пошуку із увімкненим регулярним виразом, а потім натисніть клавіші alt + enter. Далі йде стрілка вліво. Це покладе курсор кожен на альтернативні лінії (ті ж кроки, що й пояснив Джо Дейлі)
^.*\n.*$
Ви можете спробувати з плагіном: Tools/New Plugin...
import sublime_plugin
class ExpandSelectionToOtherLinesCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command("expand_selection", {"to": "line"})
start_region = self.view.sel()[0]
self.view.window().run_command("select_all")
self.view.sel().subtract(start_region)
Збережіть цей файл у своєму Packages/User
.
Потім додайте прив'язку ключа для цього плагіна:
{ "keys": ["super+alt+l"], "command": "expand_selection_to_other_lines" }
Ця команда вибере всі інші рядки. Якщо у вас вибрані інші рядки, ви можете використовувати Split selection into lines
команду ( Ctrl+ Shift+ L, Cmd+ Shift+ Lна Mac).
Якщо ви хочете мати щонайменше в одному ярлику, ви можете змінити плагін так:
import sublime_plugin
class ExpandSelectionToOtherLinesCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command("expand_selection", {"to": "line"})
start_region = self.view.sel()[0]
self.view.window().run_command("select_all")
self.view.sel().subtract(start_region)
self.view.window().run_command("split_selection_into_lines")
self.view.window().run_command("move", {"by": "characters", "forward": False})
Останній рядок полягає лише у видаленні виділення, залишаючи кілька курсорів на початку вибраних рядків.