Что такое команда (или ярлык) для перемещения строки вверх или вниз в vim? Мой текущий рабочий процесс состоит в том, чтобы выдернуть (скопировать) строку и затем удалить эту строку, а затем поставить (вставить) эту строку.
48
Что такое команда (или ярлык) для перемещения строки вверх или вниз в vim? Мой текущий рабочий процесс состоит в том, чтобы выдернуть (скопировать) строку и затем удалить эту строку, а затем поставить (вставить) эту строку.
ddkP
, двигаясь вниз проще:ddp
.Ответы:
Во-первых, вам не нужно дергать и удалять; последний также помещает удаленное содержимое в регистр (по умолчанию или указанный). Поэтому
ddp
/ddkP
- это общие команды для перемещения на одну строку вверх / вниз.В качестве альтернативы вы можете использовать
:move
команду, т.е.:move +1
/:move -2
; это не загромождает регистр, и вы также можете перемещать целые диапазоны. Вы можете легко определить сопоставления клавиш, чтобы сократить это.Если вы не возражаете плагинов (и дополнительный комфорт , который часто приходит с ними), и Тим папы незатронутым плагин и мой плагин LineJuggler обеспечивают
]e
/[e
отображения для перемещения строк (и еще несколько, Тим для различных целей, мое внимание на обработке линии (ы)).источник
Самый простой из них:
:m+
или:m-2
это аббревиатура,:move
как предложил Инго.Или используя визуальный режим ( V), обрезав линию ( d/ x), затем вставьте ее ( p- под курсором, Pнад курсором) после перемещения курсора в нужное место перед вставкой (так что в итоге это Vxp/ Vdp).
При перемещении нескольких строк в визуальном режиме вам необходимо использовать
:m '>+1
(для перемещения на одну строку вниз) или:m '<-2
(для перемещения на одну строку вверх).Вот пример полезного отображения ( Shift+ ↑/ Shift+↓):
который похож на Sublime Text ( Win / OSX ).
Вот некоторые из предложенных на vim wikia :
Смотрите также:
источник
Если я хочу поменять одну строку на строку выше, я обычно делаю следующее
объяснение
источник
ddp
FWIW, вот то, что я использовал в течение многих лет. Он перемещает текущую строку вверх и вниз в обычном режиме или выделение в визуальном режиме, одновременно настраивая отступ.
источник