Если я интерпретирую Вас правильно, Вы более или менее спрашиваете, "Как дергать конкретную строку, не перемещая курсор в энергию?", за исключением того, что Вы только хотите часть запуска и конечных строк. Например, с этим экраном (включенные номера строки):
1 12345abcdefg
2 hijklmnopqrs
3 tuvwxyz123
4
5
6 foo _ baz
... цель состояла бы в том, чтобы скопировать только буквы алфавита в позицию курсора (_
), промежуточное "нечто" и "baz", не перемещая курсор. Это правильно?
Если бы Вы хотели числа также, и Вы хотели вставить его выше текущей строки, то ответ мог бы быть :1,3y
Войдите, затем P
. Но Исключая командами только работают над целыми строками - нет никакого способа сказать :y
управляйте для дергания части строки.
Вы могли попытаться играть в игры с удалением частей, которые Вы не хотите. Но если бы это был я, то я шел бы вперед и переместил бы тот курсор, потому что я могу легко переместить его назад использование маркера и команды одинарной левой кавычки: ma
(маркер "a" местоположения набора; используйте свою любимую букву), 1G
5l
(переместитесь для выравнивания 1 столбца 6), v
(characterwise визуальный режим), 3G
6l
, y
. Затем ''a(jump to mark "a") and
P', и мы сделаны.
Кстати, если Вы хотите перейти в конец блока, Вы просто вставили, можно использовать'']'.
Я не знаю, возможно ли это, но я обычно вставляю, со всеми версиями VI, строка с числами, которые могут помочь мне определить местоположение столбцов.
В командном режиме:
10a1234567890
Я получу строку 100 символов (просто изменяют число повторения для меньше или больше).
345abcd
от первой строки, без просто визуального выделения. Хотя перечитывая его я не совсем так уверен. – Kevin 02.12.2011, 14:52