Подтвердить что ты не робот

Возвышенный текст 2 - выбор столбца до конца строки

Можно ли выбрать столбец с ярлыком клавиатуры и развернуть выделение до конца каждой строки?

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

Как я могу избежать этого поведения без использования мыши?

4b9b3361

Ответ 1

Если я правильно понял ваш вопрос, вы можете сделать это со следующими ключами (пример с OS X keybindings):

  • Ctrl + Shift + Вверх или Ctrl + Shift + Вниз, чтобы выбрать столбец в нескольких строках.
  • Cmd + Shift + Right (Shift + End на других ОС), чтобы расширить выделение до конца каждой строки.

Связанные привязки клавиш для всех ОС: http://www.sublimetext.com/docs/2/column_selection.html

Ответ 2

Я пришел к этому ответу, потому что я искал, как поместить курсор во все строки, пока EOF (конец файла) не будет использовать ctrl + alt + / (не более, чем несколько десятков строк), поэтому я мог бы обрезать или выбрать определенную часть этих строк.

Итак, я в конечном итоге оказался в возвышенной текстовой документации, где я нашел:

  • ctrl + shift + L, который помещает курсоры во все выбранные строки и в конце их (EOL):
    • выберите эти строки с помощью ctrl + L (или ctrl + shift + End, чтобы выбрать до EOF); ​​
    • нажмите ctrl + shift + L, чтобы добавить курсоры в EOL,
    • теперь вы можете перемещать все курсоры одновременно словами ctrl + / или с помощью BOL/EOL с помощью Home/End), если вы также нажмете shift, вы будете выберите при перемещении их;
  • но самая полезная функция, безусловно, означает щелчок мышью + перетащить, который выбирает линии и одновременно помещает курсоры в конце этих выборов:
    • BONUS: Если вы просто хотите поместить курсоры в EOL (без выбора), щелкните по фону (после EOL) и перетащите! (если линии слишком длинны, вы можете использовать мини-карту, чтобы позиционировать ваш экран просмотра в самой длинной строке);
    • теперь вы можете перемещать все курсоры одновременно словами ctrl + / или в BOL с Home), если вы также нажмете shift, который вы выберете при перемещении.

Ответ 3

Вы также можете получить тот же результат, выполнив следующие шаги:

  • выберите строки с помощью Shift + Вверх/Вниз
  • разделить выделение на строки (выбор): Cmd + Shift + L

Ответ 4

robertcollier4 ответ решил вопрос для меня. По какой-то причине перекрестная привязка OS + super + shift + right по умолчанию перезаписывается в Sublime Text 3, и нет возможности правильно отвязать ее в привязках клавиш пользователя.

Чтобы добавить robert-код в качестве плагина, перейдите в Tools > New Plugin, вставьте код, сохраните его и добавьте ссылку на него в вашем ключевом виде:

[
    { "keys": ["super+shift+right"], "command": "SelectToEndoflineCommand" }
]

Единственное изменение, которое я сделал, это изменить

caretPos = self.view.sel()[0].begin()

к

caretPos = self.view.sel()[0].end()

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

Ответ 5

import sublime, sublime_plugin

class SelectToEndoflineCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        caretPos = self.view.sel()[0].begin()
        self.view.sel().add(sublime.Region(caretPos, self.view.line(caretPos).end()))

class SelectToBegoflineCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        caretPos = self.view.sel()[0].begin()
        self.view.sel().add(sublime.Region(caretPos, self.view.line(caretPos).begin()))