Vim съедает все мои строки, если я сопоставлю ddkP - PullRequest
2 голосов
/ 06 февраля 2012

В Vim я устанавливаю отображение для перемещения строки вверх при каждом нажатии _

nnoremap _ ddkP

В моих экспериментах, когда я достигаю вершины моего файла Vim, все строки съедаются, если я продолжаю нажимать и удерживать _

Что-то не так? Я на Mac, но использую консоль Vim, а не MacVim.

Ответы [ 2 ]

3 голосов
/ 06 февраля 2012

Сбой k (переместиться на одну строку вверх) в верхней части файла.Я подозреваю, что это приводит к тому, что выполнение сопоставленных ключей останавливается, оставляя вам только dd (удалить текущую строку).Чтобы это исправить, вам понадобится менее разрушительный способ перемещения линии.

2 голосов
/ 06 февраля 2012

Объяснение Кристо выглядит логичным для меня.

Я предлагаю вместо этого попробовать это сопоставление, которое делает :move без удаления каких-либо строк:

:nnoremap _ :move .-2<CR>

Вы также можете отменить это атомарно.

...