Я хочу считать строку n1-> n2 из файла foo.c в текущий буфер.
Я попробовал: 147,227r /path/to/foo/foo.c
Но я добираюсь: "E16: Недопустимый диапазон", хотя я уверен, что foo.c содержит больше чем 1 000 строк.
{Диапазон} относится к месту назначения в текущем файле, не диапазону строк в исходном файле.
После некоторого экспериментирования, это кажется
:147,227r /path/to/foo/foo.c
, средства вставляют содержание /path/to/foo/foo.c
после строки 227 в этом файле. т.е.: это игнорирует 147.
Вы должны будете:
:r /path/to/foo/foo.c
:d 228,$
:d 1,146
Три шага, но это сделает его...