Я часто редактирую файлы, где мне нужно удалить все, кроме пяти первых и трех последних строк. Я делаю это, переместившись в шестую строку и напечатав ":,. $ - 3 d". Есть ли способ сделать то же самое, используя d и какое-то движение?
1 ответ
5
Уверенный!  d[num]G где [num] - номер строки назначения.  Любая другая команда движения также будет работать, а не G , конечно.
Чтобы удалить первые пять и последние три строки, предполагая, что вы только что открыли файл и находитесь в первой строке, это будет:
d5G   # delete from current position to line 5
G     # jump to last line
d2k   # delete from current position to 2 lines up (3 lines total)
Редактировать: Просто перечитайте вопрос и увидите, что я понял ваши намерения задом наперед - вы хотите сохранить первые пять / последние три, а не удалять их. В этом случае это:
G     # jump to last line
3k    # up 3 lines
d6G   # delete from current position to line 6
