Как выбрать несколько линий, идущих вверх на Какуне?
В Vim я бы входил в визуальный режим с помощью V, а затем просто перемещал курсор вверх (с помощью k).
В kak я могу выбрать строку с помощью x, и я могу расширить выделение вниз, нажимая X несколько раз или перемещая курсор вниз, все еще нажимая Shift с J, но если я поднимусь, продолжая нажимать Shift, с K я сохраню выделение, но не для всей строки, выделение на первой выделенной строке каким-то образом переходит к столбцу 0.
2 ответа
Это не идеально, но на данный момент лучшее, что я могу найти, чтобы сделать выделение на всю строку, это сделать то, что вы описали: x, а затем прокрутить вверх, нажав shiftk.
Только после того, как вы закончите прокрутку вверх, вы должны расширить выделение, чтобы включить все полные строки, нажав altx.
См. Обсуждение в этой проблеме Github kakoune для некоторых отличных сценариев решения этой проблемы, которые вы можете добавить в свой kakrc
,
Одно из этих решений представлено на вики-сайте kakoune:
def -hidden -params 1 extend-line-down %{
exec "<a-:>%arg{1}X"
}
def -hidden -params 1 extend-line-up %{
exec "<a-:><a-;>%arg{1}K<a-x>"
}
map global normal x ":extend-line-down %val{count}<ret>"
map global normal X ":extend-line-up %val{count}<ret>"
Это потому, что выборы Какуне ориентированы. Когда вы выбираете строку с помощью x, курсор находится в конце строки, а привязка - в начале. shiftk означает "расширить выделение до указанного выше символа", но означает "select to there с сохранением той же привязки", а "вышеуказанный символ" является последним символом предыдущей строки.
Короче говоря, вам нужно изменить направление выделения перед расширением вверх: x + alt; + сдвигк.