Как дернуть текущую линию и линию над ней?
Что мне нужно, это как дернуть текущую строку и линии над ней.
Пример:
#3 My test line
#4 Line above current line
#5 My current line |(cursor)
#6 Line below current line
Итак, как мне дернуть линию #5
а также #4
когда мой курсор находится на линии 5
,
3 ответа
yk должен сделать это, как в Yank в направлении вверх на одну строку, так как y примет следующее нажатие клавиши как движение, а один k представляет движение вверх на одну строку.
Если вам нужен курсор, чтобы вернуться в исходное положение, просто добавьте a j как ykj. Вы, вероятно, увидите, что курсор неуверенно двигается на экране, но он выполняет свою работу.
В этом простом случае yk
сделает свое дело. Это дергание, сопровождаемое движением вверх на одну линию.
Как правило, использовать yNk
например, y3k
дергать текущую строку и предыдущие 3 строки.
Если вам нужно вернуться в позицию курсора после рывка, установите отметку и вернитесь к отметке после yk
:
mmyk`m
Если вам нужно только остаться на той же строке, где вы начали янки, а не на той же позиции курсора, ykj
короче
В дополнение к командам обычного режима, уже упомянутым в других ответах, можно использовать :yank
Команда Ex в соответствующем диапазоне строк. Например, чтобы скопировать текущую строку вместе со строкой над ней (без перемещения курсора), запустите
:-,y